mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-10 06:29:33 +00:00
BASIC:bugfix in Laoder
This commit is contained in:
parent
d573012ecb
commit
905ebf9a2b
Binary file not shown.
|
@ -3,14 +3,14 @@ NEW
|
|||
*--------------------------------------
|
||||
BS.ResetCSWKSW pha
|
||||
phx
|
||||
|
||||
|
||||
ldx #3
|
||||
|
||||
|
||||
.1 lda GP.VECTOUT,x
|
||||
sta ZP.CSW,x
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
|
||||
plx
|
||||
pla
|
||||
rts
|
||||
|
@ -85,14 +85,14 @@ L9A8B lda #$8D
|
|||
|
||||
BS.SaveCSWKSW pha
|
||||
phx
|
||||
|
||||
|
||||
ldx #3
|
||||
|
||||
.1 lda ZP.CSW,x
|
||||
sta GP.VECTOUT,x
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
|
||||
plx
|
||||
pla
|
||||
|
||||
|
@ -101,12 +101,12 @@ BS.SetCSWKSW2VDOS
|
|||
phx
|
||||
|
||||
ldx #3
|
||||
|
||||
|
||||
.1 lda GP.VDOSO,x
|
||||
sta ZP.CSW,x
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
|
||||
plx
|
||||
pla
|
||||
rts
|
||||
|
@ -125,7 +125,7 @@ BS.IO.IN bit GP.EXECACTV
|
|||
|
||||
cmp #$88
|
||||
beq .2
|
||||
|
||||
|
||||
cmp #$FF
|
||||
bne BS.SaveCSWKSW
|
||||
|
||||
|
@ -167,7 +167,7 @@ BS.ERROUT sta GP.ERRCODE
|
|||
php
|
||||
lda #$0F
|
||||
sta MLI.LEVEL
|
||||
|
||||
|
||||
stz GP.IFILACTV
|
||||
stz GP.OFILACTV
|
||||
stz GP.PFXACTV
|
||||
|
@ -389,7 +389,7 @@ L9C6C jsr BS.MLIRead
|
|||
bne L9C8E
|
||||
|
||||
lda GP.FoundBITS+1
|
||||
and #$10
|
||||
and #CMDBITS1.L
|
||||
bne L9C8E
|
||||
|
||||
dex
|
||||
|
@ -419,11 +419,11 @@ L9C95 cmp #$BE
|
|||
bcs L9D1F
|
||||
|
||||
jsr BS.GetFTableIdx
|
||||
|
||||
lda XBC12
|
||||
sta XBC5A,x
|
||||
lda XBC13
|
||||
sta XBC5B,x
|
||||
|
||||
lda BS.CAT.EL
|
||||
sta BS.OpenFiles+1,x
|
||||
lda BS.CAT.EPB
|
||||
sta BS.OpenFiles+2,x
|
||||
jsr BS.Filename2LineBuf
|
||||
|
||||
L9CD3 lda #$A2
|
||||
|
@ -455,7 +455,7 @@ L9CF9 cmp #$FF
|
|||
bne L9D1C
|
||||
|
||||
dec GP.CATFLAG
|
||||
|
||||
|
||||
stz GP.MLIRW.COUNT
|
||||
stz GP.MLIRW.COUNT+1
|
||||
|
||||
|
@ -475,22 +475,22 @@ L9D1C lda #$05
|
|||
L9D1F jmp BS.ERROUT
|
||||
|
||||
L9D22 lda #$FF
|
||||
sta XBC16
|
||||
sta BS.CAR.EICB
|
||||
|
||||
jsr BS.GetFTableIdx
|
||||
|
||||
lda XBC5A,x
|
||||
sta XBC12
|
||||
lda XBC5B,x
|
||||
sta XBC13
|
||||
lda BS.OpenFiles+1,x
|
||||
sta BS.CAT.EL
|
||||
lda BS.OpenFiles+2,x
|
||||
sta BS.CAT.EPB
|
||||
lda GP.SBUFADR+1
|
||||
and #$01
|
||||
tax
|
||||
lda GP.SBUFADR
|
||||
sec
|
||||
|
||||
L9D45 inc XBC16
|
||||
sbc XBC12
|
||||
L9D45 inc BS.CAR.EICB
|
||||
sbc BS.CAT.EL
|
||||
bcs L9D45
|
||||
|
||||
dex
|
||||
|
@ -521,7 +521,7 @@ BS.IO.IN.CAT cmp #$DD
|
|||
|
||||
L9D72 lda GP.PREGA
|
||||
sta (ZP.BASL),y
|
||||
|
||||
|
||||
stz GP.PFXACTV
|
||||
ldx BS.CMDBUF.LEN
|
||||
|
||||
|
@ -535,13 +535,13 @@ L9D7F lda BS.CMDBUF.LEN,x
|
|||
rts
|
||||
*--------------------------------------
|
||||
BS.Setup4readEFBytesAt200
|
||||
lda XBBFE
|
||||
lda BS.REFNUM
|
||||
sta GP.MLIRW.REFNUM
|
||||
lda #$02
|
||||
sta GP.MLIRW.DATAPTR+1
|
||||
lda #$EF
|
||||
sta GP.MLIRW.COUNT
|
||||
|
||||
|
||||
stz GP.MLIRW.COUNT+1
|
||||
stz GP.MLIRW.DATAPTR
|
||||
rts
|
||||
|
@ -875,15 +875,15 @@ LA004 ldy #$00
|
|||
|
||||
BS.WriteTBUFAY sta GP.MLIRW.COUNT
|
||||
sty GP.MLIRW.COUNT+1
|
||||
|
||||
|
||||
jsr BS.MLIWrite
|
||||
|
||||
|
||||
stz GP.TBUFPTR
|
||||
|
||||
LA020 rts
|
||||
*--------------------------------------
|
||||
LA021 jsr BS.KW.FRE
|
||||
bcs LA047
|
||||
bcs LA020
|
||||
|
||||
lda AS.PGRMSTART+1
|
||||
sta BS.TXTTAB+1
|
||||
|
@ -897,12 +897,10 @@ LA021 jsr BS.KW.FRE
|
|||
|
||||
lda AS.STRINGSTART+1
|
||||
sta BS.MEMSIZE+1
|
||||
|
||||
|
||||
lda #$00
|
||||
sta BS.MEMSIZE
|
||||
jsr LA089 Z
|
||||
|
||||
LA047 rts
|
||||
jmp LA089 Z
|
||||
*--------------------------------------
|
||||
BS.KW.FRE stz BS.TXTTAB
|
||||
|
||||
|
@ -1217,13 +1215,13 @@ LA1FB sta XBBB5
|
|||
sta AS.HIMEM+1
|
||||
clc
|
||||
adc #$04
|
||||
sta XBBE3
|
||||
sta BS.BUFPAGE
|
||||
rts
|
||||
|
||||
LA24E sec
|
||||
rts
|
||||
|
||||
XBBB5 .BS 1
|
||||
|
||||
XBBB5 .BS 1
|
||||
*--------------------------------------
|
||||
LA250 jsr BS.KW.FRE
|
||||
bcs LA29D
|
||||
|
@ -1252,7 +1250,7 @@ LA250 jsr BS.KW.FRE
|
|||
sta AS.HIMEM+1
|
||||
jsr LA3A3
|
||||
|
||||
lda XBBE3
|
||||
lda BS.BUFPAGE
|
||||
cmp AS.HIMEM+1
|
||||
beq LA2B7
|
||||
|
||||
|
@ -1276,13 +1274,12 @@ LA29E pla
|
|||
*--------------------------------------
|
||||
BS.SetFileBuf sta GP.SBUFADR+1
|
||||
sta BS.BUFPAGEs,x
|
||||
|
||||
|
||||
stz GP.SBUFADR
|
||||
lda BS.REFNUMs,x
|
||||
sta GP.MLIMRKEOFBUF.REFNUM
|
||||
lda #MLI.C.SETBUF
|
||||
jsr GP.GOSYSTEM
|
||||
bcs LA29D
|
||||
jmp GP.GOSYSTEM
|
||||
|
||||
LA2B7 clc
|
||||
rts
|
||||
|
|
|
@ -376,7 +376,7 @@ LA6BA stz GP.FoundBITS
|
|||
lda GP.VDEFDRV
|
||||
sta GP.ParamD
|
||||
lda AS.HIMEM+1
|
||||
sta XBBE3
|
||||
sta BS.BUFPAGE
|
||||
|
||||
ldx GP.XLEN
|
||||
inx
|
||||
|
@ -464,7 +464,8 @@ LA747 jsr BS.GetKWInCmdBuf
|
|||
|
||||
ldy #$13
|
||||
sty XBC09
|
||||
ldy #$40
|
||||
|
||||
ldy #CMDBITS0.SLOT
|
||||
sty GP.FoundBITS
|
||||
|
||||
stx BS.ToAUXSaveX
|
||||
|
@ -494,7 +495,7 @@ LA770 lsr
|
|||
dey
|
||||
dey
|
||||
sty MLI.PATHBUF
|
||||
lda #$03
|
||||
lda #CMDBITS0.FN1+CMDBITS0.FN2
|
||||
sta GP.FoundBITS
|
||||
dex
|
||||
jsr BS.GetCharSpaceSep
|
||||
|
@ -528,7 +529,7 @@ LA7A6 lda GP.ParamS
|
|||
bcs LA76C
|
||||
|
||||
lda GP.AllowedBITS
|
||||
and #$21
|
||||
and #CMDBITS0.RRUN+CMDBITS0.FN1
|
||||
lsr
|
||||
beq LA7C9
|
||||
|
||||
|
@ -542,7 +543,7 @@ LA7A6 lda GP.ParamS
|
|||
LA7C9 bcc LA80B
|
||||
|
||||
lda GP.AllowedBITS+1
|
||||
and #$04
|
||||
and #CMDBITS1.SD
|
||||
beq LA80B
|
||||
|
||||
lda GP.FoundBITS
|
||||
|
@ -550,7 +551,7 @@ LA7C9 bcc LA80B
|
|||
bcs LA7E1
|
||||
|
||||
lda GP.AllowedBITS
|
||||
and #$90
|
||||
and #CMDBITS0.PFIX+CMDBITS0.FNOPT
|
||||
beq BS.SYNERR
|
||||
|
||||
bpl LA80B
|
||||
|
@ -563,7 +564,7 @@ LA7E1 lda BS.CMDBUF
|
|||
beq LA806
|
||||
|
||||
LA7ED lda GP.FoundBITS+1
|
||||
and #$04
|
||||
and #CMDBITS1.SD
|
||||
beq LA80B
|
||||
|
||||
bcs LA806
|
||||
|
@ -571,7 +572,7 @@ LA7ED lda GP.FoundBITS+1
|
|||
stz BS.CMDBUF.LEN
|
||||
stz BS.CMDBUF
|
||||
|
||||
lda #$01
|
||||
lda #CMDBITS0.FN1
|
||||
tsb GP.FoundBITS
|
||||
|
||||
LA806 jsr BS.GetVolAtSxDy
|
||||
|
@ -587,7 +588,7 @@ LA80B lda GP.XCNUM
|
|||
beq .8
|
||||
|
||||
lda GP.AllowedBITS+1
|
||||
and #$04
|
||||
and #CMDBITS1.SD
|
||||
beq .8
|
||||
|
||||
lda GP.FoundBITS
|
||||
|
@ -651,7 +652,7 @@ BS.GetVolAtSxDy lda GP.ParamS
|
|||
adc BS.CMDBUF.LEN
|
||||
cmp #$40
|
||||
tax
|
||||
lda #$10
|
||||
lda #BS.E.SYNTAX
|
||||
bcs LA8F5
|
||||
|
||||
ldy BS.CMDBUF.LEN
|
||||
|
@ -674,13 +675,13 @@ LA8AF sta BS.CMDBUF,x
|
|||
bne LA8AF
|
||||
|
||||
lda GP.XCNUM
|
||||
cmp #$0B
|
||||
cmp #$0B OPEN
|
||||
beq LA8F4
|
||||
|
||||
cmp #$16
|
||||
cmp #$16 DELETE
|
||||
beq LA8F4
|
||||
|
||||
cmp #$08
|
||||
cmp #$08 EXEC
|
||||
beq LA8F4
|
||||
|
||||
lda MLI.PATHBUF
|
||||
|
@ -689,7 +690,7 @@ LA8AF sta BS.CMDBUF,x
|
|||
adc IO.LINEBUF+1
|
||||
cmp #$40
|
||||
tax
|
||||
lda #$10
|
||||
lda #BS.E.SYNTAX
|
||||
bcs LA8F5
|
||||
|
||||
stx MLI.PATHBUF
|
||||
|
@ -781,18 +782,17 @@ BS.GetChar lda IO.LINEBUF,x
|
|||
BS.TMPBUF3x2 asl BS.TMPBUF4
|
||||
rol BS.TMPBUF4+1
|
||||
rol BS.TMPBUF4+2
|
||||
BS.TMPBUF3x2.RTS
|
||||
rts
|
||||
*--------------------------------------
|
||||
BS.IsIntCmd ldx #BSX.IsIntCmd.X
|
||||
jsr BS.ToAUX
|
||||
|
||||
bcc .8
|
||||
bcc BS.TMPBUF3x2.RTS
|
||||
|
||||
dec GP.XCNUM $ff
|
||||
sec
|
||||
jmp GP.EXTRNCMD
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
BS.TMPBUF3Reset stz BS.TMPBUF4
|
||||
stz BS.TMPBUF4+1
|
||||
|
@ -826,7 +826,7 @@ LAB6F pha
|
|||
jsr LB36B
|
||||
|
||||
stz GP.ParamA
|
||||
stz MLI.MEMTABL+19
|
||||
|
||||
stz MLI.MEMTABL+20
|
||||
stz MLI.MEMTABL+21
|
||||
stz MLI.MEMTABL+22
|
||||
|
@ -840,10 +840,11 @@ LAB6F pha
|
|||
bne LABA6
|
||||
|
||||
sta GP.ParamT
|
||||
lda #$80
|
||||
lda #CMDBITS1.A
|
||||
sta GP.FoundBITS+1
|
||||
lda #$05
|
||||
lda #CMDBITS0.T+CMDBITS0.FN1
|
||||
sta GP.FoundBITS
|
||||
|
||||
LABA3 jmp BS.KW.BRUN
|
||||
|
||||
LABA6 sec
|
||||
|
@ -992,7 +993,7 @@ LAC98 stx ZP.PCL
|
|||
bcc LAC98
|
||||
|
||||
LACB6 lda GP.FoundBITS+1
|
||||
and #$08
|
||||
and #CMDBITS1.LINE
|
||||
clc
|
||||
beq LACD9
|
||||
|
||||
|
@ -1036,13 +1037,10 @@ LACFE lda #$02
|
|||
sec
|
||||
sbc AS.PGRMSTART
|
||||
tax
|
||||
* sta GP.SBUFADR
|
||||
|
||||
lda AS.PGRMEND+1
|
||||
sbc AS.PGRMSTART+1
|
||||
tay
|
||||
* sta GP.SBUFADR+1
|
||||
* lda #$00
|
||||
* sta GP.SBUFADR+2
|
||||
|
||||
jsr BS.SetSBUFADRXY0
|
||||
|
||||
|
|
|
@ -4,8 +4,8 @@ NEW
|
|||
BS.KW.BSAVE bcc LAE2D
|
||||
|
||||
lda GP.FoundBITS+1
|
||||
and #$B0
|
||||
cmp #$90
|
||||
and #CMDBITS1.A+CMDBITS1.E+CMDBITS1.L
|
||||
cmp #CMDBITS1.A+CMDBITS1.L
|
||||
|
||||
XAE00 bcc LAE31
|
||||
|
||||
|
@ -22,7 +22,7 @@ XAE00 bcc LAE31
|
|||
sta GP.FITYPE
|
||||
|
||||
lda GP.FoundBITS
|
||||
and #$04
|
||||
and #CMDBITS0.T
|
||||
bne LAE31
|
||||
|
||||
jsr BS.CreateFileOrDir
|
||||
|
@ -61,7 +61,7 @@ LAE44 ldx #$06
|
|||
ldx GP.FIAUXTYPE
|
||||
ldy GP.FIAUXTYPE+1
|
||||
lda GP.FoundBITS
|
||||
and #$04
|
||||
and #CMDBITS0.T
|
||||
bne LAEAB
|
||||
|
||||
lda GP.FoundBITS+1
|
||||
|
@ -126,8 +126,9 @@ LAEC3 sec
|
|||
|
||||
LAEC5 stx GP.MLIRW.COUNT
|
||||
sty GP.MLIRW.COUNT+1
|
||||
|
||||
lda GP.FoundBITS+1
|
||||
and #$40
|
||||
and #CMDBITS1.B
|
||||
beq LAEF7
|
||||
|
||||
ldx #$02
|
||||
|
@ -160,7 +161,7 @@ LAEF7 ldx GP.XCNUM
|
|||
bvs LAF22
|
||||
|
||||
lda GP.FoundBITS+1
|
||||
and #$30
|
||||
and #CMDBITS1.E+CMDBITS1.L
|
||||
beq LAF22
|
||||
|
||||
ldx GP.MLIRW.COUNT
|
||||
|
@ -318,7 +319,7 @@ LB018 stx BS.GetCharSep
|
|||
asl
|
||||
tax
|
||||
lda GP.FoundBITS
|
||||
and #$40
|
||||
and #CMDBITS0.SLOT
|
||||
beq LB035
|
||||
|
||||
lda GP.FoundBITS+1
|
||||
|
@ -403,27 +404,28 @@ BS.RAMReset bit GP.CISPARE1
|
|||
|
||||
php
|
||||
sei
|
||||
|
||||
|
||||
sta IO.SETWRITEAUX
|
||||
|
||||
|
||||
lda #$FF
|
||||
sta AUX.RAMSIG
|
||||
dec
|
||||
sta AUX.RAMSIG+1 Set $E000-$FEFF as BLOCK FREE
|
||||
|
||||
|
||||
sta IO.CLRWRITEAUX
|
||||
|
||||
plp
|
||||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
*--------------------------------------
|
||||
BS.KW.CAT lda #$27
|
||||
.HS 2C BIT ABS
|
||||
BS.KW.CATALOG lda #$4F
|
||||
|
||||
sta BS.CATWIDTH
|
||||
|
||||
lda GP.FoundBITS
|
||||
and #$05
|
||||
and #CMDBITS0.T+CMDBITS0.FN1
|
||||
lsr
|
||||
bne LB0BA
|
||||
|
||||
|
@ -452,8 +454,8 @@ LB0C1 jsr BS.OpenDir
|
|||
jsr BS.LINEBUFOUT
|
||||
jsr MON.CROUT
|
||||
|
||||
lda XBC14
|
||||
ora XBC15
|
||||
* lda BS.CAT.FileCnt
|
||||
* ora BS.CAT.FileCnt+1
|
||||
|
||||
LB0E8 jsr LB241
|
||||
bcs LB113
|
||||
|
@ -466,7 +468,7 @@ LB0E8 jsr LB241
|
|||
|
||||
LB0F7 ldx #BSX.MkCatLine.X
|
||||
jsr BS.ToAUX
|
||||
|
||||
|
||||
jsr BS.LINEBUFOUT
|
||||
|
||||
LB0FD lda IO.KBD
|
||||
|
@ -525,9 +527,7 @@ LB142 lda DIRENTBUF,y
|
|||
sta IO.LINEBUF
|
||||
rts
|
||||
*--------------------------------------
|
||||
BS.MkCatLineF ldx #BS.CMDBUF
|
||||
ldy /BS.CMDBUF
|
||||
jsr BS.SetSBUFADRXY
|
||||
BS.MkCatLineF jsr BS.SetSBUFADRCMDBUF
|
||||
|
||||
lda MLI.DEVNUM
|
||||
sta GP.MLIMRKEOFBUF.REFNUM
|
||||
|
@ -576,13 +576,13 @@ BS.ReadDirEnt lda #$59
|
|||
ldx #$03
|
||||
|
||||
LB1EA lda $27C,x
|
||||
sta XBC12,x
|
||||
sta BS.CAT.EL,x
|
||||
dex
|
||||
bpl LB1EA
|
||||
|
||||
sta GP.MLIRW.COUNT
|
||||
lda #$01
|
||||
sta XBC16
|
||||
sta BS.CAR.EICB
|
||||
|
||||
stz GP.SBUFADR+1
|
||||
stz GP.SBUFADR+2
|
||||
|
@ -591,7 +591,7 @@ LB203 rts
|
|||
BS.CheckFTypeXAccessA
|
||||
pha
|
||||
lda GP.FoundBITS
|
||||
and #$04
|
||||
and #CMDBITS0.T
|
||||
beq LB20F
|
||||
|
||||
ldx GP.ParamT
|
||||
|
@ -605,7 +605,7 @@ BS.OpenTypeXAccessA
|
|||
and GP.FIACCESS
|
||||
beq LB23D
|
||||
|
||||
lda XBBE3
|
||||
lda BS.BUFPAGE
|
||||
sta GP.OSYSBUF+1
|
||||
lda #$0F
|
||||
sta MLI.LEVEL
|
||||
|
@ -630,13 +630,13 @@ LB23D lda #BS.E.LOCKED
|
|||
LB241 lda GP.SBUFADR+1
|
||||
and #$FE
|
||||
sta GP.SBUFADR+1
|
||||
ldy XBC16
|
||||
ldy BS.CAR.EICB
|
||||
lda #$00
|
||||
cpy XBC13
|
||||
cpy BS.CAT.EPB
|
||||
bcc LB25D
|
||||
|
||||
tay
|
||||
sty XBC16
|
||||
sty BS.CAR.EICB
|
||||
inc GP.SBUFADR+1
|
||||
|
||||
LB25A inc GP.SBUFADR+1
|
||||
|
@ -645,7 +645,7 @@ LB25D dey
|
|||
clc
|
||||
bmi LB268
|
||||
|
||||
adc XBC12
|
||||
adc BS.CAT.EL
|
||||
bcc LB25D
|
||||
|
||||
bcs LB25A
|
||||
|
@ -658,17 +658,17 @@ LB268 adc #$04
|
|||
jsr BS.MLIRead
|
||||
bcs LB28D
|
||||
|
||||
inc XBC16
|
||||
inc BS.CAR.EICB
|
||||
lda DIRENTBUF
|
||||
and #$F0
|
||||
beq LB241
|
||||
|
||||
lda XBC14
|
||||
lda BS.CAT.FileCnt
|
||||
bne .1
|
||||
|
||||
dec XBC15
|
||||
dec BS.CAT.FileCnt+1
|
||||
|
||||
.1 dec XBC14
|
||||
.1 dec BS.CAT.FileCnt
|
||||
|
||||
LB28D rts
|
||||
*--------------------------------------
|
||||
|
@ -719,7 +719,7 @@ LB2D5 jsr BS.GetSysBuf
|
|||
|
||||
stz GP.SBUFADR
|
||||
|
||||
lda XBBE3
|
||||
lda BS.BUFPAGE
|
||||
sta GP.SBUFADR+1
|
||||
ldx GP.OPENCNT
|
||||
beq LB30E
|
||||
|
@ -728,7 +728,7 @@ LB2D5 jsr BS.GetSysBuf
|
|||
txa
|
||||
asl
|
||||
asl
|
||||
adc XBBE3
|
||||
adc BS.BUFPAGE
|
||||
pha
|
||||
|
||||
LB2F2 cmp BS.BUFPAGEs,x
|
||||
|
@ -750,7 +750,7 @@ LB2FB tya
|
|||
brk
|
||||
|
||||
LB30D pla
|
||||
LB30E sta XBBE3
|
||||
LB30E sta BS.BUFPAGE
|
||||
sta GP.OSYSBUF+1
|
||||
|
||||
stz MLI.LEVEL
|
||||
|
@ -768,7 +768,7 @@ LB30E sta XBBE3
|
|||
LB327 ldx GP.OSYSBUF+1
|
||||
stx BS.REFNUMs
|
||||
lda GP.OREFNUM
|
||||
sta XBBFE
|
||||
sta BS.REFNUM
|
||||
|
||||
LB333 sta GP.MLIRW.REFNUM
|
||||
sta GP.MLIMRKEOFBUF.REFNUM
|
||||
|
@ -785,7 +785,7 @@ LB333 sta GP.MLIRW.REFNUM
|
|||
lda #MLI.C.NEWLINE
|
||||
jsr GP.GOSYSTEM
|
||||
lda GP.FoundBITS+1
|
||||
and #$03
|
||||
and #CMDBITS1.F+CMDBITS1.R
|
||||
beq LB364
|
||||
|
||||
jsr LB592
|
||||
|
@ -811,7 +811,7 @@ LB37B rts
|
|||
BS.KW.VERIFY bcs LB3B7
|
||||
|
||||
lda GP.FoundBITS
|
||||
and #$01
|
||||
and #CMDBITS1.R
|
||||
bne LB38D
|
||||
|
||||
ldy #0
|
||||
|
@ -825,7 +825,7 @@ LB38D clc
|
|||
* beq LB39F
|
||||
|
||||
BS.KW.FLUSH lda GP.FoundBITS
|
||||
and #$01
|
||||
and #CMDBITS1.R
|
||||
beq LB39F
|
||||
|
||||
jsr BS.CheckFilename
|
||||
|
@ -904,7 +904,7 @@ LB3FE lda GP.FITYPE
|
|||
LB41D jsr BS.GetSysBuf
|
||||
bcs LB3B9
|
||||
|
||||
lda XBBE3
|
||||
lda BS.BUFPAGE
|
||||
sta GP.OSYSBUF+1
|
||||
lda #$07
|
||||
sta MLI.LEVEL
|
||||
|
@ -928,7 +928,7 @@ LB443 lda #$00
|
|||
ror
|
||||
sta GP.DIRFLG
|
||||
ldx GP.OPENCNT
|
||||
lda XBBE3
|
||||
lda BS.BUFPAGE
|
||||
sta BS.BUFPAGEs+1,x
|
||||
lda GP.OREFNUM
|
||||
sta BS.REFNUMs+1,x
|
||||
|
@ -942,7 +942,7 @@ BS.AddOpenFile asl
|
|||
tax
|
||||
lda MLI.PATHBUF
|
||||
ora GP.DIRFLG
|
||||
sta XBC59,x
|
||||
sta BS.OpenFiles,x
|
||||
and #$7F
|
||||
tay
|
||||
cmp #$1E
|
||||
|
@ -953,13 +953,13 @@ BS.AddOpenFile asl
|
|||
LB473 sta ZP.PCL
|
||||
|
||||
lda GP.ParamL
|
||||
sta XBC5A,x
|
||||
sta BS.OpenFiles+1,x
|
||||
lda GP.ParamL+1
|
||||
sta XBC5B,x
|
||||
sta BS.OpenFiles+2,x
|
||||
|
||||
LB481 inx
|
||||
lda MLI.PATHBUF,y
|
||||
sta XBC5B,x
|
||||
sta BS.OpenFiles+2,x
|
||||
dey
|
||||
dec ZP.PCL
|
||||
bne LB481
|
||||
|
@ -999,7 +999,7 @@ LB4B3 ldx ZP.PCH
|
|||
LB4B8 lda GP.EXECACTV
|
||||
bpl LB4CE
|
||||
|
||||
lda XBBFE
|
||||
lda BS.REFNUM
|
||||
jsr BS.FindOpenFile
|
||||
bne LB4CE
|
||||
|
||||
|
@ -1018,7 +1018,7 @@ BS.FindOpenFile asl
|
|||
asl
|
||||
asl
|
||||
tax
|
||||
lda XBC59,x
|
||||
lda BS.OpenFiles,x
|
||||
sta GP.DIRFLG
|
||||
and #$7F
|
||||
cmp MLI.PATHBUF
|
||||
|
@ -1032,14 +1032,14 @@ BS.FindOpenFile asl
|
|||
|
||||
LB4EC sta ZP.PCL
|
||||
|
||||
lda XBC5A,x
|
||||
sta XBBFF
|
||||
lda XBC5B,x
|
||||
sta XBC00
|
||||
lda BS.OpenFiles+1,x
|
||||
sta BS.RecordSize
|
||||
lda BS.OpenFiles+2,x
|
||||
sta BS.RecordSize+1
|
||||
|
||||
LB4FA inx
|
||||
lda MLI.PATHBUF,y
|
||||
cmp XBC5B,x
|
||||
cmp BS.OpenFiles+2,x
|
||||
bne LB508
|
||||
|
||||
dey
|
||||
|
@ -1049,7 +1049,7 @@ LB4FA inx
|
|||
LB508 rts
|
||||
*--------------------------------------
|
||||
BS.KW.CLOSE lda GP.FoundBITS
|
||||
and #$01
|
||||
and #CMDBITS0.FN1
|
||||
beq LB562
|
||||
|
||||
jsr BS.CheckFilename
|
||||
|
@ -1057,7 +1057,7 @@ BS.KW.CLOSE lda GP.FoundBITS
|
|||
|
||||
LB515 sta GP.MLICF.REFNUM
|
||||
lda BS.BUFPAGEs,x
|
||||
sta XBBE3
|
||||
sta BS.BUFPAGE
|
||||
bit GP.EXECFILE
|
||||
bmi LB53F
|
||||
|
||||
|
@ -1116,7 +1116,7 @@ BS.KW.POSITION jsr BS.CheckFilename
|
|||
bmi LB5F0
|
||||
*--------------------------------------
|
||||
LB592 lda GP.FoundBITS+1
|
||||
and #$03
|
||||
and #CMDBITS1.F+CMDBITS1.R
|
||||
beq LB5ED
|
||||
|
||||
cmp #$03
|
||||
|
@ -1164,9 +1164,9 @@ LB5ED lda #BS.E.INVOPT
|
|||
LB5EF sec
|
||||
LB5F0 rts
|
||||
*--------------------------------------
|
||||
LB5F1 lda XBBFF
|
||||
LB5F1 lda BS.RecordSize
|
||||
sta BS.TMPBUF4
|
||||
lda XBC00
|
||||
lda BS.RecordSize+1
|
||||
sta BS.TMPBUF4+1
|
||||
|
||||
stz BS.TMPBUF4+2
|
||||
|
@ -1220,13 +1220,13 @@ BS.KW.READ jsr BS.CheckFilename
|
|||
bit GP.DIRFLG
|
||||
bmi LB69C
|
||||
|
||||
jsr LB6D0
|
||||
jsr BS.CheckBFR
|
||||
bcs LB69B
|
||||
|
||||
ldx #$7F
|
||||
ldy #$EF
|
||||
lda GP.FoundBITS+1
|
||||
and #$10
|
||||
and #CMDBITS1.L
|
||||
beq LB67C
|
||||
|
||||
ldy GP.ParamL
|
||||
|
@ -1264,7 +1264,7 @@ LB69C lda #$59
|
|||
lda #$01
|
||||
sta GP.CATFLAG
|
||||
lda GP.FoundBITS+1
|
||||
and #$01
|
||||
and #CMDBITS1.R
|
||||
clc
|
||||
beq LB696
|
||||
|
||||
|
@ -1280,11 +1280,11 @@ LB6CB lda #BS.E.RANGE
|
|||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
LB6D0 lda GP.FoundBITS+1
|
||||
and #$43
|
||||
BS.CheckBFR lda GP.FoundBITS+1
|
||||
and #CMDBITS1.B+CMDBITS1.F+CMDBITS1.R
|
||||
beq LB719
|
||||
|
||||
and #$01
|
||||
and #CMDBITS1.R
|
||||
beq LB6E5
|
||||
|
||||
jsr LB5F1
|
||||
|
@ -1292,16 +1292,16 @@ LB6D0 lda GP.FoundBITS+1
|
|||
|
||||
LB6E0 jsr LB712
|
||||
bcs LB71A
|
||||
LB6E5
|
||||
lda GP.FoundBITS+1
|
||||
and #$02
|
||||
|
||||
LB6E5 lda GP.FoundBITS+1
|
||||
and #CMDBITS1.F
|
||||
beq LB6F1
|
||||
|
||||
jsr LB5AD
|
||||
bcs LB71A
|
||||
|
||||
LB6F1 lda GP.FoundBITS+1
|
||||
and #$40
|
||||
and #CMDBITS1.B
|
||||
beq LB719
|
||||
|
||||
jsr BS.MLIGetMark
|
||||
|
@ -1343,7 +1343,7 @@ LB732 sec
|
|||
LB734 stz GP.MLIRW.DATAPTR
|
||||
lda #$02
|
||||
sta GP.MLIRW.DATAPTR+1
|
||||
jsr LB6D0
|
||||
jsr BS.CheckBFR
|
||||
bcc LB757
|
||||
|
||||
cmp #$02
|
||||
|
@ -1388,64 +1388,63 @@ LB77B sta GP.MLIRW.REFNUM
|
|||
bpl LB78A
|
||||
|
||||
lda #BS.E.LOCKED
|
||||
sec
|
||||
|
||||
LB788 sec
|
||||
rts
|
||||
LB788 rts
|
||||
|
||||
LB78A ldx GP.ParamL
|
||||
ldy GP.ParamL+1
|
||||
lda GP.FoundBITS+1
|
||||
and #$10
|
||||
and #CMDBITS1.L
|
||||
bne LB79D
|
||||
|
||||
ldx GP.FIAUXTYPE
|
||||
ldy GP.FIAUXTYPE+1
|
||||
|
||||
LB79D txa
|
||||
pha
|
||||
LB79D phx
|
||||
jsr BS.GetFTableIdx
|
||||
pla
|
||||
sta XBC5A,x
|
||||
sta XBBFF
|
||||
sta BS.OpenFiles+1,x
|
||||
sta BS.RecordSize
|
||||
tya
|
||||
sta XBC5B,x
|
||||
sta XBC00
|
||||
sta BS.OpenFiles+2,x
|
||||
sta BS.RecordSize+1
|
||||
jsr BS.MLIGetEOF
|
||||
bcs LB788
|
||||
|
||||
lda XBC00
|
||||
lda BS.RecordSize+1
|
||||
bne LB7C8
|
||||
|
||||
lda XBBFF
|
||||
lda BS.RecordSize
|
||||
cmp #$02
|
||||
bcc LB7CD
|
||||
|
||||
LB7C8 jsr LB7D0
|
||||
LB7C8 jsr BS.FileLenDivRS
|
||||
bcs LB788
|
||||
|
||||
LB7CD jmp LB74B
|
||||
*--------------------------------------
|
||||
LB7D0 ldx #$03
|
||||
BS.FileLenDivRS ldx #$03
|
||||
|
||||
LB7D2 lda GP.MLIMRKEOFBUF.REFNUM,x
|
||||
sta XBC09,x
|
||||
LB7D2 lda GP.SBUFADR-1,x
|
||||
sta BS.TMPBUF4-1,x
|
||||
dex
|
||||
bne LB7D2
|
||||
|
||||
stz BS.TMPBUF4+3
|
||||
stz XBC0E
|
||||
|
||||
ldy #$18
|
||||
ldy #24
|
||||
|
||||
LB7E3 jsr BS.TMPBUF3x2
|
||||
rol BS.TMPBUF4+3
|
||||
rol XBC0E
|
||||
sec
|
||||
lda BS.TMPBUF4+3
|
||||
sbc XBBFF
|
||||
sbc BS.RecordSize
|
||||
tax
|
||||
lda XBC0E
|
||||
sbc XBC00
|
||||
sbc BS.RecordSize+1
|
||||
bcc LB805
|
||||
|
||||
stx BS.TMPBUF4+3
|
||||
|
@ -1460,11 +1459,11 @@ LB805 dey
|
|||
clc
|
||||
beq LB839
|
||||
|
||||
lda XBBFF
|
||||
lda BS.RecordSize
|
||||
sec
|
||||
sbc BS.TMPBUF4+3
|
||||
tax
|
||||
lda XBC00
|
||||
lda BS.RecordSize+1
|
||||
sbc XBC0E
|
||||
tay
|
||||
txa
|
||||
|
@ -1475,10 +1474,10 @@ LB805 dey
|
|||
adc GP.SBUFADR+1
|
||||
sta GP.SBUFADR+1
|
||||
bcc .1
|
||||
|
||||
|
||||
inc GP.SBUFADR+2
|
||||
|
||||
.1 lda #$02
|
||||
.1 lda #BS.E.RANGE
|
||||
|
||||
LB839 rts
|
||||
*--------------------------------------
|
||||
|
@ -1514,7 +1513,7 @@ BS.KW.MEM jsr MON.CROUT
|
|||
sta $260,x
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
|
||||
lda AS.HIMEM
|
||||
sta $260+10
|
||||
lda AS.HIMEM+1
|
||||
|
@ -1531,18 +1530,19 @@ BS.KW.MEM jsr MON.CROUT
|
|||
lda XBC10
|
||||
cmp #6
|
||||
bne .2
|
||||
|
||||
|
||||
jsr MON.CROUT
|
||||
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
BS.KW.ONLINE jsr MON.CROUT
|
||||
|
||||
ldx #BS.CMDBUF
|
||||
ldy /BS.CMDBUF
|
||||
jsr BS.SetSBUFADRXY
|
||||
|
||||
jsr BS.SetSBUFADRCMDBUF
|
||||
|
||||
lda MLI.DEVNUM
|
||||
pha
|
||||
|
||||
lda #$10
|
||||
|
||||
.1 sta GP.MLIMRKEOFBUF.REFNUM
|
||||
|
@ -1550,32 +1550,35 @@ BS.KW.ONLINE jsr MON.CROUT
|
|||
lda #MLI.C.ONLINE
|
||||
jsr GP.GOSYSTEM
|
||||
bcs .7
|
||||
|
||||
|
||||
lda BS.CMDBUF
|
||||
and #$0F
|
||||
inc
|
||||
sta BS.CMDBUF.LEN
|
||||
lda #'/'
|
||||
sta BS.CMDBUF
|
||||
|
||||
|
||||
jsr BS.GetFileInfo
|
||||
bcs .7
|
||||
|
||||
|
||||
ldx #BSX.Online.X
|
||||
jsr BS.ToAUX
|
||||
|
||||
|
||||
jsr BS.LINEBUFOUT
|
||||
|
||||
|
||||
.7 lda GP.MLIMRKEOFBUF.REFNUM
|
||||
eor #$80
|
||||
bmi .1
|
||||
|
||||
|
||||
clc
|
||||
adc #$10
|
||||
bpl .1
|
||||
|
||||
|
||||
jsr MON.CROUT
|
||||
|
||||
|
||||
pla
|
||||
sta MLI.DEVNUM
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
@ -1598,7 +1601,7 @@ BS.Expand2PATHBUF
|
|||
BS.ToAUX stx .1+1
|
||||
|
||||
sei
|
||||
|
||||
|
||||
tsx
|
||||
sta IO.SETALTZP
|
||||
stx $100
|
||||
|
@ -1612,24 +1615,24 @@ BS.ToAUX stx .1+1
|
|||
|
||||
.1 ldx #$FF SELF MODIFIED
|
||||
jsr BSX.JMPX
|
||||
|
||||
|
||||
stx .3+1
|
||||
php
|
||||
plx
|
||||
stx .2+1
|
||||
|
||||
|
||||
sei
|
||||
|
||||
|
||||
tsx
|
||||
stx $101
|
||||
ldx $100
|
||||
txs
|
||||
sta IO.CLRALTZP
|
||||
|
||||
|
||||
bit IO.RROMBNK1
|
||||
|
||||
|
||||
cli
|
||||
|
||||
|
||||
.2 ldx #$FF SELF MODIFIED
|
||||
phx
|
||||
.3 ldx #$FF SELF MODIFIED
|
||||
|
@ -1646,6 +1649,9 @@ BS.GetFTableIdx lda GP.MLIRW.REFNUM
|
|||
tax
|
||||
rts
|
||||
*--------------------------------------
|
||||
BS.SetSBUFADRCMDBUF
|
||||
ldx #BS.CMDBUF
|
||||
ldy /BS.CMDBUF
|
||||
BS.SetSBUFADRXY0
|
||||
stz GP.SBUFADR+2
|
||||
|
||||
|
|
|
@ -155,7 +155,7 @@ BS.TXTTAB .DA $0800
|
|||
BS.MEMSIZE .DA HIMEM-$400
|
||||
|
||||
XBBE2 .BS 1
|
||||
XBBE3 .BS 1
|
||||
BS.BUFPAGE .BS 1
|
||||
|
||||
BS.BAS.HDR .BS 5
|
||||
XBBE9 .BS 1
|
||||
|
@ -165,9 +165,9 @@ XBBEC .BS 1
|
|||
XBBED .BS 1
|
||||
BS.BUFPAGEs .BS 8
|
||||
BS.REFNUMs .BS 8
|
||||
XBBFE .BS 1
|
||||
XBBFF .BS 1
|
||||
XBC00 .BS 3
|
||||
BS.REFNUM .BS 1
|
||||
BS.RecordSize .BS 2
|
||||
.BS 2
|
||||
BS.CALLX .BS 1
|
||||
BS.GetCharSep .BS 1
|
||||
BS.GetCharMax .BS 1
|
||||
|
@ -183,11 +183,10 @@ XBC10 .BS 1
|
|||
|
||||
BS.CATWIDTH .BS 1
|
||||
|
||||
XBC12 .BS 1
|
||||
XBC13 .BS 1
|
||||
XBC14 .BS 1
|
||||
XBC15 .BS 1
|
||||
XBC16 .BS 1
|
||||
BS.CAT.EL .BS 1
|
||||
BS.CAT.EPB .BS 1
|
||||
BS.CAT.FileCnt .BS 2
|
||||
BS.CAR.EICB .BS 1
|
||||
*--------------------------------------
|
||||
.LIST ON
|
||||
BS.FREESPACE .EQ $BC17-*
|
||||
|
@ -197,10 +196,7 @@ BS.FREESPACE .EQ $BC17-*
|
|||
BS.CMDBUF.LEN .BS 1 keep this in $BC page, flagged in MLI.MEMTABL
|
||||
BS.CMDBUF .BS 65
|
||||
*--------------------------------------
|
||||
XBC59 .BS 1
|
||||
XBC5A .BS 1
|
||||
|
||||
XBC5B .BS 165
|
||||
BS.OpenFiles .BS 167
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/basic.fx/basic.s.d
|
||||
|
|
|
@ -56,21 +56,25 @@ LDR.START1 ldx #$FF
|
|||
|
||||
ldx #$01
|
||||
jsr LDR.MoveXpages
|
||||
|
||||
lda bRAMFlag
|
||||
sta GP.CISPARE1
|
||||
|
||||
lda #$CF page 0,1,4,5,6,7
|
||||
lda #%11001111 pages 0,1,...,4,5,6,7 protected
|
||||
sta MLI.MEMTABL
|
||||
|
||||
ldx #19 HIMEM=$A000
|
||||
ldx #19
|
||||
|
||||
.1 stz MLI.MEMTABL,x
|
||||
dex
|
||||
bne .1
|
||||
|
||||
lda #$FF
|
||||
sta MLI.MEMTABL+20
|
||||
sta MLI.MEMTABL+20 HIMEM=$A000
|
||||
sta MLI.MEMTABL+21
|
||||
sta MLI.MEMTABL+22
|
||||
lda #$C3
|
||||
|
||||
lda #%11000011 pages $B8,$B9,...,$BE,$BF protected
|
||||
sta MLI.MEMTABL+23
|
||||
|
||||
bit IO.RRAMWRAMBNK2
|
||||
|
@ -313,7 +317,9 @@ LDR.KSW lda GP.INVECT0
|
|||
lda #$8D
|
||||
rts
|
||||
*--------------------------------------
|
||||
LDR.ShrinkRAM lda MLI.DEVPTRS3D2
|
||||
LDR.ShrinkRAM stz bRAMFlag
|
||||
|
||||
lda MLI.DEVPTRS3D2
|
||||
ldx MLI.DEVPTRS3D2+1
|
||||
|
||||
cmp MLI.DEVPTRS S0D1=NOVEV
|
||||
|
@ -362,7 +368,7 @@ LDR.ShrinkRAM lda MLI.DEVPTRS3D2
|
|||
dex
|
||||
bpl .7
|
||||
|
||||
dec GP.CISPARE1 Tell BYE to reset that...
|
||||
dec bRAMFlag Tell BYE to reset that...
|
||||
|
||||
php
|
||||
sei
|
||||
|
|
|
@ -57,6 +57,7 @@ CMDBITS1.V .EQ $00 ;Volume number ignored
|
|||
Ptr1 .EQ 0
|
||||
Ptr2 .EQ 2
|
||||
ZPCode .EQ 4
|
||||
bRAMFlag .EQ 6
|
||||
|
||||
ZP.WNDLFT .EQ $20
|
||||
ZP.WNDWDT .EQ $21
|
||||
|
|
Loading…
Reference in New Issue
Block a user