home *** CD-ROM | disk | FTP | other *** search
/ CBM Funet Archive / cbm-funet-archive-2003.iso / cbm / maps / C16.MemoryMap < prev    next >
Text File  |  1995-03-08  |  25KB  |  737 lines

  1.  
  2. ;cOMMODORE PLUS/4 AND
  3. ;cOMMODORE 16 mEMORY mAP
  4. ;
  5. ;v1.19 dEC 1994
  6. ;
  7.  
  8. lABEL hEX aDDR.   dECIMAL lOC.dESCRIPTION
  9.  
  10. pdir$000007501 ON-CHIP DATA-DIRECTION REGISTER
  11. port$000117501 ON-CHIP 8-BIT iNPUT/oUTPUT REGISTER
  12. srchtk$00022tOKEN 'SEARCH' LOOKS FOR (RUN-TIME STACK)
  13. zpvec1$0003-00043-4tEMP (RENUMBER)
  14. zpvec2$0005-00065-6tEMP (RENUMBER)
  15. charac$00077sEARCH CHARACTER
  16. endchr$00088fLAG: SCAN FOR QUOTE AT END OF STRING
  17. trmpos$00099sCREEN COLUMN FROM LAST tab
  18. verck$000a10fLAG: 0 = LOAD 1 - VERIFY
  19. count$000b11iNPUT BUFFER POINTER / nO. OF SUBSCTIPTS
  20. dimflg$000c12fLAG: dEFAULT aRRAY dimENSION
  21. valtyp$000d13dATA TYPE: $ff = STRING$00 = NUMERIC
  22. intflg$000e14dATA TYPE: $80 = INTEGER, $00 = FLOATING
  23. dores$000f15fLAG: data SCAN/list QUOTE/GARBAGE COLL
  24. subflg$001016fLAG: SUBSCRIPT REF / USER FUNCTION COLL
  25. inpflg$001117fLAG: $00 = input, $43 = get, $98 = read
  26. tansgn$001218fLAG tan SIQN / COMPARISON RESULT
  27. channl$001319fLAG: input PROMPT
  28. linnum$0014-001520-21tEMP: INTEGER VALUE
  29. temppt$001622pOINTER: TEMPORARY STRING STACK
  30. lastpt$0317-001823-24lAST TEMP STRING ADDRESS
  31. tempst$0019-002125-33sTACK FOR TEMPORARY STRINGS
  32. index1$0022-002334-35uTILITY POINTER AREA
  33. index2$0024-002536-37uTILITY POINTER AREA
  34. resho$002638
  35. resmoh$002739
  36. resmo$002840
  37. reslo$002941
  38. $002a42
  39. txttab$002b-002c43-44pOINTER: START OF basic TEXT
  40. vartab$002d-002e45-46pOINTER: START OF basic VARIABLES
  41. arytab$002e-003047-48pOINTER: START OF basic ARRAYS
  42. strend$0031-003249-50pOINTER: END OF basic ARRAYS (+1)
  43. frftop$0033-003451-52pOINTER: BOTTOM OF STRING STORAGE
  44. frespc$0035-003653-54uTILITY STRING POINTER
  45. memsiz$0037-003855-56pOINTER: HIGHEST ADDRESS USED BY basic
  46. curlin$0039-003a57-58cURRENT basic LINE NUMBER
  47. txtptr$003b-003c59-60
  48. fndpnt$003d-003f61-62
  49. datlin$003f-004063-64cURRENT data LINE NUMBER
  50. datptr$0041-004265-66pOINTER: cURRENT data ITEM ADDRESS
  51. inpptr$0043-004467-68vECTOR: input ROUTINE
  52. varnam$0045-004669-70cURRENT basic VARIABLE NAME
  53. varpnt$0047-004871-72pOINTER: cURRENT basic VARIABLE DATA
  54. forpnt$0049-004a73-74pOINTER: iNDEX VARIABLE FOR for/next
  55. opptr $0048-004c75-76
  56. opmask$004d77
  57. defpnt$004e-004f78-79
  58. dscpnt$0050-005180-81
  59. $005282
  60. helper$005383
  61. jmper$005484
  62. size$005585
  63. oldov$005686
  64. tempf1$005787
  65. highds $0058-005988-89
  66. hightr $005a-005b90-91
  67. $005c92
  68. lowds$005d-005e93-94
  69. lOwtr$005f95
  70. expsgn$006096
  71. facexp$006197fLOATING-POINT ACCUMULATOR #1: EXPONENT
  72. facho$006298fLOATING ACCUM. #1: MANTISSA
  73. facmoh$006399
  74. facmo$0064100
  75. faclO$0065101
  76. facsgn $0066102fLOATING ACCUM. #1: SIGN
  77. sgnflg $0067103pOINTER: SERIES EVALUATION CONSTANT
  78. bits$0068104fLOATING ACCUM. #1: OVERFLOW DIGIT
  79. argexp $0069105fLOATING-POINT ACCUMULATOR #2: EXPONENT
  80. argho$006a106fLOATING ACCUM. #2: MANTISSA
  81. argmoh$006b107
  82. argmo$006c108
  83. arglo$006d109
  84. argsgn $006e110fLOATING ACCUM. #2: SIGN
  85. arisgn $006f111sIGN COMPARISON RESULT: ACCUM. #1 VS #2
  86. facov$0070112fLOATING ACCUM. #1. LOW-ORDER (ROUNDING)
  87. fbufpt $0071-0072113pOINTER: CASSETTE BUFFER
  88. autinc $0073-0074115-116iNCREMENT VALUE FOR AUTO (0 = OFF)
  89. mvdflg $0075117fLAG IF 10k HIRES ALLOCATED
  90. keynum $0076118
  91. keysiz $0077119
  92. syntmp $0078120uSED AS TEMP eOR INDIRECT LOADS
  93. dsdesc $0079-0078121-123dESCRIPTOR FOR dss
  94. tos$007c-037d124-125tOP OF RUN TIME STACK
  95. tmpton $007e-007f126-127tEMPS USED BY MUSIC (TONE & VOLUME)
  96. voicno $0080128
  97. runmod $0081129
  98. point$0082130
  99. graphm $0083131cURRENT GRAPHIC MODE
  100. colsel$0084132cURRENT COLOR SELECTED
  101. mc1$0085133mULTICOLOR 1
  102. fg$0086134fOREGROUND COLOR
  103. scxmax$0087135mAXIMUM # OF COLUMNS
  104. scymax $0088136mAXIMUM # OF ROWS
  105. ltflag $0089137pAINT-LEFT FLAG
  106. rtflag$008a138pAINT-rIGHT FLAG
  107. stopnh$008b139sTOP PAINT IF NOT bg (nOT SAME cOLOR)
  108. grapnt$008c-008d140-141
  109. vtemp1$008e142
  110. vtemp2 $008f143
  111.  
  112. status $0090144kERNAL i/o STATUS WORD: st
  113. strey$0091145fLAG: stop KEY / rvs KEY
  114. spverr$0092146tEMP
  115. verfck $0093147fLAG:  0 = LOAD,  1 = VERIFY
  116. c3po$0094148pLAG: SERIAL BUS - OUTPUT CHAR BUFFERED
  117. bsour$0095149bUFFERED CHARACTER FOR SERIAL BUS
  118. xsav$0096150tEMP FOR BASIN
  119. ldtnd$0097151# OF OPEN FILES / INDEX TO FILE TABLE
  120. dfltn$0098152dEFAULT INPUT DEVICE (0)
  121. dflto$0099153dEFAULT OUTPUT (cmd) DEVICE (3)
  122. msgflg $009a154fLAG:$80 = DIRECT MODE  $00 = PROGRAM
  123. sal$009b155tAPE PASS 1 ERROR LOG
  124. sah$009c156tAPE PASS 2 ERROR LOG
  125. eal$009d157
  126. eah$009e158
  127. t1$009f-00a0159-160tEMP DATA AREA
  128. t2$00a1-00a2161-162tEMP DATA AREA
  129. time$00a3-00a5163-165rEAL-TIME JIFFY CLOCK (APPROX) 1/60 SEC
  130. r2d2$00a6166sERIAL BUS USAGE (eoi ON OUTPUT)
  131. tpbyte$00a7167bYTE TO BE WRITTEN/READ ON/OFF TAPE
  132. bsour1$00a8168tEMP USED BY SERIAL ROUTINE
  133.  
  134. fpverr$00a9169
  135. dcount$00aa170
  136. fnlen$00a8171lENGTH OF CURRENT FILE NAME
  137. la$00ac172cURRENT LOGICAL FIIE NUMBER
  138. sa$00ad173cURRENT SECONDA.Y ADDRESS
  139. fa$00ae174cURRENT DEVICE NUMBER
  140. fnadr$00af-00b0175-176pOINTER: CURRENT FILE NAME
  141. errsum$00b1177
  142. stal $00b2178 i/o START ADDRESS
  143. stah $00b3179
  144. memuss$00b4-00b5180-181lOAD RAM BASE
  145. tapebs$00b6-00b7182-183bASE POINTER TO CASSETTE BASE
  146. tmp2 $00b8-00b9184-185
  147. wrbase$00ba-00bb186-187pOINTER TO DATA FOR TAPE WRITES
  148. imparm$00bc-00bd188-189pOINTER TO IMMEDIATE STRING FOR PRIMMS
  149. fetptr$00be-00bf190-191pOINTER TO BYTE TO BE FETCHED IN BANK FETC
  150. sedsal$00c0-00c1192-193tEMP FOR SCROLLING
  151. rvs$00c2194rvs FIELD FLAG ON
  152. indx $00c3195
  153. lsxp $00c4196x POSITION AT START
  154. lstp $00c5197
  155. sfdx $00c6198fLAG: SHIFT MODE FOR PRINT
  156. crsw $00c7199fLAG: input OR get FROM KEYBOARD
  157. pnt$00c8-00c9200-201pOINTER: CURRENT SCREEN LINE ADDRESS
  158. pntr $00ca202cURSOR COLUMN ON CURRENT LINE
  159. qtsw $00cb203fLAG: EDITOR IN QUOTE MODE, $00 = NO
  160. sedt1$00cc204eDITOR TEMP USE
  161. tblx$00cd205cURRENT CURSOR PHYSICAL LINE NUMBER
  162. datax$00ce206tEMP DATA AREA
  163. insrt$00cf207fLAG: INSERT MODE, >0 = # instS
  164. $00d0-$00d7208-215aREA FOR USE BY SPEECH SOFTWARE
  165. $00d8-00e8216-232aREA FOR USE BY APPLICATION SOFTWARE
  166. cirseg$00e9233sCREEN LINE LINK TABLE / EDITOR TEMPS
  167. user$00ea-00eb234-235sCREEN EDITOR COLOR ip
  168. keytab$00ec-00ed236-237kEY SCAN TABLE INDIRECT
  169. tmpkey$00ee238
  170. ndx$00ef239iNDEX TO KEYBOARD QUEUE
  171. stpflg$00f0240pAUSE FLAG
  172. to$00f1-00f2241-242mONITOR zp STORAGE
  173. chrptr$00f3243
  174. bufend$00f4244
  175. chksum$00f5245tEMP FOR CHECKSUM CALCULATION
  176. length$00f6246
  177. pass$00f7247wHICH PASS WE ARE DOING STR
  178. type$00f8248tYPE OF BLOCK
  179. use4dy$00f9249(b.7 = 1)=> FOR WR, (b.6 = 1)=> FOR RD
  180. xstop$00fa250sAVE XREG FOR QUICK STOPKEY TEST
  181. curbnk$00fb251cURRENT BANK CONFIGURATION
  182. xOn$00fc252cHAR TO SEND FOR A X-ON (rs232)
  183. xOff$00fd253cHAR TO SEND FOR A X-OFF (rs232)
  184. sedt2$00fe254eDITOR TEMPORARY USE
  185. lofbuf$00ff255
  186.  
  187.  
  188. fbuffr$0100-$010f256-271
  189. savea$0110272tEMP lOCATIONS FOR
  190. savey$0111273...  FOR sAVE AND
  191. savex$0112274...  rESTORE
  192. colkey$0113-0122275-289cOLOR/LUMINANCE TABLE IN ram
  193. sysstk$0124-01ff291-511sYSTEM STACK
  194.  
  195. buf$0200-0258512-606bASIC/MONITOR INPUT BUFFER
  196. oldlin$0259-025a601-602bASIC STORAGE
  197. oldtxt$025b-025c603-604bASIC STORAGE
  198.  
  199. $025d-02ac605-684basic/dos interface area
  200. xcnt $025ddos LOOP COUNTER
  201. pnbufr$025e-026daREA FOR FILENAME
  202. dosf1l$026edos FILENAME 1 LENGTH
  203.  
  204. dosds1$026fdos DISK DRIVE 1
  205. dosf1a$0270-0271dos FILENAME 1 ADDR
  206. dosf2l$0272dos FILENAME 2 LENGTH
  207. dosds2$0273dos DISK DRIVE 2
  208. dosf2a$0274-0275dos FILENAME 2 ADDR
  209. dosla$0276dos LOGICAL ADDRESS
  210. dosea$0277dos PHYS ADDR
  211. dossa$0278dos SECORDARY ADDRESS
  212. dosdid$0279-027ados DISK IDENTIFIER
  213. didchk$0278dos did FLAG
  214. dosstr$027cdos OUTPUT STRING BUFFER
  215. dosspc$027d-02acaREA USED TO BUILD dos STRING
  216.  
  217.  
  218. gRAPHICS vARIABLES
  219.  
  220. xpos$02ad-02ae685-686cURRENT X POSITION
  221. ypos$02ae-02b0687-688cURRENT Y POSITION
  222. xdest $02b1-02b2689-690x COORDINATE DESTINATION
  223. ydest $02b3-02b4691-692y COORDINATE DESTINATION
  224. xabs$02b5-02b6693-694
  225. yabs$02b7-028869s-696
  226. xsgn$02b9-02ba697-69b
  227. ysgn$02bb-028c699-700
  228. fct1$02bd-02be701-702
  229. fct2$02bf-02c0703-704
  230. errval$02c1-02c2705-706
  231. lesser$02c3707
  232. greatr$02c4708
  233. angsgn$02c5709sIGN OF ANGLE
  234. sinval$02c6-02c7710-711sINE OF VALUE OF ANGLE
  235. cosval$02c8-02c9712-713cOSINE OF VALUE OF ANGLE
  236. angcnt$02ca-02cb714-715tEMPS FOR ANGLE DISTANCE ROUTINES
  237.  
  238.  
  239. sTART OF MULTIPLY DEFINED AREA #1
  240.  
  241. $02cc716pLACEHOLDER
  242. bnr$02cd717pOINTER TO BEGIN NO.
  243. enr$02ce718pOINTER TO END NO.
  244. dolr$02cf719dOLLAR FLAG
  245. flag$02do720cOMMA FLAG
  246. swe$02d1721cOUNTER
  247. usgn$02d2722sIGN EXPONENT
  248. uexp$02d3723pOINTER TO EXPONENT
  249. vn$02d4724# OF DIGITS BEFORE DECIMAL POINT
  250. chsn$02d5725jUSTIFY FLAG
  251. vf$02d6726# OF POS BEFORE DECIMAL POINT (FIELD)
  252. nf$02d7727# OF POS AFTER DECIMAL POINT (FIELD)
  253. posp$02d8728+/- FLAG (FIELD)
  254. fesp$02d9729eXPONENT FLAG (FIELD)
  255. etof$02da730sWITCH
  256. cform$02d8731cHAR COUNTER (FIELD)
  257. sno$02dc732sIGN NO.
  258. blfd$02dd733bLANK/STAR FLAG
  259. begfd$02de734pOINTER TO BEGINNING OF FIELD
  260. lfor$02df735lENGTH OF FORMAT
  261. endfd$02e0736pOINTER TO END OF FIELD
  262.  
  263. xcentr$02cc-02cd716-717
  264. ycentr$02ce-02cf718-719
  265. xdist1$02d0-02d1720-721
  266. ydist1$02d2-02d3722-723
  267. xdist2$02d4-02d5724-725
  268. ydist2$02d6-02d7726-727
  269. $02d8-02d0728-729pLACEHOLDER
  270.  
  271. colcnt$02da730cHARACTERS COLUMN COUNTER
  272. rowcnt$02db731cHARACTERS ROW COUNTER
  273. strcnt$02dc732
  274.  
  275.  
  276. sTART OF MULTIPLY DEFINED AREA #2
  277.  
  278. xcord1$02cc-02cd716-717
  279. ycord1$02ce-02cf718-719
  280. boxang$02d0-02d1720-721rOTATION ANGLE
  281. xcount$02d2-02d3722-723
  282. ycount$02d4-02d5724-725
  283. bxleng$02d6-02d7726-727lENGTH OF A SIDE
  284. xcord2$02d8-02d9728-729
  285. ycord2$02da-02db730-731
  286.  
  287. xcircl$02cc-02cd716-717cIRCLE CENTER, X COORDINATE
  288. ycircl  $02ce-02cf718-719cIRCLE CENTER, Y COORDINATE
  289. xradus$02d0-02d1720-721x RADIUS
  290. yradus$02d2-02d3722-723y RADIUS
  291. rotang$02d4-02d5724-725rOTATION ANGLE
  292. angbeg$02d8-02d9728-729aRC ANGLE START
  293. angend$02da-02db730-731aRC ANGLE END
  294. xrcos$02dc-02dd732-733x RADIUS * COS (ROTATION ANGLE)
  295. yrsin $02de-02df734-735y RADIUS * SIN (ROTATION ANGLE)
  296. xrsin $02e0-02e1736-737x RADIUS * SIN (ROTATION ANGLE)
  297. yrcos$02e2-02e3738-739y RADIUS * COS (ROTATION ANGLE)
  298.  
  299.  
  300. sTART OF MULTIPLY DEFINED AREA #3
  301.  
  302. $02cc716pLACEHOLDER
  303. keylen$02cd717
  304. keynxt$02ce718
  305. strs2$02ce719sTRING LENGTH
  306. gettyp$02d0720rEPLACE STRING MODE
  307. strptr$02d1721sTRING POSITION COUNTER
  308. oldbyt$02d2722oLD BIT MAP BYTE
  309. newbyt$02d3723nEW STRING OR BIT MAP BYTE
  310. $02d4724pLACEHOLDER
  311. xsi2e$02d5-02d6725-726sHAPE COLUMN LENGTH
  312. ysize$02d7-02d8727-728sHAPE ROW LENGTH
  313. xsave$02d9-02da729-730tEMP FOR COLUMN LENGTH
  314. stradr$02d8-02dc731-732sAVE SHAPE STRING DESCRIPTOR
  315. bitidx$02dd733bIT INDEX INTO BYTE
  316. saysiz$02de-02e1734-737 tEMPORARY WORK LOCATIONS
  317.  
  318. chrpag$02e4740hIGH BYTE ADDR OF CHAR rom FOR CHAR CMD
  319. litcnt$02e5741tEMP FOR GSHAPE
  320. scalem$02e6742sCALE MODE FLAG
  321. width$02e7743dOUBLE WIDTH FLAG
  322. filflg$02e8744bOX FILL FLAG
  323. bitmsk$02e9745tEMP FOR BIT MASK
  324. numcnt$02ea746
  325. trcflg$02eb747fLAGS TRACE MODE
  326.  
  327. t3$02ec748
  328. t4$02ed-02ee749-750
  329. vtemp3$02ef751gRAPHIC TEMP STORAGE
  330. vtemp4$02f0752
  331. vtemp5$02f1753
  332.  
  333. adray1$02e2-02f3754-755pTR TO ROUTINE: CONVERT FLOAT TO INTEGER
  334. adray2$02f4-02f5756-757pTR TO ROUTINE: CONVERT INTEGER TO FLOAT
  335.  
  336. bnkvec$02fe-02ff766-767 vECTOR FOR FUNCTION CARTRIDGE USERS
  337. ierror$0300-0301768-769 iNDIRECT eRROR (oUTPUT eRROR IN .x)
  338. imain$0302-0303770-771 iNDIRECT mAIN (sYSTEM dIRECT lOOP)
  339. icrnch$0304-0305772-773 iNDIRECT cRUNCH (tOKENIZATION rOUTINE)
  340. ioplop$0306-0307774-775 iNDIRECT lIST (cHAR lIST)
  341. igone$0308-0309776-777 iNDIRECT gONE (cHARACTER dISPATCH)
  342. ieval$030a-0303778-779 iNDIRECT eVAL (sYMBOL eVALUATION)
  343. iesclk$030c-030d780-781 eSCAPE TOKEN CRUNCH
  344. iescpr$030e-030f782-783
  345. iescex$0310-0311784-785
  346. itime $0312-0313786-787
  347. cinv$0314-03157b8-789irq rAM vECTOR
  348. cbinv$0316-0317790-791 brk iNSTR ram vECTOR
  349. iopen $0318-0319792-793iNDIRECTS FOR cODE
  350. iclose$031a-031b794-795
  351. ichkin$031c-031d796-797
  352. ickout$031e-031f798-799
  353. iclrch$0320-0321800-801
  354. ibasin$0322-0323802-803
  355. ibsout$0324-q325804-805
  356. istop $0326-0327806-807
  357. igetin$0328-0329808-809
  358. iclall$032a-032b810-811
  359. usrcmd$032c-032d812-813
  360. iload $032e-032e814-815
  361. isave $0330-0331816-817sAVESP
  362.  
  363. tapbuf$0333-03f2819-1010cASSETTE TAPE BUFFER
  364. wrlen$03f3-03f41011-1012lENGTH OF DATA TO BE WRITTEN TO TAPE
  365. rdcnt $03f5-03f61013-1014lENGTH OF DATA TO BE READ FROM TAPE
  366. inpque $03f7-04361015-1078rs-232 INPUT QUEUE
  367. estarl$0437-04541079-1108
  368. estakh$0455-04721109-1138
  369.  
  370. chrget$0473-04781139-1144
  371. chrgot$04?9-04841145-1156
  372. qnum$0485-04931157-1171
  373.  
  374. indsub$0494-04a11172-1185sHARED rom FETCH SUB
  375. zero $04a2-04a41186-1188nUMERIC CONSTANT FOR bASIC
  376.  
  377. indtxt$04a5-04af1189-1199tXTPTR
  378. indin1$04b0-04ba1200-1210iNDEX & iNDEX1
  379. indin2$04bb-04c51211-1221iNDEX2
  380. indst1$04c6-04d01222-1232sTRNG1
  381. indlow$04d1-04db1233-1243lOWTR
  382. indfmo$04dc-04e61244-1254fACMO
  383.  
  384. pufill$04e71255pRINT USING FILL SYMBOL [SPACE]
  385. pucoma$04e81256pRINT USING COMMA SYMBOL [;]
  386. pudot $04e91257pRINT USING d.p. SYMBOL  [.]
  387. pumony$04ea1258pRINT USING MONETARY SYMBOL [$]
  388.  
  389. tmpdes$04eb-04ee1259-1262tEMP FOR INSTR
  390. errnum$04ef1263lAST ERROR NUMBER
  391. errlin$04f0-04f11264-1265lINE # OF LAST ERROR
  392. trapno$04f2-04f31266-1267lINE TO GO ON ERROR
  393. tmptrp$04f41268hOLD TRAP NO. TEMPORARILY
  394. errtxt$04f5-04e61269-1270
  395. oldstr$04f71271
  396.  
  397. tmptxt$04f8-04f91272-1273
  398. tmplin$04fa-04f81274-1275
  399.  
  400. mtimlo$04fc-04fd1276-1277tABLE OF PENDING JIFFIES (2'S COMP)
  401. mtimhi$04fe-04ff1278-1279
  402. usrpok$0500-05021280-1282
  403. kerndx$0503-05071283-1287
  404. dejavu$05081288'COLD' OR 'WARM' START STATUS
  405.  
  406. lat$0509-05121289-1298lOGICAL FILE NUMBERS
  407. fat$0513-051c1299-1308pRIMARY DEVICE NUMBERS
  408. sat$051d-05261309-1318sECONDARY ADDRESSES
  409.  
  410. keyd$0527-05301319-1328irq KEYBOARD BUFFER
  411. memstr$0531-05321329-1330sTART OF MEMORY [1000]
  412.  
  413. msiz$0533-0534 1331-1332tOP OF MEMORY [fd00]
  414. timout$05351333ieee TIMEOUT FLAG
  415.  
  416. filend$05361334fILE END REACHED = 1, 0 OTHERWISE
  417. ctally$05371335# OF CHARS LEFT IN BUFFER (FOR r & w)
  418. cbufva$05381336# OF TOTAL VALID CHARS IN BUFFER (r)
  419. tptr$05391337pTR TO NEXT CHAR IN BUFFER (FOR r & w)
  420. fltype$053a1338cONTAINS TYPE OF CURRENT CASS FILE
  421.  
  422. color$053b1339aCTIVE ATTRIBUTE BYTE
  423. flash$053c1340cHARACTER FLASH FLAG
  424. $053d1341free
  425. hibase$053e1342oc bASE LOCATION OF SCREEN (TOP) [0c]
  426. xmax $053f1343
  427. rptflg$05401344kEY REPEAT FLAG
  428. kouut$05411345
  429. delay$05421346
  430. shflag$05431347sHIFT FLAG BYTE
  431. lstshf$05441348lAST SHIFT PATTERN
  432. keylog$0545-05461349-1350iNDIRECT FOR KEYBOARD TABLE SETUP
  433. mode $05471351SHIFT, c=
  434. autodn$05481352aUTO SCROLL DOWN FLAG (0=ON,0<>OFF)
  435. lintmp$05491353
  436. rolflg$054a1354
  437.  
  438. format$054b1355mONITOR NON-ZPAGE STORAGE
  439. msal $054c-054e1356-1358
  440. wrap $054f1359
  441. tmpc $05501360
  442. diff $05511361
  443. pch$05521362
  444. pcl$05531363
  445. flgs $05541364
  446. acc$05551365
  447. xr$05561366
  448. yr$05571367
  449. sp$05581368
  450. inyl $05591369
  451. invh $055a1370
  452. cmpflg$055b1371uSED BY VARIOUS MONITOR ROUTINES
  453. bad$055c1372
  454.  
  455. kyndx$055d1373uSED FOR PROGRAMMABLE KEYS
  456. keyidx$055e1374
  457. keybuf$055f-05661375-1382tABLE OF p.f. LENGTHS
  458. pky9uf$0567-05e61383-1510p.f. kEY STORAGE AREA
  459.  
  460. kdata$05e71511tEMP FOR DATA WRITE TO KENNEDY
  461. rdycmd$05e81512sELECT FOR KENNEDY READ OR WRITE
  462. kdynum$05e91513kENNEDY'S DEV #
  463. rdyprs$05ea1514rENNEDY PRESENT = $FF, ELSE = $00
  464. kdytyp$05eb1515tEMP FOR TYPE OF OPEN FOR KENNEDY
  465.  
  466.  
  467. savram$05ec-06e81516-17711 PAGE USED BY BANKING ROUTINES
  468. pat$05ec-05ef1516-1519pHYSICAL aDDRESS tABLE
  469. lngjmp$05f0-05f11520-1521lONG JUMP ADDRESS
  470. fetarg$05f21522lONG JUMP ACCUMULATOR
  471. fetxrg$05f31523lONG JUMP X REGISTER
  472. fetsrg$05f41524lONG JUMP STATUS REGISTER
  473.  
  474. areas$05f5-065d1525-1629ram AREAS FOR BANKING
  475.  
  476. aspech$065e-06eb1630-1771ram AREA FOR SPEECH
  477.  
  478. stktop$06ec-07af1772-1967basic RUN-TIME STACK
  479.  
  480. wrout$07b01968bYTE TO BE WRITTEN ON TAPE
  481. parity$07b11969tEMP FOR PARITY CALC
  482.  
  483. tt1$07b21970tEMP FOR WRITE-HEADER
  484. tt2$07b31971tEMP FOR WRITE-HEADER
  485. rdbits$07b51973lOCAL INDEX FOR readbyte ROUTINE
  486. errsp$07b61974pOINTER INTO THE ERROR STACK
  487. fperrs$07b71975nUMBER OF FIRST PASS ERRORS
  488.  
  489. dsamp1$07b8-07b91976-1977tIME CONSTANT
  490. dsamp2$07ba-07bb1978-1979tIME CONSTANT
  491. zcell $07bc-07bd1980-1981tIME CONSTANT
  492.  
  493. srecov$07be1982sTACK MARKER FOR STOPKEY RECOVER
  494. drecov$07bf1983sTACK MARKER FOR DROPKEY RECOVER
  495. trsave$07c0-07c31984-1987PARAMS PASSED TO rdblok
  496. rdetmp$07c41988tEMP STAT SAVE FOR rdblok
  497. ldrscn$07c51989# CONSEC SHORTS TO FIND IN LEADER
  498. cderrm$07c61990# eRRORS FATAL IN rd COUNTDOWN
  499. vsave $07c71991tEMP FOR vERIFY COMMAND
  500. t1pipe$07c8-A7cb1992-1995pIPE TEMP FOR t1
  501. enext$07cc1996rEAD ERROR PROPAGATE
  502.  
  503.  
  504. for rs-232
  505.  
  506. uoutq$07cd1997uSER CHRACTER TO SEND
  507. uoutfg$07ce19980 = EMPTY ; 1 = FULL
  508. sout9$07cf1999sYSTEM CHARACTER TO SEND
  509. sounfg$07d020000 = EMPTY ; 1 = FULL
  510. inofpt$07d12001pNTR TO FRONT OF INPUT QUEUE
  511. inqrpt$07d22002pNTR TO REAR OF INPUT QUEUE
  512. inqcnt$07d32003# OF CHARS IN INPUT QUEUE
  513. astat$07d42004tEMP STATUS FOR acia
  514. aintmp$07d52005tEMP FOR INPUT ROUTINE
  515. alstop$07d62006flg FOR LOCAL PAUSE
  516. arstop$07d72007flg FOR REMOTE PAUSE
  517. apres $07d82008flg TO INDICATE PRESENCE OF acia
  518.  
  519. rludes$07d9-07e42009-2020iNDIRECT ROUTINE DOWNLOADED
  520. scbot$07e52021sCREEN BOTTOM (0...24)
  521. sctop$07e62022sCREEN TOP
  522. sclf$07e72023sCREEN LEFT (0...39)
  523. scrt$07e82024sCREEN RIGHT
  524. scrdis$07e92025nEGATIVE = SCROLL OUT
  525. insflg$07ea2026iNSERT MODE: ff = ON, 00 = OFF
  526. lstchr$07eb2027
  527. logscr$07ec2028
  528. tcolor$07ed2029
  529. bitabl$07ee-07f12030-2033
  530.  
  531. sareg$07f22034rEGISTERS FOR sys COMMAND
  532. sxreg $07f32035
  533. syreg $07f42036
  534. spreg $07f52037
  535.  
  536. lstx$07f62038kEY SCAN INDEX
  537. stpdsb$07f72039fLAG TO DISABLE ctrl-s PAUSE
  538. ramrom$07f82040msb FOR MONITOR FETCHES FROM rom=0;ram=1
  539. colsw $07f92041msb FOR COLOR/LIM TABLE IN ram=0;rom=1
  540. ffrmsk$07fa2042rom MASK FOR SPLIT SCREEN
  541. vmbmsk$07fb2043vm BASE MASK FOR SPLIT SCREEN
  542. lsem$07fc2044mOTOR LOCK SEMAPHORE FOR CASSETTE
  543. palcnt$07fd2045pal TOD
  544.  
  545.  
  546. tedatr$0800-0bff2048-3071ted ATTRIBUTE BYTES
  547. tedscn$0c00-0fff3072-4095ted CHARACTER POINTERS
  548. basbgn$1000-4096-sTART OF basic TEXT AREA
  549. bmlum$1800-1bff6144-7167lUMINANCE FOR BIT MAP SCREEN
  550. bmcolr$1c00-1fff7168-8191cOLOR FOR BIT MAP
  551.  
  552.         cOMMODORE 16 AND PLUS/4 mEMORY cONFIGURATION
  553.  
  554. $0000 sYSTEM MEMORY
  555. $0800 cOLOR MEMORY (tEXT)
  556. $0c00 vIDEO MATRIX (tEXT)
  557. $1000 bEGINNING OF basic ram (WITHOUT GRAPHICS)
  558. $1800 lUMINANCE (gRAPHICS)
  559. $1c00 cOLOUR TABLE (gRAPHICS)
  560. $2000 gRAPHICS SCREEN DATA
  561. $4000 bEGINNING OF basic ram (WITH GRAPHICS)
  562. $8000 rom bank low (basic)
  563. $c000 basic EXPANSIONS
  564. $d000 cHARACTER TABLE
  565. $d800 oPERATING SYSTEM
  566. $fc00 rOUTINES FOR SWITCHING BANKS
  567. $fd00 eND OF basic ram, i/o AREA
  568.  
  569. aCCORDING TO THE SCHEMATICS DIAGRAM, $fd00-$ff3f CONTAINS THE FOLLOWING,
  570. REGARDLESS OF THE ram/rom BANKING CONFIGURATION:
  571.  
  572. $fd00-fd0f: 6551 acia (FOR THE rs232, ONLY ON THE +4.  4 REGISTERS.)
  573. $fd10-fd1f: 6529b (1 REGISTER, DRIVES 8 i/o-LINES ON THE +4 USER PORT)
  574. $fd30-fd3f: 6529b (1 REGISTER, KEYBOARD SCAN. tHE OTHER 8 LINES COME FROM ted)
  575.  
  576. $ff00: ted (REGISTERS SHOWN BELOW)
  577. $ff40: rom
  578.  
  579. 0 tIMER 1 LOW
  580. 1 tIMER 1 HIGH
  581. 2 tIMER 2 LOW
  582. 3 tIMER 2 HIGH
  583. 4 tIMER 3 LOW
  584. 5 tIMER 3 HIGH
  585. 6       tEST    ecm     bmm     bLANK   rOWSy2      y1      y0
  586. 7       rvs OFF pal     fREEZE  mcm     cOLUMNSx2      x1      x0
  587. 8 kEYBOARD lATCH
  588. 9       irq     i-t3    -       i-t2    i-t1    i-lp    i-ras   -
  589. a       -       ei-t3   -       ei-t2   ei-t1   ei-lp   ei-ras  rc8
  590. b       rc7     rc6     rc5     rc4     rc3     rc2     rc1     rc0
  591. c       -       -       -       -       -       -       c9      cur8
  592. d       cur7    cur6    cur5    cur4    cur3    cur2    cur1    cur0
  593. e       snd1-7  snd1-6  snd1-5  snd1-4  snd1-3  snd1-2  snd1-1  snd1-0
  594. f       snd2-7  snd2-6  snd2-5  snd2-4  snd2-3  snd2-2  snd2-1  snd2-0
  595. 10      -       -       -       -       -       -       snd2-9  snd2-8
  596. 11      snd-rel nOISE   v2-sel  v1-sel  vol3    vol2    vol1    vol0
  597. 12      -       -       bmb2    bmb1    bmb0    r-bANK  s1-9    s1-8
  598. 13      cb5     cb4     cb3     cb2     cb1     cb0     sclock  sTATUS
  599. 14      vm4     vm3     vm2     vm1     vm0     -       -       -
  600. 15      -       lum2    lum1    lum0    color3  color2  color1  color0
  601. 16      -       lum2    lum1    lum0    color3  color2  color1  color0
  602. 17      -       lum2    lum1    lum0    color3  color2  color1  color0
  603. 18      -       lum2    lum1    lum0    color3  color2  color1  color0
  604. 19      -       lum2    lum1    lum0    color3  color2  color1  color0
  605. 1a      -       -       -       -       -       -       bre9    bre8
  606. 1b      bre7    bre6    bre5    bre4    bre3    bre2    bre1    bre0
  607. 1c      -       -       -       -       -       -       -       vl8
  608. 1d      vl7     vl6     vl5     vl4     vl3     vl2     vl1     vl0
  609. 1e      h8      h7      h6      h5      h4      h3      h2      h1
  610. 1f      -       bl3     bl2     bl1     bl0     vsub2   vsub1   vsub0
  611.  
  612. 3e wRITE SWITCHES ON rom BANK
  613. 3f wRITE SWITCHES ON ram BANK
  614.  
  615. $ff0e65294vOICE #1 FREQUENCY, BITS 0-7
  616.  
  617. $ff0f65295vOICE #2 FREQUENCY, BITS 0-7
  618.  
  619. $ff1065296vOICE #2 FREQUENCY, BITS 8 & 9
  620. (BIT 0 IS BIT 8, BIT 1 IS BIT 9)
  621.  
  622. $ff1165297bITS 0-3 : vOLUME CONTROL
  623. bIT 4: vOICE #1 SELECT
  624. bIT 5: vOICE #2 SELECT
  625. bIT 6: vOICE #2 NOISE SELECT
  626. bIT 7: sOUND RELOAD
  627.  
  628. $ff1265298bIT 0-1 : vOICE #1 FREQUENCY, BITS 8 & 9
  629. bIT 2 : ted DATA FETCH rom/ram SELECT
  630. bITS 0-5 : bIT MAP BASE ADDRESS
  631.  
  632. $ff1365299bIT 0 :cLOCK STATUS
  633. bIT 1 :sET SINGLE CLOCK
  634. bITS 2-7 : cHARACTER DATA BASE ADDRESS
  635.  
  636. $ff1465309bITS 3-7 : vIDEO MATRIX/COLOR MEMORY BASE ADDRESS
  637.  
  638. $ff1565301bACKGROUND COLOR REGISTER
  639. bITS 0-3 : cOLOR
  640. bITS 4-6 : lUMINANCE
  641.  
  642. $ff1665302cOLOR REGISTER #1
  643. bITS 0-3 : cOLOR
  644. bITS 4-6 : lUMINANCE
  645.  
  646. $ff1765303cOLOR REGISTER #2
  647. bITS 0-3 : cOLOR
  648. bITS 4-6 : lUMINANCE
  649.  
  650. $ff1865304cOLOR REGISTES #3
  651. bITS 0-3 : cOLOR
  652. bITS 4-6 : lUMINANCE
  653.  
  654. $ff1965305cOLOR REGISTER #4
  655. bITS 0-3 : cOLOR
  656. bITS 4-6 : lUMINANCE
  657.  
  658. $ff1a65306bIT MAP RELOAD
  659.  
  660. $ff1b65307bIT MAP RELOAD
  661.  
  662. $ff1c65308bIT 0 : vERTICAL LINE BIT 8
  663.  
  664. $ff1d65309bITS 0-7 : vERTICAL LINE BITS 0-7
  665.  
  666. $ff1e65310hORIZONTAL POSITION
  667.  
  668. $ff1f65311bLINK, VERTICAL SUB ADDRESS
  669.  
  670. $ff3e65342rom SELECT
  671.  
  672. $ff3f65343ram SELECT
  673.  
  674.  
  675.  
  676.   banking jump table
  677.  
  678. $fcf164753jmp TO CARTRIDGE irq ROUTINE
  679. $fcf464756jmp TO phoenix ROUTINE
  680. $fcf764759jmp TO long fetch ROUTINE
  681. $fcfa64762jmp TO long jump ROUTINE
  682. $fcfd64765jmp TO long irq ROUTINE
  683.  
  684.  
  685.   unofficial jump table
  686. $ff49  65353jmp TO DEFINE FUNCTION KEY ROUTINE
  687. $ff4c  65356jmp TO print ROUTINE
  688. $ff4f  65359jmp TO primm ROUTINE
  689. $ff52  65362jmp TO entry ROUTINE
  690. $ff80  65408release # of kernal (msb: 0 = ntsc ; 1 = pal)
  691.  
  692.  
  693.   kernal jump table
  694.  
  695. ; name     addressdescription
  696. ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  697. cint$ff8165409iNITIALIZE SCREEN EDITOR
  698. ioinit$ff8465412iNITIALIZE i/o DEVICES
  699. ramtas$ff8765415rAM TEST
  700. restor$ff8a65418rESTORE VECTORS TO INITIAL VALUES
  701. vector$ff8d65421cHANGE VECTORS FOR USER
  702. setmsg$ff9065424cONTROL o.s. MESSAGES
  703. secnd$ff9365427sEND sa AFTER listen
  704. tksa$ff9665430sEND sa AFTER talk
  705. memtop$ff9965433sET/rEAD TOP OF MEMORY
  706. membot$ff9c65436sET/rEAD BOTTOM OF MEMORY
  707. scnkey$ff9f65439sCAN KEYBOARD
  708. settmo$ffa265442sET TIMEOUT IN dma DISK
  709. acptr$ffa565445hANDSHAKE SERIAL BUS OR dma DISK BYTE IN
  710. ciOut$ffa865448hANDSHAKE SERIAL BUS OR dma DISK BYTE OUT
  711. untlr$ffab65451sEND untalk OUT SERIAL BUS OR dma DISK
  712. unlsn$ffae65454sEND unlisten OUT SERIAL BUS OR dma DISK
  713. listn$ffb165457sEND listen OUT SERIAL BUS OR dma DISK
  714. talk$ffb465460sEND talk OUT SERIAL BUS OR dma DISK
  715. readss$ffb765463rETURN i/o status BYTE
  716. setlfssef8a65466sET la, fa, sa
  717. setnam$ffbd65469sET LENGTH AND fn ADDRESS
  718. open $ffc065472oPEN LOGICAL FILE
  719. close$ffc365475cLOSE LOGICAL FILE
  720. chkin$ffc665478oPEN CHANNEL IN
  721. chout$fec965481OPEN CHANNEL OUT
  722. clrch$fecc65484cLOSE i/o CHANNELS
  723. 8asin$ffcf65487iNPUT FROM CHANNEL
  724. bsout$ffd265490OUTPUT TO CHANNEL
  725. loadsp$ffd565493lOAD FROM FILE
  726. sayesp$ffd865496sAVE TO FILE
  727. settim$ffdb65499sET INTERNAL CLOCK
  728. rdtim$ffde65502rEAD INTERNAL CLOCK
  729. stop$ffe16s50ssCAN stop KEY
  730. getin$ffe465508gET CHARACTER FROM QUEUE
  731. clall$ffe765511cLOSE ALL FILES
  732. udtim$ffea65514iNCREMENT CLOCK
  733. scrorg$ffed65517sCREEN ORG.
  734. plot $fff065520rEAD/sET x,y COORD OF CURSOR
  735. iobase$fff365523rETURN LOCATION OF START OF i/o
  736.  
  737.