; ; Commodore 128 ROM Memory Map ; with RAM Subroutines ; ; ; Data types in headers (for reassembler): ; ; DATA Misc data ; TEXT String terminated with 00 ; WORD Vectors in LO/HI byte pairs ; CHIP I/O Area ; EMPTY ROM containing FF's ; ; ; C128 RAM Subroutines ; 0002 Bank Number, Jump to SYS address 0056 Jump vector for functions 02a2 Bank Peek Subroutine 02af Bank Poke Subroutine 02be Bank Compare Subroutine 02cd JSR to another bank 02e3 JMP to another bank 0380 CHRGET 0386 CHRGOT entry 0390 ? 039f Fetch From Bank 0 03ab Fetch From Bank 1 03b7 Fetch From Bank 1 03c0 Fetch From Bank 0 03c9 Fetch From Bank 0 03f0 DMA Link Code ; ; BASIC v7.0 interpreter ROM ($4000 - $AFFF) ; 4000 Basic Entry Jumps 4009 Basic Restart 4023 Basic Cold Start 4045 Set-Up Basic Constants 4112 Chime 417a Set Preconfig Registers 4189 Registers For $D501 DATA 418d Init Sprite Movement Tabs 419b Print Startup Message 41bb Startup Message DATA 4251 Set Basic Links 4267 Basic Links DATA 4279 Chrget For $0380 42ce Get From ($50) Bank1 42d3 Get From ($3f) Bank1 42d8 Get From ($52) Bank1 42dd Get From ($5c) Bank0 42e2 Get From ($5c) Bank1 42e7 Get From ($66) Bank1 42ec Get From ($61) Bank0 42f1 Get From ($70) Bank0 42f6 Get From ($70) Bank1 42fb Get From ($50) Bank1 4300 Get From ($61) Bank1 4305 Get From ($24) Bank0 430a Crunch Tokens 43e2 Check Keyword Match 4417 Keywords DATA 46fc Action Vectors WORD 47d8 Function Vectors WORD 4828 Defunct Vectors WORD 4846 Unimplemented Commands 484b Messages DATA 4a82 Find Message 4b34 Update Continue Pointer 4b3f Execute/Trace Statement 4bcb Perform [stop] 4bcd Perform [end] 4bf7 Setup FN Reference 4c86 Evaluate <or> 4c89 Evaluate <and> 4cb6 Evaluate <compare> 4d2a Print 'ready' 4d2d 'ready.' TEXT 4d37 Error or Ready 4d3a Print 'out of memory' 4d3c Error 4daf Break Entry 4dc3 Ready For Basic 4de2 Handle New Line 4f4f Rechain Lines 4f82 Reset End-of-Basic 4f93 Receive Input Line 4faa Search B-Stack For Match 4ffe Move B-Stack Down 5017 Check Memory Space 5047 Copy B-Stack Pointer 5050 Set B-Stack Pointer 5059 Move B-Stack Up 5064 Find Basic Line 50a0 Get Fixed Pt Number 50e2 Perform [list] 5123 List Subroutine 51d6 Perform [new] 51f3 Set Up Run 51f8 Perform [clr] 5238 Clear Stack & Work Area 5250 Pudef Characters 5254 Back Up Text Pointer 5262 Perform [return] 528f Perform [data/bend] 529d Perform [rem] 52a2 Scan To Next Statement 52a5 Scan To Next Line 52c5 Perform [if] 5320 Search/Skip Begin/Bend 537c Skip String Constant 5391 Perform [else] 53a3 Perform [on] 53c6 Perform [let] 54f6 Check String Location 553a Perform [print#] 5540 Perform [cmd] 555a Perform [print] 5600 Print Format Char 5612 Perform [get] 5635 Getkey 5648 Perform [input#] 5662 Perform [input] 569c Prompt & Input 56a9 Perform [read] 57f4 Perform [next] 587b Perform [dim] 5885 Perform [sys] 58b4 Perform [tron] 58b7 Perform [troff] 58bd Perform [rreg] 5901 Assign <mid$> 5975 Perform [auto] 5986 Perform [help] 59ac Insert Help Marker 59cf Perform [gosub] 59db Perform [goto] 5a15 Undef'd Statement 5a1d Put Sub To B-Stack 5a3d Perform [go] 5a60 Perform [cont] 5a9b Perform [run] 5aca Perform [restore] 5af0 Keywords To Renumber DATA 5af8 Perform [renumber] 5bae Renumber-Continued 5bfb Renumber Scan 5d19 Convert Line Number 5d68 Get Renumber Start 5d75 Count Off Lines 5d89 Add Renumber Inc 5d99 Scan Ahead 5da7 Set Up Block Move 5dc6 Block Move Down 5ddf Block Move Up 5dee Check Block Limit 5df9 Perform [for] 5e87 Perform [delete] 5efb Get Line Number Range 5f34 Perform [pudef] 5f4d Perform [trap] 5f62 Perform [resume] 5fb7 Reinstate Trap Point 5fd8 Syntax Exit 5fdb Print 'can't resume' 5fe0 Perform [do] 6039 Perform [exit] 608a Perform [loop] 60b4 Print 'loop not found' 60b7 Print 'loop without do' 60db Eval While/Until Argument 60e1 Define Programmed Key 610a Perform [key] 619a DATA 61a8 Perform [paint] 627c Check Painting Split 62b7 Perform [box] 63f5 Authors DATA 642b Perform [sshape] 658d Perform [gshape] 668e Perform [circle] 6750 Draw Circle 6797 Perform [draw] 67d7 Perform [char] 6955 Perform [locate] 6960 Perform [scale] 69dc DATA 69e2 Perform [color] 6a4c Color Codes DATA 6a5c Log Current Colors 6a79 Perform [scnclr] 6b06 Fill Memory Page 6b17 Set Screen Color 6b5a Perform [graphic] 6bc9 Perform [bank] 6bd7 Perform [sleep] 6c09 Multiply Sleep Time 6c2d Perform [wait] 6c4f Perform [sprite] 6cb3 Bit Masks DATA 6cc6 Perform [movspr] 6dd9 DATA 6de1 Perform [play] 6e02 Analyze Play Character 6eb2 Set SID Sound 6efd Play Error 6f03 Dotted Note 6f07 Note Length Char 6f1e Note-A-G 6f52 ...votxnum... 6f69 Sharp 6f6c Flat 6f78 Rest 6fd7 Perform [tempo] 6fe4 Voice Times Two DATA 6fe7 Length Characters DATA 6fec Command Characters DATA 702f Chime Seq DATA 7039 SID Voice Steps DATA 7046 Perform [filter] 70c1 Perform [envelope] 7164 Perform [collision] 7190 Perform [sprcolor] 71b6 Perform [width] 71c5 Perform [vol] 71ec Perform [sound] 72cc Perform [window] 7335 Perform [boot] 7372 Perform [sprdef] 7663 ? DATA 7691 Sprite Vectors DATA 76b4 ? DATA 76ec Perform [sprsav] 77b3 Perform [fast] 77c4 Perform [slow] 77d7 Type Match Check 77da Confirm Numeric 77dd Confirm String 77e7 Print 'type mismatch' 77ea Print 'formula too complex' 77ef Evaluate Expression 78d7 Evaluate Item 793c Fixed-Float 7950 Eval Within Parens 795c Check Comma 796c Syntax Error 7978 Search For Variable 7a85 Unpack RAM1 to FAC#1 7aaf Locate Variable 7b3c Check Alphabetic 7b46 Create Variable 7cab Set Up Array 7d25 Print 'bad subscript' 7d28 Print 'illegal quantity' 7e3e Compute Array Size 7e71 Array Pointer Subroutine 7e82 Unused EMPTY ; 8000 Evaluate <fre> 8020 Decrypt Message 804a Evaluate <val> 8052 String to Float 8076 Evaluate <dec> 80c5 Evaluate <peek> 80e5 Perform [poke] 80f6 Evaluate <err$> 8139 Swap x With y 8142 Evaluate <hex$> 816b Byte to Hex 8182 Evaluate <rgr> 818c Evaluate <rcl> 81f3 DATA 8203 Evaluate <joy> 8242 Joystick Values DATA 824d Evaluate <pot> 82ae Evaluate <pen> 82fa Evaluate <pointer> 831e Evaluate <rsprite> 835b DATA 8361 Evaluate <rspcolor> 837c Evaluate <bump> 8397 Evaluate <rspos> 83e1 Evaluate <xor> 8407 Evaluate <rwindow> 8434 Evaluate <rnd> 8490 Rnd Multiplier DATA 849a Value 32768 DATA 849f Float-Fixed Unsigned 84a7 Evaluate Fixed Number 84ad Float-Fixed Signed 84c9 Float (.y, .a) 84d0 Evaluate <pos> 84d9 Check Direct 84dd Print 'illegal direct' 84e0 Print 'undef'd function' 84e5 Set Up 16 Bit Fix-Float 84f5 Print 'direct mode only' 84fa Perform [def] 8528 Check FN Syntax 853b Perform [fn] 85ae Evaluate <str$> 85bf Evaluate <chr$> 85d6 Evaluate <left$> 860a Evaluate <right$> 861c Evaluate <mid$> 864d Pull String Parameters 8668 Evaluate <len> 866e Exit String Mode 8677 Evaluate <asc> 8688 Calc String Vector 869a Set Up String 874e Build String to Memory 877b Evaluate String 87e0 Clean Descriptor Stack 87f1 Input Byte Parameter 8803 Params For Poke/Wait 8815 Float/Fixed 882e Subtract From Memory 8831 Evaluate <subtract> 8845 Add Memory 8848 Evaluate <add> 8917 Trim FAC#1 Left 894e Round Up FAC#1 895d Print 'overflow' 899c Log Series DATA 89ca Evaluate <log> 8a0e Add 0.5 8a24 Multiply By Memory 8a27 Evaluate <multiply> 8a89 Unpack ROM to FAC#2 8ab4 Unpack RAM1 to FAC#2 8ae3 Adjust FAC#1/#2 8b17 Multiply By 10 8b2e +10 8b33 Print 'division by zero' 8b38 Divide By 10 8b49 Divide Into Memory 8b4c Evaluate <divide> 8bd4 Unpack ROM to FAC#1 8bf9 Pack FAC#1 to $5e 8bfc Pack FAC#1 to $59 8c00 Pack FAC#1 to RAM1 8c28 FAC#2 to FAC#1 8c38 FAC#1 to FAC#2 8c47 Round FAC#1 8c57 Get Sign 8c65 Evaluate <sgn> 8c68 Byte Fixed-Float 8c75 Fixed-Float 8c84 Evaluate <abs> 8c87 Compare FAC#1 to Memory 8cc7 Float-Fixed 8cfb Evaluate <int> 8d22 String to FAC#1 8db0 Get Ascii Digit 8e17 Conversion Values DATA 8e26 Print 'in...' 8e32 Print Integer 8e42 Float to Ascii 8f76 +0.5 DATA 8f7b Decimal Constants DATA 8f9f TI Constants DATA 8fb7 Evaluate <sqr> 8fbe Raise to Memory Power 8fc1 Evaluate <power> 8ffa Evaluate <negate> 9005 Exp Series DATA 9033 Evaluate <exp> 90d0 I/O Error Message 90d8 Basic 'open' 90df Basic 'chrout' 90e5 Basic 'input' 90eb Redirect Output 90fd Redirect Input 9112 Perform [save] 9129 Perform [verify] 912c Perform [load] 918d Perform [open] 919a Perform [close] 91ae Get Load/Save Parameters 91dd Get Next Byte Value 91e3 Get Character or Abort 91eb Move to Next Parameter 91f6 Get Open/Close Parameters 9243 Release I/O String 9251 Call 'status' 9257 Call 'setlfs' 925d Call 'setnam' 9263 Call 'getin' 9269 Call 'chrout' 926f Call 'clrchn' 9275 Call 'close' 927b Call 'clall' 9281 Print Following Text 9287 Set Load/Save Bank 928d Call 'plot' 9293 Call 'get' 9299 Make Room For String 92ea Garbage Collection 9409 Evaluate <cos> 9410 Evaluate <sin> 9459 Evaluate <tan> 9485 Trig Series DATA 94b3 Evaluate <atn> 94e3 Series DATA 9520 Print Using 99c1 Evaluate <instr> 9b0c Evaluate <rdot> 9b30 Draw Line 9bfb Plot Pixel 9c49 Examine Pixel 9c70 Set Hi-Res Color Cell 9cca Video Matrix Lines Hi DATA 9ce3 Position Pixel 9d1c Bit Masks DATA 9d24 Calc Hi-Res Row/Column 9df2 Restore Pixel Cursor 9e2f Parse Graph...
Amiga7878