mirror of
https://github.com/A2osX/A2osX.git
synced 2024-08-15 04:29:35 +00:00
Kernel version 0.9 : TCP, bugfix (#6) ...
This commit is contained in:
parent
dd0c5ee75c
commit
625b1af258
Binary file not shown.
Binary file not shown.
@ -184,7 +184,7 @@ S.TCB.OUTUSED .EQ 18
|
|||||||
*
|
*
|
||||||
S.TCB.SEQNUM .EQ 20 Send:SEQ not yet ACKed
|
S.TCB.SEQNUM .EQ 20 Send:SEQ not yet ACKed
|
||||||
S.TCB.ACKNUM .EQ 24 Rcvd:Last ACK recieved from remote
|
S.TCB.ACKNUM .EQ 24 Rcvd:Last ACK recieved from remote
|
||||||
S.TCB.LASTSEQ .EQ 28 Rcvd:Last SEQ accepted data from remote
|
S.TCB.NEXTSEQ .EQ 28 Rcvd:Next SEQ accepted data from remote
|
||||||
*
|
*
|
||||||
S.TCB .EQ 32
|
S.TCB .EQ 32
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -634,7 +634,7 @@ SKT.AddDataToSktIn
|
|||||||
ldx #3
|
ldx #3
|
||||||
|
|
||||||
.10 lda (ZPFrameInPtr),y
|
.10 lda (ZPFrameInPtr),y
|
||||||
eor SKT.TCBCache+S.TCB.LASTSEQ,x
|
eor SKT.TCBCache+S.TCB.NEXTSEQ,x
|
||||||
bne .9
|
bne .9
|
||||||
dey
|
dey
|
||||||
dex
|
dex
|
||||||
@ -719,17 +719,17 @@ SKT.AddDataToSktIn
|
|||||||
|
|
||||||
clc
|
clc
|
||||||
|
|
||||||
lda SKT.TCBCache+S.TCB.LASTSEQ+3
|
lda SKT.TCBCache+S.TCB.NEXTSEQ+3
|
||||||
adc ZPDataInLen
|
adc ZPDataInLen
|
||||||
sta SKT.TCBCache+S.TCB.LASTSEQ+3
|
sta SKT.TCBCache+S.TCB.NEXTSEQ+3
|
||||||
|
|
||||||
lda SKT.TCBCache+S.TCB.LASTSEQ+2
|
lda SKT.TCBCache+S.TCB.NEXTSEQ+2
|
||||||
adc ZPDataInLen+1
|
adc ZPDataInLen+1
|
||||||
sta SKT.TCBCache+S.TCB.LASTSEQ+2
|
sta SKT.TCBCache+S.TCB.NEXTSEQ+2
|
||||||
bcc .80
|
bcc .80
|
||||||
inc SKT.TCBCache+S.TCB.LASTSEQ+1
|
inc SKT.TCBCache+S.TCB.NEXTSEQ+1
|
||||||
bne .80
|
bne .80
|
||||||
inc SKT.TCBCache+S.TCB.LASTSEQ
|
inc SKT.TCBCache+S.TCB.NEXTSEQ
|
||||||
|
|
||||||
.80 jmp SKT.StoreTCB
|
.80 jmp SKT.StoreTCB
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -747,7 +747,7 @@ SKT.GetDataFromSktIn
|
|||||||
ora SKT.TCBCache+S.TCB.INUSED+1
|
ora SKT.TCBCache+S.TCB.INUSED+1
|
||||||
bne .10
|
bne .10
|
||||||
sec
|
sec
|
||||||
rts NO DATA
|
rts A=0,NO DATA
|
||||||
|
|
||||||
.10 ldy #S.SOCKET.SQ.hInMem
|
.10 ldy #S.SOCKET.SQ.hInMem
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
@ -985,7 +985,7 @@ SKT.AddDataToSktOut
|
|||||||
adc ZPDataInLen+1
|
adc ZPDataInLen+1
|
||||||
sta SKT.TCBCache+S.TCB.TOSEND+1
|
sta SKT.TCBCache+S.TCB.TOSEND+1
|
||||||
jsr SKT.StoreTCB
|
jsr SKT.StoreTCB
|
||||||
jmp TCP.OUT.I
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* From TCP.OUT
|
* From TCP.OUT
|
||||||
* Src : hOutMem/OUTTAIL
|
* Src : hOutMem/OUTTAIL
|
||||||
|
@ -124,7 +124,7 @@ TCP.IN.JMP.LISTEN
|
|||||||
.3 lda (ZPFrameInPtr),y Set ACK=SEQ+1 for new socket...
|
.3 lda (ZPFrameInPtr),y Set ACK=SEQ+1 for new socket...
|
||||||
adc #0
|
adc #0
|
||||||
sta SKT.TCBCache+S.TCB.ACKNUM,x
|
sta SKT.TCBCache+S.TCB.ACKNUM,x
|
||||||
sta SKT.TCBCache+S.TCB.LASTSEQ,x
|
sta SKT.TCBCache+S.TCB.NEXTSEQ,x
|
||||||
dey
|
dey
|
||||||
dex
|
dex
|
||||||
bpl .3
|
bpl .3
|
||||||
@ -448,7 +448,7 @@ TCP.OUT.SendOpt sta .1+1
|
|||||||
TCP.OUT.Send ldy #S.TCP.OPTIONS
|
TCP.OUT.Send ldy #S.TCP.OPTIONS
|
||||||
sta (ZPFrameOutPtr),y
|
sta (ZPFrameOutPtr),y
|
||||||
bit #S.TCP.OPTIONS.ACK
|
bit #S.TCP.OPTIONS.ACK
|
||||||
beq .1
|
beq .11
|
||||||
|
|
||||||
ldx #3
|
ldx #3
|
||||||
ldy #S.TCP.ACK.NUMBER+3
|
ldy #S.TCP.ACK.NUMBER+3
|
||||||
@ -458,6 +458,15 @@ TCP.OUT.Send ldy #S.TCP.OPTIONS
|
|||||||
dey
|
dey
|
||||||
dex
|
dex
|
||||||
bpl .10
|
bpl .10
|
||||||
|
bra .1
|
||||||
|
|
||||||
|
.11 ldy #S.TCP.ACK.NUMBER
|
||||||
|
lda #0
|
||||||
|
|
||||||
|
.12 sta (ZPFrameOutPtr),y
|
||||||
|
iny
|
||||||
|
cpy #S.TCP.ACK.NUMBER+4
|
||||||
|
bne .12
|
||||||
|
|
||||||
.1 ldx #3
|
.1 ldx #3
|
||||||
ldy #S.TCP.SEQ.NUMBER+3
|
ldy #S.TCP.SEQ.NUMBER+3
|
||||||
|
Loading…
Reference in New Issue
Block a user