A2osX/ProDOS.203/ProDOS.S.txt

232 lines
6.4 KiB
Plaintext
Raw Normal View History

2019-04-29 20:36:58 +00:00
NEW
AUTO 3,1
2019-09-13 06:37:52 +00:00
.LIST OFF
.OP 65816
2019-09-15 15:13:48 +00:00
.OR $2000
2019-10-19 18:35:30 +00:00
.TF PRODOS.203,TSYS
2019-04-29 20:36:58 +00:00
*--------------------------------------
2019-09-13 06:37:52 +00:00
.INB INC/ZP.I
.INB INC/IO.I
.INB INC/MONITOR.I
.INB INC/MLI.I
.INB INC/MLI.E.I
2019-04-29 20:36:58 +00:00
*--------------------------------------
2019-09-12 15:56:38 +00:00
MMStartUp .EQ $0202
NewHandle .EQ $0902
PtrToHand .EQ $2802
MessageCenter .EQ $1501
DisposeHandle .EQ $1002
2019-09-13 20:48:05 +00:00
MMShutDown .EQ $0302
2019-09-12 15:56:38 +00:00
ReadTimeHex .EQ $0D03
Int2Hex .EQ $220B
TLTextMountVolume .EQ $1201
2019-09-13 15:39:37 +00:00
*--------------------------------------
.MA SHORTMX
sep #$30
.EM
.MA SHORTM
sep #$20
.EM
.MA SHORTX
sep #$10
.EM
.MA LONGMX
rep #$30
.EM
.MA LONGM
rep #$20
.EM
.MA LONGX
rep #$10
.EM
2019-09-13 06:37:52 +00:00
*--------------------------------------
2019-09-11 15:53:33 +00:00
.MA IIGS
ldx ##]1
jsl $E10000
.EM
2019-09-13 06:37:52 +00:00
*--------------------------------------
2019-09-12 06:39:47 +00:00
P8QUIT .EQ $E0D000
GSOS .EQ $E100A8
GSOS2 .EQ $E100B0
2019-09-15 15:13:48 +00:00
OS_BOOT .EQ $E100BD indicates O/S initially booted
2019-09-11 15:53:33 +00:00
*--------------------------------------
2019-09-12 06:39:47 +00:00
lookptr .EQ $0A
2019-09-15 15:13:48 +00:00
idapple .EQ $0C model machine id
idxl .EQ $10 general use 16 bit index pointer
2019-09-12 06:39:47 +00:00
devid .EQ $12
src .EQ $12
dst .EQ $14
2019-09-11 15:53:33 +00:00
cnt .EQ $16
2019-09-12 06:39:47 +00:00
cde .EQ $18
ecde .EQ $1A
wndbtm .EQ $23
pcl .EQ $3A
pch .EQ $3B
A1L .EQ $3C
A1H .EQ $3D
A2L .EQ $3E
A2H .EQ $3F
A3L .EQ $40
A4L .EQ $42
unitnum .EQ $43
2019-09-15 15:13:48 +00:00
buf .EQ $44 2-byte data buffer pointer which
accsav .EQ $45 overlaps accsav (temp acc save byte)
bloknml .EQ $46 used mostly as 16 bit block # pointer
zpt .EQ $48 highly used zero page index pointer
datptr .EQ $4A ptr to data area of buffer.
sos .EQ $4C sos buffer pointer.
usrbuf .EQ $4E data ptr in user buffer.
2019-09-12 06:39:47 +00:00
* zero page variables for Bird's Better Bye
2019-09-15 15:13:48 +00:00
smparms .EQ $60 set mark parms
sm_refn .EQ $61 file reference number
fpos_lo .EQ $62 new file position (3 bytes)
2019-09-12 06:39:47 +00:00
fpos_mid .EQ $63
fpos_hi .EQ $64
2019-09-15 15:13:48 +00:00
lstpntr .EQ $65 device list pointer (16 bit)
valcnt .EQ $67 name counter
filecount .EQ $68 # of displayable files in directory
namelen .EQ $69 length of filename
gp_cnt .EQ $6A general purpose counter
dlevel .EQ $6B directory level
fnstore .EQ $6C filename storage pointer (16 bit)
entlen .EQ $6E directory entry length
entblk .EQ $6F directory entries/block
filecnt .EQ $70 directory file count (16 bit)
blkfl .EQ $72 block flag / file counter
topname .EQ $73 index # of top name in display
filetyps .EQ $74 128 byte table of filetypes
2019-09-12 06:39:47 +00:00
errnum .EQ $DE
2019-04-29 20:36:58 +00:00
*--------------------------------------
2019-09-15 15:13:48 +00:00
tst128 .EQ $0080 temp page 0 routine for memory test
2019-09-12 06:39:47 +00:00
auxsp .EQ $0101
2019-09-15 15:13:48 +00:00
RAMXDRV .EQ $0200 load address for aux bank /RAM driver
inbuf .EQ $0200 keyboard buffer
pbuf .EQ $0280 prefix buffer
p3vect .EQ $03F0 page 3 vectors (16 bytes)
softev .EQ $03F2 RESET vector
pwredup .EQ $03F4 power up byte
nmivect .EQ $03FB nmi handler
txtp2 .EQ $0400 test location for aux card
vmode .EQ $04FB video firmware operating mode
clkmode .EQ $0538 clock mode
ch80col .EQ $057B 80 column ch position
vline5 .EQ $0600 line 5 of display
vline10 .EQ $04A8 line 10 of display
vline11 .EQ $0528 line 11 of display
vline12 .EQ $05A8 line 12 of display
vline13 .EQ $0628 line 13 of display
vline14 .EQ $06A8 line 14 of display
vline16 .EQ $07A8 line 16 of display
vline23 .EQ $0750 line 23 of display
vline24 .EQ $07D0 line 24 of display
2019-09-17 18:38:45 +00:00
DirBlkBuf .EQ $0C00
2019-09-15 15:13:48 +00:00
dbuf .EQ $0C00 8 page directory buffer
vblock1 .EQ $0E00 ramdisk directory block
volbuf .EQ $0F00 volume buffer
2019-09-11 15:53:33 +00:00
dispadr .EQ $1000
2019-09-15 15:13:48 +00:00
iobuf .EQ $1400 i/o buffer
fbuf .EQ $1800 FCB buffer
op_buf .EQ $1C00 open file buffer (selector)
sysentry .EQ $2000 .SYS file load address
phaseoff .EQ $C080 disk port
motoroff .EQ $C088 disk port
motoron .EQ $C089 disk port
drv0en .EQ $C08A disk port
q6l .EQ $C08C disk port
q6h .EQ $C08D disk port
q7l .EQ $C08E disk port
q7h .EQ $C08F disk port
rdtcp .EQ $C108 Thunderclock read entry
wttcp .EQ $C10B Thunderclock write entry
auxmove .EQ $C311 move (3C)-(3E) to (42)
2019-09-12 06:39:47 +00:00
xfer .EQ $C314
2019-09-15 15:13:48 +00:00
rwts .EQ $D000 disk ii driver in bank 1
displc2 .EQ $D100 system death routine stored in bank 2
pathbuf .EQ $D700 pathname buffer
tclk_in .EQ $D742 clock driver in bank 2
fcbbuf .EQ $D800 fcb buffer
vcbbuf .EQ $D900 vcb buffer
bmbuf .EQ $DA00 512 byte bitmap buffer
gbuf .EQ $DC00 general purpose 512 byte block buffer
2019-04-29 20:36:58 +00:00
*--------------------------------------
2019-09-10 20:53:18 +00:00
* $2000 mli_0 mli loader/relocator
* $2C80 ram_1 installer for /RAM
* $2D00 ram_2 /RAM driver in main lc
* $2D9B mli_3 interrupts
* $2E00 mli_1 global page
2019-04-29 20:36:58 +00:00
* $2F00 tclock_0 Thunderclock driver
* $2F80 cclock_0 Cortland clock driver
2019-09-10 20:53:18 +00:00
* $3000 mli_2 xdos mli & block file manager
* $5100 ram_0 /RAM driver in aux mem
* $5300 xrw_0 disk core routines
* $5A00 sel_0 dispatcher
* $5D00 sel_1 enhanced quit code (Bird's Better Bye)
* $6000 sel_2 GQuit dispatcher support
2019-09-15 15:13:48 +00:00
*--------------------------------------
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.LDR.A
.INB USR/SRC/PRODOS.203/PRODOS.S.LDR.B
2019-09-15 15:13:48 +00:00
RAM .PH $FF00
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.RAM
2019-09-15 15:13:48 +00:00
.EP
IRQ .PH $FF9B
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.IRQ
2019-09-15 15:13:48 +00:00
.EP
GP .PH $BF00
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.GP
2019-09-15 15:13:48 +00:00
.EP
2019-09-16 06:06:02 +00:00
TCLK .PH $D742
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.TCLK
2019-09-16 06:06:02 +00:00
.EP
2019-09-15 15:13:48 +00:00
2019-09-16 06:06:02 +00:00
CCLK .PH $D742
.INB USR/SRC/PRODOS.203/PRODOS.S.CCLK
.EP
2019-09-15 15:13:48 +00:00
XDOS .PH $DE00
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.XDOS.A
.INB USR/SRC/PRODOS.203/PRODOS.S.XDOS.B
.INB USR/SRC/PRODOS.203/PRODOS.S.XDOS.C
.INB USR/SRC/PRODOS.203/PRODOS.S.XDOS.D
.INB USR/SRC/PRODOS.203/PRODOS.S.XDOS.E
.INB USR/SRC/PRODOS.203/PRODOS.S.XDOS.F
2019-09-15 15:13:48 +00:00
.EP
RAMX .PH $200
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.RAMX
2019-09-15 15:13:48 +00:00
.EP
XRW .PH $D000
2019-09-17 18:38:45 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.XRW
2019-09-15 15:13:48 +00:00
.EP
2019-09-16 06:06:02 +00:00
SEL0 .PH $1000
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.SEL0
2019-09-15 15:13:48 +00:00
.EP
2019-09-16 06:06:02 +00:00
SEL1 .PH $1000
2019-09-11 15:53:33 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.SEL1
2019-09-15 15:13:48 +00:00
.EP
2019-04-29 20:36:58 +00:00
2019-09-16 06:06:02 +00:00
SEL2 .PH $1000
2019-09-15 15:13:48 +00:00
.INB USR/SRC/PRODOS.203/PRODOS.S.SEL2
.EP
2019-04-29 20:36:58 +00:00
*--------------------------------------
MAN
2019-05-07 11:18:47 +00:00
SAVE USR/SRC/PRODOS.203/PRODOS.S
2019-04-29 20:36:58 +00:00
ASM