mirror of
https://github.com/A2osX/A2osX.git
synced 2024-08-12 14:29:33 +00:00
Kernel 0.92
This commit is contained in:
parent
c6f0b1fa51
commit
fa3964ddff
Binary file not shown.
@ -1,39 +0,0 @@
|
|||||||
NEW
|
|
||||||
PREFIX
|
|
||||||
AUTO 4,1
|
|
||||||
.LIST OFF
|
|
||||||
*--------------------------------------
|
|
||||||
* PULLW = PTR to S.IPCFG
|
|
||||||
*--------------------------------------
|
|
||||||
DEV.Bind >PUSHBI 0
|
|
||||||
>LDYA L.DEVNAME
|
|
||||||
>SYSCALL open
|
|
||||||
bcc .1
|
|
||||||
|
|
||||||
inc DEVNAME+8
|
|
||||||
lda DEVNAME+8
|
|
||||||
cmp #'8'
|
|
||||||
bne DEV.Bind
|
|
||||||
|
|
||||||
>LDYA L.MSG.DEV.KO
|
|
||||||
>SYSCALL puts
|
|
||||||
|
|
||||||
lda #MLI.E.NODEV
|
|
||||||
sec
|
|
||||||
rts
|
|
||||||
|
|
||||||
.1 ldy #S.IPCFG.DevID
|
|
||||||
sta (pIPCFG),y
|
|
||||||
|
|
||||||
>PUSHW L.DEVNAME
|
|
||||||
>PUSHBI 2
|
|
||||||
>LDYA L.MSG.DEV.OK
|
|
||||||
>SYSCALL printf
|
|
||||||
|
|
||||||
clc
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
MAN
|
|
||||||
SAVE USR/SRC/SBIN/IPCONFIG.S.DEV
|
|
||||||
LOAD USR/SRC/SBIN/IPCONFIG.S
|
|
||||||
ASM
|
|
@ -7,10 +7,6 @@ DHCP.INIT lda (pIPCFG)
|
|||||||
and #S.IPCFG.STATUS.OK
|
and #S.IPCFG.STATUS.OK
|
||||||
bne .99 Already Configured, exit
|
bne .99 Already Configured, exit
|
||||||
|
|
||||||
ldy #S.IPCFG.DevID
|
|
||||||
lda (pIPCFG),y
|
|
||||||
beq .98
|
|
||||||
|
|
||||||
ldy #S.IPCFG-1
|
ldy #S.IPCFG-1
|
||||||
|
|
||||||
.1 lda (pIPCFG),y
|
.1 lda (pIPCFG),y
|
||||||
@ -39,8 +35,6 @@ DHCP.INIT lda (pIPCFG)
|
|||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
|
|
||||||
.98 >LDYA L.MSG.DHCP.ND
|
|
||||||
bra .90
|
|
||||||
.99 >LDYA L.MSG.DHCP.NA
|
.99 >LDYA L.MSG.DHCP.NA
|
||||||
|
|
||||||
.90 >SYSCALL puts
|
.90 >SYSCALL puts
|
||||||
|
@ -17,22 +17,11 @@ CFG.EtcFiles >LDYAI 256
|
|||||||
lda IPCFG+S.IPCFG.HOSTNAME
|
lda IPCFG+S.IPCFG.HOSTNAME
|
||||||
bne .4
|
bne .4
|
||||||
|
|
||||||
ldy #$ff
|
>PUSHW A2osX.TIMER16
|
||||||
|
>PUSHBI 2
|
||||||
.2 iny
|
>PUSHW L.CFG.DefaultHost
|
||||||
lda CFG.DefaultHost,y
|
>LDYA L.IPCFG.HOSTNAME
|
||||||
sta IPCFG+S.IPCFG.HOSTNAME,y
|
>SYSCALL sprintf
|
||||||
bne .2
|
|
||||||
|
|
||||||
.3 lda A2osX.TIMER16
|
|
||||||
jsr CFG.A2CharAX
|
|
||||||
sta IPCFG+S.IPCFG.HOSTNAME+6
|
|
||||||
stx IPCFG+S.IPCFG.HOSTNAME+7
|
|
||||||
|
|
||||||
lda A2osX.TIMER16+1
|
|
||||||
jsr CFG.A2CharAX
|
|
||||||
sta IPCFG+S.IPCFG.HOSTNAME+8
|
|
||||||
stx IPCFG+S.IPCFG.HOSTNAME+9
|
|
||||||
|
|
||||||
.4 >LDYA L.TCPIP.CONF
|
.4 >LDYA L.TCPIP.CONF
|
||||||
jsr CFG.Read.PrintF
|
jsr CFG.Read.PrintF
|
||||||
@ -48,8 +37,6 @@ CFG.EtcFiles >LDYAI 256
|
|||||||
jsr CFG.Read.PrintF
|
jsr CFG.Read.PrintF
|
||||||
jsr CFG.Read.HOSTS
|
jsr CFG.Read.HOSTS
|
||||||
|
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SETCFG
|
|
||||||
|
|
||||||
lda CFG.hBuf1
|
lda CFG.hBuf1
|
||||||
>SYSCALL freemem
|
>SYSCALL freemem
|
||||||
|
|
||||||
@ -381,36 +368,7 @@ CFG.Read.GetS >PUSHWI 255
|
|||||||
>PUSHW ZPTmpPtr1
|
>PUSHW ZPTmpPtr1
|
||||||
lda CFG.hCfgFile
|
lda CFG.hCfgFile
|
||||||
>SYSCALL fgets
|
>SYSCALL fgets
|
||||||
* bcs .9
|
|
||||||
* >LDYA ZPTmpPtr1
|
|
||||||
* >SYSCALL puts
|
|
||||||
|
|
||||||
.9 rts
|
|
||||||
*--------------------------------------
|
|
||||||
CFG.A2CharAX pha
|
|
||||||
lsr
|
|
||||||
lsr
|
|
||||||
lsr
|
|
||||||
lsr
|
|
||||||
ora #$30
|
|
||||||
cmp #'9'+1
|
|
||||||
bcc .1
|
|
||||||
adc #6
|
|
||||||
.1 tax
|
|
||||||
pla
|
|
||||||
and #$0F
|
|
||||||
ora #$30
|
|
||||||
cmp #'9'+1
|
|
||||||
bcc .8
|
|
||||||
adc #6
|
|
||||||
.8 rts
|
|
||||||
*--------------------------------------
|
|
||||||
* grab a copy on the fly for lib function
|
|
||||||
* OUT :
|
|
||||||
* Y,A = PTR to S.IPCFG
|
|
||||||
*--------------------------------------
|
|
||||||
GET.IPCFG >LDYA L.IPCFG
|
|
||||||
clc
|
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
|
@ -55,9 +55,7 @@ CS.START cld
|
|||||||
.DA CS.QUIT
|
.DA CS.QUIT
|
||||||
L.LIBTCPIP .DA LIBTCPIP
|
L.LIBTCPIP .DA LIBTCPIP
|
||||||
L.MSG.USAGE .DA MSG.USAGE
|
L.MSG.USAGE .DA MSG.USAGE
|
||||||
L.MSG0 .DA MSG0
|
L.MSG.NODEV .DA MSG.NODEV
|
||||||
L.MSG0.NL .DA MSG0.NL
|
|
||||||
L.MSG0.L .DA MSG0.L
|
|
||||||
L.MSG1.DEV .DA MSG1.DEV
|
L.MSG1.DEV .DA MSG1.DEV
|
||||||
L.MSG1.DEV.ARP .DA MSG1.DEV.ARP
|
L.MSG1.DEV.ARP .DA MSG1.DEV.ARP
|
||||||
L.MSG1.DEV.IP .DA MSG1.DEV.IP
|
L.MSG1.DEV.IP .DA MSG1.DEV.IP
|
||||||
@ -74,9 +72,6 @@ L.MSG2.IP .DA MSG2.IP
|
|||||||
L.MSG2.GW .DA MSG2.GW
|
L.MSG2.GW .DA MSG2.GW
|
||||||
L.MSG2.DNS .DA MSG2.DNS
|
L.MSG2.DNS .DA MSG2.DNS
|
||||||
L.MSG2.HOSTNAME .DA MSG2.HOSTNAME
|
L.MSG2.HOSTNAME .DA MSG2.HOSTNAME
|
||||||
L.DEVNAME .DA DEVNAME
|
|
||||||
L.MSG.DEV.KO .DA MSG.DEV.KO
|
|
||||||
L.MSG.DEV.OK .DA MSG.DEV.OK
|
|
||||||
L.MSG.CFG .DA MSG.CFG
|
L.MSG.CFG .DA MSG.CFG
|
||||||
L.MSG.CFG.KO .DA MSG.CFG.KO
|
L.MSG.CFG.KO .DA MSG.CFG.KO
|
||||||
L.MSG.CFG.OK .DA MSG.CFG.OK
|
L.MSG.CFG.OK .DA MSG.CFG.OK
|
||||||
@ -90,13 +85,14 @@ L.DCB.NIC .DA DCB.NIC
|
|||||||
L.CFG.IP .DA CFG.IP
|
L.CFG.IP .DA CFG.IP
|
||||||
L.HST.SScanF .DA HST.SScanF
|
L.HST.SScanF .DA HST.SScanF
|
||||||
L.CFG.HOSTS.SScanF .DA CFG.HOSTS.SScanF
|
L.CFG.HOSTS.SScanF .DA CFG.HOSTS.SScanF
|
||||||
|
L.CFG.DefaultHost .DA CFG.DefaultHost
|
||||||
|
L.IPCFG.HOSTNAME .DA IPCFG+S.IPCFG.HOSTNAME
|
||||||
L.CFG.Keywords .DA CFG.Keywords
|
L.CFG.Keywords .DA CFG.Keywords
|
||||||
J.CFG.Keywords .DA CFG.Read.address
|
J.CFG.Keywords .DA CFG.Read.address
|
||||||
.DA CFG.Read.netmask
|
.DA CFG.Read.netmask
|
||||||
.DA CFG.Read.gateway
|
.DA CFG.Read.gateway
|
||||||
.DA CFG.Read.nameserver
|
.DA CFG.Read.nameserver
|
||||||
.DA CFG.Read.dnsdomain
|
.DA CFG.Read.dnsdomain
|
||||||
.DA 0
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* DHCP
|
* DHCP
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -106,10 +102,10 @@ L.MSG.DHCP.CFG1 .DA MSG.DHCP.CFG1
|
|||||||
L.MSG.DHCP.CFG2 .DA MSG.DHCP.CFG2
|
L.MSG.DHCP.CFG2 .DA MSG.DHCP.CFG2
|
||||||
L.MSG.DHCP.KO .DA MSG.DHCP.KO
|
L.MSG.DHCP.KO .DA MSG.DHCP.KO
|
||||||
L.MSG.DHCP.OK .DA MSG.DHCP.OK
|
L.MSG.DHCP.OK .DA MSG.DHCP.OK
|
||||||
L.MSG.DHCP.ND .DA MSG.DHCP.ND
|
|
||||||
L.MSG.DHCP.NA .DA MSG.DHCP.NA
|
L.MSG.DHCP.NA .DA MSG.DHCP.NA
|
||||||
L.DHCP.DISC .DA DHCP.DISC
|
L.DHCP.DISC .DA DHCP.DISC
|
||||||
L.DHCP.REQ .DA DHCP.REQ
|
L.DHCP.REQ .DA DHCP.REQ
|
||||||
|
.DA 0
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.INIT >LDYA L.LIBTCPIP
|
CS.INIT >LDYA L.LIBTCPIP
|
||||||
>SYSCALL LoadLib
|
>SYSCALL LoadLib
|
||||||
@ -118,10 +114,24 @@ CS.INIT >LDYA L.LIBTCPIP
|
|||||||
|
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.RUN
|
CS.RUN >LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
||||||
.1 >INC.G ArgCount
|
>STYA pIPCFG
|
||||||
|
|
||||||
|
ldy #S.IPCFG.DevID
|
||||||
|
lda (pIPCFG),y
|
||||||
|
bne .1
|
||||||
|
|
||||||
|
>LDYA L.MSG.NODEV
|
||||||
|
>SYSCALL puts
|
||||||
|
lda #MLI.E.NODEV
|
||||||
|
sec
|
||||||
|
rts
|
||||||
|
|
||||||
|
.1 sta IPCFG+S.IPCFG.DevID
|
||||||
|
|
||||||
|
>INC.G ArgIndex
|
||||||
>SYSCALL ArgV
|
>SYSCALL ArgV
|
||||||
bcs .7
|
bcs .4
|
||||||
|
|
||||||
>STYA ZPPtr1
|
>STYA ZPPtr1
|
||||||
|
|
||||||
@ -151,24 +161,28 @@ CS.RUN
|
|||||||
sta (pData),y
|
sta (pData),y
|
||||||
bra .1
|
bra .1
|
||||||
|
|
||||||
.7
|
.4 lda (pIPCFG) S.IPCFG.STATUS
|
||||||
|
bne CS.RUN.DUMP
|
||||||
|
|
||||||
|
jsr CFG.EtcFiles
|
||||||
|
|
||||||
|
* jsr DHCP.INIT
|
||||||
|
* bcs .8
|
||||||
|
|
||||||
|
* jsr DHCP.RUN
|
||||||
|
* jsr DHCP.QUIT
|
||||||
|
|
||||||
|
.8 >PUSHW L.IPCFG
|
||||||
|
>LIBCALL hLIBTCPIP,LIBTCPIP.SETCFG
|
||||||
|
|
||||||
|
* lda #0
|
||||||
|
* sec
|
||||||
|
* rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.RUN.STATUS >PUSHBI 0
|
CS.RUN.DUMP ldy #S.IPCFG.DevID
|
||||||
>LDYA L.MSG0
|
|
||||||
>SYSCALL printf
|
|
||||||
|
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
|
||||||
>STYA pIPCFG
|
|
||||||
|
|
||||||
ldy #S.IPCFG.DevID
|
|
||||||
lda (pIPCFG),y
|
lda (pIPCFG),y
|
||||||
bne .1
|
|
||||||
|
|
||||||
>LDYA L.MSG0.NL
|
tax
|
||||||
>SYSCALL puts
|
|
||||||
jmp CS.RUN.DONE
|
|
||||||
|
|
||||||
.1 tax
|
|
||||||
lda Dev.Table,x
|
lda Dev.Table,x
|
||||||
sta pFD
|
sta pFD
|
||||||
lda Dev.Table+1,x
|
lda Dev.Table+1,x
|
||||||
@ -190,10 +204,7 @@ CS.RUN.STATUS >PUSHBI 0
|
|||||||
lda (pIPCFG),y
|
lda (pIPCFG),y
|
||||||
>SYSCALL IOCTL
|
>SYSCALL IOCTL
|
||||||
|
|
||||||
CS.RUN.DUMP >LDYA L.MSG0.L
|
CS.RUN.DUMPNIC ldy #DCB.NIC+S.DCB.NIC.MAC+5
|
||||||
>SYSCALL puts
|
|
||||||
|
|
||||||
ldy #DCB.NIC+S.DCB.NIC.MAC+5
|
|
||||||
ldx #6
|
ldx #6
|
||||||
|
|
||||||
.1 lda (pData),y
|
.1 lda (pData),y
|
||||||
@ -360,7 +371,7 @@ CS.RUN.DUMPIP >PUSHBI 0
|
|||||||
>LDYA L.MSG2.HOSTNAME
|
>LDYA L.MSG2.HOSTNAME
|
||||||
>SYSCALL printf
|
>SYSCALL printf
|
||||||
|
|
||||||
CS.RUN.DONE lda #0 tell TSKMGR that all done ok, but
|
lda #0 tell TSKMGR that all done ok, but
|
||||||
sec we do not want to stay in memory
|
sec we do not want to stay in memory
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -392,26 +403,27 @@ Wait.TimeOut ldy #TimeOut
|
|||||||
lda (pData),y
|
lda (pData),y
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.INB USR/SRC/SBIN/IPCONFIG.S.DEV
|
|
||||||
.INB USR/SRC/SBIN/IPCONFIG.S.DHCP
|
.INB USR/SRC/SBIN/IPCONFIG.S.DHCP
|
||||||
.INB USR/SRC/SBIN/IPCONFIG.S.ETC
|
.INB USR/SRC/SBIN/IPCONFIG.S.ETC
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.END
|
CS.END
|
||||||
LIBTCPIP .AZ "libtcpip2"
|
LIBTCPIP .AZ "libtcpip2"
|
||||||
|
hLIBTCPIP .BS 1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
OptionList >PSTR "DESdes"
|
OptionList >PSTR "DEde"
|
||||||
OptionVars .DA #bDHCP,#bETC,#bSet,#bDHCP,#bETC,#bSet
|
OptionVars .DA #bDHCP,#bETC,#bDHCP,#bETC
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MSG.USAGE .AS "Usage : IPCONFIG <switches>\r\n"
|
MSG.USAGE .AS "Usage : IPCONFIG <switches>\r\n"
|
||||||
.AS " -D : Try to get IP address from DHCP\r\n"
|
.AS " -D : Try to get IP address from DHCP\r\n"
|
||||||
.AS " -E : Read ETC files\r\n"
|
.AS " -E : Read ETC files\r\n"
|
||||||
.AZ " -S : Set/Reset TCPIP configuration (-E, then -D if required)\r\n"
|
.AZ " -S : Set/Reset TCPIP configuration (-E, then -D if required)\r\n"
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MSG0 .AZ "TCP/IP Status : "
|
MSG.NODEV .AZ "TCP/IP not bound to any device."
|
||||||
MSG0.L .AZ "Loaded"
|
|
||||||
MSG0.NL .AZ "Not Loaded"
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MSG1.DEV .AS "Device Configuration :\r\n"
|
IPCFG .BS S.IPCFG
|
||||||
|
IOCTL .BS S.IOCTL
|
||||||
|
*--------------------------------------
|
||||||
|
MSG1.DEV .AS "NIC Device Configuration :\r\n"
|
||||||
.AS " Device ID : $%h\r\n"
|
.AS " Device ID : $%h\r\n"
|
||||||
.AS " Device Name : %s\r\n"
|
.AS " Device Name : %s\r\n"
|
||||||
.AS " Device Type : %S\r\n"
|
.AS " Device Type : %S\r\n"
|
||||||
@ -433,13 +445,9 @@ MSG2.IP .AZ " IP/Mask : %d.%d.%d.%d/%d.%d.%d.%d\r\n"
|
|||||||
MSG2.GW .AZ " Gateway : %d.%d.%d.%d\r\n"
|
MSG2.GW .AZ " Gateway : %d.%d.%d.%d\r\n"
|
||||||
MSG2.DNS .AZ " DNS : %d.%d.%d.%d,%d.%d.%d.%d\r\n"
|
MSG2.DNS .AZ " DNS : %d.%d.%d.%d,%d.%d.%d.%d\r\n"
|
||||||
MSG2.HOSTNAME .AZ " Hostname : %s.%s\r\n"
|
MSG2.HOSTNAME .AZ " Hostname : %s.%s\r\n"
|
||||||
hLIBTCPIP .BS 1
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DEVNAME .AZ "/DEV/ETH1"
|
|
||||||
MSG.DEV.KO .AZ "No Device Found, exiting."
|
|
||||||
MSG.DEV.OK .AZ "Bound To Device : %s\r\n"
|
|
||||||
MSG.CFG .AZ "Reading %s..."
|
MSG.CFG .AZ "Reading %s..."
|
||||||
MSG.CFG.KO .AZ "Failed!!! [%h]\r\n"
|
MSG.CFG.KO .AZ "Not Found. [%h]\r\n"
|
||||||
MSG.CFG.OK .AZ "OK."
|
MSG.CFG.OK .AZ "OK."
|
||||||
MSG.DNS.ADD .AZ " - Adding static host %d.%d.%d.%d %s..."
|
MSG.DNS.ADD .AZ " - Adding static host %d.%d.%d.%d %s..."
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -448,7 +456,7 @@ TCPIP.CONF .AZ "${ROOT}ETC/TCPIP.CONF"
|
|||||||
HOSTS .AZ "${ROOT}ETC/HOSTS"
|
HOSTS .AZ "${ROOT}ETC/HOSTS"
|
||||||
HST.SScanF .AZ "%d.%d.%d.%d"
|
HST.SScanF .AZ "%d.%d.%d.%d"
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CFG.DefaultHost .AZ "a2osx-XXXX"
|
CFG.DefaultHost .AZ "a2osx-%H"
|
||||||
CFG.Keywords >PSTR "address"
|
CFG.Keywords >PSTR "address"
|
||||||
>PSTR "netmask"
|
>PSTR "netmask"
|
||||||
>PSTR "gateway"
|
>PSTR "gateway"
|
||||||
@ -462,13 +470,11 @@ CFG.hCfgPath .BS 1
|
|||||||
CFG.hCfgFile .BS 1
|
CFG.hCfgFile .BS 1
|
||||||
CFG.IP .BS 4
|
CFG.IP .BS 4
|
||||||
CFG.HOSTS.SScanF .AZ "%d.%d.%d.%d %s %s"
|
CFG.HOSTS.SScanF .AZ "%d.%d.%d.%d %s %s"
|
||||||
IPCFG .BS S.IPCFG
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MSG.DHCP.CFG1 .AZ "Searching for DHCP servers..."
|
MSG.DHCP.CFG1 .AZ "Searching for DHCP servers..."
|
||||||
MSG.DHCP.CFG2 .AZ "Reply from DHCP Server at %d.%d.%d.%d, requesting...\r\n"
|
MSG.DHCP.CFG2 .AZ "Reply from DHCP Server at %d.%d.%d.%d, requesting...\r\n"
|
||||||
MSG.DHCP.KO .AZ "Time Out [%h].\r\n"
|
MSG.DHCP.KO .AZ "Time Out [%h].\r\n"
|
||||||
MSG.DHCP.OK .AZ "Success:[IP=%d.%d.%d.%d/%d.%d.%d.%d]\r\n"
|
MSG.DHCP.OK .AZ "Success:[IP=%d.%d.%d.%d/%d.%d.%d.%d]\r\n"
|
||||||
MSG.DHCP.ND .AZ "No Device, exiting."
|
|
||||||
MSG.DHCP.NA .AZ "TCPIP Already configured, exiting."
|
MSG.DHCP.NA .AZ "TCPIP Already configured, exiting."
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SA.LOCAL .DA #AF.INET S.SOCKADDR.AF
|
SA.LOCAL .DA #AF.INET S.SOCKADDR.AF
|
||||||
@ -522,11 +528,9 @@ DHCP.REQ.LEN .EQ *-DHCP.REQ
|
|||||||
.DUMMY
|
.DUMMY
|
||||||
.OR 0
|
.OR 0
|
||||||
DS.START
|
DS.START
|
||||||
ArgCount .BS 1
|
ArgIndex .BS 1
|
||||||
bDHCP .BS 1
|
bDHCP .BS 1
|
||||||
bETC .BS 1
|
bETC .BS 1
|
||||||
bSet .BS 1
|
|
||||||
IOCTL .BS S.IOCTL
|
|
||||||
DIB .BS S.DIB
|
DIB .BS S.DIB
|
||||||
DCB.NIC .BS S.DCB.NIC
|
DCB.NIC .BS S.DCB.NIC
|
||||||
TimeOut .BS 1
|
TimeOut .BS 1
|
||||||
|
@ -10,6 +10,12 @@ LIBETALK.GETCFG .EQ 6
|
|||||||
LIBETALK.INCOMING .EQ 8
|
LIBETALK.INCOMING .EQ 8
|
||||||
LIBETALK.PULSE .EQ 10
|
LIBETALK.PULSE .EQ 10
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
S.ETKCFG.STATUS .EQ 0
|
||||||
|
S.ETKCFG.DevID .EQ 1
|
||||||
|
S.ETKCFG.MAC .EQ 2
|
||||||
|
*
|
||||||
|
S.ETKCFG .EQ 8
|
||||||
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE INC/LIBETALK.I
|
SAVE INC/LIBETALK.I
|
||||||
LOAD USR/SRC/LIB/LIBETALK.S
|
LOAD USR/SRC/LIB/LIBETALK.S
|
||||||
|
@ -10,6 +10,7 @@ AUTO 4,1
|
|||||||
.INB INC/A2OSX.I
|
.INB INC/A2OSX.I
|
||||||
.INB INC/NIC.I
|
.INB INC/NIC.I
|
||||||
.INB INC/ETH.I
|
.INB INC/ETH.I
|
||||||
|
.INB INC/LIBETALK.I
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
ZPFrameInPtr .EQ ZPLIB
|
ZPFrameInPtr .EQ ZPLIB
|
||||||
ZPFrameInLen .EQ ZPLIB+2
|
ZPFrameInLen .EQ ZPLIB+2
|
||||||
@ -24,6 +25,7 @@ ZPDataOutPtr .EQ ZPLIB+12
|
|||||||
ZPDataOutLen .EQ ZPLIB+14
|
ZPDataOutLen .EQ ZPLIB+14
|
||||||
|
|
||||||
ZPIOCTL .EQ ZPLIB+16
|
ZPIOCTL .EQ ZPLIB+16
|
||||||
|
ZPTmpPtr1 .EQ ZPLIB+18
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* File Header (16 Bytes)
|
* File Header (16 Bytes)
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -42,21 +44,36 @@ CS.START cld
|
|||||||
.1 .DA LIB.LOAD
|
.1 .DA LIB.LOAD
|
||||||
.DA LIB.UNLOAD
|
.DA LIB.UNLOAD
|
||||||
|
|
||||||
.DA SETCFG
|
.DA CFG.SET
|
||||||
.DA GETCFG
|
.DA CFG.GET
|
||||||
|
|
||||||
.DA INCOMING
|
.DA INCOMING
|
||||||
.DA PULSE
|
.DA PULSE
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
L.ETKCFG .DA ETKCFG
|
||||||
.DA 0
|
.DA 0
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
LIB.LOAD
|
LIB.LOAD
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
LIB.UNLOAD
|
LIB.UNLOAD
|
||||||
|
|
||||||
|
clc
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SETCFG
|
CFG.SET >PULLW ZPTmpPtr1 IPCFG
|
||||||
|
|
||||||
|
ldy #0
|
||||||
|
|
||||||
|
.1 lda (ZPTmpPtr1),y
|
||||||
|
sta ETKCFG,y
|
||||||
|
iny
|
||||||
|
cpy #S.ETKCFG
|
||||||
|
bne .1
|
||||||
|
|
||||||
|
clc
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
GETCFG
|
CFG.GET >LDYA L.ETKCFG
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -64,29 +81,27 @@ INCOMING sta hFrameIn
|
|||||||
>PULLW ZPIOCTL
|
>PULLW ZPIOCTL
|
||||||
|
|
||||||
ldy #S.IOCTL.BUFPTR+3
|
ldy #S.IOCTL.BUFPTR+3
|
||||||
ldx #3
|
|
||||||
|
|
||||||
.1 lda (ZPIOCTL),y
|
.1 lda (ZPIOCTL),y Get Frame Ptr & Len
|
||||||
sta ZPFrameInPtr,x
|
sta ZPFrameInPtr-S.IOCTL.BUFPTR,y
|
||||||
dey
|
dey
|
||||||
dex
|
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* Expire = every sec
|
*--------------------------------------
|
||||||
* Retry = every 100 msec
|
* A = S.EVT.F
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
PULSE and #S.EVT.F.T1SEC
|
PULSE and #S.EVT.F.T1SEC
|
||||||
beq .1
|
beq .9
|
||||||
|
|
||||||
.1 clc
|
.9 rts
|
||||||
rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.END
|
CS.END
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
hFrameIn .BS 1
|
hFrameIn .BS 1
|
||||||
|
ETKCFG .BS S.ETKCFG
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/LIB/LIBETALK.S
|
SAVE USR/SRC/LIB/LIBETALK.S
|
||||||
|
@ -189,12 +189,14 @@ LIB.UNLOAD.8 clc
|
|||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
INCOMING sta hFrameIn
|
INCOMING sta hFrameIn
|
||||||
ldx #3
|
|
||||||
|
|
||||||
.10 lda IOCTL+S.IOCTL.BUFPTR,x Get Frame Ptr & Len
|
>PULLW ZPTmpPtr1
|
||||||
sta ZPFrameInPtr,x
|
ldy #S.IOCTL.BUFPTR+3
|
||||||
dex
|
|
||||||
bpl .10
|
.1 lda (ZPTmpPtr1),y Get Frame Ptr & Len
|
||||||
|
sta ZPFrameInPtr-S.IOCTL.BUFPTR,y
|
||||||
|
dey
|
||||||
|
bpl .1
|
||||||
|
|
||||||
ldy #S.ETH.EII.TYPE
|
ldy #S.ETH.EII.TYPE
|
||||||
lda (ZPFrameInPtr),y
|
lda (ZPFrameInPtr),y
|
||||||
@ -203,24 +205,23 @@ INCOMING sta hFrameIn
|
|||||||
lda (ZPFrameInPtr),y
|
lda (ZPFrameInPtr),y
|
||||||
|
|
||||||
cmp #S.ETH.EII.TYPE.ARP
|
cmp #S.ETH.EII.TYPE.ARP
|
||||||
bne .1
|
bne .2
|
||||||
cpx /S.ETH.EII.TYPE.ARP
|
cpx /S.ETH.EII.TYPE.ARP
|
||||||
bne .1
|
bne .2
|
||||||
|
|
||||||
jmp ARP.IN
|
jmp ARP.IN
|
||||||
|
|
||||||
.1 cmp #S.ETH.EII.TYPE.IP
|
.2 cmp #S.ETH.EII.TYPE.IP
|
||||||
bne .9
|
bne .9
|
||||||
cpx /S.ETH.EII.TYPE.IP
|
cpx /S.ETH.EII.TYPE.IP
|
||||||
bne .9
|
bne .9
|
||||||
|
|
||||||
jmp IP.IN
|
jmp IP.IN
|
||||||
|
|
||||||
.9 lda hFrameIn
|
.9 sec
|
||||||
>SYSCALL FreeMem
|
rts
|
||||||
|
|
||||||
.99 rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
* A = S.EVT.F
|
||||||
* Expire = every sec
|
* Expire = every sec
|
||||||
* Retry = every 100 msec
|
* Retry = every 100 msec
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -18,7 +18,7 @@ AUTO 4,1
|
|||||||
.DUMMY
|
.DUMMY
|
||||||
.OR ZPBIN
|
.OR ZPBIN
|
||||||
ZS.START
|
ZS.START
|
||||||
* MyPtr .BS 2
|
pIPCFG .BS 2
|
||||||
ZS.END
|
ZS.END
|
||||||
.ED
|
.ED
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -70,7 +70,7 @@ CS.RUN >PUSHBI 0
|
|||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.1 sta hFD
|
.1 sta DevID
|
||||||
|
|
||||||
>PUSHW L.DEVNAME
|
>PUSHW L.DEVNAME
|
||||||
>PUSHBI 2
|
>PUSHBI 2
|
||||||
@ -82,6 +82,13 @@ CS.RUN >PUSHBI 0
|
|||||||
bcs .2
|
bcs .2
|
||||||
sta hLIBTCPIP
|
sta hLIBTCPIP
|
||||||
|
|
||||||
|
>LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
||||||
|
>STYA pIPCFG
|
||||||
|
|
||||||
|
ldy #S.IPCFG.DevID
|
||||||
|
lda DevID
|
||||||
|
sta (pIPCFG),y
|
||||||
|
|
||||||
.2 >LDYA L.LIBETALK
|
.2 >LDYA L.LIBETALK
|
||||||
>SYSCALL LoadLib
|
>SYSCALL LoadLib
|
||||||
bcs .3
|
bcs .3
|
||||||
@ -92,7 +99,7 @@ CS.RUN.LOOP >SLEEP
|
|||||||
|
|
||||||
>PUSHW L.IOCTL
|
>PUSHW L.IOCTL
|
||||||
>PUSHBI IOCTL.READ
|
>PUSHBI IOCTL.READ
|
||||||
lda hFD
|
lda DevID
|
||||||
>SYSCALL IOCTL
|
>SYSCALL IOCTL
|
||||||
bcs CS.RUN.LOOP No Frame
|
bcs CS.RUN.LOOP No Frame
|
||||||
|
|
||||||
@ -129,6 +136,7 @@ CS.DOEVENT lda (pEvent)
|
|||||||
|
|
||||||
.1 ldx hLIBETALK
|
.1 ldx hLIBETALK
|
||||||
beq .9
|
beq .9
|
||||||
|
|
||||||
lda (pEvent)
|
lda (pEvent)
|
||||||
>LIBCALL hLIBETALK,LIBETALK.PULSE
|
>LIBCALL hLIBETALK,LIBETALK.PULSE
|
||||||
|
|
||||||
@ -147,7 +155,7 @@ CS.QUIT lda hLIBTCPIP
|
|||||||
|
|
||||||
.2 >PUSHWI 0
|
.2 >PUSHWI 0
|
||||||
>PUSHBI IOCTL.CLOSE
|
>PUSHBI IOCTL.CLOSE
|
||||||
lda hFD
|
lda DevID
|
||||||
>SYSCALL IOCTL
|
>SYSCALL IOCTL
|
||||||
|
|
||||||
clc
|
clc
|
||||||
@ -156,11 +164,11 @@ CS.QUIT lda hLIBTCPIP
|
|||||||
CS.END
|
CS.END
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DEVNAME .AZ "/DEV/ETH1"
|
DEVNAME .AZ "/DEV/ETH1"
|
||||||
MSG.DEV.KO .AZ "No Device Found, exiting."
|
MSG.DEV.KO .AZ "NETWORKD:No Device Found, exiting."
|
||||||
MSG.DEV.OK .AZ "Bound To Device : %s\r\n"
|
MSG.DEV.OK .AZ "NETWORKD:Bound To Device : %s\r\n"
|
||||||
LIBTCPIP .AZ "libtcpip2"
|
LIBTCPIP .AZ "libtcpip2"
|
||||||
LIBETALK .AZ "libetalk"
|
LIBETALK .AZ "libetalk"
|
||||||
hFD .BS 1
|
DevID .BS 1
|
||||||
hLIBTCPIP .BS 1
|
hLIBTCPIP .BS 1
|
||||||
hLIBETALK .BS 1
|
hLIBETALK .BS 1
|
||||||
IOCTL .BS S.IOCTL
|
IOCTL .BS S.IOCTL
|
||||||
|
Loading…
Reference in New Issue
Block a user