mirror of
https://github.com/A2osX/A2osX.git
synced 2024-09-28 03:55:01 +00:00
Kernel 0.9.2
This commit is contained in:
parent
d8ac678572
commit
345bf1dfba
Binary file not shown.
Binary file not shown.
@ -30,16 +30,13 @@ CFG.Init >PUSHBI 0
|
||||
|
||||
CFG.EtcFiles >LDYAI 256
|
||||
>SYSCALL GetMem
|
||||
bcc .1
|
||||
rts
|
||||
bcs .9
|
||||
|
||||
.1 >STYA ZPTmpPtr1
|
||||
stx CFG.hBuf
|
||||
>STYA ZPTmpPtr1
|
||||
stx CFG.hBuf1
|
||||
|
||||
>PUSHW L.HOSTNAME
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.CFG
|
||||
>SYSCALL printf
|
||||
>LDYA L.HOSTNAME
|
||||
jsr CFG.Read.PrintF
|
||||
|
||||
jsr CFG.Read.HOSTNAME
|
||||
|
||||
@ -63,10 +60,8 @@ CFG.EtcFiles >LDYAI 256
|
||||
sta IPCFG+S.IPCFG.HOSTNAME+8
|
||||
stx IPCFG+S.IPCFG.HOSTNAME+9
|
||||
|
||||
.4 >PUSHW L.TCPIP.CONF
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.CFG
|
||||
>SYSCALL printf
|
||||
.4 >LDYA L.TCPIP.CONF
|
||||
jsr CFG.Read.PrintF
|
||||
|
||||
jsr CFG.Read.TCPIP.CONF
|
||||
|
||||
@ -76,20 +71,24 @@ CFG.EtcFiles >LDYAI 256
|
||||
lda #S.IPCFG.STATUS.OK
|
||||
sta IPCFG+S.IPCFG.STATUS
|
||||
|
||||
.5 >PUSHW L.HOSTS
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.CFG
|
||||
>SYSCALL printf
|
||||
.5 >LDYA L.HOSTS
|
||||
jsr CFG.Read.PrintF
|
||||
|
||||
jsr CFG.Read.HOSTS
|
||||
|
||||
jsr SET.IPCFG.I
|
||||
|
||||
lda CFG.hBuf
|
||||
lda CFG.hBuf1
|
||||
>SYSCALL freemem
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CFG.Read.PrintF >PUSHYA
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.CFG
|
||||
>SYSCALL printf
|
||||
rts
|
||||
*--------------------------------------
|
||||
CFG.Read.HOSTNAME
|
||||
>LDYA L.HOSTNAME
|
||||
jsr CFG.Read.Open
|
||||
@ -252,13 +251,28 @@ CFG.Read.dnsdomain
|
||||
sta IPCFG+S.IPCFG.DOMAIN,y
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
CFG.Read.HOSTS stz CFG.hBuf2
|
||||
stz CFG.hBuf3
|
||||
|
||||
*--------------------------------------
|
||||
CFG.Read.HOSTS >LDYA L.HOSTS
|
||||
>LDYA L.HOSTS
|
||||
jsr CFG.Read.Open
|
||||
jsr CFG.Read.Result
|
||||
bcs .9
|
||||
|
||||
>LDYAI 256
|
||||
>SYSCALL GetMem
|
||||
bcs .9
|
||||
|
||||
>STYA ZPTmpPtr2
|
||||
stx CFG.hBuf2
|
||||
|
||||
>LDYAI 256
|
||||
>SYSCALL GetMem
|
||||
bcs .9
|
||||
|
||||
>STYA ZPTmpPtr3
|
||||
stx CFG.hBuf3
|
||||
|
||||
.1 jsr CFG.Read.GetS
|
||||
bcs .8
|
||||
|
||||
@ -274,10 +288,10 @@ CFG.Read.HOSTS >LDYA L.HOSTS
|
||||
bcc .1 less than 5 parameters, ignore
|
||||
beq .2 no alias
|
||||
|
||||
>LDYA L.CFG.ALIAS
|
||||
>LDYA ZPTmpPtr3
|
||||
jsr CFG.DNS.Add
|
||||
|
||||
.2 >LDYA L.CFG.HOSTNAME
|
||||
.2 >LDYA ZPTmpPtr2
|
||||
jsr CFG.DNS.Add
|
||||
|
||||
bra .1
|
||||
@ -285,11 +299,21 @@ CFG.Read.HOSTS >LDYA L.HOSTS
|
||||
.8 clc
|
||||
.HS B0 BCS
|
||||
.9 sec
|
||||
jmp CFG.Read.Close
|
||||
|
||||
php
|
||||
pha
|
||||
lda CFG.hBuf3
|
||||
beq .90
|
||||
>SYSCALL freemem
|
||||
.90 lda CFG.hBuf2
|
||||
beq .91
|
||||
>SYSCALL freemem
|
||||
|
||||
.91 jmp CFG.Read.Close2
|
||||
*--------------------------------------
|
||||
CFG.Read.HOSTS.Scan
|
||||
>PUSHW L.CFG.ALIAS
|
||||
>PUSHW L.CFG.HOSTNAME
|
||||
>PUSHW ZPTmpPtr3
|
||||
>PUSHW ZPTmpPtr2
|
||||
|
||||
ldx #3
|
||||
|
||||
@ -313,28 +337,35 @@ CFG.Read.HOSTS.Scan
|
||||
*--------------------------------------
|
||||
CFG.DNS.ADD >STYA ZPTmpPtr1
|
||||
|
||||
>LDYA L.CFG.IP
|
||||
>STYA ZPTmpPtr2
|
||||
|
||||
>PUSHYA
|
||||
>PUSHW ZPTmpPtr1
|
||||
jsr DNS.Add
|
||||
|
||||
>PUSHW ZPTmpPtr1
|
||||
|
||||
ldy #3
|
||||
|
||||
.1 lda (ZPTmpPtr2),y
|
||||
.1 lda CFG.IP,y
|
||||
>PUSHA
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
>PUSHBI 6
|
||||
>LDYA L.MSG.DNS.ADD
|
||||
bcc .8
|
||||
>LDYA L.MSG.DNS.ERR
|
||||
.8 >PUSHBI 2
|
||||
>SYSCALL printf
|
||||
|
||||
>LDYA L.CFG.IP
|
||||
|
||||
>PUSHYA
|
||||
>PUSHW ZPTmpPtr1
|
||||
jsr DNS.Add
|
||||
*--------------------------------------
|
||||
CFG.Read.Result bcc .1
|
||||
>PUSHA
|
||||
>PUSHBI 1
|
||||
>LDYA L.MSG.CFG.KO
|
||||
>SYSCALL printf
|
||||
sec
|
||||
rts
|
||||
|
||||
.1 >LDYA L.MSG.CFG.OK
|
||||
>SYSCALL puts
|
||||
rts
|
||||
*--------------------------------------
|
||||
CFG.Read.Open stz CFG.hCfgFile
|
||||
@ -360,6 +391,8 @@ CFG.Read.Open stz CFG.hCfgFile
|
||||
*--------------------------------------
|
||||
CFG.Read.Close php
|
||||
pha
|
||||
|
||||
CFG.Read.Close2
|
||||
lda CFG.hCfgPath
|
||||
beq .1
|
||||
>SYSCALL FreeMem
|
||||
@ -372,18 +405,6 @@ CFG.Read.Close php
|
||||
plp
|
||||
rts
|
||||
*--------------------------------------
|
||||
CFG.Read.Result bcc .1
|
||||
>PUSHA
|
||||
>PUSHBI 1
|
||||
>LDYA L.MSG.CFG.KO
|
||||
>SYSCALL printf
|
||||
sec
|
||||
rts
|
||||
|
||||
.1 >LDYA L.MSG.CFG.OK
|
||||
>SYSCALL puts
|
||||
rts
|
||||
*--------------------------------------
|
||||
CFG.Read.GetS >PUSHWI 255
|
||||
>PUSHW ZPTmpPtr1
|
||||
lda CFG.hCfgFile
|
||||
|
@ -54,24 +54,12 @@ DNS.Query.I jsr DNS.FIND.BY.NAME
|
||||
rts
|
||||
*--------------------------------------
|
||||
DNS.REQUEST lda hDNSSocket1
|
||||
bne .10
|
||||
lda #ERR.DNS.ERROR
|
||||
sec
|
||||
rts
|
||||
beq .99
|
||||
|
||||
.10 jsr DNS.CSTR2DNS
|
||||
jsr DNS.CSTR2DNS Y=DNS string len+0
|
||||
bcs .99
|
||||
|
||||
ldx #0
|
||||
ldy #DNS.MSG.NAME-DNS.MSG
|
||||
|
||||
.1 lda DNS.Hostname,x
|
||||
sta DNS.MSG,y
|
||||
beq .2
|
||||
inx
|
||||
iny
|
||||
bne .1
|
||||
|
||||
.2 iny
|
||||
lda /S.DNS.QTYPE.A
|
||||
sta DNS.MSG,y
|
||||
iny
|
||||
@ -106,20 +94,78 @@ DNS.REQUEST lda hDNSSocket1
|
||||
jsr DNS.ADD.I
|
||||
bcs .9
|
||||
|
||||
>PUSHB hDNSSocket1
|
||||
>PUSHW L.DNS.MSG
|
||||
>PUSHW DNS.MSG.LEN
|
||||
jsr SKT.Send
|
||||
lda hDNSSocket1
|
||||
jsr DNS.REQUEST.SEND
|
||||
bcs .99
|
||||
|
||||
lda hDNSSocket2
|
||||
beq .3
|
||||
beq .8
|
||||
|
||||
>PUSHB hDNSSocket2
|
||||
jsr DNS.REQUEST.SEND
|
||||
jsr SKT.Send
|
||||
bcc .8
|
||||
|
||||
.99 lda #ERR.DNS.ERROR
|
||||
.9 sec
|
||||
rts
|
||||
|
||||
.8 lda #ERR.DNS.PENDING
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
DNS.REQUEST.SEND
|
||||
>PUSHA
|
||||
>PUSHW L.DNS.MSG
|
||||
>PUSHW DNS.MSG.LEN
|
||||
jsr SKT.Send
|
||||
jmp SKT.Send
|
||||
*--------------------------------------
|
||||
DNS.CSTR2DNS lda (ZPPtrDNS)
|
||||
beq .9
|
||||
|
||||
>LDYA ZPPtrDNS
|
||||
>SYSCALL strlen
|
||||
|
||||
tax
|
||||
bne .9
|
||||
|
||||
cpy #K.DNS.MAXLEN-1
|
||||
bcs .9
|
||||
|
||||
lda #0 Ending 0
|
||||
sta DNS.MSG.NAME+1,y
|
||||
|
||||
phy save len for later
|
||||
|
||||
ldx #0
|
||||
dey
|
||||
|
||||
.1 lda (ZPPtrDNS),y
|
||||
and #$7f
|
||||
cmp #'.'
|
||||
beq .2
|
||||
|
||||
cmp #'A'
|
||||
bcc .10
|
||||
cmp #'Z'+1
|
||||
bcs .10
|
||||
adc #$20
|
||||
|
||||
.10 inx
|
||||
bra .3
|
||||
|
||||
.2 txa
|
||||
ldx #0
|
||||
|
||||
.3 sta DNS.MSG.NAME+1,y
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
stx DNS.MSG.NAME
|
||||
|
||||
ply Get back Len
|
||||
clc
|
||||
rts
|
||||
|
||||
.3 lda #ERR.DNS.PENDING
|
||||
.9 sec
|
||||
rts
|
||||
*/--------------------------------------
|
||||
@ -487,53 +533,6 @@ DNS.DecodeMsg sta hFrameIn
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
DNS.CSTR2DNS lda (ZPPtrDNS)
|
||||
beq .9
|
||||
|
||||
>LDYA ZPPtrDNS
|
||||
>SYSCALL strlen
|
||||
|
||||
tax
|
||||
bne .9
|
||||
|
||||
cpy #K.DNS.MAXLEN-1
|
||||
bcs .9
|
||||
|
||||
lda #0 Ending 0
|
||||
sta DNS.HostName+1,y
|
||||
|
||||
ldx #0
|
||||
dey
|
||||
|
||||
.1 lda (ZPPtrDNS),y
|
||||
and #$7f
|
||||
cmp #'.'
|
||||
beq .2
|
||||
|
||||
cmp #'A'
|
||||
bcc .10
|
||||
cmp #'Z'+1
|
||||
bcs .10
|
||||
adc #$20
|
||||
|
||||
.10 inx
|
||||
bra .3
|
||||
|
||||
.2 txa
|
||||
ldx #0
|
||||
|
||||
.3 sta DNS.HostName+1,y
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
stx DNS.HostName
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
.9 sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE /A2OSX.SRC/LIB/LIBTCPIP.S.DNS
|
||||
LOAD /A2OSX.SRC/LIB/LIBTCPIP.S
|
||||
|
@ -91,14 +91,11 @@ L.MSG.CFG .DA MSG.CFG
|
||||
L.MSG.CFG.KO .DA MSG.CFG.KO
|
||||
L.MSG.CFG.OK .DA MSG.CFG.OK
|
||||
L.MSG.DNS.ADD .DA MSG.DNS.ADD
|
||||
L.MSG.DNS.ERR .DA MSG.DNS.ERR
|
||||
L.HOSTNAME .DA HOSTNAME
|
||||
L.TCPIP.CONF .DA TCPIP.CONF
|
||||
L.HOSTS .DA HOSTS
|
||||
L.IPCFG .DA IPCFG
|
||||
L.CFG.IP .DA CFG.IP
|
||||
L.CFG.HOSTNAME .DA CFG.HOSTNAME
|
||||
L.CFG.ALIAS .DA CFG.ALIAS
|
||||
L.CFG.HOSTS.SScanF .DA CFG.HOSTS.SScanF
|
||||
L.CFG.Keywords .DA CFG.Keywords
|
||||
J.CFG.Keywords .DA CFG.Read.address
|
||||
@ -264,8 +261,7 @@ MSG.DEV.OK .AZ "TCPIPD:Bound To Device : %s\r\n"
|
||||
MSG.CFG .AZ "TCPIPD:Reading %s..."
|
||||
MSG.CFG.KO .AZ "Failed!!! [%h]\r\n"
|
||||
MSG.CFG.OK .AZ "OK."
|
||||
MSG.DNS.ADD .AZ "Added static host %d.%d.%d.%d %s\r\n"
|
||||
MSG.DNS.ERR .AZ "***ERROR adding static host %d.%d.%d.%d %s\r\n"
|
||||
MSG.DNS.ADD .AZ " - Adding static host %d.%d.%d.%d %s..."
|
||||
*--------------------------------------
|
||||
HOSTNAME .AZ "${A2OSX}ETC/HOSTNAME"
|
||||
TCPIP.CONF .AZ "${A2OSX}ETC/TCPIP.CONF"
|
||||
@ -278,12 +274,12 @@ CFG.Keywords >PSTR "address"
|
||||
>PSTR "nameserver"
|
||||
>PSTR "dnsdomain"
|
||||
.DA #0
|
||||
CFG.hBuf .BS 1
|
||||
CFG.hBuf1 .BS 1
|
||||
CFG.hBuf2 .BS 1
|
||||
CFG.hBuf3 .BS 1
|
||||
CFG.hCfgPath .BS 1
|
||||
CFG.hCfgFile .BS 1
|
||||
CFG.IP .BS 4
|
||||
CFG.HostName .BS K.DNS.MAXLEN+1
|
||||
CFG.Alias .BS K.DNS.MAXLEN+1
|
||||
CFG.HOSTS.SScanF .AZ "%d.%d.%d.%d %s %s"
|
||||
*--------------------------------------
|
||||
FD.SSOCK .BS 1 S.FD.HANDLER
|
||||
@ -334,7 +330,6 @@ DNS.SOCKET.SP .DA 0 Dynamic
|
||||
DNS.SOCKET.DA .BS 4
|
||||
DNS.SOCKET.DP .DA UDP.PORT.DNS
|
||||
*--------------------------------------
|
||||
DNS.MSG.LEN .BS 2
|
||||
DNS.MSG
|
||||
DNS.MSG.ID .BS 2
|
||||
.DA /S.DNS.F.RD Flags=query
|
||||
@ -343,6 +338,8 @@ DNS.MSG.ID .BS 2
|
||||
.BS 6 ANCOUNT,NSCOUNT,ARCOUNT
|
||||
DNS.MSG.NAME .BS K.DNS.MAXLEN+6
|
||||
*--------------------------------------
|
||||
DNS.MSG.LEN .BS 2
|
||||
*--------------------------------------
|
||||
FRM.QUEUE.Tail .BS 1
|
||||
FRM.QUEUE.Head .BS 1
|
||||
FRM.QUEUE.hMem .BS K.FRMQUEUE.SIZE
|
||||
@ -356,7 +353,6 @@ hSocketTable .BS 1
|
||||
DYNPORT.LAST .DA K.DYNPORT.START
|
||||
hDNSSocket1 .BS 1
|
||||
hDNSSocket2 .BS 1
|
||||
DNS.HostName .BS K.DNS.MAXLEN+1
|
||||
DNS.TmpCache .BS S.DNSCACHE
|
||||
ARP.TmpCache .BS S.ARP
|
||||
SKT.Template .BS S.SOCKET
|
||||
|
@ -102,6 +102,7 @@ CS.INIT >LDYA L.LIBTCPIP
|
||||
.98 >LDYA L.MSG.CFG.ND
|
||||
bra .90
|
||||
.99 >LDYA L.MSG.CFG.NA
|
||||
|
||||
.90 >SYSCALL puts
|
||||
lda #0
|
||||
sec
|
||||
|
Loading…
Reference in New Issue
Block a user