mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-29 17:50:18 +00:00
136 lines
1.8 KiB
Plaintext
136 lines
1.8 KiB
Plaintext
|
NEW
|
|||
|
AUTO 3,1
|
|||
|
.LIST OFF
|
|||
|
*--------------------------------------
|
|||
|
CSH.DIR jsr CSH.GetNextCharNB
|
|||
|
bcs .99
|
|||
|
|
|||
|
cmp #'!' #!/bin/csh
|
|||
|
bne .1
|
|||
|
|
|||
|
jmp CSH.SkipLine
|
|||
|
|
|||
|
.1 >LDYA L.CSH.DIRS
|
|||
|
jsr CSH.LookupID
|
|||
|
bcs .91
|
|||
|
|
|||
|
jmp (J.CSH.DIRS,x)
|
|||
|
|
|||
|
.91 lda #CSH.E.INVDIR
|
|||
|
sec
|
|||
|
.99 rts
|
|||
|
*--------------------------------------
|
|||
|
CSH.DIR.DEFINE jsr CSH.CheckSpace
|
|||
|
bcs .99
|
|||
|
|
|||
|
jsr CSH.IsLetter
|
|||
|
bcs .90
|
|||
|
|
|||
|
>LDA.G CSH.hDefines
|
|||
|
jsr CSH.NewKey
|
|||
|
bcs .99
|
|||
|
|
|||
|
>STYA ZPVarID
|
|||
|
|
|||
|
jsr CSH.CheckSpace
|
|||
|
bcs .99
|
|||
|
|
|||
|
ldy #$ff
|
|||
|
|
|||
|
.1 iny
|
|||
|
lda (ZPInputBufPtr),y
|
|||
|
beq .2
|
|||
|
|
|||
|
cmp #C.CR
|
|||
|
bne .1
|
|||
|
|
|||
|
dey
|
|||
|
|
|||
|
.2 iny
|
|||
|
|
|||
|
phy
|
|||
|
|
|||
|
>PUSHB.G CSH.hDefines
|
|||
|
>PUSHW ZPVarID
|
|||
|
>PUSHW ZPInputBufPtr
|
|||
|
|
|||
|
ply
|
|||
|
lda #0
|
|||
|
>PUSHYA DataLen
|
|||
|
|
|||
|
>SYSCALL SListAddData
|
|||
|
bcs .99
|
|||
|
|
|||
|
jmp CSH.SkipLine
|
|||
|
|
|||
|
.90 lda #CSH.E.SYNTAX
|
|||
|
sec
|
|||
|
.99 rts
|
|||
|
*--------------------------------------
|
|||
|
CSH.DIR.INCLUDE >STZ.G PathBuf
|
|||
|
|
|||
|
jsr CSH.CheckSpace
|
|||
|
bcs .99
|
|||
|
|
|||
|
cmp #'"'
|
|||
|
beq .1
|
|||
|
|
|||
|
cmp #'<'
|
|||
|
bne .90
|
|||
|
|
|||
|
>PUSHW L.ENV.INCLUDE
|
|||
|
>PUSHEA.G PathBuf
|
|||
|
>SYSCALL GetEnv
|
|||
|
|
|||
|
lda #'>'
|
|||
|
|
|||
|
.1 sta ArgIndex
|
|||
|
|
|||
|
ldy #PathBuf
|
|||
|
|
|||
|
.2 lda (pData),y
|
|||
|
beq .3
|
|||
|
|
|||
|
iny
|
|||
|
bra .2
|
|||
|
|
|||
|
.3 jsr CSH.GetNextChar
|
|||
|
beq .90
|
|||
|
|
|||
|
cmp ArgIndex
|
|||
|
beq .8
|
|||
|
|
|||
|
sta (pData),y
|
|||
|
iny
|
|||
|
cpy #64
|
|||
|
bne .3
|
|||
|
|
|||
|
.90 lda #CSH.E.SYNTAX
|
|||
|
sec
|
|||
|
.99 rts
|
|||
|
|
|||
|
.8 jsr CSH.GetNextChar skip " or >
|
|||
|
|
|||
|
lda hInclude
|
|||
|
bne .90
|
|||
|
|
|||
|
lda hDefine
|
|||
|
bne .90
|
|||
|
|
|||
|
>LDYA ZPInputBufPtr
|
|||
|
>STYA.G CSH.SaveInclude
|
|||
|
|
|||
|
>LDYA pData
|
|||
|
jsr CS.RUN.LoadFile
|
|||
|
bcs .99
|
|||
|
|
|||
|
stx hInclude
|
|||
|
>STYA ZPInputBufPtr
|
|||
|
|
|||
|
rts
|
|||
|
*--------------------------------------
|
|||
|
MAN
|
|||
|
SAVE usr/src/bin/csh.s.dir
|
|||
|
LOAD usr/src/bin/csh.s
|
|||
|
ASM
|