mirror of https://github.com/A2osX/A2osX.git
BASIC:bugfixes & reorg
This commit is contained in:
parent
905ebf9a2b
commit
d249f0c0b9
Binary file not shown.
Binary file not shown.
|
@ -1172,118 +1172,6 @@ LA1F2 clc
|
||||||
sbc AS.STRINGSTART+1
|
sbc AS.STRINGSTART+1
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
BS.GetSysBuf lda #$04
|
|
||||||
|
|
||||||
LA1FB sta XBBB5
|
|
||||||
jsr BS.KW.FRE
|
|
||||||
bcs LA24E
|
|
||||||
|
|
||||||
lda AS.STRINGSTART+1
|
|
||||||
sbc AS.ARRAYEND+1
|
|
||||||
cmp XBBB5
|
|
||||||
lda #BS.E.NOBUFFER
|
|
||||||
bcc LA24E
|
|
||||||
|
|
||||||
lda AS.STRINGSTART+1
|
|
||||||
sta ZP.PCH
|
|
||||||
sbc XBBB5
|
|
||||||
sta ZP.A1H
|
|
||||||
sta AS.STRINGSTART+1
|
|
||||||
|
|
||||||
lda AS.STRINGSTART
|
|
||||||
sta ZP.PCL
|
|
||||||
sta ZP.A1L
|
|
||||||
|
|
||||||
lda AS.HIMEM
|
|
||||||
sbc ZP.PCL
|
|
||||||
sta XBBED
|
|
||||||
|
|
||||||
lda AS.HIMEM+1
|
|
||||||
sbc ZP.PCH
|
|
||||||
sta BS.BUFPAGEs
|
|
||||||
|
|
||||||
jsr BS.MoveMemUp
|
|
||||||
lda #$00
|
|
||||||
sec
|
|
||||||
sbc XBBB5
|
|
||||||
sta XBBE2
|
|
||||||
jsr LA3A3
|
|
||||||
lda AS.HIMEM+1
|
|
||||||
sta XBBB7
|
|
||||||
sec
|
|
||||||
sbc XBBB5
|
|
||||||
sta AS.HIMEM+1
|
|
||||||
clc
|
|
||||||
adc #$04
|
|
||||||
sta BS.BUFPAGE
|
|
||||||
rts
|
|
||||||
|
|
||||||
LA24E sec
|
|
||||||
rts
|
|
||||||
|
|
||||||
XBBB5 .BS 1
|
|
||||||
*--------------------------------------
|
|
||||||
LA250 jsr BS.KW.FRE
|
|
||||||
bcs LA29D
|
|
||||||
|
|
||||||
lda AS.HIMEM+1
|
|
||||||
sbc #$00
|
|
||||||
sta ZP.PCH
|
|
||||||
adc #$03
|
|
||||||
sta ZP.A1H
|
|
||||||
lda AS.STRINGSTART
|
|
||||||
sta ZP.PCL
|
|
||||||
sta ZP.A1L
|
|
||||||
lda AS.HIMEM
|
|
||||||
sec
|
|
||||||
sbc AS.STRINGSTART
|
|
||||||
sta XBBED
|
|
||||||
lda AS.HIMEM+1
|
|
||||||
sbc AS.STRINGSTART+1
|
|
||||||
sta BS.BUFPAGEs
|
|
||||||
jsr BS.MoveMemDown
|
|
||||||
|
|
||||||
lda #$04
|
|
||||||
sta XBBE2
|
|
||||||
clc
|
|
||||||
adc AS.HIMEM+1
|
|
||||||
sta AS.HIMEM+1
|
|
||||||
jsr LA3A3
|
|
||||||
|
|
||||||
lda BS.BUFPAGE
|
|
||||||
cmp AS.HIMEM+1
|
|
||||||
beq LA2B7
|
|
||||||
|
|
||||||
pha
|
|
||||||
ldx GP.OPENCNT
|
|
||||||
beq LA29B
|
|
||||||
|
|
||||||
lda AS.HIMEM+1
|
|
||||||
|
|
||||||
LA293 cmp BS.BUFPAGEs,x
|
|
||||||
beq LA29E
|
|
||||||
|
|
||||||
dex
|
|
||||||
bne LA293
|
|
||||||
|
|
||||||
LA29B pla
|
|
||||||
sec
|
|
||||||
LA29D rts
|
|
||||||
|
|
||||||
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
|
|
||||||
jmp GP.GOSYSTEM
|
|
||||||
|
|
||||||
LA2B7 clc
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
MAN
|
MAN
|
||||||
SAVE usr/src/basic.fx/basic.s.a
|
SAVE usr/src/basic.fx/basic.s.a
|
||||||
LOAD usr/src/basic.fx/basic.s
|
LOAD usr/src/basic.fx/basic.s
|
||||||
|
|
|
@ -1,6 +1,123 @@
|
||||||
NEW
|
NEW
|
||||||
AUTO 3,1
|
AUTO 3,1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
BS.GetSysBuf lda #$04
|
||||||
|
|
||||||
|
LA1FB sta XBBB5
|
||||||
|
jsr BS.KW.FRE
|
||||||
|
bcs LA24E
|
||||||
|
|
||||||
|
lda AS.STRINGSTART+1
|
||||||
|
sbc AS.ARRAYEND+1
|
||||||
|
cmp XBBB5
|
||||||
|
lda #BS.E.NOBUFFER
|
||||||
|
bcc LA24E
|
||||||
|
|
||||||
|
lda AS.STRINGSTART+1
|
||||||
|
sta ZP.PCH
|
||||||
|
sbc XBBB5
|
||||||
|
sta ZP.A1H
|
||||||
|
sta AS.STRINGSTART+1
|
||||||
|
|
||||||
|
lda AS.STRINGSTART
|
||||||
|
sta ZP.PCL
|
||||||
|
sta ZP.A1L
|
||||||
|
|
||||||
|
lda AS.HIMEM
|
||||||
|
sbc ZP.PCL
|
||||||
|
sta BS.ReqMem
|
||||||
|
|
||||||
|
lda AS.HIMEM+1
|
||||||
|
sbc ZP.PCH
|
||||||
|
sta BS.ReqMem+1
|
||||||
|
|
||||||
|
jsr BS.MoveMemDown
|
||||||
|
|
||||||
|
lda #$00
|
||||||
|
sec
|
||||||
|
sbc XBBB5
|
||||||
|
sta XBBE2
|
||||||
|
jsr LA3A3
|
||||||
|
lda AS.HIMEM+1
|
||||||
|
sta XBBB7
|
||||||
|
sec
|
||||||
|
sbc XBBB5
|
||||||
|
sta AS.HIMEM+1
|
||||||
|
clc
|
||||||
|
adc #$04
|
||||||
|
sta BS.BUFPAGE
|
||||||
|
rts
|
||||||
|
|
||||||
|
LA24E sec
|
||||||
|
rts
|
||||||
|
|
||||||
|
XBBB5 .BS 1
|
||||||
|
*--------------------------------------
|
||||||
|
BS.FreeSysBuf jsr BS.KW.FRE
|
||||||
|
bcs LA29D
|
||||||
|
|
||||||
|
lda AS.HIMEM+1
|
||||||
|
sbc #$00
|
||||||
|
sta ZP.PCH
|
||||||
|
adc #$03
|
||||||
|
sta ZP.A1H
|
||||||
|
|
||||||
|
lda AS.STRINGSTART
|
||||||
|
sta ZP.PCL
|
||||||
|
sta ZP.A1L
|
||||||
|
|
||||||
|
lda AS.HIMEM
|
||||||
|
sec
|
||||||
|
sbc AS.STRINGSTART
|
||||||
|
sta BS.ReqMem
|
||||||
|
|
||||||
|
lda AS.HIMEM+1
|
||||||
|
sbc AS.STRINGSTART+1
|
||||||
|
sta BS.ReqMem+1
|
||||||
|
|
||||||
|
jsr BS.MoveMemUp
|
||||||
|
|
||||||
|
lda #$04
|
||||||
|
sta XBBE2
|
||||||
|
clc
|
||||||
|
adc AS.HIMEM+1
|
||||||
|
sta AS.HIMEM+1
|
||||||
|
jsr LA3A3
|
||||||
|
|
||||||
|
lda BS.BUFPAGE
|
||||||
|
cmp AS.HIMEM+1
|
||||||
|
beq LA2B7
|
||||||
|
|
||||||
|
pha
|
||||||
|
ldx GP.OPENCNT
|
||||||
|
beq LA29B
|
||||||
|
|
||||||
|
lda AS.HIMEM+1
|
||||||
|
|
||||||
|
LA293 cmp BS.BUFPAGEs-1,x
|
||||||
|
beq LA29E
|
||||||
|
|
||||||
|
dex
|
||||||
|
bne LA293
|
||||||
|
|
||||||
|
LA29B pla
|
||||||
|
sec
|
||||||
|
LA29D rts
|
||||||
|
|
||||||
|
LA29E pla
|
||||||
|
*--------------------------------------
|
||||||
|
BS.SetFileBuf sta GP.SBUFADR+1
|
||||||
|
sta BS.BUFPAGEs-1,x
|
||||||
|
|
||||||
|
stz GP.SBUFADR
|
||||||
|
lda BS.REFNUMs,x
|
||||||
|
sta GP.MLIMRKEOFBUF.REFNUM
|
||||||
|
lda #MLI.C.SETBUF
|
||||||
|
jmp GP.GOSYSTEM
|
||||||
|
|
||||||
|
LA2B7 clc
|
||||||
|
rts
|
||||||
|
*--------------------------------------
|
||||||
BS.GETBUFR jsr LA1FB
|
BS.GETBUFR jsr LA1FB
|
||||||
bcs LA304
|
bcs LA304
|
||||||
|
|
||||||
|
@ -18,7 +135,7 @@ LA2C5 sta GP.SBUFADR+1
|
||||||
adc #$04
|
adc #$04
|
||||||
sta XBBB7
|
sta XBBB7
|
||||||
|
|
||||||
LA2D6 cmp BS.BUFPAGEs,x
|
LA2D6 cmp BS.BUFPAGEs-1,x
|
||||||
bne LA2EB
|
bne LA2EB
|
||||||
|
|
||||||
lda GP.SBUFADR+1
|
lda GP.SBUFADR+1
|
||||||
|
@ -67,7 +184,7 @@ LA327 lda XBBB7
|
||||||
ldx GP.OPENCNT
|
ldx GP.OPENCNT
|
||||||
beq LA351
|
beq LA351
|
||||||
|
|
||||||
LA32F cmp BS.BUFPAGEs,x
|
LA32F cmp BS.BUFPAGEs-1,x
|
||||||
bne LA34E
|
bne LA34E
|
||||||
|
|
||||||
lda AS.HIMEM+1
|
lda AS.HIMEM+1
|
||||||
|
@ -97,8 +214,8 @@ LA356 pha
|
||||||
pla
|
pla
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
BS.MoveMemUp ldy #$00
|
BS.MoveMemDown ldy #$00
|
||||||
cpy BS.BUFPAGEs
|
cpy BS.ReqMem+1
|
||||||
beq .2
|
beq .2
|
||||||
|
|
||||||
.1 lda (ZP.PCL),y
|
.1 lda (ZP.PCL),y
|
||||||
|
@ -108,10 +225,10 @@ BS.MoveMemUp ldy #$00
|
||||||
|
|
||||||
inc ZP.PCH
|
inc ZP.PCH
|
||||||
inc ZP.A1H
|
inc ZP.A1H
|
||||||
dec BS.BUFPAGEs
|
dec BS.ReqMem+1
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
.2 cpy XBBED
|
.2 cpy BS.ReqMem
|
||||||
beq .8
|
beq .8
|
||||||
|
|
||||||
lda (ZP.PCL),y
|
lda (ZP.PCL),y
|
||||||
|
@ -121,17 +238,17 @@ BS.MoveMemUp ldy #$00
|
||||||
|
|
||||||
.8 rts
|
.8 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
BS.MoveMemDown ldy XBBED
|
BS.MoveMemUp ldy BS.ReqMem
|
||||||
XA386 beq LA38F SELF MODIFIED
|
XA386 beq LA38F SELF MODIFIED
|
||||||
|
|
||||||
LA388 jsr LA39A
|
LA388 jsr LA39A
|
||||||
dec ZP.A1H
|
dec ZP.A1H
|
||||||
dec ZP.PCH
|
dec ZP.PCH
|
||||||
|
|
||||||
LA38F cpy BS.BUFPAGEs
|
LA38F cpy BS.ReqMem+1
|
||||||
beq LA3A2
|
beq LA3A2
|
||||||
|
|
||||||
dec BS.BUFPAGEs
|
dec BS.ReqMem+1
|
||||||
bra LA388
|
bra LA388
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
LA39A dey
|
LA39A dey
|
||||||
|
@ -227,12 +344,12 @@ LA411 jsr LA021
|
||||||
sec
|
sec
|
||||||
sbc AS.VARSTART
|
sbc AS.VARSTART
|
||||||
sta BS.BAS.HDR
|
sta BS.BAS.HDR
|
||||||
sta XBBED
|
sta BS.ReqMem
|
||||||
|
|
||||||
lda AS.ARRAYEND+1
|
lda AS.ARRAYEND+1
|
||||||
sbc AS.VARSTART+1
|
sbc AS.VARSTART+1
|
||||||
sta BS.BAS.HDR+1
|
sta BS.BAS.HDR+1
|
||||||
sta BS.BUFPAGEs
|
sta BS.ReqMem+1
|
||||||
|
|
||||||
lda AS.ARRAYSTART
|
lda AS.ARRAYSTART
|
||||||
sbc AS.VARSTART
|
sbc AS.VARSTART
|
||||||
|
@ -243,7 +360,7 @@ LA411 jsr LA021
|
||||||
sta BS.BAS.HDR+3
|
sta BS.BAS.HDR+3
|
||||||
|
|
||||||
lda AS.STRINGSTART
|
lda AS.STRINGSTART
|
||||||
sbc XBBED
|
sbc BS.ReqMem
|
||||||
sta ZP.A1L
|
sta ZP.A1L
|
||||||
|
|
||||||
lda AS.STRINGSTART+1
|
lda AS.STRINGSTART+1
|
||||||
|
@ -251,7 +368,7 @@ LA411 jsr LA021
|
||||||
sta ZP.A1H
|
sta ZP.A1H
|
||||||
|
|
||||||
lda AS.ARRAYEND
|
lda AS.ARRAYEND
|
||||||
sbc XBBED
|
sbc BS.ReqMem
|
||||||
sta ZP.PCL
|
sta ZP.PCL
|
||||||
|
|
||||||
lda AS.ARRAYEND+1
|
lda AS.ARRAYEND+1
|
||||||
|
@ -260,12 +377,15 @@ LA411 jsr LA021
|
||||||
|
|
||||||
lda #$03
|
lda #$03
|
||||||
sta XA386+1
|
sta XA386+1
|
||||||
jsr BS.MoveMemDown
|
|
||||||
|
jsr BS.MoveMemUp
|
||||||
|
|
||||||
lda #$07
|
lda #$07
|
||||||
sta XA386+1
|
sta XA386+1
|
||||||
|
|
||||||
lda ZP.A1L
|
lda ZP.A1L
|
||||||
sta XBBE9
|
sta XBBE9
|
||||||
|
|
||||||
inc ZP.A1H
|
inc ZP.A1H
|
||||||
lda ZP.A1H
|
lda ZP.A1H
|
||||||
sta XBBEA
|
sta XBBEA
|
||||||
|
@ -284,13 +404,13 @@ LA411 jsr LA021
|
||||||
LA47F rts
|
LA47F rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
LA480 lda BS.BAS.HDR
|
LA480 lda BS.BAS.HDR
|
||||||
sta XBBED
|
sta BS.ReqMem
|
||||||
clc
|
clc
|
||||||
adc AS.VARSTART
|
adc AS.VARSTART
|
||||||
sta AS.ARRAYEND
|
sta AS.ARRAYEND
|
||||||
|
|
||||||
lda BS.BAS.HDR+1
|
lda BS.BAS.HDR+1
|
||||||
sta BS.BUFPAGEs
|
sta BS.ReqMem+1
|
||||||
adc AS.VARSTART+1
|
adc AS.VARSTART+1
|
||||||
sta AS.ARRAYEND+1
|
sta AS.ARRAYEND+1
|
||||||
|
|
||||||
|
@ -308,9 +428,10 @@ LA480 lda BS.BAS.HDR
|
||||||
sta ZP.PCL
|
sta ZP.PCL
|
||||||
lda XBBEA
|
lda XBBEA
|
||||||
sta ZP.PCH
|
sta ZP.PCH
|
||||||
jsr BS.MoveMemUp
|
|
||||||
|
|
||||||
lda XBBED
|
jsr BS.MoveMemDown
|
||||||
|
|
||||||
|
lda BS.ReqMem
|
||||||
clc
|
clc
|
||||||
adc ZP.PCL
|
adc ZP.PCL
|
||||||
sta AS.STRINGSTART
|
sta AS.STRINGSTART
|
||||||
|
|
|
@ -731,7 +731,7 @@ LB2D5 jsr BS.GetSysBuf
|
||||||
adc BS.BUFPAGE
|
adc BS.BUFPAGE
|
||||||
pha
|
pha
|
||||||
|
|
||||||
LB2F2 cmp BS.BUFPAGEs,x
|
LB2F2 cmp BS.BUFPAGEs-1,x
|
||||||
beq LB2FB
|
beq LB2FB
|
||||||
|
|
||||||
dex
|
dex
|
||||||
|
@ -740,7 +740,7 @@ LB2F2 cmp BS.BUFPAGEs,x
|
||||||
brk
|
brk
|
||||||
|
|
||||||
LB2FB tya
|
LB2FB tya
|
||||||
sta BS.BUFPAGEs,x
|
sta BS.BUFPAGEs-1,x
|
||||||
lda BS.REFNUMs,x
|
lda BS.REFNUMs,x
|
||||||
sta GP.MLIMRKEOFBUF.REFNUM
|
sta GP.MLIMRKEOFBUF.REFNUM
|
||||||
lda #MLI.C.SETBUF
|
lda #MLI.C.SETBUF
|
||||||
|
@ -750,6 +750,7 @@ LB2FB tya
|
||||||
brk
|
brk
|
||||||
|
|
||||||
LB30D pla
|
LB30D pla
|
||||||
|
|
||||||
LB30E sta BS.BUFPAGE
|
LB30E sta BS.BUFPAGE
|
||||||
sta GP.OSYSBUF+1
|
sta GP.OSYSBUF+1
|
||||||
|
|
||||||
|
@ -760,7 +761,7 @@ LB30E sta BS.BUFPAGE
|
||||||
bcc LB327
|
bcc LB327
|
||||||
|
|
||||||
pha
|
pha
|
||||||
jsr LA250
|
jsr BS.FreeSysBuf
|
||||||
pla
|
pla
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
@ -906,14 +907,16 @@ LB41D jsr BS.GetSysBuf
|
||||||
|
|
||||||
lda BS.BUFPAGE
|
lda BS.BUFPAGE
|
||||||
sta GP.OSYSBUF+1
|
sta GP.OSYSBUF+1
|
||||||
|
|
||||||
lda #$07
|
lda #$07
|
||||||
sta MLI.LEVEL
|
sta MLI.LEVEL
|
||||||
|
|
||||||
lda #MLI.C.OPEN
|
lda #MLI.C.OPEN
|
||||||
jsr GP.GOSYSTEM
|
jsr GP.GOSYSTEM
|
||||||
bcc LB43B
|
bcc LB43B
|
||||||
|
|
||||||
pha
|
pha
|
||||||
jsr LA250
|
jsr BS.FreeSysBuf
|
||||||
pla
|
pla
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
@ -929,7 +932,7 @@ LB443 lda #$00
|
||||||
sta GP.DIRFLG
|
sta GP.DIRFLG
|
||||||
ldx GP.OPENCNT
|
ldx GP.OPENCNT
|
||||||
lda BS.BUFPAGE
|
lda BS.BUFPAGE
|
||||||
sta BS.BUFPAGEs+1,x
|
sta BS.BUFPAGEs,x
|
||||||
lda GP.OREFNUM
|
lda GP.OREFNUM
|
||||||
sta BS.REFNUMs+1,x
|
sta BS.REFNUMs+1,x
|
||||||
inc GP.OPENCNT
|
inc GP.OPENCNT
|
||||||
|
@ -1056,17 +1059,17 @@ BS.KW.CLOSE lda GP.FoundBITS
|
||||||
bcs LB4B1
|
bcs LB4B1
|
||||||
|
|
||||||
LB515 sta GP.MLICF.REFNUM
|
LB515 sta GP.MLICF.REFNUM
|
||||||
lda BS.BUFPAGEs,x
|
lda BS.BUFPAGEs-1,x
|
||||||
sta BS.BUFPAGE
|
sta BS.BUFPAGE
|
||||||
bit GP.EXECFILE
|
bit GP.EXECFILE
|
||||||
bmi LB53F
|
bmi LB53F
|
||||||
|
|
||||||
ldy GP.OPENCNT
|
ldy GP.OPENCNT
|
||||||
pha
|
pha
|
||||||
lda BS.BUFPAGEs,y
|
lda BS.BUFPAGEs-1,y
|
||||||
sta BS.BUFPAGEs,x
|
sta BS.BUFPAGEs-1,x
|
||||||
pla
|
pla
|
||||||
sta BS.BUFPAGEs,y
|
sta BS.BUFPAGEs-1,y
|
||||||
lda BS.REFNUMs,x
|
lda BS.REFNUMs,x
|
||||||
pha
|
pha
|
||||||
lda BS.REFNUMs,y
|
lda BS.REFNUMs,y
|
||||||
|
@ -1079,7 +1082,7 @@ LB53F stz MLI.LEVEL
|
||||||
jsr BS.MLIClose
|
jsr BS.MLIClose
|
||||||
bcs LB572
|
bcs LB572
|
||||||
|
|
||||||
jsr LA250
|
jsr BS.FreeSysBuf
|
||||||
bit GP.EXECFILE
|
bit GP.EXECFILE
|
||||||
bpl LB55E
|
bpl LB55E
|
||||||
|
|
||||||
|
|
|
@ -158,12 +158,16 @@ XBBE2 .BS 1
|
||||||
BS.BUFPAGE .BS 1
|
BS.BUFPAGE .BS 1
|
||||||
|
|
||||||
BS.BAS.HDR .BS 5
|
BS.BAS.HDR .BS 5
|
||||||
|
|
||||||
XBBE9 .BS 1
|
XBBE9 .BS 1
|
||||||
XBBEA .BS 1
|
XBBEA .BS 1
|
||||||
|
|
||||||
XBBEB .BS 1
|
XBBEB .BS 1
|
||||||
XBBEC .BS 1
|
XBBEC .BS 1
|
||||||
XBBED .BS 1
|
|
||||||
BS.BUFPAGEs .BS 8
|
BS.ReqMem .BS 2
|
||||||
|
|
||||||
|
BS.BUFPAGEs .BS 7
|
||||||
BS.REFNUMs .BS 8
|
BS.REFNUMs .BS 8
|
||||||
BS.REFNUM .BS 1
|
BS.REFNUM .BS 1
|
||||||
BS.RecordSize .BS 2
|
BS.RecordSize .BS 2
|
||||||
|
|
|
@ -121,6 +121,7 @@ J.ESC .DA CS.RUN.CHARIN.LEFT
|
||||||
.DO TLS=1
|
.DO TLS=1
|
||||||
L.MSG.TLS .DA MSG.TLS
|
L.MSG.TLS .DA MSG.TLS
|
||||||
L.MSG.TLS.1 .DA MSG.TLS.1
|
L.MSG.TLS.1 .DA MSG.TLS.1
|
||||||
|
L.MSG.TLSKO .DA MSG.TLSKO
|
||||||
L.TLS.CHELLO .DA TLS.CHELLO
|
L.TLS.CHELLO .DA TLS.CHELLO
|
||||||
L.TLS.CHELLO.UT .DA TLS.CHELLO.UT
|
L.TLS.CHELLO.UT .DA TLS.CHELLO.UT
|
||||||
.FIN
|
.FIN
|
||||||
|
@ -362,28 +363,37 @@ CS.RUN.TLS jsr CS.RUN.TLS.init
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.Write
|
>LIBCALL hLIBTCPIP,LIBTCPIP.Write
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
.1 >SLEEP
|
lda #TIMEOUT.MAX
|
||||||
|
sta TimeOut
|
||||||
|
|
||||||
lda TimeOut
|
.1 >SLEEP
|
||||||
bne .1
|
|
||||||
|
|
||||||
>PUSHB hSocket
|
>PUSHB hSocket
|
||||||
>PUSHW ZPBufPtr
|
>PUSHW ZPBufPtr
|
||||||
>PUSHWI 2048
|
>PUSHWI 2048
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.Read
|
>LIBCALL hLIBTCPIP,LIBTCPIP.Read
|
||||||
bcs .9
|
bcc .2
|
||||||
|
|
||||||
|
ldx TimeOut
|
||||||
|
bne .1
|
||||||
|
|
||||||
>STYA ZPPtr2 RCVD len
|
bra .9
|
||||||
|
|
||||||
|
.2 >STYA ZPPtr2 RCVD len
|
||||||
>PUSHW L.MSG.TLS.1
|
>PUSHW L.MSG.TLS.1
|
||||||
>PUSHW ZPPtr2
|
>PUSHW ZPPtr2
|
||||||
>PUSHBI 2
|
>PUSHBI 2
|
||||||
>SYSCALL PrintF
|
>SYSCALL PrintF
|
||||||
|
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.8 clc
|
.9 pha
|
||||||
.9 rts
|
>LDYA L.MSG.TLSKO
|
||||||
|
>SYSCALL PutS
|
||||||
|
pla
|
||||||
|
sec
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.RUN.TLS.init >LDYA L.MSG.TLS
|
CS.RUN.TLS.init >LDYA L.MSG.TLS
|
||||||
>SYSCALL PutS
|
>SYSCALL PutS
|
||||||
|
@ -1095,6 +1105,7 @@ MSG.SKTERR .AZ "Socket Error : $%h\r\n"
|
||||||
.DO TLS=1
|
.DO TLS=1
|
||||||
MSG.TLS .AZ "TLS:Negociation..."
|
MSG.TLS .AZ "TLS:Negociation..."
|
||||||
MSG.TLS.1 .AZ "TLS:Received %D bytes.\r\n"
|
MSG.TLS.1 .AZ "TLS:Received %D bytes.\r\n"
|
||||||
|
MSG.TLSKO .AZ "TLS:Negotiation failed."
|
||||||
.FIN
|
.FIN
|
||||||
MSG.REGISTER .AZ "Registering User..."
|
MSG.REGISTER .AZ "Registering User..."
|
||||||
MSG.JOIN .AZ "Joining Channel..."
|
MSG.JOIN .AZ "Joining Channel..."
|
||||||
|
@ -1162,13 +1173,13 @@ TLS.CHELLO.UT .BS 4
|
||||||
TLS.CHELLO.R .BS 28
|
TLS.CHELLO.R .BS 28
|
||||||
.DA #0 SID
|
.DA #0 SID
|
||||||
.DA #0,#2 CSL
|
.DA #0,#2 CSL
|
||||||
.DA #0,#TLS.HS.CH.CS.RSAAES128GCMSHA256
|
.DA #0,#TLS.HS.CH.CS.RSAAES128CBCSHA256
|
||||||
.DA TLS.HS.CH.CM.NONE
|
.DA TLS.HS.CH.CM.NONE
|
||||||
.DA /TLS.CHELLO.LE,#TLS.CHELLO.LE
|
.DA /TLS.CHELLO.LE,#TLS.CHELLO.LE
|
||||||
TLS.CHELLO.E .HS 000D T=sig alg
|
TLS.CHELLO.E .HS 000D T=sig alg
|
||||||
.HS 0004 sig alg Len
|
.HS 0004 sig alg Len
|
||||||
.HS 0002 sig hash alg len
|
.HS 0002 sig hash alg len
|
||||||
.HS 0401 RSA PKCS1 SHA256
|
.HS 0401 SHA256 RSA
|
||||||
TLS.CHELLO.L .EQ *-TLS.CHELLO
|
TLS.CHELLO.L .EQ *-TLS.CHELLO
|
||||||
TLS.CHELLO.L1 .EQ *-TLS.CHELLO.1
|
TLS.CHELLO.L1 .EQ *-TLS.CHELLO.1
|
||||||
TLS.CHELLO.L2 .EQ *-TLS.CHELLO.2
|
TLS.CHELLO.L2 .EQ *-TLS.CHELLO.2
|
||||||
|
|
|
@ -789,11 +789,11 @@ WRITE php
|
||||||
* dey
|
* dey
|
||||||
* bpl .21
|
* bpl .21
|
||||||
|
|
||||||
lda #192
|
lda #255
|
||||||
sta W5100.DR,x
|
sta W5100.DR,x
|
||||||
lda #168
|
lda #255
|
||||||
sta W5100.DR,x
|
sta W5100.DR,x
|
||||||
lda #1
|
lda #255
|
||||||
sta W5100.DR,x
|
sta W5100.DR,x
|
||||||
lda #255
|
lda #255
|
||||||
sta W5100.DR,x
|
sta W5100.DR,x
|
||||||
|
@ -900,8 +900,8 @@ DCB .DA #S.DCB.T.NIC
|
||||||
.DA #S.DCB.NIC.SPEED.100
|
.DA #S.DCB.NIC.SPEED.100
|
||||||
.HS 0008DC123456 MAC
|
.HS 0008DC123456 MAC
|
||||||
.DA #0,#0,#0,#0 IP
|
.DA #0,#0,#0,#0 IP
|
||||||
.DA #255,#255,#255,#0 MASK
|
.DA #0,#0,#0,#0 MASK
|
||||||
.DA #192,#168,#1,#254 GW
|
.DA #255,#255,#255,#255 GW
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
FRM.HDR .HS 0800 S.ETH.EII.TYPE
|
FRM.HDR .HS 0800 S.ETH.EII.TYPE
|
||||||
.HS 4500
|
.HS 4500
|
||||||
|
|
|
@ -37,6 +37,9 @@ TLS.HS.CH.SID .EQ 36
|
||||||
TLS.HS.CH.CSL .EQ 37
|
TLS.HS.CH.CSL .EQ 37
|
||||||
TLS.HS.CH.CS .EQ 39
|
TLS.HS.CH.CS .EQ 39
|
||||||
TLS.HS.CH.CS.RSAAES128CBCSHA .EQ $2F
|
TLS.HS.CH.CS.RSAAES128CBCSHA .EQ $2F
|
||||||
|
TLS.HS.CH.CS.RSAAES256CBCSHA .EQ $35
|
||||||
|
TLS.HS.CH.CS.RSAAES128CBCSHA256 .EQ $3C
|
||||||
|
TLS.HS.CH.CS.RSAAES256CBCSHA256 .EQ $3D
|
||||||
TLS.HS.CH.CS.RSAAES128GCMSHA256 .EQ $9C
|
TLS.HS.CH.CS.RSAAES128GCMSHA256 .EQ $9C
|
||||||
TLS.HS.CH.CM .EQ 41
|
TLS.HS.CH.CM .EQ 41
|
||||||
TLS.HS.CH.CM.NONE .EQ 1 Len=1, value=0
|
TLS.HS.CH.CM.NONE .EQ 1 Len=1, value=0
|
||||||
|
|
|
@ -334,11 +334,9 @@ BB.Seek lda BB.HdrTrk get track we're on
|
||||||
|
|
||||||
jsr .20 we are on 0/4 or 2/4 track
|
jsr .20 we are on 0/4 or 2/4 track
|
||||||
|
|
||||||
lda #1
|
bra .10 no wait, next operation will be phy/plx/Ph0On,y
|
||||||
bra .9 no wait, next operation will be phy/plx/Ph0On,y
|
|
||||||
|
|
||||||
.1 cmp BB.TargetQTrack we are on 1/4 or 3/4
|
.1 cmp BB.TargetQTrack we are on 1/4 or 3/4
|
||||||
|
|
||||||
bcs .2 if CS, C > T, must move out
|
bcs .2 if CS, C > T, must move out
|
||||||
|
|
||||||
inc CC: C < T, ON next PH
|
inc CC: C < T, ON next PH
|
||||||
|
@ -386,7 +384,7 @@ BB.Seek lda BB.HdrTrk get track we're on
|
||||||
|
|
||||||
.9 jsr BB.Wait100usecA ...wait...
|
.9 jsr BB.Wait100usecA ...wait...
|
||||||
|
|
||||||
lda BB.CurrentQTrack
|
.10 lda BB.CurrentQTrack
|
||||||
cmp BB.TargetQTrack
|
cmp BB.TargetQTrack
|
||||||
bne .3
|
bne .3
|
||||||
|
|
||||||
|
@ -395,12 +393,12 @@ BB.Seek lda BB.HdrTrk get track we're on
|
||||||
lda #0
|
lda #0
|
||||||
jsr BB.Wait100usecA
|
jsr BB.Wait100usecA
|
||||||
|
|
||||||
bcc .10
|
bcc .11
|
||||||
|
|
||||||
sta IO.D2.Ph0Off,x
|
lda IO.D2.Ph0Off,x
|
||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
.10 lda IO.D2.Ph0Off,y
|
.11 lda IO.D2.Ph0Off,y
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
BB.Read ldx BB.Slotn0
|
BB.Read ldx BB.Slotn0
|
||||||
|
|
||||||
|
|
|
@ -138,7 +138,7 @@ D2.MoveHead.SEI lda D2.CurrentQTrack
|
||||||
|
|
||||||
bcc .90
|
bcc .90
|
||||||
|
|
||||||
sta IO.D2.Ph0Off,x
|
lda IO.D2.Ph0Off,x
|
||||||
nop
|
nop
|
||||||
nop
|
nop
|
||||||
.90 lda IO.D2.Ph0Off,y
|
.90 lda IO.D2.Ph0Off,y
|
||||||
|
|
|
@ -838,7 +838,7 @@ XRW.SeekYA sta XRW.D2Trk-1,x will be current track at the end
|
||||||
|
|
||||||
bcc .90
|
bcc .90
|
||||||
|
|
||||||
sta IO.D2.Ph0Off,x
|
lda IO.D2.Ph0Off,x
|
||||||
nop
|
nop
|
||||||
clc Exit wit CC (recalibrate)
|
clc Exit wit CC (recalibrate)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue