BASIC interpreter ROM ($A000 - $BFFF) |
|
a000 |
40960 |
- |
Restart Vectors |
WORD |
a00c |
40972 |
stmdsp |
BASIC Command Vectors |
WORD |
a052 |
41042 |
fundsp |
BASIC Function Vectors |
WORD |
a080 |
41088 |
optab |
BASIC Operator Vectors |
WORD |
a09e |
41118 |
reslst |
BASIC Command Keyword Table |
DATA |
a129 |
41257 |
msclst |
BASIC Misc. Keyword Table |
DATA |
a140 |
41280 |
oplist |
BASIC Operator Keyword Table |
DATA |
a14d |
41293 |
funlst |
BASIC Function Keyword Table |
DATA |
a19e |
41374 |
errtab |
Error Message Table |
DATA |
a328 |
41768 |
errptr |
Error Message Pointers |
WORD |
a364 |
41828 |
okk |
Misc. Messages |
TEXT |
a38a |
41866 |
fndfor |
Find FOR/GOSUB Entry on Stack |
|
a3b8 |
41912 |
bltu |
Open Space in Memory |
|
a3fb |
41979 |
getstk |
Check Stack Depth |
|
a408 |
41992 |
reason |
Check Memory Overlap |
|
a435 |
42037 |
omerr |
Output ?OUT OF MEMORY Error |
|
a437 |
42039 |
error |
Error Routine |
|
a469 |
42089 |
errfin |
Break Entry |
|
a474 |
42100 |
ready |
Restart BASIC |
|
a480 |
42112 |
main |
Input & Identify BASIC Line |
|
a49c |
42140 |
main1 |
Get Line Number & Tokenise Text |
|
a4a2 |
42146 |
inslin |
Insert BASIC Text |
|
a533 |
42291 |
linkprg |
Rechain Lines |
|
a560 |
42336 |
inlin |
Input Line Into Buffer |
|
a579 |
42361 |
crunch |
Tokenise Input Buffer |
|
a613 |
42515 |
fndlin |
Search for Line Number |
|
a642 |
42562 |
scrtch |
Perform [new] |
|
a65e |
42590 |
clear |
Perform [clr] |
|
a68e |
42638 |
stxpt |
Reset TXTPTR |
|
a69c |
42652 |
list |
Perform [list] |
|
a717 |
42775 |
qplop |
Handle LIST Character |
|
a742 |
42818 |
for |
Perform [for] |
|
a7ae |
42926 |
newstt |
BASIC Warm Start |
|
a7c4 |
42948 |
ckeol |
Check End of Program |
|
a7e1 |
42977 |
gone |
Prepare to execute statement |
|
a7ed |
42989 |
gone3 |
Perform BASIC Keyword |
|
a81d |
43037 |
restor |
Perform [restore] |
|
a82c |
43052 |
stop |
Perform [stop], [end], break |
|
a857 |
43095 |
cont |
Perform [cont] |
|
a871 |
43121 |
run |
Perform [run] |
|
a883 |
43139 |
gosub |
Perform [gosub] |
|
a8a0 |
43168 |
goto |
Perform [goto] |
|
a8d2 |
43218 |
return |
Perform [return] |
|
a8f8 |
43256 |
data |
Perform [data] |
|
a906 |
43270 |
datan |
Search for Next Statement / Line |
|
a928 |
43304 |
if |
Perform [if] |
|
a93b |
43323 |
rem |
Perform [rem] |
|
a94b |
43339 |
ongoto |
Perform [on] |
|
a96b |
43371 |
linget |
Fetch linnum From BASIC |
|
a9a5 |
43429 |
let |
Perform [let] |
|
a9c4 |
43460 |
putint |
Assign Integer |
|
a9d6 |
43478 |
ptflpt |
Assign Floating Point |
|
a9d9 |
43481 |
putstr |
Assign String |
|
a9e3 |
43491 |
puttim |
Assign TI$ |
|
aa2c |
43564 |
getspt |
Add Digit to FAC#1 |
|
aa80 |
43648 |
printn |
Perform [print]# |
|
aa86 |
43654 |
cmd |
Perform [cmd] |
|
aa9a |
43674 |
strdon |
Print String From Memory |
|
aaa0 |
43680 |
print |
Perform [print] |
|
aab8 |
43704 |
varop |
Output Variable |
|
aad7 |
43735 |
crdo |
Output CR/LF |
|
aae8 |
43752 |
comprt |
Handle comma, TAB(, SPC( |
|
ab1e |
43806 |
strout |
Output String |
|
ab3b |
43835 |
outspc |
Output Format Character |
|
ab4d |
43853 |
doagin |
Handle Bad Data |
|
ab7b |
43899 |
get |
Perform [get] |
|
aba5 |
43941 |
inputn |
Perform [input#] |
|
abbf |
43967 |
input |
Perform [input] |
|
abea |
44010 |
bufful |
Read Input Buffer |
|
abf9 |
44025 |
qinlin |
Do Input Prompt |
|
ac06 |
44038 |
read |
Perform [read] |
|
ac35 |
44085 |
rdget |
General Purpose Read Routine |
|
acfc |
44284 |
exint |
Input Error Messages |
TEXT |
ad1e |
44318 |
next |
Perform [next] |
|
ad61 |
44385 |
donext |
Check Valid Loop |
|
ad8a |
44426 |
frmnum |
Confirm Result |
|
ad9e |
44446 |
frmevl |
Evaluate Expression in Text |
|
ae83 |
44675 |
eval |
Evaluate Single Term |
|
aea8 |
44712 |
pival |
Constant - pi |
DATA |
aead |
44717 |
qdot |
Continue Expression |
|
aef1 |
44785 |
parchk |
Expression in Brackets |
|
aef7 |
44791 |
chkcls |
Confirm Character |
|
aef7 |
44791 |
- |
-test ')'- |
|
aefa |
44794 |
- |
-test '('- |
|
aefd |
44797 |
- |
-test comma- |
|
af08 |
44808 |
synerr |
Output ?SYNTAX Error |
|
af0d |
44813 |
domin |
Set up NOT Function |
|
af14 |
44820 |
rsvvar |
Identify Reserved Variable |
|
af28 |
44840 |
isvar |
Search for Variable |
|
af48 |
44872 |
tisasc |
Convert TI to ASCII String |
|
afa7 |
44967 |
isfun |
Identify Function Type |
|
afb1 |
44977 |
strfun |
Evaluate String Function |
|
afd1 |
45009 |
numfun |
Evaluate Numeric Function |
|
afe6 |
45030 |
orop |
Perform [or], [and] |
|
b016 |
45078 |
dorel |
Perform <, =, > |
|
b01b |
45083 |
numrel |
Numeric Comparison |
|
b02e |
45102 |
strrel |
String Comparison |
|
b07e |
45182 |
dim |
Perform [dim] |
|
b08b |
45195 |
ptrget |
Identify Variable |
|
b0e7 |
45287 |
ordvar |
Locate Ordinary Variable |
|
b11d |
45341 |
notfns |
Create New Variable |
|
b128 |
45352 |
notevl |
Create Variable |
|
b194 |
45460 |
aryget |
Allocate Array Pointer Space |
|
b1a5 |
45477 |
n32768 |
Constant 32768 in Flpt |
DATA |
b1aa |
45482 |
facinx |
FAC#1 to Integer in (AC/YR) |
|
b1b2 |
45490 |
intidx |
Evaluate Text for Integer |
|
b1bf |
45503 |
ayint |
FAC#1 to Positive Integer |
|
b1d1 |
45521 |
isary |
Get Array Parameters |
|
b218 |
45592 |
fndary |
Find Array |
|
b245 |
45637 |
bserr |
?BAD SUBSCRIPT/?ILLEGAL QUANTITY |
|
b261 |
45665 |
notfdd |
Create Array |
|
b30e |
45838 |
inlpn2 |
Locate Element in Array |
|
b34c |
45900 |
umult |
Number of Bytes in Subscript |
|
b37d |
45949 |
fre |
Perform [fre] |
|
b391 |
45969 |
givayf |
Convert Integer in (AC/YR) to Flpt |
|
b39e |
45982 |
pos |
Perform [pos] |
|
b3a6 |
45990 |
errdir |
Confirm Program Mode |
|
b3e1 |
46049 |
getfnm |
Check Syntax of FN |
|
b3f4 |
46068 |
fndoer |
Perform [fn] |
|
b465 |
46181 |
strd |
Perform [str$] |
|
b487 |
46215 |
strlit |
Set Up String |
|
b4d5 |
46293 |
putnw1 |
Save String Descriptor |
|
b4f4 |
46324 |
getspa |
Allocate Space for String |
|
b526 |
46374 |
garbag |
Garbage Collection |
|
b5bd |
46525 |
dvars |
Search for Next String |
|
b606 |
46598 |
grbpas |
Collect a String |
|
b63d |
46653 |
cat |
Concatenate Two Strings |
|
b67a |
46714 |
movins |
Store String in High RAM |
|
b6a3 |
46755 |
frestr |
Perform String Housekeeping |
|
b6db |
46811 |
frefac |
Clean Descriptor Stack |
|
b6ec |
46828 |
chrd |
Perform [chr$] |
|
b700 |
46848 |
leftd |
Perform [left$] |
|
b72c |
46892 |
rightd |
Perform [right$] |
|
b737 |
46903 |
midd |
Perform [mid$] |
|
b761 |
46945 |
pream |
Pull sTring Parameters |
|
b77c |
46972 |
len |
Perform [len] |
|
b782 |
46978 |
len1 |
Exit String Mode |
|
b78b |
46987 |
asc |
Perform [asc] |
|
b79b |
47003 |
gtbytc |
Evaluate Text to 1 Byte in XR |
|
b7ad |
47021 |
val |
Perform [val] |
|
b7b5 |
47029 |
strval |
Convert ASCII String to Flpt |
|
b7eb |
47083 |
getnum |
Get parameters for POKE/WAIT |
|
b7f7 |
47095 |
getadr |
Convert FAC#1 to Integer in LINNUM |
|
b80d |
47117 |
peek |
Perform [peek] |
|
b824 |
47140 |
poke |
Perform [poke] |
|
b82d |
47149 |
wait |
Perform [wait] |
|
b849 |
47177 |
faddh |
Add 0.5 to FAC#1 |
|
b850 |
47184 |
fsub |
Perform Subtraction |
|
b862 |
47202 |
fadd5 |
Normalise Addition |
|
b867 |
47207 |
fadd |
Perform Addition |
|
b947 |
47431 |
negfac |
2's Complement FAC#1 |
|
b97e |
47486 |
overr |
Output ?OVERFLOW Error |
|
b983 |
47491 |
mulshf |
Multiply by Zero Byte |
|
b9bc |
47548 |
fone |
Table of Flpt Constants |
DATA |
b9ea |
47594 |
log |
Perform [log] |
|
ba28 |
47656 |
fmult |
Perform Multiply |
|
ba59 |
47705 |
mulply |
Multiply by a Byte |
|
ba8c |
47756 |
conupk |
Load FAC#2 From Memory |
|
bab7 |
47799 |
muldiv |
Test Both Accumulators |
|
bad4 |
47828 |
mldvex |
Overflow / Underflow |
|
bae2 |
47842 |
mul10 |
Multiply FAC#1 by 10 |
|
baf9 |
47865 |
tenc |
Constant 10 in Flpt |
DATA |
bafe |
47870 |
div10 |
Divide FAC#1 by 10 |
|
bb07 |
47879 |
fdiv |
Divide FAC#2 by Flpt at (AC/YR) |
|
bb0f |
47887 |
fdivt |
Divide FAC#2 by FAC#1 |
|
bba2 |
48034 |
movfm |
Load FAC#1 From Memory |
|
bbc7 |
48071 |
mov2f |
Store FAC#1 in Memory |
|
bbfc |
48124 |
movfa |
Copy FAC#2 into FAC#1 |
|
bc0c |
48140 |
movaf |
Copy FAC#1 into FAC#2 |
|
bc1b |
48155 |
round |
Round FAC#1 |
|
bc2b |
48171 |
sign |
Check Sign of FAC#1 |
|
bc39 |
48185 |
sgn |
Perform [sgn] |
|
bc58 |
48216 |
abs |
Perform [abs] |
|
bc5b |
48219 |
fcomp |
Compare FAC#1 With Memory |
|
bc9b |
48283 |
qint |
Convert FAC#1 to Integer |
|
bccc |
48332 |
int |
Perform [int] |
|
bcf3 |
48371 |
fin |
Convert ASCII String to a Number
in FAC#1 |
bdb3 |
48563 |
n0999 |
String Conversion Constants |
DATA |
bdc2 |
48578 |
inprt |
Output 'IN' and Line Number |
|
bddd |
48605 |
fout |
Convert FAC#1 to ASCII String |
|
be68 |
48744 |
foutim |
Convert TI to String |
|
bf11 |
48913 |
fhalf |
Table of Constants |
DATA |
bf71 |
49009 |
sqr |
Perform [sqr] |
|
bf7b |
49019 |
fpwrt |
Perform power ($) |
|
bfb4 |
49076 |
negop |
Negate FAC#1 |
|
bfbf |
49087 |
logeb2 |
Table of Constants |
DATA |
bfed |
49133 |
exp |
Perform [exp] |
|
|
|
|
|
|
C64 Kernal ROM |
|
e000 |
57344 |
(exp continues) |
EXP continued From BASIC ROM |
|
e043 |
57411 |
polyx |
Series Evaluation |
|
e08d |
57485 |
rmulc |
Constants for RND |
DATA |
e097 |
57495 |
rnd |
Perform [rnd] |
|
e0f9 |
57593 |
bioerr |
Handle I/O Error in BASIC |
|
e10c |
57612 |
bchout |
Output Character |
|
e112 |
57618 |
bchin |
Input Character |
|
e118 |
57624 |
bckout |
Set Up For Output |
|
e11e |
57630 |
bckin |
Set Up For Input |
|
e124 |
57636 |
bgetin |
Get One Character |
|
e12a |
57642 |
sys |
Perform [sys] |
|
e156 |
57686 |
savet |
Perform [save] |
|
e165 |
57701 |
verfyt |
Perform [verify / load] |
|
e1be |
57790 |
opent |
Perform [open] |
|
e1c7 |
57799 |
closet |
Perform [close] |
|
e1d4 |
57812 |
slpara |
Get Parameters For LOAD/SAVE |
|
e200 |
57856 |
combyt |
Get Next One Byte Parameter |
|
e206 |
57862 |
deflt |
Check Default Parameters |
|
e20e |
57870 |
cmmerr |
Check For Comma |
|
e219 |
57881 |
ocpara |
Get Parameters For OPEN/CLOSE |
|
e264 |
57956 |
cos |
Perform [cos] |
|
e26b |
57963 |
sin |
Perform [sin] |
|
e2b4 |
58036 |
tan |
Perform [tan] |
|
e2e0 |
58080 |
pi2 |
Table of Trig Constants |
DATA |
|
|
|
|
|
;e2e0 |
1.570796327
pi/2 |
|
|
;e2e5 |
6.28318531
pi*2 |
|
|
;e2ea |
0.25 |
|
|
|
|
|
|
|
|
;e2ef |
#05 (counter) |
|
|
|
;e2f0 |
-14.3813907 |
|
|
|
;e2f5 |
42.0077971 |
|
|
|
;e2fa |
-76.7041703 |
|
|
|
;e2ff |
81.6052237 |
|
|
|
;e304 |
-41.3417021 |
|
|
|
;e309 |
6.28318531 |
|
|
|
|
|
|
|
|
e30e |
58126 |
atn |
Perform [atn] |
|
e33e |
58174 |
atncon |
Table of ATN Constants |
DATA |
|
|
|
|
|
;e33e |
#0b (counter) |
|
|
|
;e3ef |
-0.000684793912 |
|
|
|
;e344 |
0.00485094216 |
|
|
|
;e349 |
-0.161117018 |
|
|
|
;e34e |
0.034209638 |
|
|
|
;e353 |
-0.0542791328 |
|
|
|
;e358 |
0.0724571965 |
|
|
|
;e35d |
-0.0898023954 |
|
|
|
;e362 |
0.110932413 |
|
|
|
;e367 |
-0.142839808 |
|
|
|
;e36c |
0.19999912 |
|
|
|
;e371 |
-0.333333316 |
|
|
|
;e376 |
1.00 |
|
|
|
|
|
|
|
|
e37b |
58235 |
bassft |
BASIC Warm Start [RUNSTOP-RESTORE] |
|
e394 |
58260 |
init |
BASIC Cold Start |
|
e3a2 |
58274 |
initat |
CHRGET For Zero-page |
|
e3ba |
58298 |
rndsed |
RND Seed For zero-page |
DATA |
;e3b2 |
0.811635157 |
|
|
|
e3bf |
58303 |
initcz |
Initialize BASIC RAM |
|
e422 |
58402 |
initms |
Output Power-Up Message |
|
e447 |
58439 |
bvtrs |
Table of BASIC Vectors (for 0300) |
WORD |
e453 |
58451 |
initv |
Initialize Vectors |
|
e45f |
58463 |
words |
Power-Up Message |
DATA |
e4ad |
58541 |
- |
Patch for BASIC Call to CHKOUT |
|
e4b7 |
58551 |
- |
Unused Bytes For Future Patches |
EMPTY |
e4da |
58586 |
- |
Reset Character Colour |
|
e4e0 |
58592 |
- |
Pause After Finding Tape File |
|
e4ec |
58604 |
- |
RS-232 Timing Table -- PAL |
DATA |
e500 |
58624 |
iobase |
Get I/O Address |
|
e505 |
58629 |
screen |
Get Screen Size |
|
e50a |
58634 |
plot |
Put / Get Row And Column |
|
e518 |
58648 |
cint1 |
Initialize I/O |
|
e544 |
58692 |
- |
Clear Screen |
|
e566 |
58726 |
- |
Home Cursor |
|
e56c |
58732 |
- |
Set Screen Pointers |
|
e59a |
58778 |
- |
Set I/O Defaults (Unused Entry) |
|
e5a0 |
58784 |
- |
Set I/O Defaults |
|
e5b4 |
58804 |
lp2 |
Get Character From Keyboard Buffer |
|
e5ca |
58826 |
- |
Input From Keyboard |
|
e632 |
58930 |
- |
Input From Screen or Keyboard |
|
e684 |
59012 |
- |
Quotes Test |
|
e691 |
59025 |
- |
Set Up Screen Print |
|
e6b6 |
59062 |
- |
Advance Cursor |
|
e6ed |
59117 |
- |
Retreat Cursor |
|
e701 |
59137 |
- |
Back on to Previous Line |
|
e716 |
59158 |
- |
Output to Screen |
|
e72a |
59178 |
- |
-unshifted characters- |
|
e7d4 |
59348 |
- |
-shifted characters- |
|
e87c |
59516 |
- |
Go to Next Line |
|
e891 |
59537 |
- |
Output |
|
e8a1 |
59553 |
- |
Check Line Decrement |
|
e8b3 |
59571 |
- |
Check Line Increment |
|
e8cb |
59595 |
- |
Set Colour Code |
|
e8da |
59610 |
- |
Colour Code Table |
|
e8ea |
59626 |
- |
Scroll Screen |
|
e965 |
59749 |
- |
Open A Space On The Screen |
|
e9c8 |
59848 |
- |
Move A Screen Line |
|
e9e0 |
59872 |
- |
Syncronise Colour Transfer |
|
e9f0 |
59888 |
- |
Set Start of Line |
|
e9ff |
59903 |
- |
Clear Screen Line |
|
ea13 |
59923 |
- |
Print To Screen |
|
ea24 |
59940 |
- |
Syncronise Colour Pointer |
|
ea31 |
59953 |
- |
Main IRQ Entry Point |
|
ea87 |
60039 |
scnkey |
Scan Keyboard |
|
eadd |
60125 |
- |
Process Key Image |
|
eb79 |
60281 |
- |
Pointers to Keyboard decoding tables |
WORD |
eb81 |
60289 |
- |
Keyboard 1 -- unshifted |
DATA |
ebc2 |
60354 |
- |
Keyboard 2 -- Shifted |
DATA |
ec03 |
60419 |
- |
Keyboard 3 -- Commodore |
DATA |
ec44 |
60484 |
- |
Graphics/Text Control |
|
ec78 |
60536 |
- |
Keyboard 4 -- Control |
DATA |
ecb9 |
60601 |
- |
Video Chip Setup Table |
DATA |
ece7 |
60647 |
- |
Shift-Run Equivalent |
|
ecf0 |
60656 |
- |
Low Byte Screen Line Addresses |
DATA |
ed09 |
60681 |
talk |
Send TALK Command on Serial Bus |
|
ed0c |
60684 |
listn |
Send LISTEN Command on Serial Bus |
|
ed40 |
60736 |
- |
Send Data On Serial Bus |
|
edad |
60845 |
- |
Flag Errors |
|
edad |
60845 |
- |
Status #80 - device not present |
|
edb0 |
60848 |
- |
Status #03 - write timeout |
|
edb9 |
60857 |
second |
Send LISTEN Secondary Address |
|
edbe |
60862 |
- |
Clear ATN |
|
edc7 |
60871 |
tksa |
Send TALK Secondary Address |
|
edcc |
60876 |
- |
Wait For Clock |
|
eddd |
60893 |
ciout |
Send Serial Deferred |
|
edef |
60911 |
untlk |
Send UNTALK / UNLISTEN |
|
ee13 |
60947 |
acptr |
Receive From Serial Bus |
|
ee85 |
61061 |
- |
Serial Clock On |
|
ee8e |
61070 |
- |
Serial Clock Off |
|
ee97 |
61079 |
- |
Serial Output 1 |
|
eea0 |
61088 |
- |
Serial Output 0 |
|
eea9 |
61097 |
- |
Get Serial Data And Clock In |
|
eeb3 |
61107 |
- |
Delay 1 ms |
|
eebb |
61115 |
- |
RS-232 Send |
|
ef06 |
61190 |
- |
Send New RS-232 Byte |
|
ef2e |
61230 |
- |
No DSR' / 'No CTS' Error |
|
ef39 |
61241 |
- |
Disable Timer |
|
ef4a |
61258 |
- |
Compute Bit Count |
|
ef59 |
61273 |
- |
RS-232 Receive |
|
ef7e |
61310 |
- |
Set Up To Receive |
|
ef90 |
61328 |
- |
Process RS-232 Byte |
|
efe1 |
61409 |
- |
Submit to RS-232 |
|
f00d |
61453 |
- |
No DSR (Data Set Ready) Error |
|
f017 |
61463 |
- |
Send to RS-232 Buffer |
|
f04d |
61517 |
- |
Input From RS-232 |
|
f086 |
61574 |
- |
Get From RS-232 |
|
f0a4 |
61604 |
- |
Serial Bus Idle |
|
f0bd |
61629 |
- |
Table of Kernal I/O Messages |
DATA |
f12b |
61739 |
- |
Print Message if Direct |
|
f12f |
61743 |
- |
Print Message |
|
f13e |
61758 |
getin |
Get a byte |
|
f157 |
61783 |
chrin |
Input a byte |
|
f199 |
61849 |
- |
Get From Tape / Serial / RS-232 |
|
f1ca |
61898 |
chrout |
Output One Character |
|
f20e |
61966 |
chkin |
Set Input Device |
|
f250 |
62032 |
chkout |
Set Output Device |
|
f291 |
62097 |
close |
Close File |
|
f30f |
62223 |
- |
Find File |
|
f31f |
62239 |
- |
Set File values |
|
f32f |
62255 |
clall |
Abort All Files |
|
f333 |
62259 |
clrchn |
Restore Default I/O |
|
f34a |
62282 |
open |
Open File |
|
f3d5 |
62421 |
- |
Send Secondary Address |
|
f409 |
62473 |
- |
Open RS-232 |
|
f49e |
62622 |
load |
Load RAM |
|
f4b8 |
62648 |
- |
Load File From Serial Bus |
|
f533 |
62771 |
- |
Load File From Tape |
|
f5af |
62927 |
- |
Print "SEARCHING" |
|
f5c1 |
62913 |
- |
Print Filename |
|
f5d2 |
62930 |
- |
Print "LOADING / VERIFYING" |
|
f5dd |
62941 |
save |
Save RAM |
|
f5fa |
62970 |
- |
Save to Serial Bus |
|
f659 |
63065 |
- |
Save to Tape |
|
f68f |
63119 |
- |
Print "SAVING" |
|
f69b |
63131 |
udtim |
Bump Clock |
|
f6dd |
63197 |
rdtim |
Get Time |
|
f6e4 |
63204 |
settim |
Set Time |
|
f6ed |
63213 |
stop |
Check STOP Key |
|
f6fb |
63227 |
- |
Output I/O Error Messages |
|
f6fb |
63227 |
- |
'too many files' |
|
f6fe |
63230 |
- |
'file open' |
|
f701 |
63233 |
- |
'file not open' |
|
f704 |
63236 |
- |
'file not found' |
|
f707 |
63239 |
- |
'device not present' |
|
f70a |
63242 |
- |
'not input file' |
|
f70d |
63245 |
- |
'not output file' |
|
f710 |
63248 |
- |
'missing filename' |
|
f713 |
63251 |
- |
'illegal device number' |
|
f72d |
63277 |
- |
Find Any Tape Header |
|
f76a |
63338 |
- |
Write Tape Header |
|
f7d0 |
63440 |
- |
Get Buffer Address |
|
f7d7 |
63447 |
- |
Set Buffer Stat / End Pointers |
|
f7ea |
63466 |
- |
Find Specific Tape Header |
|
f80d |
63501 |
- |
Bump Tape Pointer |
|
f817 |
63511 |
- |
Print "PRESS PLAY ON TAPE" |
|
f82e |
63534 |
- |
Check Tape Status |
|
f838 |
63544 |
- |
Print "PRESS RECORD..." |
|
f841 |
63553 |
- |
Initiate Tape Read |
|
f864 |
63588 |
- |
Initiate Tape Write |
|
f875 |
63605 |
- |
Common Tape Code |
|
f8d0 |
63696 |
- |
Check Tape Stop |
|
f8e2 |
63714 |
- |
Set Read Timing |
|
f92c |
63788 |
- |
Read Tape Bits |
|
fa60 |
64096 |
- |
Store Tape Characters |
|
fb8e |
64398 |
- |
Reset Tape Pointer |
|
fb97 |
64407 |
- |
New Character Setup |
|
fba6 |
64422 |
- |
Send Tone to Tape |
|
fbc8 |
64456 |
- |
Write Data to Tape |
|
fbcd |
64461 |
- |
IRQ Entry Point |
|
fc57 |
64599 |
- |
Write Tape Leader |
|
fc93 |
64659 |
- |
Restore Normal IRQ |
|
fcb8 |
64696 |
- |
Set IRQ Vector |
|
fcca |
64714 |
- |
Kill Tape Motor |
|
fcd1 |
64721 |
- |
Check Read / Write Pointer |
|
fcdb |
64731 |
- |
Bump Read / Write Pointer |
|
fce2 |
64738 |
- |
Power-Up RESET Entry |
|
fd02 |
64770 |
- |
Check For 8-ROM |
|
fd12 |
64786 |
- |
8-ROM Mask '80CBM' |
DATA |
fd15 |
64789 |
restor |
Restore Kernal Vectors (at 0314) |
|
fd1a |
64794 |
vector |
Change Vectors For User |
|
fd30 |
64816 |
- |
Kernal Reset Vectors |
WORD |
fd50 |
64848 |
ramtas |
Initialise System Constants |
|
fd9b |
64923 |
- |
IRQ Vectors For Tape I/O |
WORD |
fda3 |
64931 |
ioinit |
Initialise I/O |
|
fddd |
64989 |
- |
Enable Timer |
|
fdf9 |
65017 |
setnam |
Set Filename |
|
fe00 |
65024 |
setlfs |
Set Logical File Parameters |
|
fe07 |
65031 |
readst |
Get I/O Status Word |
|
fe18 |
65048 |
setmsg |
Control OS Messages |
|
fe21 |
65057 |
settmo |
Set IEEE Timeout |
|
fe25 |
65061 |
memtop |
Read / Set Top of Memory |
|
fe34 |
65076 |
membot |
Read / Set Bottom of Memory |
|
fe43 |
65091 |
- |
NMI Transfer Entry |
|
fe66 |
65126 |
- |
Warm Start Basic [BRK] |
|
febc |
65212 |
- |
Exit Interrupt |
|
fec2 |
65218 |
- |
RS-232 Timing Table - NTSC |
DATA |
fed6 |
65238 |
- |
NMI RS-232 In |
|
ff07 |
65287 |
- |
NMI RS-232 Out |
|
ff43 |
65347 |
- |
Fake IRQ Entry |
|
ff48 |
65352 |
- |
IRQ Entry |
|
ff5b |
65371 |
cint |
Initialize screen editor |
|
ff80 |
65408 |
- |
Kernal Version Number [03] |
DATA |
|
|
|
|
|
C64 Kernal Jump Table |
ff81 |
jmp $ff5b |
cint |
Init Editor & Video Chips |
ff84 |
jmp
$fd23 |
ioinit |
Init I/O Devices, Ports &
Timers |
ff87 |
jmp $fd50 |
ramtas |
Init Ram & Buffers |
ff8a |
jmp $fd15 |
restor |
Restore Vectors |
ff8d |
jmp $fd1a |
vector |
Change Vectors For User |
ff90 |
jmp $fe18 |
setmsg |
Control OS Messages |
ff93 |
jmp $edb9 |
secnd |
Send SA After Listen |
ff96 |
jmp $edc7 |
tksa |
Send SA After Talk |
ff99 |
jmp $fe25 |
memtop |
Set/Read System RAM Top |
ff9c |
jmp $fe34 |
membot |
Set/Read System RAM Bottom |
ff9f |
jmp $ea87 |
scnkey |
Scan Keyboard |
ffa2 |
jmp $fe21 |
settmo |
Set Timeout In IEEE |
ffa5 |
jmp $ee13 |
acptr |
Handshake Serial Byte In |
ffa8 |
jmp $eddd |
ciout |
Handshake Serial Byte Out |
ffab |
jmp $edef |
untalk |
Command Serial Bus UNTALK |
ffae |
jmp $edfe |
unlsn |
Command Serial Bus UNLISTEN |
ffb1 |
jmp $ed0c |
listn |
Command Serial Bus LISTEN |
ffb4 |
jmp $ed09 |
talk |
Command Serial Bus TALK |
ffb7 |
jmp $fe07 |
readss |
Read I/O Status Word |
ffba |
jmp $fe00 |
setlfs |
Set Logical File Parameters |
ffbd |
jmp $fdf9 |
setnam |
Set Filename |
ffc0 |
jmp ($031a) |
(iopen) |
Open Vector [f34a] |
ffc3 |
jmp ($031c) |
(iclose) |
Close Vector [f291] |
ffc6 |
jmp ($031e) |
(ichkin) |
Set Input [f20e] |
ffc9 |
jmp ($0320) |
(ichkout) |
Set Output [f250] |
ffcc |
jmp ($0322) |
(iclrch) |
Restore I/O Vector [f333] |
ffcf |
jmp ($0324) |
(ichrin) |
Input Vector, chrin [f157] |
ffd2 |
jmp ($0326) |
(ichrout) |
Output Vector, chrout [f1ca] |
ffd5 |
jmp $f49e |
load |
Load RAM From Device |
ffd8 |
jmp $f5dd |
save |
Save RAM To Device |
ffdb |
jmp $f6e4 |
settim |
Set Real-Time Clock |
ffde |
jmp $f6dd |
rdtim |
Read Real-Time Clock |
ffe1 |
jmp ($0328) |
(istop) |
Test-Stop Vector [f6ed] |
ffe4 |
jmp ($032a) |
(igetin) |
Get From Keyboad [f13e] |
ffe7 |
jmp ($032c) |
(iclall) |
Close All Channels And Files
[f32f] |
ffea |
jmp $f69b |
udtim |
Increment Real-Time Clock |
ffed |
jmp $e505 |
screen |
Return Screen Organization |
fff0 |
jmp $e50a |
plot |
Read / Set Cursor X/Y Position |
fff3 |
jmp $e500 |
iobase |
Return I/O Base Address |
|
|
|
|
;fff6 |
Vectors |
|
|
|
|
|
|
fff6 [5252] - |
|
|
fff8 [5942] SYSTEM |
|
|
|
|
|
|
;fffa Transfer Vectors |
|
|
fffa [fe43] NMI |
|
|
fffc [fce2] RESET |
|
|
fffe [ff48] IRQ |
|
|
|
|
|
|