mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-16 00:29:35 +00:00
Kernel 0.94
This commit is contained in:
parent
70b226c525
commit
eb4adc065f
Binary file not shown.
|
@ -3,12 +3,12 @@ NEW
|
|||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF BIN/ARP
|
||||
.TF bin/arp
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/A2OSX.I
|
||||
.INB INC/ETH.I
|
||||
.INB INC/LIBTCPIP.I
|
||||
.INB inc/macros.i
|
||||
.INB inc/a2osx.i
|
||||
.INB inc/eth.i
|
||||
.INB inc/libtcpip.i
|
||||
*--------------------------------------
|
||||
TIMEOUT.MAX .EQ 40 40*100ms = 4 sec.
|
||||
*--------------------------------------
|
||||
|
@ -17,8 +17,7 @@ TIMEOUT.MAX .EQ 40 40*100ms = 4 sec.
|
|||
ZS.START
|
||||
ZPPTR1 .BS 2
|
||||
EntryCount .BS 1
|
||||
ZS.END
|
||||
.ED
|
||||
ZS.END .ED
|
||||
*--------------------------------------
|
||||
* File Header (16 Bytes)
|
||||
*--------------------------------------
|
||||
|
@ -78,7 +77,7 @@ CS.RUN >LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
|
|||
>PUSHEA.G DST.IP+2
|
||||
>PUSHEA.G DST.IP+3
|
||||
>PUSHBI 8 4 Ptrs
|
||||
>SYSCALL sscanf
|
||||
>SYSCALL SScanF
|
||||
bcs CS.RUN.ERR
|
||||
|
||||
ldy #S.PS.ARGC
|
||||
|
@ -100,7 +99,7 @@ CS.RUN.QUERY jsr Init.Timeout
|
|||
|
||||
.1 >PUSHEA.G DST.MAC
|
||||
>PUSHEA.G DST.IP
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.ARP.QUERY
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.ARP.Query
|
||||
bcc .2 success, print & exit
|
||||
jsr Wait.TimeOut
|
||||
bcs .8
|
||||
|
@ -146,17 +145,17 @@ CS.RUN.ADD lda #2
|
|||
>PUSHEA.G DST.MAC+4
|
||||
>PUSHEA.G DST.MAC+5
|
||||
>PUSHBI 12 6 Ptrs
|
||||
>SYSCALL sscanf
|
||||
>SYSCALL SScanF
|
||||
bcs .9
|
||||
|
||||
>PUSHEA.G DST.MAC
|
||||
>PUSHEA.G DST.IP
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.ARP.ADD
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.ARP.Add
|
||||
clc
|
||||
.8 rts
|
||||
.9 jmp CS.RUN.ERR
|
||||
*--------------------------------------
|
||||
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GETCACHE
|
||||
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GetCache
|
||||
>STYA ZPPTR1
|
||||
>LDYA L.MSG0
|
||||
>SYSCALL PutS
|
||||
|
@ -250,12 +249,14 @@ MSG1 .AZ "$%h %5D %h:%h:%h:%h:%h:%h %d.%d.%d.%d\r\n"
|
|||
MSG2 .AZ "%d.%d.%d.%d is at %h:%h:%h:%h:%h:%h\r\n"
|
||||
hLIBTCPIP .BS 1
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
DS.START
|
||||
DST.IP .BS 4
|
||||
DST.MAC .BS 6
|
||||
TimeOut .BS 1
|
||||
DS.END
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/BIN/ARP.S
|
||||
SAVE usr/src/bin/arp.s
|
||||
ASM
|
||||
|
|
17
BIN/LS.S.txt
17
BIN/LS.S.txt
|
@ -122,7 +122,7 @@ CS.RUN
|
|||
bcs .9
|
||||
|
||||
.8 >PUSHEA.G TIME.SysTime
|
||||
>SYSCALL time
|
||||
>SYSCALL Time
|
||||
|
||||
>LDYAI S.PW
|
||||
>SYSCALL GetMem
|
||||
|
@ -154,7 +154,7 @@ CS.RUN
|
|||
*--------------------------------------
|
||||
CS.RUN.LOOP ldy #S.PS.hStdIn
|
||||
lda (pPS),y
|
||||
>SYSCALL feof
|
||||
>SYSCALL FEOF
|
||||
bcs .99 I/O error
|
||||
|
||||
tay
|
||||
|
@ -492,7 +492,7 @@ CS.RUN.PushUidGid
|
|||
lda (ZPFileStat),y
|
||||
>PUSHA
|
||||
>PUSHBI 2
|
||||
>SYSCALL sprintf
|
||||
>SYSCALL SPrintF
|
||||
|
||||
.3 ldy #S.STAT.GID
|
||||
lda (ZPFileStat),y
|
||||
|
@ -516,7 +516,7 @@ CS.RUN.PushUidGid
|
|||
lda (ZPFileStat),y
|
||||
>PUSHA
|
||||
>PUSHBI 2
|
||||
>SYSCALL sprintf
|
||||
>SYSCALL SPrintF
|
||||
|
||||
.8 >PUSHEA.G USER
|
||||
>PUSHEA.G GROUP
|
||||
|
@ -527,7 +527,7 @@ CS.RUN.PushUidGidStr
|
|||
>PUSHW L.FMT.string6
|
||||
>PUSHW ZPPW
|
||||
>PUSHBI 2
|
||||
>SYSCALL sprintf
|
||||
>SYSCALL SPrintF
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.PUSHDATES
|
||||
|
@ -642,13 +642,13 @@ CS.RUN.NewLine >LDA.G ColCount
|
|||
beq CS.RUN.NewLine.8
|
||||
CS.RUN.NewLine.1
|
||||
lda #C.CR
|
||||
>SYSCALL putchar
|
||||
>SYSCALL PutChar
|
||||
|
||||
* bit bCRLF
|
||||
* bpl CS.RUN.NewLine.8
|
||||
|
||||
lda #C.LF
|
||||
>SYSCALL putchar
|
||||
>SYSCALL PutChar
|
||||
|
||||
CS.RUN.NewLine.8
|
||||
clc
|
||||
|
@ -806,8 +806,7 @@ ColCount .BS 1
|
|||
hPW .BS 1
|
||||
|
||||
.INB usr/src/bin/x.fileenum.g
|
||||
DS.END
|
||||
.ED
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/bin/ls.s
|
||||
|
|
|
@ -1,23 +1,21 @@
|
|||
NEW
|
||||
PREFIX
|
||||
AUTO 4,1
|
||||
AUTO 3,1
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF BIN/LSDEV
|
||||
.TF bin/lsdev
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/MLI.I
|
||||
.INB INC/A2OSX.I
|
||||
.INB INC/KERNEL.I
|
||||
.INB inc/macros.i
|
||||
.INB inc/mli.i
|
||||
.INB inc/a2osx.i
|
||||
.INB inc/kernel.i
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR ZPBIN
|
||||
ZS.START
|
||||
ZPFDPtr .BS 2
|
||||
Index .BS 1
|
||||
ZS.END
|
||||
.ED
|
||||
ZS.END .ED
|
||||
*--------------------------------------
|
||||
* File Header (16 Bytes)
|
||||
*--------------------------------------
|
||||
|
@ -113,7 +111,7 @@ DumpDev >LDYA L.MSG0
|
|||
bcs .9
|
||||
|
||||
.7 inc Index
|
||||
inc index
|
||||
inc Index
|
||||
|
||||
ldx Index
|
||||
cpx #K.DEV.MAX*2+1
|
||||
|
@ -223,7 +221,7 @@ DumpNod >LDYA L.MSG3
|
|||
tax
|
||||
>PUSHW L.FD.T,x
|
||||
|
||||
ldx index
|
||||
ldx Index
|
||||
lda Nod.Table.hPath-2,x
|
||||
>SYSCALL GetMemPtr
|
||||
>PUSHYA
|
||||
|
@ -231,9 +229,9 @@ DumpNod >LDYA L.MSG3
|
|||
|
||||
>SYSCALL PrintF
|
||||
|
||||
.7 inc index
|
||||
.7 inc Index
|
||||
|
||||
ldx index
|
||||
ldx Index
|
||||
cpx #K.NOD.MAX+2
|
||||
bne .1
|
||||
|
||||
|
@ -278,9 +276,8 @@ BLANK.DIB .DA #0 #S.DIB.S.BLOCK+S.DIB.S.WRITE+S.DIB.S.READ
|
|||
DS.START
|
||||
DEV.DIB .BS S.DIB
|
||||
DEV.SFLAGS .BS 9
|
||||
DS.END
|
||||
.ED
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/BIN/LSDEV.S
|
||||
SAVE usr/src/bin/lsdev.s
|
||||
ASM
|
||||
|
|
|
@ -5,8 +5,8 @@ NEW
|
|||
.OR $2000
|
||||
.TF bin/mem
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/A2OSX.I
|
||||
.INB inc/macros.i
|
||||
.INB inc/a2osx.i
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR ZPBIN
|
||||
|
@ -129,9 +129,8 @@ MSG.End .AZ "--------------------------------"
|
|||
.DUMMY
|
||||
.OR 0
|
||||
DS.START
|
||||
DS.END
|
||||
.ED
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/BIN/MEM.S
|
||||
SAVE usr/src/bin/mem.s
|
||||
ASM
|
||||
|
|
|
@ -56,7 +56,7 @@ CS.INIT clc
|
|||
CS.RUN lda #1
|
||||
>SYSCALL ArgV
|
||||
bcs .10
|
||||
>SYSCALL atoi
|
||||
>SYSCALL AToI
|
||||
bcs .90
|
||||
tax
|
||||
bne .90
|
||||
|
@ -149,7 +149,7 @@ CS.RUN.DUMP >SYSCALL GetMemPtr
|
|||
>SYSCALL PrintF
|
||||
|
||||
lda hSession
|
||||
>SYSCALL freemem
|
||||
>SYSCALL FreeMem
|
||||
|
||||
jmp CS.RUN.PrintArgs
|
||||
.9 rts
|
||||
|
|
|
@ -69,8 +69,8 @@ K.GetEnv.I ldy #S.PS.hENV FROM STDLIB:EXPAND
|
|||
tay
|
||||
lda S.Table.hSID-1,y
|
||||
|
||||
tay
|
||||
pla
|
||||
tay Y = hSID
|
||||
pla A = hENV
|
||||
|
||||
jmp K.SYSCALL.JMPX
|
||||
*--------------------------------------
|
||||
|
|
|
@ -8,7 +8,7 @@ ENVX.PutEnv.9 lda #E.SYN
|
|||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
ENVX.PutEnv tax save hEnv
|
||||
ENVX.PutEnv sta ENVX.hEnv
|
||||
sty ENVX.hSID
|
||||
|
||||
ldy #$ff
|
||||
|
@ -29,16 +29,16 @@ ENVX.PutEnv tax save hEnv
|
|||
adc TXTPTR+1
|
||||
sta FORPNT+1
|
||||
|
||||
txa get back hEnv
|
||||
ldy ENVX.hSID
|
||||
jsr ENVX.UnsetEnv.I
|
||||
bra ENVX.SetEnv.I
|
||||
*--------------------------------------
|
||||
ENVX.SetEnv jsr ENVX.UnsetEnv
|
||||
|
||||
ENVX.SetEnv.I
|
||||
.1 jsr ENVX.InitEnvP3
|
||||
|
||||
lda #1
|
||||
lda #1 \0
|
||||
sta ZPPtr4
|
||||
stz ZPPtr4+1 ZPPtr4 = ENVSIZE = 1
|
||||
stz ZPPtr4+1
|
||||
|
||||
.10 lda (ZPPtr3) End of ENV
|
||||
beq .15
|
||||
|
@ -66,29 +66,49 @@ ENVX.SetEnv jsr ENVX.UnsetEnv
|
|||
bne .19
|
||||
|
||||
jsr ENVX.NextEnvP4Y ZPPtr4 = ENVSIZE + VALUE
|
||||
lda ZPPtr4
|
||||
beq .20
|
||||
|
||||
inc ZPPtr4+1
|
||||
* lda ENVX.hEnv done by ENVX.InitEnvP3
|
||||
* jsr MEM.GetMemByID
|
||||
|
||||
.20 lda ENVX.hEnv
|
||||
jsr MEM.GetMemByID
|
||||
|
||||
lda ZPPtr4+1
|
||||
ldy #S.MEM.LEN+1
|
||||
cmp (ZPMemMgrSPtr),y
|
||||
ldy #S.MEM.LEN
|
||||
lda (ZPMemMgrSPtr),y
|
||||
cmp ZPPtr4
|
||||
iny
|
||||
lda (ZPMemMgrSPtr),y
|
||||
sbc ZPPtr4+1
|
||||
bcs .22 env is large enough
|
||||
|
||||
sta MEM.NewSize+1
|
||||
stz MEM.NewSize
|
||||
jsr K.realloc.I
|
||||
ldy #S.MEM.PTR
|
||||
lda (ZPMemMgrSPtr),y
|
||||
sta A1L
|
||||
|
||||
iny
|
||||
lda (ZPMemMgrSPtr),y
|
||||
sta A1L+1
|
||||
|
||||
iny #S.MEM.LEN
|
||||
lda (ZPMemMgrSPtr),y
|
||||
eor #$ff
|
||||
sta A4L
|
||||
|
||||
iny
|
||||
lda (ZPMemMgrSPtr),y
|
||||
eor #$ff
|
||||
sta A4L+1
|
||||
|
||||
>LDYA ZPPtr4
|
||||
jsr MEM.DupA1LnA4L
|
||||
bcs .9
|
||||
|
||||
stx ENVX.hEnv
|
||||
txa
|
||||
pha
|
||||
lda ENVX.hEnv
|
||||
jsr K.FreeMem
|
||||
pla
|
||||
sta ENVX.hEnv
|
||||
|
||||
sta CLRWRITEAUX
|
||||
ldy #S.PS.hENV
|
||||
lda (pPS),y
|
||||
sta (pPS),y
|
||||
sta SETWRITEAUX
|
||||
bra .1 Start over
|
||||
|
||||
|
@ -188,7 +208,7 @@ ENVX.GetEnv sta ENVX.hEnv
|
|||
ENVX.UnsetEnv sta ENVX.hEnv
|
||||
sty ENVX.hSID
|
||||
|
||||
jsr ENVX.FindEnvVar
|
||||
ENVX.UnsetEnv.I jsr ENVX.FindEnvVar
|
||||
bcs .8 not found, quit
|
||||
|
||||
jsr ENVX.DelVarP3 Ptr3 -> NAME=VALUE
|
||||
|
|
|
@ -24,7 +24,7 @@ MEM.NewSize .BS 2
|
|||
K.Realloc >PULLW MEM.NewSize
|
||||
|
||||
>PULLA Src hMem
|
||||
K.Realloc.I tax
|
||||
tax
|
||||
|
||||
jsr MEM.GetMemByID
|
||||
|
||||
|
@ -544,8 +544,8 @@ MEM.Dup jsr K.GetMemPtr
|
|||
eor #$ff
|
||||
ply
|
||||
|
||||
jsr K.GetMem
|
||||
bcs .9
|
||||
MEM.DupA1LnA4L jsr K.GetMem
|
||||
bcs MEM.Dup.RTS
|
||||
|
||||
>STYA A2L
|
||||
|
||||
|
@ -567,7 +567,6 @@ MEM.Dup jsr K.GetMemPtr
|
|||
|
||||
.8 txa
|
||||
* clc
|
||||
.9
|
||||
MEM.Dup.RTS rts
|
||||
*--------------------------------------
|
||||
MEM.CopyToMain clc
|
||||
|
|
Loading…
Reference in New Issue
Block a user