mirror of
https://github.com/A2osX/A2osX.git
synced 2025-04-06 02:40:10 +00:00
Kernel 0.94
This commit is contained in:
parent
2c19045368
commit
d665c03158
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -316,14 +316,12 @@ CSH.DIR.INCLUDE >STZ.G PathBuf
|
||||
>LDA.G hIncludeBuf
|
||||
bne .90
|
||||
|
||||
>PUSHW pData
|
||||
>PUSHBI O.RDONLY
|
||||
>PUSHBI S.FI.T.TXT
|
||||
>PUSHWZ Aux type
|
||||
>SYSCALL LoadTxtFile
|
||||
|
||||
|
||||
>LDYA pData
|
||||
jsr CS.RUN.LoadFile
|
||||
bcs .99
|
||||
|
||||
txa
|
||||
>STA.G hIncludeBuf
|
||||
|
||||
rts
|
||||
@ -456,11 +454,6 @@ CSH.AddSymbol >LDA.G CSH.hSymbols
|
||||
>PUSHWI ZPVarDef
|
||||
>PUSHWI 6
|
||||
>SYSCALL SListAddData
|
||||
* bcs .9
|
||||
|
||||
* lda #'*'
|
||||
* jsr DEBUG.VAR
|
||||
|
||||
.9 rts
|
||||
|
||||
.99 lda #CSH.E.OOM
|
||||
@ -528,8 +521,6 @@ CSH.SetVarValueFromStack
|
||||
cpy ZPVarSizeOf
|
||||
bne .1
|
||||
|
||||
* lda #'>'
|
||||
* jsr DEBUG.VAR
|
||||
clc
|
||||
rts
|
||||
|
||||
@ -929,20 +920,6 @@ CSH.GetVarSize txa
|
||||
lda #2
|
||||
rts
|
||||
*--------------------------------------
|
||||
DEBUG.VAR >SYSCALL PutChar
|
||||
>PUSHW L.MSG.DBGVAR
|
||||
>PUSHW ZPVarID
|
||||
>PUSHW ZPVarType
|
||||
>PUSHW ZPVarSizeOf
|
||||
>PUSHW ZPVarDataPtr
|
||||
ldy #3
|
||||
.1 >PUSHB (ZPVarDataPtr),y
|
||||
dey
|
||||
bpl .1
|
||||
>PUSHBI 12
|
||||
>SYSCALL PrintF
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/bin/csh.s.core
|
||||
LOAD usr/src/bin/csh.s
|
||||
|
@ -66,7 +66,6 @@ L.MSG.USAGE .DA MSG.USAGE
|
||||
L.MSG.ECHOCRLF .DA MSG.ECHOCRLF
|
||||
L.MSG.DEBUG .DA MSG.DEBUG
|
||||
L.MSG.ERR .DA MSG.ERR
|
||||
L.MSG.DBGVAR .DA MSG.DBGVAR
|
||||
L.ENV.INCLUDE .DA ENV.INCLUDE
|
||||
.INB usr/src/bin/csh.r
|
||||
.DA 0
|
||||
@ -150,18 +149,11 @@ CS.RUN.ARGS inc ArgIndex
|
||||
.4 >LDA.G hFileBuf
|
||||
bne .90
|
||||
|
||||
>PUSHW ZPPtr1
|
||||
>PUSHBI O.RDONLY
|
||||
>PUSHBI S.FI.T.TXT
|
||||
>PUSHWZ Aux type
|
||||
>SYSCALL LoadTxtFile
|
||||
>LDYA ZPPtr1
|
||||
jsr CS.RUN.LoadFile
|
||||
bcs .9
|
||||
|
||||
txa
|
||||
>STA.G hFileBuf
|
||||
>SYSCALL GetMemPtr
|
||||
>STYA ZPFileBuf
|
||||
>STYA ZPFileBufPtr
|
||||
bra CS.RUN.ARGS
|
||||
|
||||
.7 >LDA.G hFileBuf
|
||||
@ -178,6 +170,22 @@ CS.RUN.ARGS inc ArgIndex
|
||||
sec QUIT Process
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.LoadFile >PUSHYA
|
||||
>PUSHBI O.RDONLY
|
||||
>PUSHBI S.FI.T.TXT
|
||||
>PUSHWZ Aux type
|
||||
>SYSCALL LoadTxtFile
|
||||
bcs .9
|
||||
|
||||
phx
|
||||
txa
|
||||
>SYSCALL GetMemPtr
|
||||
>STYA ZPFileBuf
|
||||
>STYA ZPFileBufPtr
|
||||
pla
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
@ -309,7 +317,6 @@ MSG.USAGE .AS "Usage : CSH <option> file\r\n"
|
||||
MSG.ECHOCRLF .AZ "\r\n"
|
||||
MSG.DEBUG .AZ "pStack=%H"
|
||||
MSG.ERR .AZ "^\r\nLine #%D:"
|
||||
MSG.DBGVAR .AZ "K=%H, T=%H, S=%H, P=%H, V=%L\r\n"
|
||||
*--------------------------------------
|
||||
ENV.INCLUDE .AZ "INCLUDE"
|
||||
*--------------------------------------
|
||||
|
@ -39,9 +39,13 @@ CS.START cld
|
||||
*--------------------------------------
|
||||
.1 .DA CS.INIT
|
||||
.DA CS.RUN
|
||||
.DA CS.DOEVENT
|
||||
.DA CS.DOEVENT
|
||||
.DA CS.QUIT
|
||||
L.MSG.CTRLR .DA MSG.CTRLR
|
||||
L.MSG.CTRLR .DA MSG.CTRLR
|
||||
.DO INITDDBG=1
|
||||
L.MSG.OK .DA MSG.OK
|
||||
L.MSG.KO .DA MSG.KO
|
||||
.FIN
|
||||
L.ETCINIT .DA ETCINIT
|
||||
L.CMDS .DA BINSH
|
||||
.DA BINMEM
|
||||
@ -64,7 +68,7 @@ CS.RUN ldy #S.PS.PID
|
||||
bcs .99
|
||||
tay
|
||||
bne .1
|
||||
|
||||
|
||||
>SYSCALL GetChar
|
||||
bcs .99
|
||||
|
||||
@ -73,32 +77,32 @@ CS.RUN ldy #S.PS.PID
|
||||
|
||||
>LDYA L.MSG.CTRLR
|
||||
>SYSCALL PutS
|
||||
|
||||
|
||||
ldx #0
|
||||
jsr CS.RUN.EXEC.X
|
||||
|
||||
|
||||
>SLEEP
|
||||
|
||||
|
||||
.1 jsr CS.RUN.ETCINIT
|
||||
bcs .99
|
||||
|
||||
|
||||
.2 >SYSCALL GetChar
|
||||
bcs .99
|
||||
|
||||
|
||||
cmp #C.CR Ctrl.M
|
||||
bne .3
|
||||
|
||||
|
||||
ldx #2
|
||||
jsr CS.RUN.EXEC.X
|
||||
bra .2
|
||||
|
||||
|
||||
.3 cmp #16 Ctrl.P
|
||||
bne .4
|
||||
|
||||
|
||||
ldx #4
|
||||
jsr CS.RUN.EXEC.X
|
||||
bra .2
|
||||
|
||||
|
||||
.4 cmp #12 Ctrl.L
|
||||
bne .5
|
||||
|
||||
@ -107,14 +111,14 @@ CS.RUN ldy #S.PS.PID
|
||||
|
||||
.5 cmp #4 Ctrl.D
|
||||
bne .2
|
||||
|
||||
|
||||
ldx #8
|
||||
jsr CS.RUN.EXEC.X
|
||||
bcs .2
|
||||
|
||||
|
||||
sec
|
||||
rts
|
||||
|
||||
|
||||
.9 lda #E.SYN
|
||||
sec
|
||||
.99 rts
|
||||
@ -123,55 +127,73 @@ CS.RUN.ETCINIT >LDYAI 256
|
||||
>SYSCALL GetMem
|
||||
>STYA BufPtr
|
||||
stx hBuf
|
||||
|
||||
|
||||
>PUSHW L.ETCINIT
|
||||
>PUSHBI O.RDONLY+O.TEXT
|
||||
>PUSHBI S.FI.T.TXT
|
||||
>PUSHWZ
|
||||
>SYSCALL FOpen
|
||||
bcs .90
|
||||
|
||||
sta hFile
|
||||
|
||||
bcc .10
|
||||
|
||||
pha
|
||||
jsr .81
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
|
||||
.10 sta hFile
|
||||
|
||||
.1 >PUSHWI 256
|
||||
>PUSHW BufPtr
|
||||
lda hFile
|
||||
>SYSCALL FGetS
|
||||
bcs .80
|
||||
|
||||
|
||||
lda (BufPtr)
|
||||
cmp #'#'
|
||||
beq .1
|
||||
|
||||
|
||||
.DO INITDDBG=1
|
||||
>LDYA BufPtr
|
||||
>SYSCALL PutS
|
||||
>PUSHW BufPtr
|
||||
>PUSHBI 0
|
||||
>SYSCALL PrintF
|
||||
.FIN
|
||||
|
||||
|
||||
>PUSHW BufPtr
|
||||
>PUSHBI S.PS.F.NOHUP+S.PS.F.HOLD
|
||||
>SYSCALL ExecL
|
||||
.DO INITDDBG=1
|
||||
bcs .2
|
||||
|
||||
>LDYA L.MSG.OK
|
||||
>SYSCALL PutS
|
||||
|
||||
.FIN
|
||||
>SLEEP
|
||||
bra .1
|
||||
|
||||
.90 pha
|
||||
jsr .81
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
|
||||
.DO INITDDBG=1
|
||||
|
||||
.2 tax
|
||||
>PUSHW L.MSG.KO
|
||||
txa
|
||||
>PUSHA
|
||||
>PUSHBI 1
|
||||
>SYSCALL PrintF
|
||||
jmp .1
|
||||
.FIN
|
||||
|
||||
.80 lda hFile
|
||||
>SYSCALL FClose
|
||||
|
||||
|
||||
.81 lda hBuf
|
||||
>SYSCALL FreeMem
|
||||
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.EXEC.X >PUSHW L.CMDS,x
|
||||
>PUSHBI S.PS.F.HOLD
|
||||
>SYSCALL ExecL
|
||||
rts
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT sec
|
||||
rts
|
||||
@ -186,6 +208,10 @@ CS.QUIT lda #MLIQUIT
|
||||
CS.END
|
||||
*--------------------------------------
|
||||
MSG.CTRLR .AZ "INITD:Entering ROOT mode..."
|
||||
.DO INITDDBG=1
|
||||
MSG.OK .AZ " [OK]"
|
||||
MSG.KO .AZ " [%h]\r\n"
|
||||
.FIN
|
||||
ETCINIT .AZ "${ROOT}etc/init"
|
||||
BINSH .AZ "${ROOT}bin/sh"
|
||||
BINMEM .AZ "${ROOT}bin/mem"
|
||||
|
Loading…
x
Reference in New Issue
Block a user