From b6fdc79b80d4018daf5115b0a7ae4c098243c5fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 12 Jun 2019 07:56:34 +0200 Subject: [PATCH] Kernel 0.93 --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes LIB/LIBTCPIP.S.SKT.txt | 2 +- LIB/LIBTCPIP.S.TCP.txt | 21 +++++++++++---------- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 85fbf30667671148d58d3096cccbf85471c29b95..9d2915b83838dcda3f0dd50532c0174f08ba0ca6 100644 GIT binary patch delta 8934 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 send WSIZE +* jsr TCP.SetSocketTCPO.ACK ACK=1 -> send WSIZE * jsr TCP.OUT.I SKT.GetTCB already called diff --git a/LIB/LIBTCPIP.S.TCP.txt b/LIB/LIBTCPIP.S.TCP.txt index 0a0c86dc..bef3008f 100644 --- a/LIB/LIBTCPIP.S.TCP.txt +++ b/LIB/LIBTCPIP.S.TCP.txt @@ -166,7 +166,7 @@ TCP.IN.JMP.ESTBLSH ldx TmpDWord+2 bne .2 tay - beq .3 + beq .4 .2 clc adc SKT.Cache+S.SOCKET.TCP.OUTTAIL @@ -227,24 +227,25 @@ TCP.IN.JMP.ESTBLSH bne .6 inc SKT.Cache+S.SOCKET.TCP.INSEQNUM -.6 jsr SKT.StoreTCB success, update socket +.6 jsr TCP.SetSocketTCPO.ACK - jsr TCP.SetSocketTCPO.ACK Try to ACK read DATA - -* jsr TCP.OUT.I SKT.GetTCB already called +* lda #S.TCP.OPTIONS.ACK +* jsr TCP.OUT.SendOptA Try to ACK read DATA + + jsr SKT.StoreTCB success, update socket .7 ldy #S.TCP.OPTIONS lda (ZPFrameInPtr),y and #S.TCP.OPTIONS.FIN beq .8 + lda #S.SOCKET.TCP.S.CLWAIT + ldy #S.SOCKET.TCP.S + sta (ZPPtrSKT),y + jsr TCP.IN.ACKTheFIN lda #S.TCP.OPTIONS.FIN+S.TCP.OPTIONS.ACK - jsr TCP.OUT.SendOptA FIN received, Send FIN.ACK - bcs .9 - - lda #S.SOCKET.TCP.S.CLWAIT - jmp SKT.StoreTCB.S + jmp TCP.OUT.SendOptA FIN received, Send FIN.ACK .8 clc .9 rts