Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-06-07 15:47:00 +02:00
parent 91aba25dd4
commit 62b2d1f9be
5 changed files with 49 additions and 34 deletions

Binary file not shown.

View File

@ -8,6 +8,7 @@ IP.IN ldy #S.IP.PROTOCOL
bne .2
jmp ICMP.IN
.2 cmp #S.IP.PROTOCOL.UDP
bne .3

View File

@ -864,10 +864,14 @@ SKT.Recv clc
ldy #S.SOCKET.T
lda (ZPPtrSKT),y
cmp #S.SOCKET.T.STREAM
beq .99
cmp #S.SOCKET.T.SEQPKT
bcc .10
bne .99 STREAM
jsr SKT.CheckTCP
bcs .91
ldy #S.SOCKET.HQ.TAIL
.10 ldy #S.SOCKET.HQ.TAIL
lda (ZPPtrSKT),y
tax
@ -878,6 +882,7 @@ SKT.Recv clc
inc
cmp #S.SOCKET.HQ.MAX
bne .1
lda #0
.1 ldy #S.SOCKET.HQ.TAIL
@ -936,13 +941,13 @@ SKT.Recv clc
clc
.9 rts
.99 plp
lda #ERR.SKT.BAD
.99 lda #ERR.SKT.BAD
.91 plp
sec
rts
.90 plp
lda #0 no data
.90 lda #0 no data
plp
sec
rts
*/--------------------------------------
@ -996,7 +1001,9 @@ SKT.Send.8 jsr SKT.SetFrameOutDstIP
clc Queue if fail
jmp FRM.SendIP
*--------------------------------------
SKT.Send.SEQPKT
SKT.Send.SEQPKT jsr SKT.CheckTCP
bcs SKT.Send.9
>LDYA ZPDataInLen
jsr TCP.NewFrame
bcs SKT.Send.9
@ -1076,12 +1083,13 @@ SKT.EOF.I ldy #S.SOCKET.TCP.INUSED
* clc
.9 rts
*--------------------------------------
SKT.CheckStream ldy #S.SOCKET.T
lda (ZPPtrSKT),y
cmp #S.SOCKET.T.STREAM
bne .99
SKT.CheckStream lda #S.SOCKET.T.STREAM
ldy #S.SOCKET.T
cmp (ZPPtrSKT),y
bne SKT.BAD
ldy #S.SOCKET.O
SKT.CheckTCP ldy #S.SOCKET.O
lda (ZPPtrSKT),y
and #S.SOCKET.O.ACCEPTCONN
bne .99
@ -1103,6 +1111,7 @@ SKT.CheckStream ldy #S.SOCKET.T
.90 lda #ERR.SKT.NOCONN
sec
rts
.99
SKT.BAD lda #ERR.SKT.BAD
sec
@ -1266,6 +1275,7 @@ SKT.AddToQueueA pha
inc
cmp #S.SOCKET.HQ.MAX
bne .1
lda #0
.1 ldy #S.SOCKET.HQ.TAIL

View File

@ -204,14 +204,16 @@ TCP.IN.JMP.ESTBLSH
bne .52
jsr SKT.AddDataToSktIn yes, queue data if there is room for....
bcs .9
bra .6
bcc .6
rts
.52 lda hFrameIn
jsr SKT.AddToQueueA
bcs .9
stz hFrameIn DON'T DISCARD
.6 lda ZPDataInLen
ldy ZPDataInLen+1
ldx #S.SOCKET.TCP.INSEQNUM

View File

@ -165,7 +165,7 @@ CS.RUN.INIT ldx #3
bcs CS.RUN.RTS
>PUSHBI 0 no protocol
lda #S.SOCKET.T.SEQPACKET
lda #S.SOCKET.T.SEQPKT
>LIBCALL hLIBTCPIP,LIBTCPIP.Socket
bcs CS.RUN.RTS
@ -345,7 +345,7 @@ CS.RUN.CLIENT >LDYAI 1024
>STYA ZPRepPtr
txa
>STA.G REQ.hBuf
>STA.G REP.hBuf
.10 >STZ.G REQ.FullPath
>STA.G REQ.hReq
@ -386,20 +386,16 @@ CS.RUN.CLIENT >LDYAI 1024
bcs .9
jsr CS.RUN.SendFile
bcc .5
bra .90
bcs .5
bcc .6
.9 >PUSHWI HTTP.404.len
>PUSHW L.HTTP.404
>LDA.G CLN.hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.Send
>STZ.G REQ.KeepAlive
.5 >LDA.G REQ.hFile
beq .6
>SYSCALL FClose
.5 >STZ.G REQ.KeepAlive
.6 >LDA.G REQ.hReq
beq .8
@ -410,12 +406,10 @@ CS.RUN.CLIENT >LDYAI 1024
beq .90
jmp .10
.90 >LDA.G REQ.hBuf
beq .91
.90 >LDA.G REP.hBuf
>SYSCALL freemem
.91 >PUSHW L.MSG.SKTCLOSE
>PUSHW L.MSG.SKTCLOSE
>PUSHB.G CLN.hSocket
>PUSHBI 1
>SYSCALL printf
@ -423,7 +417,7 @@ CS.RUN.CLIENT >LDYAI 1024
>LDA.G CLN.hSocket
>LIBCALL hLIBTCPIP,LIBTCPIP.Shutdown
.99 rts
rts
*--------------------------------------
CS.RUN.REQ.GetReq
>STA.G REQ.hReq
@ -577,15 +571,22 @@ CS.RUN.SendFile >PUSHW ZPRepPtr
bcs .8
jsr CS.RUN.SendBuf
bcc .1
bcs .9
rts
bra .1
.8 cmp #MLI.E.EOF
bne .9
clc
.9 rts
.9 php
pha
>LDA.G REQ.hFile
>SYSCALL FClose
pla
plp
rts
*--------------------------------------
CS.RUN.SendBuf >PUSHYA
>PUSHW ZPRepPtr
@ -807,6 +808,7 @@ REQ.hFile .BS 1
REQ.hBuf .BS 1
REQ.MimeType .BS 1
REQ.KeepAlive .BS 1
REP.hBuf .BS 1
CLN.hSocket .BS 1
DS.END
.ED