A2osX/BASIC.FX/BASIC.S.txt

213 lines
5.1 KiB
Plaintext
Raw Normal View History

NEW
AUTO 3,1
.LIST OFF
2022-03-13 12:52:24 +00:00
.OP 65c02
.OR $2000
2022-03-13 12:52:24 +00:00
.TF BASIC.SYSTEM,TSYS
*--------------------------------------
.MA DEBUG
:1 bit $C000
bpl :1
sta $C010
.EM
*--------------------------------------
LOWERCASE .EQ 1
*--------------------------------------
BS.E.RANGE .EQ $02
BS.E.NODEV .EQ $03
BS.E.WPROT .EQ $04
BS.E.ENDOFDATA .EQ $05
BS.E.PATHNFND6 .EQ $06
BS.E.PATHNFND7 .EQ $07
BS.E.IO .EQ $08
BS.E.DISKFULL .EQ $09
BS.E.LOCKED .EQ $0A
BS.E.INVOPT .EQ $0B
BS.E.NOBUFFER .EQ $0C
BS.E.MISMATCH .EQ $0D
BS.E.TOOLARGE .EQ $0E
BS.E.NODIRECT .EQ $0F
BS.E.SYNTAX .EQ $10
BS.E.DIRFULL .EQ $11
BS.E.FNOTOPEN .EQ $12
BS.E.DUPFILE .EQ $13
BS.E.FBUSTY .EQ $14
BS.E.FSTILLOPEN .EQ $15
*--------------------------------------
2022-03-13 12:52:24 +00:00
CMDBITS0.PFIX .EQ $80 ;Prefix needs fetching, pathname optional
CMDBITS0.SLOT .EQ $40 ;No parameters to be processed
CMDBITS0.RRUN .EQ $20 ;Command only valid during program
CMDBITS0.FNOPT .EQ $10 ;Filename is optional
CMDBITS0.CRFLG .EQ $08 ;CREATE allowed
CMDBITS0.T .EQ $04 ;File type
CMDBITS0.FN2 .EQ $02 ;Filename '2' for RENAME
CMDBITS0.FN1 .EQ $01 ;Filename expected
CMDBITS1.AD .EQ $80 ;Address
CMDBITS1.B .EQ $40 ;Byte
CMDBITS1.E .EQ $20 ;End address
CMDBITS1.L .EQ $10 ;Length
CMDBITS1.LINE .EQ $08 ;'@' line number
CMDBITS1.SD .EQ $04 ;Slot and drive numbers
CMDBITS1.F .EQ $02 ;Field
CMDBITS1.R .EQ $01 ;Record
CMDBITS1.V .EQ $00 ;Volume number ignored
*--------------------------------------
Ptr1 .EQ 0
Ptr2 .EQ 2
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
AS.LINNUM .EQ $50
AS.PGRMSTART .EQ $67
AS.VARSTART .EQ $69
AS.ARRAYSTART .EQ $6B
AS.ARRAYEND .EQ $6D
AS.STRINGSTART .EQ $6F
AS.STRINGPTR .EQ $71
AS.HIMEM .EQ $73
AS.CURLINE .EQ $75
AS.LOWTR .EQ $9B
AS.PGRMEND .EQ $AF
AS.TXTPTR .EQ $B8
AS.ERRFLG .EQ $D8
AS.ERRNUM .EQ $DE
AS.TRCFLG .EQ $F2
AS.REMSTK .EQ $F8
*--------------------------------------
IO.LINEBUF .EQ $200
*--------------------------------------
DIRENTBUF .EQ $259
DIRENTBUF.STNL .EQ $25D
DIRENTBUF.TYPE .EQ $269
DIRENTBUF.UBLK .EQ $26C
DIRENTBUF.EOF .EQ $26E
DIRENTBUF.ACCESS .EQ $277
DIRENTBUF.AUXT .EQ $278
MLI.PATHBUF .EQ $280
*--------------------------------------
DOS.WARMSTART .EQ $03D0
DOS.COLDSTART .EQ $03D3
DOS.FILEMGR .EQ $03D6
DOS.RWTS .EQ $03D9
DOS.FILEMGRPARM .EQ $03DC
DOS.RWTSPARM .EQ $03E3
DOS.RECONNECT .EQ $03DA
DOS.JMPBRKVECT .EQ $03EF
MON.AMPERSANDJMP .EQ $03F5
MON.USRJMP .EQ $03F8
MON.NMIJMP .EQ $03FB
MON.IRQVECT .EQ $03FE
MON.BRKVECT .EQ $03F0
MON.POWERUP .EQ $03F2
MON.POWERUPBYTE .EQ $03F4
*--------------------------------------
MLI.MAXPATH .EQ 64
MLI.C.ALLOCIRQ .EQ $40
MLI.C.DEALLOCIRQ .EQ $41
MLI.C.ATALK .EQ $42
MLI.C.QUIT .EQ $65
MLI.C.READBLOCK .EQ $80
MLI.C.WRITEBLOCK .EQ $81
MLI.C.GETTIME .EQ $82
MLI.C.CREATE .EQ $C0
MLI.C.DESTROY .EQ $C1
MLI.C.RENAME .EQ $C2
MLI.C.SETFILEINFO .EQ $C3
MLI.C.GETFILEINFO .EQ $C4
MLI.C.ONLINE .EQ $C5
MLI.C.SETPREFIX .EQ $C6
MLI.C.GETPREFIX .EQ $C7
MLI.C.OPEN .EQ $C8
MLI.C.NEWLINE .EQ $C9
MLI.C.READ .EQ $CA
MLI.C.WRITE .EQ $CB
MLI.C.CLOSE .EQ $CC
MLI.C.FLUSH .EQ $CD
MLI.C.SETMARK .EQ $CE
MLI.C.GETMARK .EQ $CF
MLI.C.SETEOF .EQ $D0
MLI.C.GETEOF .EQ $D1
MLI.C.SETBUF .EQ $D2
MLI.C.GETBUF .EQ $D3
*--------------------------------------
MLI .EQ $BF00
MLI.DEVNUM .EQ $BF30
MLI.DEVCNT .EQ $BF31
MLI.DEVLST .EQ $BF32
MLI.MEMTABL .EQ $BF58
MLI.LEVEL .EQ $BF94
MLI.MACHID .EQ $BF98
MLI.SLTBYT .EQ $BF99
MLI.PFIXPTR .EQ $BF9A
MLI.MLIACTV .EQ $BF9B
MLI.IVERSION .EQ $BFFD
*--------------------------------------
IO.KBD .EQ $C000
IO.KSTROBE .EQ $C010
*--------------------------------------
AS.RESTART .EQ $D43C
AS.RESTART1 .EQ $D43F
AS.FINDLINE .EQ $D61A
AS.CLEAR1 .EQ $D665
AS.NEXTSTMT .EQ $D7D2
AS.EXECSTMT .EQ $D820
AS.BITERRFLG .EQ $D865
AS.NORMAL .EQ $F273
AS.COLDBOOT .EQ $E000
AS.INTPRINTAX .EQ $ED24
*--------------------------------------
MON.BREAKV .EQ $FA59
MON.INIT .EQ $FB2F
MON.MON .EQ $FC58
MON.CLREOL .EQ $FC9C
MON.RDKEY .EQ $FD0C
MON.KEYIN0 .EQ $FD10
MON.KEYIN .EQ $FD1B
MON.GETLN .EQ $FD6A
MON.CROUT .EQ $FD8E
MON.COUT .EQ $FDED
MON.COUT1 .EQ $FDF0
MON.IIGSID .EQ $FE1F
MON.SETINV .EQ $FE80
MON.SETNORM .EQ $FE84
MON.ENTERMON .EQ $FF69
*--------------------------------------
.INB usr/src/basic.fx/basic.s.ldr
LDR.9A00.CODE .PH $9A00
.INB usr/src/basic.fx/basic.s.a
.INB usr/src/basic.fx/basic.s.b
.INB usr/src/basic.fx/basic.s.c
.INB usr/src/basic.fx/basic.s.d
.EP
LDR.BE00.CODE .PH $BE00
.INB usr/src/basic.fx/basic.s.gp
.EP
*--------------------------------------
MAN
SAVE usr/src/basic.fx/basic.s
ASM