mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-30 23:49:37 +00:00
134 lines
4.9 KiB
Plaintext
134 lines
4.9 KiB
Plaintext
|
NEW
|
|||
|
AUTO 3,1
|
|||
|
.LIST OFF
|
|||
|
*--------------------------------------
|
|||
|
* MON ZP locations
|
|||
|
*--------------------------------------
|
|||
|
ZP.WNDLFT .EQ $20
|
|||
|
ZP.WNDWDT .EQ $21
|
|||
|
ZP.WNDTOP .EQ $22
|
|||
|
ZP.WNDBOT .EQ $23
|
|||
|
ZP.CH .EQ $24
|
|||
|
ZP.CV .EQ $25
|
|||
|
ZP.BASL .EQ $28
|
|||
|
ZP.BASH .EQ $29
|
|||
|
|
|||
|
ZP.PROMPT .EQ $33
|
|||
|
|
|||
|
ZP.CSW .EQ $36
|
|||
|
ZP.KSW .EQ $38
|
|||
|
|
|||
|
ZP.PCL .EQ $3A
|
|||
|
ZP.PCH .EQ $3B
|
|||
|
ZP.A1L .EQ $3C
|
|||
|
ZP.A1H .EQ $3D
|
|||
|
ZP.A2L .EQ $3E
|
|||
|
ZP.A2H .EQ $3F
|
|||
|
ZP.A4L .EQ $40
|
|||
|
ZP.A4H .EQ $41
|
|||
|
|
|||
|
ZP.CMD .EQ $42
|
|||
|
ZP.UNITNUM .EQ $43
|
|||
|
ZP.BUFPTR .EQ $44
|
|||
|
ZP.BLKNUM .EQ $46
|
|||
|
*--------------------------------------
|
|||
|
* ROM Standard Routines
|
|||
|
*--------------------------------------
|
|||
|
MON.BRKVECT .EQ $03F0
|
|||
|
MON.POWERUP .EQ $03F2
|
|||
|
MON.POWERUPBYTE .EQ $03F4
|
|||
|
MON.AMPJMP .EQ $03F5
|
|||
|
MON.USRJMP .EQ $03F8
|
|||
|
MON.NMIJMP .EQ $03FB
|
|||
|
MON.IRQVECT .EQ $03FE
|
|||
|
*--------------------------------------
|
|||
|
MSLOT .EQ $7F8 $Cn n=slot using $C800
|
|||
|
*--------------------------------------
|
|||
|
COL80FIRM .EQ $C300
|
|||
|
*--------------------------------------
|
|||
|
MON.ENTERMON .EQ $FF69
|
|||
|
*--------------------------------------
|
|||
|
PLOT .EQ $F800 PLOT LORES BLOCK
|
|||
|
HLINE .EQ $F819 HORIZ LORES LINE
|
|||
|
VLINE .EQ $F828 VERTICAL LORES LINE
|
|||
|
CLRSCR .EQ $F832 CLEAR FULL LORES SCREEN
|
|||
|
CLRTOP .EQ $FB36 CLEAR TOP. LORES SCREEN
|
|||
|
GBSCALC .EQ $F847 LORES BASE CALCULATION
|
|||
|
NEXTCOL .EQ $F85F INCREASE LORES COLOR BY 3
|
|||
|
SETCOL .EQ $F864 SET LORES COLOR
|
|||
|
SCRN .EQ $F871 READ LORES SCREEN COLOR
|
|||
|
PRNTAX .EQ $F941 OUTPUT A THEN X. AS HEX
|
|||
|
PRBLNK .EQ $F948 OUTPUT 3 SPACES VIA BOOKS
|
|||
|
PRBL2 .EQ $F94A OUTPUT X BLANKS VIA HOOKS
|
|||
|
romirq .EQ $FA41 monitor irq entry
|
|||
|
MON.BREAKV .EQ $FA59 Monitor break vector
|
|||
|
resetv .EQ $FA62 monitor reset entry
|
|||
|
REGDSP .EQ $FAD7 DISPLAY WORKING REGISTERS
|
|||
|
PREAD .EQ $FB1E READ GAME PADDLE X
|
|||
|
MON.INIT .EQ $FB2F INITIALIZE TEXT SCREEN
|
|||
|
SETTXT .EQ $FB39 SET UP TEXT SCREEN (NOT 2E!)
|
|||
|
SETGR .EQ $FB40 SET UP GRAPHICS SCREEN
|
|||
|
SETWND .EQ $FB4B SET NORMAL TEXT WINDOW
|
|||
|
TABV .EQ $FB5B
|
|||
|
SETPWRC .EQ $FB6F
|
|||
|
version .EQ $FBB3 monitor ROM id byte
|
|||
|
zidbyte .EQ $FBC0 monitor ROM id byte
|
|||
|
BASCALC .EQ $FBC1 CALCULATE TEXT BASE ADDRESS (NOT 2E!}
|
|||
|
BELL1 .EQ $FBDD BEEP SPEAKER IF CTRL-G
|
|||
|
BELL2 .EQ $FBE4 BEEP SPEAKER ONCE
|
|||
|
ADVANCE .EQ $FBF4 TEXT CURSOR ONE TO RIGHT
|
|||
|
VIDOUT .EQ $FBFD OUTPUT ASCII TO SCREEN ONLY
|
|||
|
BS .EQ $FC10 BACKSPACE SCREEN
|
|||
|
UP .EQ $FC1A MOVE SCREEN CURSOR UP ONE LINE
|
|||
|
VTAB .EQ $FC22 VERTICAL SCREEN TAB USING CV
|
|||
|
VTABA .EQ $FC24 VERTICAL SCREEN TAB USING A
|
|||
|
ESC1 .EQ $FC66 PROCESS ESCAPE CURSOR MOVES
|
|||
|
CLREOP .EQ $FC42 CLEAR TO END OF PAGE
|
|||
|
MON.HOME .EQ $FC58 CLEAR TEXT SCREEN AND HOME CURSOR
|
|||
|
CR .EQ $FC62 CARRIAGE RETURN TO SCREEN
|
|||
|
LF .EQ $FC66 LINEFEED TO SCREEN ONLY
|
|||
|
SCROLL .EQ $FC70 SCROLL TEXT SCREEN UP ONE
|
|||
|
MON.CLREOL .EQ $FC9C CLEAR TEXT TO END OF LINE
|
|||
|
WAIT .EQ $FCA8 TIME DELAY SET BY ACCUMULATOR
|
|||
|
MON.RDKEY .EQ $FD0C GET INPUT CHARACTER VIA HOOKS
|
|||
|
MON.KEYIN0 .EQ $FD10
|
|||
|
MON.KEYIN .EQ $FD1B READ THE APPLE KEYBOARD
|
|||
|
RDCHAR .EQ $FD35 GET KEY AND PROCESS ESC A-F
|
|||
|
CANCEL .EQ $FD62 CANCEL KEYBOARD LINE ENTRY
|
|||
|
GETLNZ .EQ $FD67 CR THEN GET KEYBOARD INPUT LINE
|
|||
|
MON.GETLN .EQ $FD6A GET KEYBOARD INPUT LINE
|
|||
|
GETLN1 .EQ $FD6F GET KBD INPUT, NO PROMPT
|
|||
|
CROUT1 .EQ $FD8B CLEAR EOL THEN CR VIA BOOKS
|
|||
|
MON.CROUT .EQ $FD8E OUTPUT CR VIA HOOKS
|
|||
|
PRBYTE .EQ $FDDA OUTPUT FULL A IN HEX TO HOOKS
|
|||
|
PRHEX .EQ $FDE3 OUTPUT LOW A IN HEX TO HOOKS
|
|||
|
MON.COUT .EQ $FDED OUTPUT CHARACTER VIA HOOKS
|
|||
|
MON.COUT1 .EQ $FDF0 OUTPUT CHARACTER TO SCREEN
|
|||
|
MON.IIGSID .EQ $FE1F returns system info
|
|||
|
MOVE .EQ $FE2C MOVE BLOCK OF MEMORY
|
|||
|
VERIFY .EQ $FE36 VERIFY BLOCK OF MEMORY
|
|||
|
LIST .EQ $FE5E DISASSEMBLE 20 INSTRUCTIONS
|
|||
|
LIST2 .EQ $FE63 DISASSEMBLE <20>A<EFBFBD> INSTRUCTIONS
|
|||
|
MON.SETINV .EQ $FE80 PRINT INVERSE TEXT TO SCREEN
|
|||
|
MON.SETNORM .EQ $FE84 PRINT NORMAL TEXT TO SCREEN
|
|||
|
MON.SETKBD .EQ $FE89 GRAB INPUT HOOKS FOR KEYBOARD
|
|||
|
MON.SETVID .EQ $FE93 GRAB OUTPUT HOOKS FOR SCREEN
|
|||
|
XBASIC .EQ $FEB0 GO BASIC, DESTROYING OLD
|
|||
|
BASCON .EQ $FEB3 GO BASIC, CONTINUING OLD
|
|||
|
TRACE .EQ $FEC2 START TRACING (OLD ROM ONLY!)
|
|||
|
STEP .EQ $FEC4 SINGLE STEP (OLD ROM ONLY!)
|
|||
|
WRITE .EQ $FECD WRITE TO CASSETTE TAPE
|
|||
|
READ .EQ $FEF0 READ TO CASSETTE TAPE
|
|||
|
PRERR .EQ $FF2D PRINT "ERR" TO OUTPUT HOOK
|
|||
|
BELL .EQ $FF3A OUTPUT BELL TO HOOKS
|
|||
|
IORESR .EQ $FF3F RESTORE ALL WORKING REGISTER
|
|||
|
IOSAVE .EQ $FF4A SAVE ALL WORKING REGISTERS
|
|||
|
RETURN .EQ $FF58 "GUARANTEED" RETURN
|
|||
|
OLDRST .EQ $FF59 OLD RESET, NO AUTOSTART
|
|||
|
MON .EQ $FF65 ENTER MONITOR AND BEEP SPEAKER
|
|||
|
MONZ .EQ $FF69 ENTER MONITOR QUIETLY
|
|||
|
GETNUM .EQ $FFA7 ASCII TO HEX IN 3E & 3F
|
|||
|
*--------------------------------------
|
|||
|
MAN
|
|||
|
SAVE inc/mon.i
|