diff --git a/A2OSX.BOOT.po b/A2OSX.BOOT.po index fbdc75e5..98ee9fc4 100644 Binary files a/A2OSX.BOOT.po and b/A2OSX.BOOT.po differ diff --git a/A2OSX.DEV.po b/A2OSX.DEV.po index f2f2b8ec..4ffdcd24 100644 Binary files a/A2OSX.DEV.po and b/A2OSX.DEV.po differ diff --git a/A2OSX.SRC.po b/A2OSX.SRC.po index ea0d47db..fa62cf42 100644 Binary files a/A2OSX.SRC.po and b/A2OSX.SRC.po differ diff --git a/BIN/PING.S.txt b/BIN/PING.S.txt index 358a264f..3a2d65ae 100644 --- a/BIN/PING.S.txt +++ b/BIN/PING.S.txt @@ -136,7 +136,7 @@ CS.RUN.OPENSKT ldx #3 sta (pData),y >PUSHW L.Socket - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.NEW + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.New bcc .2 >LDYA L.MSG.SKTKO diff --git a/BIN/RPCDUMP.S.txt b/BIN/RPCDUMP.S.txt index b3b71d40..e785ab7c 100644 --- a/BIN/RPCDUMP.S.txt +++ b/BIN/RPCDUMP.S.txt @@ -101,7 +101,7 @@ CS.RUN jsr Init.Timeout rts .2 >PUSHW L.Socket - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.NEW + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.New bcs .99 txa diff --git a/INC/LIBTCPIP.I.txt b/INC/LIBTCPIP.I.txt index b2a41015..761e5be6 100644 --- a/INC/LIBTCPIP.I.txt +++ b/INC/LIBTCPIP.I.txt @@ -42,20 +42,20 @@ LIBTCPIP.DNS.GETCACHE .EQ 26 LIBTCPIP.HST.GETBYNAME .EQ 28 LIBTCPIP.HST.GETBYADDR .EQ 30 -LIBTCPIP.SKT.NEW .EQ 32 +LIBTCPIP.SKT.New .EQ 32 LIBTCPIP.SKT.CLOSEA .EQ 34 LIBTCPIP.SKT.GETTABLE .EQ 36 LIBTCPIP.SKT.GETA .EQ 38 -LIBTCPIP.SKT.ACCEPTA .EQ 34 +LIBTCPIP.SKT.ACCEPTA .EQ 40 -LIBTCPIP.SKT.Write .EQ 38 -LIBTCPIP.SKT.Read .EQ 50 -LIBTCPIP.SKT.ReadA .EQ 40 -LIBTCPIP.SKT.PutC .EQ 42 -LIBTCPIP.SKT.PutS .EQ 44 -LIBTCPIP.SKT.GetCA .EQ 46 -LIBTCPIP.SKT.GetS .EQ 48 +LIBTCPIP.SKT.Write .EQ 44 +LIBTCPIP.SKT.Read .EQ 46 +LIBTCPIP.SKT.ReadA .EQ 48 +LIBTCPIP.SKT.PutC .EQ 50 +LIBTCPIP.SKT.PutS .EQ 52 +LIBTCPIP.SKT.GetCA .EQ 54 +LIBTCPIP.SKT.GetS .EQ 56 *-------------------------------------- ERR.SKT.OOS .EQ $BF ERR.SKT.BUSY .EQ $BE diff --git a/LIB/LIBTCPIP.S.CFG.txt b/LIB/LIBTCPIP.S.CFG.txt index 35c9d2ac..e1e3570d 100644 --- a/LIB/LIBTCPIP.S.CFG.txt +++ b/LIB/LIBTCPIP.S.CFG.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -NEW +LOMEM $900 INC 1 AUTO 6 .LIST OFF @@ -78,7 +78,7 @@ SET.IPCFG >PULLW ZPTmpPtr1 stz DNS.SOCKET.SP+1 >PUSHW L.DNS.SOCKET - jsr SKT.NEW + jsr SKT.New bcs .9 stx hDNSSocket1 @@ -96,7 +96,7 @@ SET.IPCFG >PULLW ZPTmpPtr1 stz DNS.SOCKET.SP+1 >PUSHW L.DNS.SOCKET - jsr SKT.NEW + jsr SKT.New bcs .9 stx hDNSSocket2 diff --git a/LIB/LIBTCPIP.S.DNS.txt b/LIB/LIBTCPIP.S.DNS.txt index 49fd9750..12011de6 100644 --- a/LIB/LIBTCPIP.S.DNS.txt +++ b/LIB/LIBTCPIP.S.DNS.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -NEW +LOMEM $900 INC 1 AUTO 6 .LIST OFF @@ -108,17 +108,17 @@ DNS.REQUEST lda hDNSSocket1 jsr DNS.ADD.I bcs .9 - >PUSHW DNS.MSG.LEN - >PUSHW L.DNS.MSG >PUSHB hDNSSocket1 + >PUSHW L.DNS.MSG + >PUSHW DNS.MSG.LEN jsr SKT.Write lda hDNSSocket2 beq .3 - >PUSHW DNS.MSG.LEN - >PUSHW L.DNS.MSG >PUSHB hDNSSocket2 + >PUSHW L.DNS.MSG + >PUSHW DNS.MSG.LEN jsr SKT.Write .3 lda #ERR.DNS.PENDING diff --git a/LIB/LIBTCPIP.S.FRM.txt b/LIB/LIBTCPIP.S.FRM.txt index de7789c9..ba1737f9 100644 --- a/LIB/LIBTCPIP.S.FRM.txt +++ b/LIB/LIBTCPIP.S.FRM.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -LOMEM $A00 +LOMEM $900 INC 1 AUTO 6 .LIST OFF diff --git a/LIB/LIBTCPIP.S.HST.txt b/LIB/LIBTCPIP.S.HST.txt index c478b217..f75fae76 100644 --- a/LIB/LIBTCPIP.S.HST.txt +++ b/LIB/LIBTCPIP.S.HST.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -NEW +LOMEM $900 INC 1 AUTO 6 .LIST OFF diff --git a/LIB/LIBTCPIP.S.ICMP.txt b/LIB/LIBTCPIP.S.ICMP.txt index fd4ef3d6..4f7ff0ea 100644 --- a/LIB/LIBTCPIP.S.ICMP.txt +++ b/LIB/LIBTCPIP.S.ICMP.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -LOMEM $A00 +LOMEM $900 INC 1 AUTO 6 .LIST OFF diff --git a/LIB/LIBTCPIP.S.IP.txt b/LIB/LIBTCPIP.S.IP.txt index b13510f9..e21157fe 100644 --- a/LIB/LIBTCPIP.S.IP.txt +++ b/LIB/LIBTCPIP.S.IP.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -NEW +LOMEM $900 INC 1 AUTO 6 .LIST OFF diff --git a/LIB/LIBTCPIP.S.SKT.txt b/LIB/LIBTCPIP.S.SKT.txt index 76b7bf2e..bf8eacb1 100644 --- a/LIB/LIBTCPIP.S.SKT.txt +++ b/LIB/LIBTCPIP.S.SKT.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -LOMEM $A00 +LOMEM $900 INC 1 AUTO 6 .LIST OFF @@ -127,6 +127,15 @@ SKT.New.TCP ldy #S.SOCKET.SQ.INFREE iny sta (ZPTmpPtr3),y + ldx #3 + ldy #S.SOCKET.SQ.SEQNUM+3 + +.2 lda A2osX.TIMER16,x + sta (ZPTmpPtr3),y + dey + dex + bpl .2 + >PUSHW K.TCP.WSIZE >PUSHBI 0 >SYSCALL GetMem @@ -247,7 +256,7 @@ SKT.AcceptA jsr SKT.GetA.I ldy #S.SOCKET.SO lda (ZPPtrSKT),y and #S.SOCKET.SO.ACCEPTCONN - bne .99 + beq .99 ldy #S.SOCKET.HQ.HEAD lda (ZPPtrSKT),y @@ -275,7 +284,7 @@ SKT.AcceptA jsr SKT.GetA.I sec .9 rts */-------------------------------------- -* #SKT.Send (DGRAM,STREAM,RAW) +* #SKT.Write (DGRAM,STREAM,RAW) * Send block of data * ##In : * PUSHB = hSocket @@ -363,7 +372,7 @@ SKT.Write.TCP ldy #S.SOCKET.TCP.STATUS sec .99 rts */-------------------------------------- -* #SKT.RcvdA (DGRAM,RAW) +* #SKT.ReadA (DGRAM,RAW) * ##In : * A = hSocket * ##Out : @@ -787,7 +796,7 @@ SKT.GetDataFromSktOut .8 clc rts *-------------------------------------- -* From SKT.RCVD +* From SKT.Write * In: * Src : hInMem/INTAIL * Dst : ZPDataOutPtr/ZPDataOutLen diff --git a/LIB/LIBTCPIP.S.TCP.txt b/LIB/LIBTCPIP.S.TCP.txt index c6de1715..a1abe269 100644 --- a/LIB/LIBTCPIP.S.TCP.txt +++ b/LIB/LIBTCPIP.S.TCP.txt @@ -1,18 +1,11 @@ PR#3 PREFIX /A2OSX.SRC -LOMEM $A00 +LOMEM $900 INC 1 AUTO 6 .LIST OFF *-------------------------------------- -TCP.IN ldy #S.IP.SRC+3 - ldx #3 - -.1 lda (ZPFrameInPtr),y - sta TmpSocket+S.SOCKET.DST.ADDR,x - dey - dex - bpl .1 +TCP.IN jsr IP.FillTmpSocketSrcDst ldy #S.TCP.SRCPORT lda (ZPFrameInPtr),y @@ -21,14 +14,6 @@ TCP.IN ldy #S.IP.SRC+3 lda (ZPFrameInPtr),y sta TmpSocket+S.SOCKET.DST.PORT - ldy #S.IP.DST+3 - ldx #3 -.2 lda (ZPFrameInPtr),y - sta TmpSocket+S.SOCKET.SRC.ADDR,x - dey - dex - bpl .2 - ldy #S.TCP.DSTPORT lda (ZPFrameInPtr),y sta TmpSocket+S.SOCKET.SRC.PORT+1 @@ -63,7 +48,8 @@ TCP.IN ldy #S.IP.SRC+3 beq .5 ldy #S.TCP.OPTIONS yes, only accept SYN packet - lda (ZPFrameOutPtr),y + lda (ZPFrameInPtr),y + cmp #S.TCP.OPTIONS.SYN bne .7 not for this listening socket jmp TCP.IN.LISTEN.NEW @@ -96,7 +82,7 @@ TCP.IN ldy #S.IP.SRC+3 TCP.IN.LISTEN.NEW lda #S.SOCKET.SOCK.STREAM sta TmpSocket - + stz TmpSocket+S.SOCKET.SO ldy #S.TCP.SEQ.NUMBER+3 @@ -111,15 +97,9 @@ TCP.IN.LISTEN.NEW dex bpl .1 - ldx #3 -.2 lda A2osX.TIMER16,x - sta TmpSocket+S.SOCKET.SQ.SEQNUM,x - dex - bpl .2 - >PUSHW L.TmpSocket - jsr SKT.NEW + jsr SKT.New bcs .9 phy @@ -133,7 +113,7 @@ TCP.IN.LISTEN.NEW pla sta ZPPtrSKT - bcc .3 + bcc .3 Queued successfully ? lda #0 error sta (ZPPtrSKT) clear this socket @@ -144,7 +124,10 @@ TCP.IN.LISTEN.NEW lda #S.SOCKET.TCP.STATUS.SYNRCVD sta (ZPPtrSKT),y - jmp TCP.SendSYNACK + ldy #S.SOCKET.TCP.OPTIONS + lda #S.TCP.OPTIONS.SYN+S.TCP.OPTIONS.ACK + sta (ZPPtrSKT),y + jmp TCP.Out *-------------------------------------- TCP.IN.REGULAR stx hSocket ldy #S.SOCKET.TCP.STATUS @@ -296,7 +279,7 @@ TCP.OUT ldy #S.SOCKET.SQ.OUTUSED .7 jsr FRM.SendIP bcs .9 - ldy #S.SOCKET.SOCK + ldy #S.SOCKET.TCP.OPTIONS lda (ZPPtrSKT),y and #$ff^S.TCP.OPTIONS.ACK sta (ZPPtrSKT),y diff --git a/LIB/LIBTCPIP.S.UDP.txt b/LIB/LIBTCPIP.S.UDP.txt index d1a96c02..cf0367bb 100644 --- a/LIB/LIBTCPIP.S.UDP.txt +++ b/LIB/LIBTCPIP.S.UDP.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -LOMEM $A00 +LOMEM $900 INC 1 AUTO 6 .LIST OFF diff --git a/LIB/LIBTCPIP.S.txt b/LIB/LIBTCPIP.S.txt index e9ce9576..b0d3daed 100644 --- a/LIB/LIBTCPIP.S.txt +++ b/LIB/LIBTCPIP.S.txt @@ -52,12 +52,12 @@ CS.START cld .1 .DA LIB.LOAD .DA LIB.UNLOAD - .DA POLL - .DA PULSEA - .DA SET.IPCFG .DA GET.IPCFG + .DA POLL + .DA PULSEA + .DA ARP.CLEAR .DA ARP.QUERY .DA ARP.ADD @@ -71,7 +71,7 @@ CS.START cld .DA HST.GETBYNAME .DA HST.GETBYADDR - .DA SKT.NEW + .DA SKT.New .DA SKT.CLOSEA .DA SKT.GETTABLE .DA SKT.GETA diff --git a/SBIN/DHCPCLNT.S.txt b/SBIN/DHCPCLNT.S.txt index b8b06a56..c9503505 100644 --- a/SBIN/DHCPCLNT.S.txt +++ b/SBIN/DHCPCLNT.S.txt @@ -105,7 +105,7 @@ CS.INIT >LDYA L.LIBTCPIP *-------------------------------------- CS.RUN >PUSHW L.Socket - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.NEW + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.New bcc .1 jmp CS.RUN.KO diff --git a/SBIN/HTTPD.S.txt b/SBIN/HTTPD.S.txt index ed549255..0e9508ac 100644 --- a/SBIN/HTTPD.S.txt +++ b/SBIN/HTTPD.S.txt @@ -92,7 +92,7 @@ CS.RUN.INIT ldx #3 bpl .1 >PUSHW L.Socket - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.NEW + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.New bcs .9 txa ldy #hSrvSocket @@ -106,7 +106,7 @@ CS.RUN.INIT ldx #3 .12 ldy #hSrvSocket lda (pData),y - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.ACCEPTA + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.AcceptA bcs .15 pha @@ -121,13 +121,13 @@ CS.RUN.INIT ldx #3 bne .13 pla - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CloseA bra .15 .14 pla sta (pData),y - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.GETA + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.GetA >STYA ZPSktPtr ldx #3 diff --git a/SBIN/NFSD.S.txt b/SBIN/NFSD.S.txt index 323639e7..3c3109f5 100644 --- a/SBIN/NFSD.S.txt +++ b/SBIN/NFSD.S.txt @@ -87,7 +87,7 @@ CS.RUN.INIT ldx #3 bpl .1 >PUSHW L.Socket - >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.NEW + >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.New bcs .9 txa ldy #hSocket diff --git a/_Docs/LIBTCPIP.md b/_Docs/LIBTCPIP.md index db0fd70b..a0d8f95f 100644 --- a/_Docs/LIBTCPIP.md +++ b/_Docs/LIBTCPIP.md @@ -110,7 +110,7 @@ ##Out : + A = hSocket -#SKT.Send (DGRAM,STREAM,RAW) +#SKT.Write (DGRAM,STREAM,RAW) + Send block of data ##In : @@ -121,7 +121,7 @@ ##Out : + A = hFrame -#SKT.RcvdA (DGRAM,RAW) +#SKT.ReadA (DGRAM,RAW) ##In : + A = hSocket