; DEBUG+
;
;This is an all machine
;language disassembler and
;program tracer written with
;OSS MAC/65.
;
;Written by: Bryan Schappel
;
;COMMANDS:
;
;D = display toggle
;C = change memory
;* = display address set
;Q = go to DOS
;G = run at address
;R = display registers
;N = change registers
;S = save binary file
;L = load binary file
;T = trace program
;U = un-used break points
;H = high speed display
;. = hex/dec, dec/hex convert
;B = set break point
;O = restore break point
;- = scroll up in memory
;= = scroll down in memory
;P = disassemble to device
;E = erase memory
;F = find memory
;
;** EQUATES **
;
CIOV	= $E456 	;Central I/O
ICCOM	= $0342 	;commamd
ICBAL	= $0344 	;buf adr lo
ICBAH	= $0345 	;buf adr hi
ICBLL	= $0348 	;buf len lo
ICBLH	= $0349 	;buf len hi
AUX1	= $034A 	;aux byte 1
AUX2	= $034B 	;aux byte 2
COLPF2	= $02C6 	;bkgrnd
COLPF1	= $02C5 	;text
RAMTOP	= $6A 	;top of RAM
CONSOL	= $D01F 	;consol keys
LBUFF	= $0580 	;I/O buffer
PUTRC	= $09 	;put rec com
EOL	= $9B 	;end of line
DOSVEC	= $0A 	;DOS jmp vec
FR0	= $D4 	;float point
AFP	= $D800 	;asc to fp
FASC	= $D8E6 	;fp to asc
IFP	= $D9AA 	;int to fp
AUDF1	= $D200 	;so. chan 0
AUDC1	= $D201 	;distortion
RTCLOK	= $14 	;jiffy clock
INBUFF	= $F3 	;fp result
CIX	= $F2 	;fp offset
FPI	= $D9D2 	;fp to int
SETVBV	= $E45C 	;set vblank
XITVBV	= $E462 	;xit vblank
NMIEN	= $D40E 	;interupt go
VBRK	= $0206 	;BRK vector
ZPAGE	= $00 	;zero page
STACK	= $0100 	;hardware stack
PAGE2	= $0200 	;page 2
ROWCRS	= $54 	;y-pos
CH	= $02FC 	;key press
SDLSTL	= $0230 	;display list
SRTIMR	= $022B 	;key debounce
SDMCTL	= $022F 	;DMA control
DOSINI	= $0C 	;dos init vec
COLDST	= $0244 	;cold start flag
VKEYBD	= $0208 	;keyboard vector
KBCODE	= $D209 	;key code
KEYDEF	= $79 	;key code>ascii
CHBAS	= $02F4 	;character base
DDEV	= $20 	;D:
;
;** PROGRAM EQUATES **
;
	*= $80
SLFS	    1 	;slow or fast
INDR	    2 	;addr of mne
OP	    1 	;opcode
NBYTE	    1 	;command bytes
ADDR	    2 	;disa address
CEND	    1 	;command end
GDIGS	    1 	;# of digits
SAVEY	    1 	;temp save
SMEM	    2 	;temp addr
CNTLO	    1 	;nbyte count
NCHK	    1 	;check keys?
TEMP	    2 	;temp store
HXDC	    1 	;hex/dec flag
SAVEX	    1 	;temp X save
SL	    2 	;buffer address
STL	    2 	;start address
ENL	    2 	;end address
BLL	    2 	;buffer length
DINS	    2 	;2 byte arg
DISKC	    1 	;disk command
DISKC2	    1 	;read/write?
BSET	    1 	;break point
BRAN	    2 	;branch adr
BRAFLG	    1 	;branck flag
SCR	    2 	;scr mem
IND2	    2 	;indr 2
TOPADR	    2 	;top disa adr
LN2	    2 	;2nd disa adr
SAVX2	    1 	;temp X
IND3	    2 	;temp addr save
ERRNUM	    1 	;I/O error #
SAVD	    2 	;trace save adr
SAVY2	    1 	;temp Y 2
DTYPE	    1 	;display type
IPUT	    1 	;input flag
BLINK	    1 	;blink rate
CSHAPE	    1 	;cursor shape
FREN	    1 	;free brk pnts
BBCK	    1 	;bytes back
OLDC	    1 	;old key press
OLDAC	    1 	;old asc convert
INVS	    1 	;inverse flag
CAPS	    1 	;caps flag
PGWAY	    1 	;scroll dir
;
	*= $A100 	;Cartridge
	.INCLUDE #D:DISA
	.INCLUDE #D:TRACE
	.INCLUDE #D:IO3
