mirror of
https://github.com/A2osX/A2osX.git
synced 2025-04-13 19:37:19 +00:00
Kernel version 0.9 : TCPIP migration
This commit is contained in:
parent
fd3b4036e0
commit
3fdde86098
BIN
A2OSX.BOOT.po
BIN
A2OSX.BOOT.po
Binary file not shown.
BIN
A2OSX.SRC.po
BIN
A2OSX.SRC.po
Binary file not shown.
@ -86,10 +86,10 @@ CS.INIT.DUMPDEV sta DevID
|
||||
>LDYA L.MSG0.L
|
||||
>SYSCALL CPrintFYA
|
||||
|
||||
ldy #S.DEVINFO.NET.MAC+6
|
||||
ldy #S.DEVSTAT.NET.MAC+6
|
||||
.1 dey
|
||||
>PUSHB (ZPDevInfoPtr),y
|
||||
cpy #S.DEVINFO.NET.MAC
|
||||
cpy #S.DEVSTAT.NET.MAC
|
||||
bne .1
|
||||
|
||||
lda ZPDevPtr
|
||||
@ -105,27 +105,27 @@ CS.INIT.DUMPDEV sta DevID
|
||||
>LDYA L.MSG1.DEV
|
||||
>SYSCALL CPrintFYA
|
||||
|
||||
ldy #S.DEVINFO.FLAGS
|
||||
ldy #S.DEVSTAT.FLAGS
|
||||
lda (ZPDevInfoPtr),y
|
||||
and #S.DEVINFO.NET.FLAGS.ARPOFFLOAD
|
||||
and #S.DEVSTAT.NET.FLAGS.ARPOFFLOAD
|
||||
beq .2
|
||||
lda #1
|
||||
.2 >PUSHA
|
||||
>LDYA L.MSG1.DEV.ARP
|
||||
>SYSCALL CPrintFYA
|
||||
|
||||
ldy #S.DEVINFO.FLAGS
|
||||
ldy #S.DEVSTAT.FLAGS
|
||||
lda (ZPDevInfoPtr),y
|
||||
and #S.DEVINFO.NET.FLAGS.IPOFFLOAD
|
||||
and #S.DEVSTAT.NET.FLAGS.IPOFFLOAD
|
||||
beq .3
|
||||
lda #1
|
||||
.3 >PUSHA
|
||||
>LDYA L.MSG1.DEV.IP
|
||||
>SYSCALL CPrintFYA
|
||||
|
||||
ldy #S.DEVINFO.NET.STATUS
|
||||
ldy #S.DEVSTAT.NET.STATUS
|
||||
lda (ZPDevInfoPtr),y
|
||||
and #S.DEVINFO.NET.STATUS.OK
|
||||
and #S.DEVSTAT.NET.STATUS.OK
|
||||
bne CS.INIT.LINK
|
||||
>PUSHW L.MSG1.LINK.KO
|
||||
>LDYA L.MSG1.LINK
|
||||
@ -139,7 +139,7 @@ CS.INIT.LINK >PUSHW L.MSG1.LINK.OK
|
||||
>LDYA L.MSG1.LINKSPEED
|
||||
>SYSCALL CPrintFYA
|
||||
|
||||
ldy #S.DEVINFO.NET.STATUS
|
||||
ldy #S.DEVSTAT.NET.STATUS
|
||||
lda (ZPDevInfoPtr),y
|
||||
and #$0F
|
||||
tax
|
||||
@ -151,9 +151,9 @@ CS.INIT.LINK >PUSHW L.MSG1.LINK.OK
|
||||
dex
|
||||
bne .4
|
||||
|
||||
ldy #S.DEVINFO.NET.STATUS
|
||||
ldy #S.DEVSTAT.NET.STATUS
|
||||
lda (ZPDevInfoPtr),y
|
||||
and #S.DEVINFO.NET.STATUS.FD
|
||||
and #S.DEVSTAT.NET.STATUS.FD
|
||||
bne .5
|
||||
>LDYA L.MSG1.DPLX.HD
|
||||
bra .6
|
||||
|
@ -198,8 +198,9 @@ READBLOCK.Err sec
|
||||
READBLOCK.RxOK and /PP.RxEvent.Brdcast
|
||||
beq .10
|
||||
lda #$80
|
||||
.10 ldy #S.EVT.DATAHI
|
||||
sta (pEvent),y
|
||||
|
||||
.10 sta .8+3
|
||||
|
||||
>LDYA RTDATA,x discard RxStatus
|
||||
|
||||
lda RTDATA+1,x get RxLength
|
||||
@ -219,13 +220,8 @@ READBLOCK.RxOK and /PP.RxEvent.Brdcast
|
||||
>SYSCALL GetMem
|
||||
bcs READBLOCK.Err
|
||||
>STYA ZPTmpPTR
|
||||
txa
|
||||
ldy #S.EVT.DATALO
|
||||
sta (pEvent),y
|
||||
stx .8+1
|
||||
|
||||
lda #S.EVT.F.NET+S.EVT.F.hMEM1
|
||||
sta (pEvent)
|
||||
|
||||
lda Size
|
||||
sta (ZPTmpPTR)
|
||||
eor #$ff
|
||||
@ -263,10 +259,12 @@ READBLOCK.RxOK and /PP.RxEvent.Brdcast
|
||||
inc ZPTmpPTR+1
|
||||
bne .1
|
||||
|
||||
.8 clc
|
||||
.8 lda #$ff hMem
|
||||
ldy #$ff Flags
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
WRITEBLOCK >PULLW ZPTmpPTR
|
||||
WRITEBLOCK >STYA ZPTmpPTR
|
||||
|
||||
lda (ZPTmpPTR)
|
||||
sta Size
|
||||
@ -342,7 +340,7 @@ WRITEBLOCK.1 ldy #S.ETH.SRCMAC+5
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
OPEN jsr Reset
|
||||
OPEN jsr CLOSE
|
||||
>LDYAI PP.RxCTL
|
||||
>STYA PacketPagePTR,x
|
||||
>LDYAI PP.RxCTL.LID+PP.RxCTL.RxOKA+PP.RxCTL.IA+PP.RxCTL.BroadcastA
|
||||
@ -368,18 +366,15 @@ OPEN jsr Reset
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CLOSE jsr Reset
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
Reset ldx DEVSLOTx0
|
||||
CLOSE ldx DEVSLOTx0
|
||||
>LDYAI PP.SelfCTL
|
||||
>STYA PacketPagePTR,x
|
||||
>LDYAI PP.SelfCTL.LID+PP.SelfCTL.RESET
|
||||
>STYA PacketPageDATA,x
|
||||
clc
|
||||
rts
|
||||
DRV.CS.END
|
||||
*--------------------------------------
|
||||
DRV.CS.END
|
||||
DEVSLOTx0 .BS 1
|
||||
Size .BS 2
|
||||
Counter .BS 2
|
||||
|
@ -130,8 +130,8 @@ ARP.IN.REQ ldy #S.ARP.SPA+3
|
||||
dex
|
||||
bpl .2
|
||||
|
||||
>PUSHW L.ARP.REP
|
||||
ldx #DEVMGR.NET.SEND
|
||||
>LDYA L.ARP.REP
|
||||
ldx #DEVMGR.WRITEBLOCK
|
||||
jsr NetDevJmp
|
||||
|
||||
ARP.IN.REP lda #K.ARP.TTL
|
||||
@ -186,8 +186,8 @@ ARP.QUERY.I jsr ARP.FIND.BY.IP
|
||||
dex
|
||||
bpl .4
|
||||
|
||||
>PUSHW L.ARP.REQ
|
||||
ldx #DEVMGR.NET.SEND
|
||||
>LDYA L.ARP.REQ
|
||||
ldx #DEVMGR.WRITEBLOCK
|
||||
jsr NetDevJmp
|
||||
|
||||
bcs .99
|
||||
|
@ -35,20 +35,26 @@ SET.IPCFG >PULLW ZPTmpPtr1
|
||||
lda IPCFG+S.IPCFG.HDEV
|
||||
|
||||
>SYSCALL GetDevByIDA
|
||||
>STYA NetDevJmp+1
|
||||
>STYA ZPTmpPtr2
|
||||
|
||||
ldx #DEVMGR.GETINFO
|
||||
lda (ZPTmpPtr2)
|
||||
sta NetDevJmp+1
|
||||
ldy #1
|
||||
lda (ZPTmpPtr2),y
|
||||
sta NetDevJmp+2
|
||||
|
||||
ldx #DEVMGR.STATUS
|
||||
jsr NetDevJmp
|
||||
|
||||
>STYA ZPTmpPtr2
|
||||
ldy #S.DEVINFO.FLAGS
|
||||
ldy #S.DEVSTAT.NET.FLAGS
|
||||
lda (ZPTmpPtr2),y
|
||||
sta DevFlags
|
||||
and #S.DEVINFO.NET.FLAGS.ARPOFFLOAD
|
||||
and #S.DEVSTAT.NET.FLAGS.ARPOFFLOAD
|
||||
beq .4
|
||||
|
||||
>LDYA ZPTmpPtr1
|
||||
ldx #DEVMGR.SETIPCFG
|
||||
ldx #DEVMGR.CONTROL
|
||||
jsr NetDevJmp
|
||||
|
||||
.4 lda hDNSSocket1
|
||||
|
@ -83,7 +83,7 @@ NEW.IP.FRAME >PUSHWI K.ETH.FRAME.LEN
|
||||
>STYA ZPFrameBase1
|
||||
|
||||
lda DevFlags
|
||||
and #S.DEVINFO.NET.FLAGS.IPOFFLOAD
|
||||
and #S.DEVSTAT.NET.FLAGS.IPOFFLOAD
|
||||
bne .9
|
||||
|
||||
ldy #S.ETH.ETHERTYPE
|
||||
@ -177,7 +177,7 @@ SEND.IP.FRAME.I ldx #3 Copy SRC.IP even if IP offload
|
||||
bpl .1
|
||||
|
||||
lda DevFlags
|
||||
and #S.DEVINFO.NET.FLAGS.IPOFFLOAD
|
||||
and #S.DEVSTAT.NET.FLAGS.IPOFFLOAD
|
||||
bne .21
|
||||
|
||||
ldy #S.IP.TOTAL.LENGTH+1
|
||||
@ -239,14 +239,14 @@ SEND.IP.FRAME.I ldx #3 Copy SRC.IP even if IP offload
|
||||
jsr UDP.ComputeChecksum
|
||||
|
||||
.4 lda DevFlags
|
||||
and #S.DEVINFO.NET.FLAGS.ARPOFFLOAD
|
||||
and #S.DEVSTAT.NET.FLAGS.ARPOFFLOAD
|
||||
bne .5
|
||||
|
||||
jsr IP.SetDestMAC
|
||||
bcs FRM.Queue
|
||||
|
||||
.5 >PUSHW ZPFrameBase1
|
||||
ldx #DEVMGR.NET.SEND
|
||||
.5 >LDYA ZPFrameBase1
|
||||
ldx #DEVMGR.WRITEBLOCK
|
||||
jsr NetDevJmp
|
||||
bcs FRM.Queue
|
||||
lda hFrame1
|
||||
@ -295,8 +295,8 @@ FRM.Retry ldx FRM.QUEUE.Tail
|
||||
jsr IP.SetDestMAC Err is ARP or higher, retry getting MAC
|
||||
bcs .2 still error getting dest MAC
|
||||
|
||||
.1 >PUSHW ZPFrameBase1 try sending again to DRV
|
||||
ldx #DEVMGR.NET.SEND
|
||||
.1 >LDYA ZPFrameBase1 try sending again to DRV
|
||||
ldx #DEVMGR.WRITEBLOCK
|
||||
jsr NetDevJmp
|
||||
bcc .3
|
||||
|
||||
|
@ -157,7 +157,7 @@ DecDataLen lda ZPDataLen
|
||||
lda #$FF Make NZ
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
NetDevJmp jmp $ffff
|
||||
NetDevJmp jmp *
|
||||
*--------------------------------------
|
||||
.INB LIB/LIBTCPIP.S.CFG
|
||||
.INB LIB/LIBTCPIP.S.FRM
|
||||
|
10
README.md
10
README.md
@ -76,9 +76,11 @@ In Progress : moving TCPIP to socket API
|
||||
| INSDRV | Working | | 0.9 |
|
||||
| GETTY | Working | | 0.9 |
|
||||
| LOGIN | In Progress | no auth using /etc/passd yet | 0.9 |
|
||||
| TCPIP | In Progress | New Socket API. ARP,IP,ICMP,UDP ok, TCP in progress | 0.8 |
|
||||
| DHCPCLNT | Working | rewritten to use new Socket API | 0.8 |
|
||||
| TCPIP | In Progress | New Socket API. ARP,IP,ICMP,UDP ok, TCP in progress | 0.9 |
|
||||
| DHCPCLNT | Working | rewritten to use new Socket API | 0.9 |
|
||||
| SHELL | Working | (See Internal Shell commands) | 0.9 |
|
||||
| TELNETD | | | |
|
||||
| HTTPD | | | |
|
||||
|
||||
## Internal Shell commands:
|
||||
| Name | Status | Comment |
|
||||
@ -89,8 +91,8 @@ In Progress : moving TCPIP to socket API
|
||||
| EXIT | Working | |
|
||||
| IF | | |
|
||||
| PAUSE | Working | |
|
||||
| READ | Working | -S no echo (password) |
|
||||
| | | -P "prompt message" |
|
||||
| READ | Working | -S : no echo (password) |
|
||||
| | | -P : "prompt message" |
|
||||
| TIME | Working | |
|
||||
| SET | Working | |
|
||||
| STARTPROC | Working | Used in A2osX.startup |
|
||||
|
@ -221,41 +221,17 @@ CS.RUN.SKT.RCVD ldy #hSocket
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT lda (pEvent)
|
||||
bpl .1 is it a TIMER event?
|
||||
bpl .9 is it a TIMER event?
|
||||
|
||||
ldy #TimeOut
|
||||
lda (pData),y
|
||||
beq .9
|
||||
|
||||
dec
|
||||
sta (pData),y
|
||||
|
||||
.9 sec do not discard TIMER event
|
||||
rts
|
||||
|
||||
.1 bit #S.EVT.F.KEY is it a KEY event?
|
||||
beq .8
|
||||
|
||||
ldy #S.EVT.hDEV is Event from active IN device?
|
||||
lda (pEvent),y
|
||||
ldy #S.PS.hStdIn
|
||||
cmp (pPs),y
|
||||
bne .9
|
||||
|
||||
ldy #S.EVT.DATAHI is it an O or SAPPLE key ?
|
||||
lda (pEvent),y
|
||||
bne .9
|
||||
|
||||
ldy #S.EVT.DATALO
|
||||
lda (pEvent),y
|
||||
cmp #$03 Ctrl-C
|
||||
bne .8
|
||||
|
||||
lda #$FF
|
||||
ldy #bCTRLC
|
||||
sta (pData),y
|
||||
bra .8
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.QUIT ldy #hSocket
|
||||
lda (pData),y
|
||||
|
@ -53,7 +53,7 @@ CS.INIT >LDYA L.LIBTCPIP
|
||||
|
||||
jsr CS.INIT.DEV
|
||||
bcs .99
|
||||
|
||||
|
||||
jsr CFG.Read continue even if error opening CFG file
|
||||
|
||||
lda IPCFG+S.IPCFG.HOSTNAME
|
||||
@ -105,29 +105,34 @@ CS.INIT.DEV >LDYA L.DEVNAME
|
||||
|
||||
>LDYA L.MSG.DEV.KO
|
||||
>SYSCALL CPrintFYA
|
||||
lda #DEVMGR.ERRDNF
|
||||
lda #$28 MLI.ERR.NODEV
|
||||
sec
|
||||
rts
|
||||
|
||||
.1 >STYA pNetDevJmp+1
|
||||
txa
|
||||
sta hNetDev
|
||||
sta IPCFG+S.IPCFG.HDEV
|
||||
.1 >STYA ZPIPDevPtr
|
||||
stx hNetDev
|
||||
stx IPCFG+S.IPCFG.HDEV
|
||||
|
||||
lda (ZPIPDevPtr)
|
||||
sta NetDevJmp+1
|
||||
ldy #1
|
||||
lda (ZPIPDevPtr),y
|
||||
sta NetDevJmp+2
|
||||
|
||||
>PUSHW L.DEVNAME
|
||||
>LDYA L.MSG.DEV.OK
|
||||
>SYSCALL CPrintFYA
|
||||
|
||||
ldx #DEVMGR.OPEN
|
||||
jsr pNetDevJmp
|
||||
jsr NetDevJmp
|
||||
bcs .9
|
||||
|
||||
ldx #DEVMGR.GETINFO
|
||||
jsr pNetDevJmp
|
||||
ldx #DEVMGR.STATUS
|
||||
jsr NetDevJmp
|
||||
bcs .9
|
||||
>STYA ZPIPDevPtr
|
||||
|
||||
ldy #S.DEVINFO.NET.MAC
|
||||
ldy #S.DEVSTAT+2 MAC
|
||||
ldx #S.IPCFG.MAC
|
||||
|
||||
.2 lda (ZPIPDevPtr),y
|
||||
@ -143,25 +148,18 @@ CS.INIT.DEV >LDYA L.DEVNAME
|
||||
.9 sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN clc
|
||||
CS.RUN ldx #DEVMGR.READBLOCK
|
||||
jsr NetDevJmp
|
||||
bcs .8
|
||||
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.RCVD.FRAMEA
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT clc
|
||||
lda (pEvent)
|
||||
bit #S.EVT.F.NET
|
||||
beq .1
|
||||
CS.DOEVENT lda (pEvent)
|
||||
|
||||
ldy #S.EVT.hDEV
|
||||
lda (pEvent),y
|
||||
cmp hNetDev
|
||||
bne .9
|
||||
|
||||
ldy #S.EVT.DATALO Get Frame hMem
|
||||
lda (pEvent),y
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.RCVD.FRAMEA
|
||||
rts
|
||||
|
||||
.1 bit #S.EVT.F.T10TH
|
||||
bit #S.EVT.F.T10TH
|
||||
beq .9 S.EVT.F.T1SEC
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.PULSEA
|
||||
|
||||
@ -171,7 +169,7 @@ CS.DOEVENT clc
|
||||
CS.QUIT lda IPCFG+S.IPCFG.HDEV
|
||||
beq .1
|
||||
ldx #DEVMGR.CLOSE
|
||||
jsr pNetDevJmp
|
||||
jsr NetDevJmp
|
||||
|
||||
.1 lda hLIBTCPIP
|
||||
>SYSCALL UnloadLibA
|
||||
@ -197,7 +195,7 @@ A2CharAX pha
|
||||
adc #6
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
pNetDevJmp jmp *
|
||||
NetDevJmp jmp *
|
||||
*--------------------------------------
|
||||
.INB SBIN/TCPIP.S.CFG
|
||||
*--------------------------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user