Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-09-03 22:52:37 +02:00
parent dc5d111cf6
commit 2b0f02c7a3
4 changed files with 43 additions and 46 deletions

Binary file not shown.

View File

@ -470,9 +470,11 @@ CS.RUN.RESPONSE jsr Init.TimeOut
bcc .2 bcc .2
cmp #E.NODATA cmp #E.NODATA
beq .1
bne .8 bne .8
lda #"."
>SYSCALL putchar
lda TimeOut lda TimeOut
bne .1 bne .1
@ -587,7 +589,7 @@ CS.DOEVENT lda (pEvent)
CS.QUIT lda hSocket CS.QUIT lda hSocket
beq .1 beq .1
>LIBCALL hLIBTCPIP,LIBTCPIP.Shutdown * >LIBCALL hLIBTCPIP,LIBTCPIP.Shutdown
.1 lda hReqBuf .1 lda hReqBuf
beq .2 beq .2

View File

@ -331,23 +331,44 @@ SKT.shutdown pha
ldy #S.SOCKET.T ldy #S.SOCKET.T
lda (ZPPtrSKT),y lda (ZPPtrSKT),y
cmp #S.SOCKET.T.STREAM
beq SKT.shutdown.STREAM
*--------------------------------------
cmp #S.SOCKET.T.SEQPKT cmp #S.SOCKET.T.SEQPKT
bne SKT.shutdown.DGRAM bcc SKT.shutdown.DGRAM
ldy #S.SOCKET.TCP.S
lda (ZPPtrSKT),y
cmp #S.SOCKET.TCP.S.TIMEWT
bcs .7
pla pla
pha
jsr SKT.shutdown.TCP jsr SKT.GetTCB
ldy #S.SOCKET.TCP.S
lda (ZPPtrSKT),y
cmp #S.SOCKET.TCP.S.ESTBLSH
bne .1
* bcs SKT.shutdown.RTS lda #S.TCP.OPTIONS.FIN+S.TCP.OPTIONS.ACK
jsr TCP.OUT.SendOptA Send FIN/ACK
bcs .9
lda #S.SOCKET.TCP.S.FINWT1
jmp SKT.StoreTCB.S
.1 cmp #S.SOCKET.TCP.S.CLWAIT
beq .3
.2 lda #S.TCP.OPTIONS.RST
jsr TCP.OUT.SendOptA Send RST
.3 lda #S.SOCKET.TCP.S.TIMEWT
jmp SKT.StoreTCB.S
.7 pla
.8 clc
.9 rts
*-------------------------------------- *--------------------------------------
SKT.shutdown.LISTEN SKT.shutdown.LISTEN
SKT.shutdown.RAW
SKT.shutdown.DGRAM SKT.shutdown.DGRAM
SKT.shutdown.SEQPKT
.1 jsr SKT.GetFromQueue .1 jsr SKT.GetFromQueue
bcs .3 bcs .3
@ -370,35 +391,6 @@ SKT.shutdown.SEQPKT
* clc * clc
SKT.shutdown.RTS SKT.shutdown.RTS
rts rts
*--------------------------------------
SKT.shutdown.STREAM
pla
SKT.shutdown.TCP
jsr SKT.GetTCB
ldy #S.SOCKET.TCP.S
lda (ZPPtrSKT),y
cmp #S.SOCKET.TCP.S.ESTBLSH
bne .1
lda #S.TCP.OPTIONS.FIN+S.TCP.OPTIONS.ACK
jsr TCP.OUT.SendOptA Send FIN/ACK
bcs .9
lda #S.SOCKET.TCP.S.FINWT1
jmp SKT.StoreTCB.S
.1 cmp #S.SOCKET.TCP.S.CLWAIT
beq .3
.2 lda #S.TCP.OPTIONS.RST
jsr TCP.OUT.SendOptA Send RST
bcs .9
.3 lda #S.SOCKET.TCP.S.TIMEWT
jmp SKT.StoreTCB.S
.9 rts
*/-------------------------------------- */--------------------------------------
* # Read (STREAM) * # Read (STREAM)
* ## C * ## C

View File

@ -400,7 +400,7 @@ TCP.SENDCLOSE ldx #0
cmp #AF.INET cmp #AF.INET
bne .8 bne .8
iny #S.SOCKET.T iny #S.SOCKET.T
lda (ZPPtrSKT),y lda (ZPPtrSKT),y
cmp #S.SOCKET.T.SEQPKT cmp #S.SOCKET.T.SEQPKT
bcc .8 bcc .8
@ -439,18 +439,21 @@ TCP.SENDCLOSE ldx #0
bra .8 bra .8
*-------------------------------------- *--------------------------------------
.4 cpx #S.SOCKET.T.SEQPKT .4 cpx #S.SOCKET.T.SEQPKT
bne .5 bne .6
jsr SKT.shutdown.SEQPKT .5 jsr SKT.GetFromQueue
bra .8 bcs .7
>SYSCALL2 FreeMem
bra .5
.5 ldy #S.SOCKET.SQ.hInMem .6 ldy #S.SOCKET.SQ.hInMem
jsr TCP.SENDCLOSE.PIPE jsr TCP.SENDCLOSE.PIPE
ldy #S.SOCKET.SQ.hOutMem ldy #S.SOCKET.SQ.hOutMem
jsr TCP.SENDCLOSE.PIPE jsr TCP.SENDCLOSE.PIPE
plx .7 plx
phx phx
lda SKT.TABLE,x lda SKT.TABLE,x
stz SKT.TABLE,x stz SKT.TABLE,x