Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-08-12 21:31:36 +02:00
parent 70b226c525
commit eb4adc065f
9 changed files with 118 additions and 103 deletions

Binary file not shown.

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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
*--------------------------------------

View File

@ -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

View File

@ -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