diff --git a/SourceGen/RuntimeData/Apple/A3-IO.sym65 b/SourceGen/RuntimeData/Apple/A3-IO.sym65 index 92b6014..f310b4d 100644 --- a/SourceGen/RuntimeData/Apple/A3-IO.sym65 +++ b/SourceGen/RuntimeData/Apple/A3-IO.sym65 @@ -6,19 +6,35 @@ *SYNOPSIS Symbols from hardware I/O areas -KBD @ $C000 ;last key pressed + 128 +KBD @ $C000 ;last key pressed +KBDFLG @ $C008 ; +KBDSTRB @ $C010 ;RW keyboard strobe +SPKR @ $C030 ;RW toggle speaker (Apple II type) +SPKRIII @ $C040 ;WR beeps speaker (Apple /// type) +JOYRDY @ $C066 ; +CLOCK @ $C070 ;clock +PHASOFF @ $C080 ; +PHASON @ $C081 ; +MOTOROFF @ $C088 ; +MOTORON @ $C089 ; +DRV0EN @ $C08A ; +DRV1EN @ $C08B ; +Q6L @ $C08C ; +Q6H @ $C08D ; +Q7L @ $C08E ; +ACIASTAT @ $C0F1 ;status of ACIA ; Other hardware registers -Z_REG @ $FFD0 -D_DDRB @ $FFD2 -D_DDRA @ $FFD3 +Z_REG @ $FFD0 ;zero page register +D_DDRB @ $FFD2 ;data direction register B +D_DDRA @ $FFD3 ;data direction register A TIMER1L @ $FFD8 TIMLATCH @ $FFD9 D_ACR @ $FFDB D_PCR @ $FFDC D_IFR @ $FFDD D_IER @ $FFDE -E_REG @ $FFDF ;environment register (r/w) +E_REG @ $FFDF ;environment register E_IORB @ $FFE0 E_DDRB @ $FFE2 E_DDRA @ $FFE3 @@ -26,4 +42,4 @@ E_ACR @ $FFEB E_PCR @ $FFEC E_IFR @ $FFED E_IER @ $FFEE -B_REG @ $FFEF +B_REG @ $FFEF ;bank switch register diff --git a/SourceGen/RuntimeData/Apple/A3-ROM.sym65 b/SourceGen/RuntimeData/Apple/A3-ROM.sym65 index d2433a2..ac2a7c8 100644 --- a/SourceGen/RuntimeData/Apple/A3-ROM.sym65 +++ b/SourceGen/RuntimeData/Apple/A3-ROM.sym65 @@ -6,13 +6,454 @@ *SYNOPSIS Symbols from the Apple /// monitor ROM +; +; Zero page usage by monitor. +; LMARGIN @ $58 ;left viewport margin RMARGIN @ $59 ;right viewport margin WINTOP @ $5A ;top of viewport WINBTM @ $5B ;bottom of viewport +CH @ $5C ; +CV @ $5D ; +BAS4L @ $5E ; +BAS4H @ $5F ; +BAS8L @ $60 ; +BAS8H @ $61 ; +TBAS4L @ $62 ; +TBAS4H @ $63 ; +TBAS8L @ $64 ; +TBAS8H @ $65 ; +FORGND @ $66 ; +BKGND @ $67 ; +MODES @ $68 ; +CURSOR @ $69 ; +STACK @ $6A ; +PROMPT @ $6B ; +TEMPX @ $6C ; +TEMPY @ $6D ; +CSWL @ $6E ; +CSWH @ $6F ; +KSWL @ $70 ; +KSWH @ $71 ; +PCL @ $72 ; +PCH @ $73 ; +A1L @ $74 ; +A1H @ $75 ; +A2L @ $76 ; +A2H @ $77 ; +A3L @ $78 ; +A3H @ $79 ; +A4L @ $7A ; +A4H @ $7B ; +STATE @ $7C ; +YSAV @ $7D ; +INBUF @ $7E ; ; -; Useful ROM routines. +; Zero page used by floppy. +; +HRDERRS @ $80 ; +IBSLOT @ $81 ; +IBDRVN @ $82 ; +IBTRK @ $83 ; +IBSECT @ $84 ; +IBBUFP @ $85 ; +IBCMD @ $87 ; +IBSTAT @ $88 ; +IBSMOD @ $89 ; +;CSUM @ $89 ; +IOBPDN @ $8A ; +IMASK @ $8B ; +CURTRK @ $8C ; +;DRVOTRK @ $85 ; +RETRYCNT @ $93 ; +SEEKCNT @ $94 ; +BUF @ $9B ; +ENVTEMP @ $9F ; +COUNT @ $95 ; +CKSUM @ $96 ; +CSSTV @ $97 ; +PRIOR @ $9D ; +TRKN @ $9E ; +MONTIMEL @ $99 ; +MONTIMEH @ $9A ; +TWOMEG @ $7F ;fast speed +SECT @ $98 ; +;TRACK @ $99 ; +;VOLUME @ $9A ; + +; +; Floppy driver ROM routines. ; REGRWTS @ $F000 ; DRIVSEL @ $F035 ; +DRVWAIT @ $F041 ; +OK @ $F048 ; +MOTOF @ $F052 ; +CONWAIT @ $F054 ; +NODRIVERR @ $F064 ; +TRYTRK @ $F069 ; +TRYTRK2 @ $F07F ; +TRYADR @ $F083 ; +TRYADR2 @ $F08A ; +GOCAL1 @ $F0A6 ; +GOCAL @ $F0A7 ; +RDRIGHT @ $F0AC ; +RTTRK @ $F0C0 ; +CORRECTVOL @ $F0C4 ; +ALLDONE @ $F0E3 ; +DRVERR @ $F0E8 ; +HNDLERR @ $F0EA ; +ALDONE1 @ $F0EB ; +WRIT @ $F0F9 ; +MYSEEK @ $F104 ; +SEEK1 @ $F105 ; +GOSEEK @ $F115 ; +ALLOFF @ $F118 ; +NXOFF @ $F11A ; +SETTRK @ $F125 ; +CHKDRV @ $F12B ; +CHKDRV1 @ $F12D ; +CKDRTS @ $F13D ; +DRVINDX @ $F13E ; +READ16 @ $F148 ; +RSYNC @ $F14A ; +RD1 @ $F14D ; +RSYNC1 @ $F152 ; +RD2 @ $F157 ; +RD3 @ $F163 ; +RD4 @ $F16E ; +RD5 @ $F180 ; +RD5A @ $F181 ; +RD6 @ $F195 ; +RDCKSUM @ $F1A0 ; +CHKINT @ $F1AA ; +GOSERV @ $F1B4 ; +RDERR @ $F1B7 ; +RDADR16 @ $F1B9 ; +RDASYN @ $F1BD ; +RDA1 @ $F1C4 ; +RDASN1 @ $F1C9 ; +RDA2 @ $F1CE ; +RDA3 @ $F1D9 ; +RDAFLD @ $F1E5 ; +RDA4 @ $F1E7 ; +RDA5 @ $F1EF ; +RDA6 @ $F201 ; +RDA7 @ $F20B ; +RDEXIT @ $F214 ; +WEXIT @ $F215 ; +WRITE16 @ $F216 ; +WRIT1 @ $F220 ; +WSYNC @ $F22D ; +WINTRPT @ $F24B ; +VRYFRST @ $F253 ; +WRTFRST @ $F255 ; +WNTRPRT1 @ $F264 ; +WMIDLE @ $F267 ; +WDATA2 @ $F26E ; +WDATA3 @ $F27E ; +WRCKSUM @ $F292 ; +WRBITSLMK @ $F297 ; +NOWRITE @ $F2A3 ; +SERVICE @ $F2AA ; +WNIBL9 @ $F2BA ; +WNIBL7 @ $F2BB ; +WNIBL @ $F2BD ; +PRENIB16 @ $F2C4 ; +PRENIB1 @ $F2C8 ; +PRENIB3 @ $F2E2 ; +PRENIB2 @ $F2E5 ; +PRENIB4 @ $F2F6 ; +POSTNIB16 @ $F30F ; +PNIBL1 @ $F314 ; +PNIBL2 @ $F323 ; +POST1 @ $F336 ; +POST2 @ $F338 ; +#POSTERR @ $F34C ; +SET1MEG @ $F34C ; +SEV @ $F354 ; +SEEK @ $F400 ; +SEEK2 @ $F40A ; +OUT @ $F41B ; +MINTST @ $F41F ; +MAXTST @ $F425 ; +STEP @ $F429 ; +STEP2 @ $F42B ; +SEEKEND @ $F444 ; +SETPHASE @ $F448 ; +CLRPHASE @ $F44A ; +SEEKRTS @ $F455 ; +MSWAIT @ $F456 ; +MSW1 @ $F458 ; +MSW2 @ $F461 ; +BLOCKIO @ $F479 ; +TRKSEC @ $F47E ; +QUIT @ $F49D ; +ANALOG @ $F4A8 ; +ANLOG1 @ $F4AB ; +GOODTIME @ $F4C4 ; + +; +; Diagnostics ROM routines. +; +CHPG @ $F4CD ; +DISK1 @ $F513 ; +NXBYT @ $F524 ; +NXBIT @ $F526 ; +NOGOOD @ $F52A ; +CNTWR @ $F523 ; +PULBT @ $F53A ; +NOMEM @ $F548 ; +NMEM1 @ $F54F ; +NMEM2 @ $F562 ; +ERRLP @ $F575 ; +ERRLP1 @ $F593 ; +RAMWT1 @ $F5A1 ; +RAMWT2 @ $F5A5 ; +RAMWT4 @ $F5AD ; +ZP1 @ $F5BE ; +ZP2 @ $F5D4 ; +ZP3 @ $F5E2 ; +ROMTST @ $F5E7 ; +ROMTST1 @ $F5F2 ; +ROMTST2 @ $F5FE ; +VIATST @ $F60D ; +ACIA @ $F63E ; +ATD @ $F653 ; +ADCTST1 @ $F663 ; +ADCTST3 @ $F669 ; +ADCERR @ $F676 ; +KEYPLUG @ $F67B ; +RECON @ $F686 ; +BOOT @ $F6A1 ; +GOBOOT @ $F6BF ; +SEX @ $F6C2 ; +SEX1 @ $F6C4 ; +SEX2 @ $F6CE ; +SEX3 @ $F6D4 ; +USRENTRY @ $F6E6 ; +RAMTST0 @ $F6F4 ; +RAMTST1 @ $F6FD ; +RAMTST4 @ $F70F ; +RAMTST6 @ $F72A ; +STRWT @ $F738 ; +RAM @ $F748 ; +RAM0 @ $F76B ; +RAM00 @ $F772 ; +RAM1 @ $F776 ; +MESSERR @ $F77B ; +ERROR @ $F77E ; +RAMSET @ $F784 ; +RAMSET1 @ $F78D ; +PTRINC @ $F7A1 ; +PINC2 @ $F7B6 ; +PINC1 @ $F7B8 ; +RETS @ $F7C3 ; +RAMERR @ $F7C9 ; +RAMERR2 @ $F7D6 ; +RAMERR3 @ $F7DA ; +RAMERR4 @ $F7E9 ; +RAMERR5 @ $F7F0 ; +RAMWT @ $F7F6 ; +RAMRD @ $F7FA ; + +; +; Monitor ROM routines. +; +RET1 @ $F7FE ; +RET3 @ $F882 ; +RET2 @ $F900 ; +ENTRY @ $F901 ; +MON @ $F904 ; +MONZ @ $F908 ; +SCAN @ $F912 ; +NXTINP @ $F915 ; +CMDSRCH @ $F91C ; +GETNUM @ $F92C ; +NXTCHR @ $F932 ; +DIGIT @ $F941 ; +NXTBIT @ $F947 ; +NXTBAS @ $F94F ; +NXTBS2 @ $F959 ; +TOSUB @ $F95E ; +ZSTATE @ $F967 ; +DIGRET @ $F96B ; +NXTA4 @ $F98E ; +NXTA1 @ $F994 ; +TSTA1 @ $F99D ; +RETA1 @ $F9AD ; +PRBYTE @ $F9AE ; +PRHEX @ $F9B7 ; +PRHEXZ @ $F9B9 ; +PRHEX2 @ $F9C1 ; +PRBYCOL @ $F9C4 ; +PRCOLON @ $F9C7 ; +TST80WID @ $F9CB ; +SVMASK @ $F9D3 ; +A1PC @ $F9D6 ; +A1PC1 @ $F9D9 ; +OLDPC @ $F9E0 ; +ASCII1 @ $F9E1 ; +ASCII2 @ $F9E3 ; +ASCII3 @ $F9F4 ; +CRCHK @ $F9FD ; +ASCDONE @ $FA08 ; +SEARCH @ $FA09 ; +SRCH1 @ $FA15 ; +ASCII @ $FA1B ; +ASCII0 @ $FA1D ; +CKMDE @ $FA1E ; +BITON @ $FA25 ; +BITOFF @ $FA29 ; +REPEAT @ $FA2D ; +REPEAT1 @ $FA35 ; +LFA36 @ $FA36 ; +CRMON @ $FA3A ; +MOVE @ $FA40 ; +MOVNXT @ $FA45 ; +VRFY @ $FA4F ; +VRFY1 @ $FA54 ; +VRFY2 @ $FA60 ; +MISMATCH @ $FA66 ; +PRINTA1 @ $FA75 ; +PRA1BYTE @ $FA82 ; +PRBYTSP @ $FA84 ; +PRSPC @ $FA87 ; +USER @ $FA8C ; +JUMP @ $FA8F ; +GO @ $FA91 ; +RWERROR @ $FA97 ; +ERROR2 @ $FA9F ; +ERROR @ $FAA2 ; +DEST @ $FAA5 ; +SEP @ $FAAE ; +BL1 @ $FAB4 ; +SPCE @ $FAB8 ; +STOR @ $FABF ; +STOR1 @ $FAC3 ; +DUMMY @ $FACB ; +SETMODE @ $FACC ; +SETMDZ @ $FAD1 ; +READ @ $FAD4 ; +WRTE @ $FAD7 ; +SAVCMD @ $FAD9 ; +RWLOOP @ $FADB ; +NOVER @ $FAF3 ; +DUMP8 @ $FAFD ; +TSTDUMP @ $FB0A ; +ERROR1 @ $FB0B ; +DUMP @ $FB0D ; +DUMP0 @ $FB10 ; +DUMP1 @ $FB1D ; +DUMP2 @ $FB20 ; +DUMP3 @ $FB30 ; +DUMPASC @ $FB35 ; +ASC1 @ $FB40 ; +ASC2 @ $FB4C ; +ASC3 @ $FB5A ; +COL80 @ $FB5D ; +COL40 @ $FB63 ; +SET80 @ $FB67 ; +SET80A @ $FB6F ; +SET80B @ $FB7B ; +CLSCRN @ $FB7D ; +CLEOP @ $FB85 ; +CLEOP1 @ $FB8E ; +CLEOL @ $FBA2 ; +CONTROL @ $FBA7 ; +TSTCR @ $FBAB ; +CARRAGE @ $FBAF ; +CURUP @ $FBB8 ; +CURUP1 @ $FBC2 ; +SETCV @ $FBC5 ; +BASCALC @ $FBC7 ; +CURIGHT @ $FBCB ; +RIGHT1 @ $FBD1 ; +SETCHZ @ $FBD7 ; +SETCVH @ $FBDB ; +CURDOWN @ $FBDD ; +TSTBACK @ $FBE9 ; +CURLEFT @ $FBED ; +LEFT80 @ $FBF3 ; +LEFTUP @ $FBFD ; +COUT2 @ $FC06 ; +DISPLAYX @ $FC10 ; +INCHORZ @ $FC13 ; +NXTLIN @ $FC16 ; +BASCALC1 @ $FC19 ; +BSCLC2 @ $FC2D ; +CTRLRET @ $FC38 ; +COUT @ $FC39 ; +COUT1 @ $FC47 ; +TSTBELL @ $FC4A ; +BELL @ $FC4E ; +LNFD @ $FC52 ; +SCROLL @ $FC5B ; +SCRL1 @ $FC61 ; +SCRL2 @ $FC63 ; +SCRL3 @ $FC7A ; +LASTLN @ $FC87 ; +CLEOL1 @ $FC89 ; +CLEOL2 @ $FC91 ; +DISPLAY @ $FC9D ; +DSPBKGND @ $FCAA ; +DSPL80 @ $FCAD ; +NOTCR @ $FCB8 ; +CANCEL @ $FCCD ; +GETLN @ $FCD5 ; +BKSPCE @ $FCDE ; +NXTCHAR @ $FCE4 ; +CROUT @ $FCEF ; +STOPLST @ $FD02 ; +NOSTOP @ $FD07 ; +RDKEY @ $FD0C ; +KEYIN @ $FD0F ; +KEYIN1 @ $FD16 ; +KEYIN2 @ $FD24 ; +KEYIN3 @ $FD2E ; +KEYIN4 @ $FD31 ; +KEYWAIT @ $FD35 ; +KWAIT2 @ $FD42 ; +KEYRET @ $FD47 ; +ESC3 @ $FD48 ; +ESCAPE @ $FD4B ; +ESC1 @ $FD53 ; +ESC2 @ $FD58 ; +RDCHAR @ $FD60 ; +GOESC @ $FD77 ; +PICK @ $FD88 ; +PICK40 @ $FD95 ; +CLDSTRT @ $FD98 ; +SETUP @ $FD9D ; +SETUP1 @ $FDA2 ; +GENENTR @ $FDC6 ; +ZIPTEMPS @ $FDD5 ; +GENASC @ $FDE1 ; +GASCI1 @ $FDE3 ; +GASCI2 @ $FDE5 ; +GASCI3 @ $FDE7 ; +GASCI4 @ $FDF4 ; +CBYTES @ $FE01 ; +CCOLMS @ $FE05 ; +CSHFT @ $FE07 ; +SHFTCNT @ $FE1A ; +#DONE @ $FE28 ; +STORCHRS @ $FE28 ; +STORSET @ $FE2A ; +STOROW @ $FE2C ; +GENDONE @ $FE44 ; +GEN1 @ $FE48 ; +NXTASCI @ $FE63 ; +NXTASC2 @ $FE65 ; +GEN2 @ $FE75 ; +UNDER @ $FE79 ; +ALTCHR @ $FE88 ; +ALTC1 @ $FE8A ; +NXTPORT @ $FE99 ; +NOHIGH @ $FEA3 ; +PORTDN @ $FEAD ; +VRETRCE @ $FEAE ; +VWAIT @ $FEBF ; +CHRSETPRE @ $FEC4 ; +NMIRQ @ $FFBC ;