Title : List of addresses in the C64 BASIC ROM Keywords: C64 BASIC ROM ADDRESSES This is a list of addresses in the Commodore '64 BASIC ROM. It is by Jim Butterfield, and has appeared in Commodore Magazine and in the Transactor. (I think the latter first) Typed and uploaded by Joel Rubin From Commodore Magazine, 10-11/82 Jim Butterfield--C'64 Map (partial reproduction--BASIC ROM only) a000; rom control vectors a00c; keyword action vectors a052; function vectors a080; operator vectors a09e; keywords a19e; error messages a328; error message vectors a365; misc messages a38a; scan stack for for/gosub a3b8; move memory a3fb; check stack depth a408; check memory space a435; "out of memory" a437; error routines a469; break entry a474; "ready." a480; ready for basic a49c; handle new line a533; rechain lines a560; receive input line a646; "NEW" a65e; "CLR" a68e; "RUN" w/no line# a69c; "LIST" a742; "FOR" a7ed; execute statement a81d; "RESTORE" a82c; break a82f; "STOP" a831; "END" a857; "CONT" a871; "RUN" a883; "GOSUB" a8a0; "GOTO" a8d2; "RETURN" a8f8; "DATA" a906; scan for next statement a928; "IF" a93b; "REM" a94b; "ON" a96b; get fixed pt # a9a5: "LET" aa80; "PRINT#" ab1e; print string beginning @ (y,a) ab3b; print format char ab4d; bad i/p routine ab7b; "GET" aba5; "INPUT#" abbf; "INPUT" abf9; prompt & i/p ac06; "READ" acfc; i/p error msgs ad1e; "NEXT" ad78; type match check ad9e; eval expression aea8; "PI" aef1; eval in paren aef7; handle right paren aeff; handle comma af08; syntax error af14; range check af28; search for variable afa7; setup fn ref afe6; "OR" afe9; "AND" b016; compare b081; "DIM" b08b; locate variable b113; check alphabetic b11d; create variable b194; array pointer subrt b1a5; value 2^15 b1b2; float-fixed b1d1; set up array b245; "bad subscript" b248; "illegal quant" b34c; compute array size b37d; "FRE" b391; fix-float b39e; "POS" b3a6; check for direct i/p err b3b3; "DEF" b3e1; check fn syntax b3f4; "FN" b465; "STR$" b475; calculate string vector b487; set up string b4f4; make room for string b526; garbage collection b5bd; check salvagability b606; collect string b63d; concat b67a; build string to memory b6a3; discard unwanted string b6db; clean descriptor stack b6ec; "CHR$" b700; "LEFT$" b72c; "RIGHT$" b737; "MID$" b761; pull string params b77c; "LEN" b782; exit string-mode b78b; "ASC" b79b; i/p byte pasm b7ad; "VAL" b7eb; params oor poke/wait b7f7; float-fixed b80d; "PEEK" b824; "POKE" b82d; "WAIT" b849; +.5 b850; subtract-from b853; "-" b86a; "+" b947; complement float-accum#1 b97e; "overflow" b983; multiply by 0-byte b9ea; "LOG" ba2b; "*" ba59; multiply-a-bit ba8c; memory to float-accum#2 bab7; adjust FAC#1/#2 bad4; under/overflow bae2; multiply by 10 baf9; add 10 float bafe; divide by 10 bb12; "/" bba2; memory to FAC#1 bbc7; FAC#1 to memory bbfc; FAC#2 to FAC#1 bc0c; FAC#1 to FAC#2 bc1b; round FAC#1 bc2b; get sign bc39; "SGN" bc58; "ABS" bc5b; compare FAC#1 to mem bc9b; float-fixed bccc; "INT" bcf3; string to FAC bd7e; get ascii digit bdc2; print "in.." bdcd; print line # bddd; float to ascii bf16; decimal constants bf3a; ti constants bf71; "SQR" bf7b; "^" bfb4; unary "-" bfed; "EXP"