From 26d4d0a64af7cf9a682729f39660b65f673e314c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 12 Jun 2019 17:39:07 +0200 Subject: [PATCH] Kernel 0.93 --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes INC/LIBTCPIP.I.txt | 1 - LIB/LIBTCPIP.S.SKT.txt | 26 ++---------- LIB/LIBTCPIP.S.TCP.txt | 85 +++++++++++++++++---------------------- 4 files changed, 41 insertions(+), 71 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 9d2915b83838dcda3f0dd50532c0174f08ba0ca6..ee1b63a2a18bf6b5dec19566c8e4770e604973fa 100644 GIT binary patch delta 18760 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 G^8W*NuwADC16 SKT.Cache+S.SOCKET.TCP.INFREE,ZPDataInLen >SBC16 SKT.Cache+S.SOCKET.TCP.INUSED,ZPDataInLen -* lda SKT.Cache+S.SOCKET.TCP.OUTACKNUM+3 -* clc -* adc ZPDataInLen -* sta SKT.Cache+S.SOCKET.TCP.OUTACKNUM+3 -* lda SKT.Cache+S.SOCKET.TCP.OUTACKNUM+2 -* adc ZPDataInLen+1 -* sta SKT.Cache+S.SOCKET.TCP.OUTACKNUM+2 - -* bcc .80 -* inc SKT.Cache+S.SOCKET.TCP.OUTACKNUM+1 -* bne .80 -* inc SKT.Cache+S.SOCKET.TCP.OUTACKNUM -*.80 jsr SKT.StoreTCB - -* lda #S.TCP.OPTIONS.ACK -* jsr TCP.OUT.SendOptA -* jsr TCP.SetSocketTCPO.ACK ACK=1 -> send WSIZE - -* jsr TCP.OUT.I SKT.GetTCB already called + jsr TCP.SetSocketTCPO.ACK ACK=1 -> send WSIZE >LDYA ZPDataInLen clc @@ -692,8 +674,6 @@ SKT.AddDataToSktOut >ADC16 SKT.Cache+S.SOCKET.TCP.OUTTOSEND,ZPDataInLen jsr SKT.StoreTCB -* jsr TCP.OUT.I SKT.GetTCB called, try to push, ignore error.... - >LDYA ZPDataInLen clc rts diff --git a/LIB/LIBTCPIP.S.TCP.txt b/LIB/LIBTCPIP.S.TCP.txt index bef3008f..d95cfb47 100644 --- a/LIB/LIBTCPIP.S.TCP.txt +++ b/LIB/LIBTCPIP.S.TCP.txt @@ -104,7 +104,7 @@ TCP.IN.JMP.SYNSENT jmp SKT.StoreTCB.S .9 lda #S.TCP.OPTIONS.RST - jsr TCP.OUT.SendOptA + jsr TCP.OUT.SendOptA Send RST ldx SKT.Index lda SKT.TABLE,x @@ -193,7 +193,7 @@ TCP.IN.JMP.ESTBLSH sbc TmpDWord+2 sta SKT.Cache+S.SOCKET.TCP.OUTUSED+1 -.3 jsr SKT.StoreTCB and update SKT + jsr SKT.StoreTCB .4 jsr TCP.IN.SetDataInPtrAndLen @@ -227,12 +227,9 @@ TCP.IN.JMP.ESTBLSH bne .6 inc SKT.Cache+S.SOCKET.TCP.INSEQNUM -.6 jsr TCP.SetSocketTCPO.ACK - -* lda #S.TCP.OPTIONS.ACK -* jsr TCP.OUT.SendOptA Try to ACK read DATA - - jsr SKT.StoreTCB success, update socket +.6 jsr SKT.StoreTCB update socket + + jsr TCP.SetSocketTCPO.ACK ...and ack data .7 ldy #S.TCP.OPTIONS lda (ZPFrameInPtr),y @@ -245,7 +242,7 @@ TCP.IN.JMP.ESTBLSH jsr TCP.IN.ACKTheFIN lda #S.TCP.OPTIONS.FIN+S.TCP.OPTIONS.ACK - jmp TCP.OUT.SendOptA FIN received, Send FIN.ACK + jmp TCP.SetSocketTCPO FIN received, Send FIN.ACK .8 clc .9 rts @@ -340,10 +337,10 @@ TCP.IN.ACKTheSYN .3 lda (ZPFrameInPtr),y Set OUTACK=SEQ+1 for new socket... adc #0 sta SKT.Cache+S.SOCKET.TCP.INSEQNUM,x -* sta SKT.Cache+S.SOCKET.TCP.OUTACKNUM,x dey dex bpl .3 + rts *-------------------------------------- TCP.IN.ACKTheFIN @@ -356,13 +353,6 @@ TCP.IN.ACKTheFIN dex bpl .1 -*.2 ldx #3 - -*.3 inc SKT.Cache+S.SOCKET.TCP.OUTACKNUM,x -* bne .8 -* dex -* bpl .3 - .8 rts *-------------------------------------- TCP.IN.SetDataInPtrAndLen @@ -441,6 +431,7 @@ TCP.SENDCLOSE ldx #0 cmp #S.SOCKET.TCP.S.ESTBLSH bne .8 + jsr SKT.GetTCB jsr TCP.OUT bra .8 @@ -466,17 +457,7 @@ TCP.SENDCLOSE ldx #0 .9 rts *-------------------------------------- -TCP.SetSocketTCPO.ACK - lda #S.TCP.OPTIONS.ACK -TCP.SetSocketTCPO - ldy #S.SOCKET.TCP.O - ora (ZPPtrSKT),y - sta (ZPPtrSKT),y - rts -*-------------------------------------- -TCP.OUT jsr SKT.GetTCB - -TCP.OUT.I lda SKT.Cache+S.SOCKET.TCP.OUTTOSEND+1 +TCP.OUT lda SKT.Cache+S.SOCKET.TCP.OUTTOSEND+1 ldy SKT.Cache+S.SOCKET.TCP.OUTTOSEND bne .1 @@ -505,9 +486,14 @@ TCP.OUT.I lda SKT.Cache+S.SOCKET.TCP.OUTTOSEND+1 jsr SKT.GetDataFromSktOut - lda #S.TCP.OPTIONS.ACK+S.TCP.OPTIONS.PSH + ldy #S.TCP.WINDOW + lda SKT.Cache+S.SOCKET.TCP.INFREE+1 + sta (ZPFrameOutPtr),y + iny + lda SKT.Cache+S.SOCKET.TCP.INFREE + sta (ZPFrameOutPtr),y -* jsr TCP.SetSocketTCPO + lda #S.TCP.OPTIONS.ACK+S.TCP.OPTIONS.PSH jsr TCP.OUT.Send @@ -533,7 +519,19 @@ TCP.OUT.SendOptA >LDYAI 0 jsr TCP.NewFrame - bcs TCP.OUT.Send.RTS + bcs TCP.OUT.Send.9 + + ldy #S.SOCKET.TCP.INFREE+1 + lda (ZPPtrSKT),y + tax + dey + lda (ZPPtrSKT),y + + ldy #S.TCP.WINDOW + sta (ZPFrameOutPtr),y + iny + txa + sta (ZPFrameOutPtr),y ldy #S.SOCKET.TCP.O lda (ZPPtrSKT),y @@ -561,23 +559,23 @@ TCP.OUT.Send ldy #S.TCP.OPTIONS dey dex bpl .3 - - ldy #S.TCP.WINDOW - lda SKT.Cache+S.SOCKET.TCP.INFREE+1 - sta (ZPFrameOutPtr),y - iny - lda SKT.Cache+S.SOCKET.TCP.INFREE - sta (ZPFrameOutPtr),y jsr FRM.SendIP - bcs TCP.OUT.Send.RTS + bcs TCP.OUT.Send.9 ldy #S.SOCKET.TCP.O lda #0 sta (ZPPtrSKT),y * clc -TCP.OUT.Send.RTS +TCP.OUT.Send.9 rts +*-------------------------------------- +TCP.SetSocketTCPO.ACK + lda #S.TCP.OPTIONS.ACK +TCP.SetSocketTCPO + ldy #S.SOCKET.TCP.O + ora (ZPPtrSKT),y + sta (ZPPtrSKT),y rts *-------------------------------------- TCP.NewFrame ldx #S.IP.PROTOCOL.TCP @@ -592,13 +590,6 @@ TCP.NewFrame ldx #S.IP.PROTOCOL.TCP lda #$50 Header size = 5 DWORDS sta (ZPFrameOutPtr),y - ldy #S.TCP.WINDOW - lda SKT.Cache+S.SOCKET.TCP.INFREE+1 - sta (ZPFrameOutPtr),y - iny - lda SKT.Cache+S.SOCKET.TCP.INFREE - sta (ZPFrameOutPtr),y - clc .9 rts *--------------------------------------