mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-07 20:30:43 +00:00
Kernel 0.92
This commit is contained in:
parent
a39eb17109
commit
bb03ff5bca
Binary file not shown.
@ -3,7 +3,7 @@ PREFIX
|
||||
AUTO 4,1
|
||||
.LIST OFF
|
||||
*--------------------------------------
|
||||
DHCP.INIT lda (pIPCFG)
|
||||
DHCP.INIT lda IPCFG+S.IPCFG.STATUS
|
||||
and #S.IPCFG.STATUS.OK
|
||||
bne .99 Already Configured, exit
|
||||
|
||||
@ -30,7 +30,7 @@ DHCP.INIT lda (pIPCFG)
|
||||
|
||||
.99 >LDYA L.MSG.DHCP.NA
|
||||
|
||||
.90 >SYSCALL puts
|
||||
>SYSCALL puts
|
||||
lda #0
|
||||
sec
|
||||
rts
|
||||
|
@ -177,7 +177,7 @@ CFG.Read.IP ldy #3
|
||||
bpl .1
|
||||
|
||||
>PUSHBI 8 4 PTRs on stack
|
||||
>PUSHW L.HST.SScanF
|
||||
>PUSHW L.CFG.IP.SScanF
|
||||
|
||||
lda (ZPTmpPtr2)
|
||||
sec
|
||||
@ -210,8 +210,8 @@ CFG.Read.dnsdomain
|
||||
sta IPCFG+S.IPCFG.DOMAIN,y
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
CFG.Read.HOSTS stz CFG.hBuf2
|
||||
stz CFG.hBuf3
|
||||
CFG.Read.HOSTS stz CFG.hBuf2
|
||||
stz CFG.hBuf3
|
||||
|
||||
>LDYA L.HOSTS
|
||||
jsr CFG.Read.Open
|
||||
@ -288,7 +288,7 @@ CFG.Read.HOSTS.Scan
|
||||
bpl .2
|
||||
|
||||
>PUSHBI 12 6 PTRs on stack
|
||||
>PUSHW L.CFG.HOSTS.SScanF
|
||||
>PUSHW L.CFG.HOST.SScanF
|
||||
>LDYA ZPTmpPtr1
|
||||
|
||||
>SYSCALL SScanF
|
||||
@ -368,11 +368,7 @@ CFG.Read.GetS >PUSHWI 255
|
||||
>PUSHW ZPTmpPtr1
|
||||
lda CFG.hCfgFile
|
||||
>SYSCALL fgets
|
||||
bcs .9
|
||||
>LDYA ZPTmpPtr1
|
||||
>SYSCALL puts
|
||||
|
||||
.9 rts
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/SBIN/IPCONFIG.S.ETC
|
||||
|
@ -4,7 +4,7 @@ AUTO 4,1
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF BIN/IPCONFIG2
|
||||
.TF BIN/IPCONFIG
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/A2OSX.I
|
||||
@ -21,7 +21,6 @@ TIMEOUT.MAX .EQ 200 20 sec.
|
||||
.DUMMY
|
||||
.OR ZPBIN
|
||||
ZS.START
|
||||
ZPPtr1 .BS 2
|
||||
pIPCFG .BS 2
|
||||
pFD .BS 2
|
||||
ZPIPCfgPtr .BS 2
|
||||
@ -40,10 +39,11 @@ CS.START cld
|
||||
jmp (.1,x)
|
||||
.DA #$61 6502,Level 1 (65c02)
|
||||
.DA #1 BIN Layout Version 1
|
||||
.DA 0
|
||||
.DA CS.END-CS.START CS
|
||||
.DA DS.END-DS.START DS
|
||||
.DA #16 SS
|
||||
.DA #S.PS.F.EVENT
|
||||
.DA #0
|
||||
.DA CS.END-CS.START Code Size (without Constants)
|
||||
.DA DS.END-DS.START Data SegmentSize
|
||||
.DA #16 Stack Size
|
||||
.DA #ZS.END-ZS.START Zero Page Size
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
@ -80,13 +80,11 @@ L.HOSTNAME .DA HOSTNAME
|
||||
L.TCPIP.CONF .DA TCPIP.CONF
|
||||
L.HOSTS .DA HOSTS
|
||||
L.IPCFG .DA IPCFG
|
||||
L.IOCTL .DA IOCTL
|
||||
L.DCB.NIC .DA DCB.NIC
|
||||
L.CFG.IP .DA CFG.IP
|
||||
L.HST.SScanF .DA HST.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.IP .DA CFG.IP
|
||||
L.CFG.IP.SScanF .DA CFG.IP.SScanF
|
||||
L.CFG.HOST.SScanF .DA CFG.HOST.SScanF
|
||||
L.CFG.DefaultHost .DA CFG.DefaultHost
|
||||
L.CFG.Keywords .DA CFG.Keywords
|
||||
J.CFG.Keywords .DA CFG.Read.address
|
||||
.DA CFG.Read.netmask
|
||||
@ -133,14 +131,14 @@ CS.RUN >LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
||||
>SYSCALL ArgV
|
||||
bcs .4
|
||||
|
||||
>STYA ZPPtr1
|
||||
>STYA ZPTmpPtr1
|
||||
|
||||
lda (ZPPtr1)
|
||||
lda (ZPTmpPtr1)
|
||||
cmp #'-'
|
||||
bne .99
|
||||
|
||||
ldy #1
|
||||
lda (ZPPtr1),y
|
||||
lda (ZPTmpPtr1),y
|
||||
|
||||
ldx OptionList
|
||||
|
||||
@ -162,24 +160,29 @@ CS.RUN >LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
||||
bra .1
|
||||
|
||||
.4 lda (pIPCFG) S.IPCFG.STATUS
|
||||
bne CS.RUN.DUMP
|
||||
bne .5 no config, force all
|
||||
|
||||
lda #$ff
|
||||
>STA.G bETC
|
||||
>STA.G bDHCP
|
||||
|
||||
.5 >LDA.G bETC
|
||||
bpl .6
|
||||
|
||||
jsr CFG.EtcFiles
|
||||
|
||||
* jsr DHCP.INIT
|
||||
* bcs .8
|
||||
.6 >LDA.G bDHCP
|
||||
bpl .8
|
||||
|
||||
jsr DHCP.INIT
|
||||
bcs .8
|
||||
|
||||
* jsr DHCP.RUN
|
||||
jsr DHCP.RUN
|
||||
|
||||
* jsr DHCP.QUIT
|
||||
jsr DHCP.QUIT
|
||||
|
||||
.8 >PUSHW L.IPCFG
|
||||
>DEBUG
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SETCFG
|
||||
|
||||
* lda #0
|
||||
* sec
|
||||
* rts
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SETCFG
|
||||
*--------------------------------------
|
||||
CS.RUN.DUMP ldy #S.IPCFG.DevID
|
||||
lda (pIPCFG),y
|
||||
@ -409,7 +412,7 @@ Wait.TimeOut ldy #TimeOut
|
||||
.INB USR/SRC/SBIN/IPCONFIG.S.ETC
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
LIBTCPIP .AZ "libtcpip2"
|
||||
LIBTCPIP .AZ "libtcpip"
|
||||
hLIBTCPIP .BS 1
|
||||
*--------------------------------------
|
||||
OptionList >PSTR "DEde"
|
||||
@ -423,7 +426,6 @@ MSG.USAGE .AS "Usage : IPCONFIG <switches>\r\n"
|
||||
MSG.NODEV .AZ "TCP/IP not bound to any device."
|
||||
*--------------------------------------
|
||||
IPCFG .BS S.IPCFG
|
||||
IOCTL .BS S.IOCTL
|
||||
*--------------------------------------
|
||||
MSG1.DEV .AS "NIC Device Configuration :\r\n"
|
||||
.AS " Device ID : $%h\r\n"
|
||||
@ -456,7 +458,6 @@ MSG.DNS.ADD .AZ " - Adding static host %d.%d.%d.%d %s..."
|
||||
HOSTNAME .AZ "${ROOT}ETC/HOSTNAME"
|
||||
TCPIP.CONF .AZ "${ROOT}ETC/TCPIP.CONF"
|
||||
HOSTS .AZ "${ROOT}ETC/HOSTS"
|
||||
HST.SScanF .AZ "%d.%d.%d.%d"
|
||||
*--------------------------------------
|
||||
CFG.DefaultHost .AZ "a2osx-%H"
|
||||
CFG.Keywords >PSTR "address"
|
||||
@ -471,7 +472,8 @@ CFG.hBuf3 .BS 1
|
||||
CFG.hCfgPath .BS 1
|
||||
CFG.hCfgFile .BS 1
|
||||
CFG.IP .BS 4
|
||||
CFG.HOSTS.SScanF .AZ "%d.%d.%d.%d %s %s"
|
||||
CFG.IP.SScanF .AZ "%d.%d.%d.%d"
|
||||
CFG.HOST.SScanF .AZ "%d.%d.%d.%d %s %s"
|
||||
*--------------------------------------
|
||||
MSG.DHCP.CFG1 .AZ "Searching for DHCP servers..."
|
||||
MSG.DHCP.CFG2 .AZ "Reply from DHCP Server at %d.%d.%d.%d, requesting...\r\n"
|
||||
@ -534,6 +536,7 @@ ArgIndex .BS 1
|
||||
bDHCP .BS 1
|
||||
bETC .BS 1
|
||||
DIB .BS S.DIB
|
||||
IOCTL .BS S.IOCTL
|
||||
DCB.NIC .BS S.DCB.NIC
|
||||
TimeOut .BS 1
|
||||
hSocket .BS 1
|
||||
|
18
INC/LIB.NET.I.txt
Normal file
18
INC/LIB.NET.I.txt
Normal file
@ -0,0 +1,18 @@
|
||||
NEW
|
||||
PREFIX
|
||||
AUTO 4,1
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
*--------------------------------------
|
||||
LIBNET.SETCFG .EQ 4
|
||||
LIBNET.GETCFG .EQ 6
|
||||
|
||||
LIBNET.INCOMING .EQ 8
|
||||
LIBNET.PULSE .EQ 10
|
||||
*--------------------------------------
|
||||
S.NETCFG.STATUS .EQ 0
|
||||
S.NETCFG.DevID .EQ 1
|
||||
S.NETCFG.MAC .EQ 2
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE INC/LIB.NET.I
|
@ -4,7 +4,7 @@ AUTO 4,1
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF LIB/LIBTCPIP2
|
||||
.TF LIB/LIBTCPIP
|
||||
*--------------------------------------
|
||||
IPDEBUG .EQ 0
|
||||
*--------------------------------------
|
||||
|
@ -5,22 +5,24 @@ AUTO 4,1
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF SBIN/NETWORKD
|
||||
*--------------------------------------
|
||||
LIB.MAX .EQ 4
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/A2OSX.I
|
||||
.INB INC/MLI.I
|
||||
.INB INC/MLI.E.I
|
||||
.INB INC/ETH.I
|
||||
.INB INC/LIBTCPIP.I
|
||||
.INB INC/LIBETALK.I
|
||||
.INB INC/LIB.NET.I
|
||||
*--------------------------------------
|
||||
* Zero Page Segment, up to 32 bytes
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR ZPBIN
|
||||
ZS.START
|
||||
pIPCFG .BS 2
|
||||
ZS.END
|
||||
.ED
|
||||
pNETCFG .BS 2
|
||||
pBuf .BS 2
|
||||
ZS.END .ED
|
||||
*--------------------------------------
|
||||
* File Header (16 Bytes)
|
||||
*--------------------------------------
|
||||
@ -45,23 +47,30 @@ CS.START cld
|
||||
L.DEVNAME .DA DEVNAME
|
||||
L.MSG.DEV.OK .DA MSG.DEV.OK
|
||||
L.MSG.DEV.KO .DA MSG.DEV.KO
|
||||
L.LIBTCPIP .DA LIBTCPIP
|
||||
L.LIBETALK .DA LIBETALK
|
||||
L.MSG.LIB .DA MSG.LIB
|
||||
L.IOCTL .DA IOCTL
|
||||
L.ETCNETWORK .DA ETCNETWORK
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
CS.INIT clc
|
||||
rts
|
||||
CS.INIT jsr CS.INIT.DEV
|
||||
bcs .9
|
||||
|
||||
jsr CS.INIT.LIBS
|
||||
bcs .9
|
||||
|
||||
jsr CS.INIT.CONF
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN >PUSHBI 0
|
||||
CS.INIT.DEV >PUSHBI 0
|
||||
>LDYA L.DEVNAME
|
||||
>SYSCALL open
|
||||
bcc .1
|
||||
bcc .8
|
||||
|
||||
inc DEVNAME+8
|
||||
lda DEVNAME+8
|
||||
cmp #'8'
|
||||
bne CS.RUN
|
||||
bne CS.INIT.DEV
|
||||
|
||||
>LDYA L.MSG.DEV.KO
|
||||
>SYSCALL puts
|
||||
@ -70,90 +79,152 @@ CS.RUN >PUSHBI 0
|
||||
sec
|
||||
rts
|
||||
|
||||
.1 sta DevID
|
||||
.8 sta DevID
|
||||
|
||||
>PUSHW L.DEVNAME
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.DEV.OK
|
||||
>SYSCALL printf
|
||||
|
||||
>LDYA L.LIBTCPIP
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.INIT.LIBS lda LibCnt
|
||||
.1 inc
|
||||
>SYSCALL ArgV
|
||||
bcs .8
|
||||
|
||||
phy
|
||||
pha
|
||||
|
||||
>PUSHYA
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.LIB
|
||||
>SYSCALL printf
|
||||
|
||||
pla
|
||||
ply
|
||||
>SYSCALL LoadLib
|
||||
bcs .2
|
||||
sta hLIBTCPIP
|
||||
bcs .9
|
||||
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
||||
>STYA pIPCFG
|
||||
ldy LibCnt
|
||||
sta hLIBs,y
|
||||
inc LibCnt
|
||||
|
||||
ldy #S.IPCFG.DevID
|
||||
tay
|
||||
ldx #LIBNET.GETCFG
|
||||
jsr A2osX.LIBCALL
|
||||
>STYA pNETCFG
|
||||
|
||||
lda DevID
|
||||
sta (pIPCFG),y
|
||||
ldy #S.NETCFG.DevID
|
||||
sta (pNETCFG),y
|
||||
|
||||
.2 >LDYA L.LIBETALK
|
||||
>SYSCALL LoadLib
|
||||
bcs .3
|
||||
sta hLIBETALK
|
||||
lda LibCnt
|
||||
cmp #LIB.MAX
|
||||
bne .1
|
||||
|
||||
.8 clc
|
||||
|
||||
.3
|
||||
CS.RUN.LOOP >SLEEP
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.INIT.CONF >LDYAI 64
|
||||
>SYSCALL GetMem
|
||||
bcs .9
|
||||
|
||||
>PUSHW L.IOCTL
|
||||
>STYA pBuf
|
||||
stx hLineBuf
|
||||
|
||||
>PUSHWI 0
|
||||
>PUSHBI S.FI.T.TXT
|
||||
>PUSHBI O.RDONLY
|
||||
|
||||
>LDYA L.ETCNETWORK
|
||||
>SYSCALL fopen
|
||||
bcs .9
|
||||
|
||||
sta hNetworkFile
|
||||
|
||||
.1 >PUSHWI 63
|
||||
>PUSHW pBuf
|
||||
lda hNetworkFile
|
||||
>SYSCALL fgets
|
||||
bcs .8
|
||||
|
||||
>PUSHBI 0 PS Flags
|
||||
>LDYA pBuf
|
||||
>SYSCALL execL
|
||||
bra .1
|
||||
|
||||
.8 lda hNetworkFile
|
||||
>SYSCALL fclose
|
||||
|
||||
clc
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN >PUSHW L.IOCTL
|
||||
>PUSHBI IOCTL.READ
|
||||
lda DevID
|
||||
>SYSCALL IOCTL
|
||||
bcs CS.RUN.LOOP No Frame
|
||||
bcs .8 No Frame
|
||||
|
||||
sta hFrameIn
|
||||
|
||||
ldx hLIBTCPIP
|
||||
beq .1
|
||||
ldx #0
|
||||
|
||||
.1 ldy hLIBs,x
|
||||
beq .7
|
||||
|
||||
>PUSHW L.IOCTL
|
||||
lda hFrameIn
|
||||
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.INCOMING
|
||||
bcc CS.RUN.LOOP
|
||||
phx
|
||||
ldx #LIBNET.INCOMING
|
||||
jsr A2osX.LIBCALL
|
||||
plx
|
||||
bcc .8
|
||||
|
||||
.1 ldx hLIBETALK
|
||||
beq .9
|
||||
inx
|
||||
bra .1
|
||||
|
||||
>PUSHW L.IOCTL
|
||||
lda hFrameIn
|
||||
>LIBCALL hLIBETALK,LIBETALK.INCOMING
|
||||
bcc CS.RUN.LOOP
|
||||
|
||||
.9 lda hFrameIn
|
||||
.7 lda hFrameIn
|
||||
>SYSCALL freemem
|
||||
|
||||
bra CS.RUN.LOOP
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT lda (pEvent)
|
||||
bpl .9
|
||||
|
||||
ldx hLIBTCPIP
|
||||
beq .1
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.PULSE
|
||||
ldx #0
|
||||
|
||||
.1 ldx hLIBETALK
|
||||
.1 ldy hLIBs,x
|
||||
beq .9
|
||||
|
||||
phx
|
||||
ldx #LIBNET.PULSE
|
||||
lda (pEvent)
|
||||
>LIBCALL hLIBETALK,LIBETALK.PULSE
|
||||
jsr A2osX.LIBCALL
|
||||
plx
|
||||
|
||||
inx
|
||||
bra .1
|
||||
|
||||
.9 sec never discard TIME event
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.QUIT lda hLIBTCPIP
|
||||
beq .1
|
||||
CS.QUIT ldx #0
|
||||
|
||||
>SYSCALL UnloadLib
|
||||
.1 lda hLIBs,x
|
||||
beq .7
|
||||
|
||||
.1 lda hLIBETALK
|
||||
beq .2
|
||||
|
||||
>SYSCALL UnloadLib
|
||||
phx
|
||||
>SYSCALL UnLoadLib
|
||||
plx
|
||||
|
||||
.2 >PUSHWI 0
|
||||
inx
|
||||
bra .1
|
||||
|
||||
.7 >PUSHWI 0
|
||||
>PUSHBI IOCTL.CLOSE
|
||||
lda DevID
|
||||
>SYSCALL IOCTL
|
||||
@ -166,12 +237,15 @@ CS.END
|
||||
DEVNAME .AZ "/DEV/ETH1"
|
||||
MSG.DEV.KO .AZ "NETWORKD:No Device Found, exiting."
|
||||
MSG.DEV.OK .AZ "NETWORKD:Bound To Device : %s\r\n"
|
||||
LIBTCPIP .AZ "libtcpip2"
|
||||
LIBETALK .AZ "libetalk"
|
||||
MSG.LIB .AZ "NETWORKD:Loading %s ...\r\n"
|
||||
DevID .BS 1
|
||||
hLIBTCPIP .BS 1
|
||||
hLIBETALK .BS 1
|
||||
LibCnt .BS 1
|
||||
hLIBs .BS LIB.MAX+1 for ending 0 if MAX libs
|
||||
IOCTL .BS S.IOCTL
|
||||
*ETCNETWORK .AZ "${ROOT}ETC/NETWORK"
|
||||
ETCNETWORK .AZ "../ETC/NETWORK"
|
||||
hNetworkFile .BS 1
|
||||
hLineBuf .BS 1
|
||||
hFrameIn .BS 1
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
|
Loading…
x
Reference in New Issue
Block a user