* Zero page 0018 First data track 0019 First data sector 001A Shape pointer LO 001B Shape pointer HI 001C Last color used 0020 WNDLFT 0021 WNDWDTH 0022 WNDTOP 0023 WNDBTM 0024 CH 0025 CV 0026 GBAS-LO 0027 GBAS-HI 0028 BAS-LO 0029 BAS-HI 002A BAS2-LO 002B BAS2-HI 0032 INVFLG 0033 Prompt character 0035 YSAV1 0036 CSWL 0037 CSHW 003D A1H 003C A1L 003F A2H 003E A2L 0041 A3H 0040 A3L 0043 A4H 0042 A4L 0045 A5H 0044 A5L 004E RND-LO 004F RND-HI 0050 LINNUM line number, unsigned word 0067 Basic program address LO 0068 Basic program address HI 0069 Basic variables address LO 006A Basic variables address HI 006B Basic arrays address LO 006C Basic arrays address HI 0073 HIMEM 009D FAC 009E FAC mantissa hi order 009F FAC mantissa mid order hi 00B1 CHRGET 00B7 CHRGOT 00B8 TXTPTR 00E0 X of last HPLOT 00E4 HCOLOR 00E6 HiRes plotting page ($20 or $40) 00E7 Scale 00E8 Shape table address LO 00E9 Shape table address HI 00EA Collision counter 00F9 ROT 0200 Input buffer 03D0 Applesoft warm start 03F2 RST: Control-reset vector 03F3 RST: Control-reset vector 03F4 RST: Control-reset checksum (EOR #$A5) 03FB NMI: Non-Maskable Interrupt vector 03FC NMI: Non-Maskable Interrupt vector 03F8 USR: user vector (Control-Y) 03F9 USR: user vector (Control-Y) 03FE IRQ: Interrupt Request/BRK vector 03FF IRQ: Interrupt Request/BRK vector A54F DOS 3.3 INIT A413 DOS 3.3 LOAD A397 DOS 3.3 SAVE A4D1 DOS 3.3 RUN A4F0 DOS 3.3 CHAIN A263 DOS 3.3 DELETE A271 DOS 3.3 LOCK A275 DOS 3.3 UNLOCK A2EA DOS 3.3 CLOSE A51B DOS 3.3 READ A5C6 DOS 3.3 EXEC A510 DOS 3.3 WRITE A5DD DOS 3.3 POSITION A2A3 DOS 3.3 OPEN A298 DOS 3.3 APPEND A281 DOS 3.3 RENAME A56E DOS 3.3 CATALOG A233 DOS 3.3 MON A23D DOS 3.3 NOMON A229 DOS 3.3 PR# A22E DOS 3.3 IN# A251 DOS 3.3 MAXFILES A57A DOS 3.3 FP A59E DOS 3.3 INT A331 DOS 3.3 BSAVE A35D DOS 3.3 BLOAD A38E DOS 3.3 BRUN A27D DOS 3.3 VERIFY BF00 ProDOS MLI entry point BF98 ProDOS Machine ID Byte * C000 80STOREOFF Allow page2 to switch video page1 page2 C001 80STOREON Allow page2 to switch main & aux video memory C002 RAMRDOFF Read enable main memory from $0200-$BFFF C003 RAMDRON Read enable aux memory from $0200-$BFFF C004 RAMWRTOFF Write enable main memory from $0200-$BFFF C005 RAMWRTON Write enable aux memory from $0200-$BFFF C006 INTCXROMOFF Enable slot ROM from $C100-$CFFF C007 INTCXROMON Enable main ROM from $C100-$CFFF C008 ALTZPOFF Enable main memory from $0000-$01FF & avl BSR C009 ALTZPON Enable aux memory from $0000-$01FF & avl BSR C00A SLOTC3ROMOFF Enable main ROM from $C300-$C3FF C00B SLOTC3ROMON Enable slot ROM from $C300-$C3FF C000 KBD - Last key pressed C010 KBDSTRB - Clear KYBD C019 VBL - Vertical Blank C020 TAPEOUT - Toggle cassette output C030 SPKR - Toggle speaker C040 STROBE - Output strobe pulse to game I/O connector C050 TXTCLR - Display Graphics C051 TXTSET - Display Text C052 MIXCLR - Display Full Screen C053 MIXSET - Display Split Screen C054 TXTPAGE1 - Display Page 1 C055 TXTPAGE2 - If 80STORE Off: Display Page 2, If 80STORE On: Read/Write Aux Display Mem C056 LORES - Display LoRes Graphics C057 HIRES - Display HiRes Graphics C060 TAPEIN - Read audio from cassette input C061 PB0 - Read joystick button 0/Open-Apple key C062 PB1 - Read joystick button 1/Closed-Apple key C063 PB2 - Read joystick button 2 C064 PADDL0 - Read paddle/joystick 0 C065 PADDL1 - Read paddle/joystick 1 C066 PADDL2 - Read paddle/joystick 2 C067 PADDL3 - Read paddle/joystick 3 C070 PTRIG - Clear paddle/joystick timer C080 Read RAM bank 2; no write C081 ROMIN - Read ROM; write RAM bank 2 C082 Read ROM; no write C083 LCBANK2 - Read/write RAM bank 2 C084 Read RAM bank 2; no write C085 ROMIN - Read ROM; write RAM bank 2 C086 Read ROM; no write C087 LCBANK2 - Read/write RAM bank 2 C088 Read RAM bank 1; no write C089 Read ROM; write RAM bank 1 C08A Read ROM; no write C08B Read/write RAM bank 1 C08C Read RAM bank 1; no write C08D Read ROM; write RAM bank 1 C08E Read ROM; no write C08F Read/write RAM bank 1 C600 BOOT0 - Disk II controller ROM 0801 BOOT1 - Disk II bootstrap RAM D52C INLIN numeric input DB3A STROUT - output a string DB5C output a character DD67 FRMNUM DD7B FRMEVAL DEBE CHKCOM DEC0 SYNCHR DEC9 syntax error DFE3 PTRGET E000 Applesoft BASIC entry E053 find a variable E10C convert FP to INT E2F2 GIVAYF - convert (A,Y) to FP E301 SNGFLT E3E7 FPSTR2 E6F8 GETBYTE E74C COMBYTE E752 GETADR - get from FAC to LINNUM E7A0 FADDH E7A7 FSUB E7BE FADD E8D5 OVERFLOW E913 ONE E941 FLOG E97F FMULT E9E3 CONUPK EA39 MUL10 EA55 DIV10 EA66 FDIV EAE1 DIVERR EAF9 MOVEFM (Y,A) -> FAC EB1E MOV2F FAC -> TEMP2 EB21 MOV1F FAC -> TEMP1 EB23 MOVML FAC -> (O,X) EB2B MOVMF FAC -> (Y,A) EB53 MOVFA ARG -> FAC EB63 MOVAF (Y,A) -> ARG EB82 SIGN EB90 SGN EB93 FLOAT EBA0 FLOAT1 - integer to FAC ($9D-$A2) EBAF FABS EBB2 FCOMP EBF2 QINT EC23 FINT EC4A FIN ED24 LINPRNT - print a decimal number ED2E PRNTFAC ED34 FOUT - FAC to FBUFFR ($100-$110) EE8D FSQR EE97 FPWRT EED0 NEGOP EF09 FEXP EFAE FRND EFEA FCOS EFF1 FSIN F03A FTAN F066 PIHALF F09E FATN F411 map x,y location on hi-res 1 ?? F467 LEFT EQU F48A RIGHT EQU F4D5 UP EQU F504 DOWN EQU F6B9 HFNS F800 PLOT - plot a block on lo-res screen F819 HLINE - draw horizontal line of blocks F828 VLINE - draw vertical line of blocks F832 CLRSCR - clear lo-res screen F836 CLRTOP - clear top of lo-res screen F85F NEXTCOL - increment color by 3 F864 SETCOL - set lo-res graphics color F871 SCRN - read lo-res screen F940 PRINTYX - print YX registers in hex F941 PRINTAX - print AX registers in hex F948 PRBLNK - print 3 spaces F94A PRBL2 - print X blank spaces FAA6 PWRUP - reboot FAFF 0 = Autostart ROM, 1 = Old Monitor FB1E PREAD - read game paddle FB2F INIT - initialise text screen FB39 text mode - SETTXT FB40 SETGR FB5B TABV - monitor tab routine FB6F SETPWRC - set powerup checksum FBB3 VERSION - monitor ROM ID byte FBC1 BASCALC - calculate video address FBDD BELL1 - beep speaker FBF4 CURSRIT - move cursor right FC10 CURSLFT - move cursor left FC1A CURSUP - move cursor up FC22 VTAB FC24 VTABZ FC42 CLREOP - clear to end of page FC58 HOME - clear screen FC62 CR FC66 CURSDWN - move cursor down FC9C CLREOL - clear to end of line FCA8 WAIT - delay FCFA RD2BIT FD0C RDKEY - get input character FD1B KEYIN - read keyboard FD35 RDCHAR - get input char or escape code FD6A GETLN - get input line (with prompt) FD67 GETLNZ - get input line after CR FD6F GETLN1 - get input line (no prompt) FD75 NXTCHAR FD8B CROUT1 - print a CR with clear FD8E CROUT - print a CR FDDA PRBYTE - print A register in hex FDE3 PRHEX - print a hex digit FDED COUT - print a character (in Acc) FDF0 COUT1 - print character to screen FE1F IDROUTINE - detect //gs FE2C MOVE - move a block of memory FE80 SETINV - set inverse mode FE84 SETNORM - set normal mode FE89 SETKBD - disconnect DOS from I/O links FE8B INPORT FE93 SETVID - disconnect DOS from I/O links FE95 OUTPORT FECD WRITE FEFD READ FF02 READ2 FF2D PRERR - print 'ERR' FF3A BELL FF3F IOREST - restore all registers FF4A IOSAVE - save all registers FF58 RTS - jump to
+ 1 FF59 MON - Monitor cold entry point (w/BELL) FF69 MONZ - Monitor entry point from BASIC (CALL -151) FFA7 GETNUM - move num to A2L.A2H FFC7 ZMODE - monitor get ASCII return FFFA NMI_VECTOR FFFB NMI_VECTOR FFFC RESET_VECTOR FFFD RESET_VECTOR FFFE IRQ_VECTOR FFFF IRQ_VECTOR