mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-19 07:30:41 +00:00
A2osX-1.00 PREVIEW : bugfix in BASICFX(cd),CUT
CMD Added XARGS,SED,TERM
This commit is contained in:
parent
414ee8b8d9
commit
5678e38be0
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -715,7 +715,7 @@ LA80B lda GP.XCNUM
|
||||
cmp #25 PREFIX
|
||||
beq .8
|
||||
|
||||
cmp #34 CD
|
||||
cmp #36 CD
|
||||
beq .8
|
||||
|
||||
lda GP.AllowedBITS+1
|
||||
@ -1282,7 +1282,6 @@ BS.KW.UNLOCK1 sta GP.FIACCESS
|
||||
*--------------------------------------
|
||||
BS.KW.PREFIX lda GP.FoundBITS+1
|
||||
and #CMDBITS1.SD
|
||||
|
||||
bne BS.SETPREFIX
|
||||
|
||||
lda GP.FoundBITS
|
||||
|
140
BIN/CUT.S.txt
140
BIN/CUT.S.txt
@ -16,14 +16,13 @@ ZS.START
|
||||
ZPPtr1 .BS 2
|
||||
ZPBuf .BS 2
|
||||
ZPBufPtr .BS 2
|
||||
pFILEtoClose .BS 2
|
||||
pFILE .BS 2
|
||||
|
||||
ArgIndex .BS 1
|
||||
ArgLine .BS 1
|
||||
|
||||
OptionIdx .BS 1
|
||||
FieldNum .BS 1
|
||||
|
||||
FieldNum .BS 1
|
||||
StartChar .BS 1
|
||||
EndChar .BS 1
|
||||
Separator .BS 1
|
||||
@ -51,12 +50,22 @@ CS.START cld
|
||||
.DA CS.QUIT
|
||||
L.MSG.USAGE .DA MSG.USAGE
|
||||
L.MSG.CRLF .DA MSG.CRLF
|
||||
L.MSG.SPACE .DA MSG.SPACE
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
CS.INIT clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN lda #C.SPACE
|
||||
CS.RUN >LDYAI 256
|
||||
>LIBC Malloc
|
||||
bcs .99
|
||||
|
||||
>STYA ZPBuf
|
||||
|
||||
lda #0
|
||||
sta (ZPBuf)
|
||||
|
||||
lda #C.SPACE
|
||||
sta Separator
|
||||
|
||||
.1 jsr CS.RUN.NextArg
|
||||
@ -64,40 +73,38 @@ CS.RUN lda #C.SPACE
|
||||
|
||||
lda (ZPPtr1)
|
||||
cmp #'-'
|
||||
beq .2
|
||||
bne .2
|
||||
|
||||
lda ArgIndex
|
||||
sta ArgLine
|
||||
bra .1
|
||||
|
||||
.2 jsr CS.RUN.CheckOp
|
||||
jsr CS.RUN.CheckOp
|
||||
bcc .1 scan for any other args
|
||||
|
||||
.98 pha
|
||||
>LDYA L.MSG.USAGE
|
||||
.98 >LDYA L.MSG.USAGE
|
||||
>LIBC PutS
|
||||
pla
|
||||
lda #E.SYN
|
||||
sec
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
.8 >LDYAI 256
|
||||
>LIBC Malloc
|
||||
bcs .99
|
||||
|
||||
>STYA ZPBuf
|
||||
>STYA ZPBufPtr
|
||||
|
||||
lda ArgLine
|
||||
beq .80
|
||||
.2 lda (ZPBuf)
|
||||
beq .3
|
||||
|
||||
>SS
|
||||
>PUSHW ZPBufPtr
|
||||
lda ArgLine
|
||||
>LIBC ArgV
|
||||
>PUSHYA
|
||||
>LIBC StrCpy
|
||||
>PUSHW ZPBuf
|
||||
>PUSHW L.MSG.SPACE
|
||||
>LIBC StrCat
|
||||
>SR
|
||||
|
||||
.3 >SS
|
||||
>PUSHW ZPBuf
|
||||
>PUSHW ZPPtr1
|
||||
>LIBC StrCat
|
||||
>SR
|
||||
bcc .1
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
.8 lda (ZPBuf)
|
||||
beq .80
|
||||
|
||||
jsr CS.RUN.OUT
|
||||
bcs .99
|
||||
|
||||
@ -105,18 +112,17 @@ CS.RUN lda #C.SPACE
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
.80 jsr CS.RUN.CheckPipe
|
||||
.80 jsr X.IsPipeIn
|
||||
bcs .98
|
||||
|
||||
>STYA pFILE
|
||||
*--------------------------------------
|
||||
CS.RUN.LOOP >SLEEP
|
||||
|
||||
>LDYA ZPBuf
|
||||
>STYA ZPBufPtr
|
||||
|
||||
>SS
|
||||
>PUSHW ZPBuf
|
||||
>PUSHWI 256
|
||||
>PUSHW pFILEtoClose
|
||||
>PUSHW pFILE
|
||||
>LIBC FGetS
|
||||
>SR
|
||||
bcs .8
|
||||
@ -128,13 +134,17 @@ CS.RUN.LOOP >SLEEP
|
||||
bcc CS.RUN.LOOP
|
||||
|
||||
.8 cmp #MLI.E.EOF
|
||||
bne .90
|
||||
bne .9
|
||||
|
||||
lda #0
|
||||
.90 sec
|
||||
.9 rts
|
||||
|
||||
.9 sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.OUT ldx FieldNum
|
||||
CS.RUN.OUT >LDYA ZPBuf
|
||||
>STYA ZPBufPtr
|
||||
|
||||
ldx FieldNum
|
||||
beq CS.RUN.OUT.MN
|
||||
|
||||
ldy #$ff
|
||||
@ -155,6 +165,7 @@ CS.RUN.OUT ldx FieldNum
|
||||
|
||||
eor Separator
|
||||
bne .2
|
||||
|
||||
bra .1
|
||||
|
||||
.4 jsr CS.RUN.AddYToBufPtr
|
||||
@ -213,8 +224,10 @@ CS.RUN.OUT.MN ldy #0
|
||||
|
||||
.8 ldy StartChar
|
||||
beq .80
|
||||
|
||||
dey
|
||||
beq .80
|
||||
|
||||
jsr CS.RUN.AddYToBufPtr
|
||||
|
||||
.80 >LDYA ZPBufPtr
|
||||
@ -222,15 +235,6 @@ CS.RUN.OUT.MN ldy #0
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.NextArg inc ArgIndex
|
||||
lda ArgIndex
|
||||
>LIBC ArgV
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr1
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.CheckOp ldy #1
|
||||
lda (ZPPtr1),y
|
||||
|
||||
@ -245,7 +249,7 @@ CS.RUN.CheckOp ldy #1
|
||||
.98 lda #E.SYN
|
||||
sec
|
||||
.99 rts
|
||||
|
||||
|
||||
.3 txa
|
||||
lsr
|
||||
beq .98 -H
|
||||
@ -274,45 +278,18 @@ CS.RUN.CheckOp ldy #1
|
||||
tya
|
||||
ldx OptionIdx
|
||||
sta FieldNum-1,x
|
||||
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.CheckPipe
|
||||
ldy #S.PS.pStdIn
|
||||
jsr A2osX.GetPSy
|
||||
pha
|
||||
iny
|
||||
jsr A2osX.GetPSy
|
||||
ply
|
||||
CS.RUN.NextArg inc ArgIndex
|
||||
lda ArgIndex
|
||||
>LIBC ArgV
|
||||
bcs .9
|
||||
|
||||
>STYA ZPPtr1
|
||||
|
||||
>LIBC FileNo
|
||||
bcs .99
|
||||
|
||||
>SS
|
||||
>PUSHYA
|
||||
>PUSHEA.G STATBUF
|
||||
>LIBC FStat
|
||||
>SR
|
||||
bcs .99
|
||||
|
||||
>LDA.G STATBUF+S.STAT.MODE+1
|
||||
and #$F0
|
||||
|
||||
cmp /S.STAT.MODE.FIFO
|
||||
bne .98
|
||||
|
||||
>LDYA ZPPtr1
|
||||
>STYA pFILEtoClose
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
.98 lda #E.SYN
|
||||
sec
|
||||
.99 rts
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.AddYToBufPtr
|
||||
tya
|
||||
@ -324,7 +301,7 @@ CS.RUN.AddYToBufPtr
|
||||
inc ZPBufPtr+1
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
CS.QUIT >LDYA pFILEtoClose
|
||||
CS.QUIT >LDYA pFILE
|
||||
beq .1
|
||||
|
||||
>LIBC FClose Close the pipe
|
||||
@ -339,6 +316,8 @@ CS.QUIT >LDYA pFILEtoClose
|
||||
*--------------------------------------
|
||||
CS.SIG sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
.INB usr/src/shared/x.ispipein.s
|
||||
*--------------------------------------
|
||||
CS.END .EQ *
|
||||
*--------------------------------------
|
||||
@ -352,6 +331,7 @@ MSG.USAGE .CS 'Usage : CUT "line of text"\r\n'
|
||||
.CS " -N nn : Output Ending at nn\r\n"
|
||||
.CS " -S ch : Change default SPACE separator to 'ch'"
|
||||
MSG.CRLF .CZ "\r\n"
|
||||
MSG.SPACE .CZ " "
|
||||
*--------------------------------------
|
||||
ID.END .EQ *
|
||||
*--------------------------------------
|
||||
|
@ -56,7 +56,7 @@ CS.START cld
|
||||
*--------------------------------------
|
||||
.1 .DA CS.INIT
|
||||
.DA CS.RUN
|
||||
.DA CS.DOEVENT
|
||||
.DA CS.SIG
|
||||
.DA CS.QUIT
|
||||
L.MSG.USAGE .DA MSG.USAGE
|
||||
L.MSG.Init .DA MSG.Init
|
||||
@ -125,32 +125,9 @@ CS.RUN inc ArgCount
|
||||
.8 lda pFile+1
|
||||
bne .80
|
||||
|
||||
ldy #S.PS.pStdIn
|
||||
jsr A2osX.GetPSy
|
||||
pha
|
||||
iny
|
||||
jsr A2osX.GetPSy
|
||||
ply
|
||||
|
||||
>STYA ZPPtr1
|
||||
|
||||
>LIBC FileNo
|
||||
bcs .9
|
||||
|
||||
>SS
|
||||
>PUSHYA
|
||||
>PUSHEA.G STATBUF
|
||||
>LIBC FStat
|
||||
>SR
|
||||
bcs .9
|
||||
jsr X.IsPipeIn
|
||||
bcs .99
|
||||
|
||||
>LDA.G STATBUF+S.STAT.MODE+1
|
||||
and #$F0
|
||||
|
||||
cmp /S.STAT.MODE.FIFO
|
||||
bne .71
|
||||
|
||||
>LDYA ZPPtr1
|
||||
>STYA pFile
|
||||
|
||||
.80 >LDYAI 256
|
||||
@ -324,8 +301,10 @@ CS.QUIT >LDYA ZPBufPtr
|
||||
CS.INIT clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT sec
|
||||
CS.SIG sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
.INB usr/src/shared/x.ispipein.s
|
||||
*--------------------------------------
|
||||
CS.END .EQ *
|
||||
*--------------------------------------
|
||||
@ -345,7 +324,6 @@ ID.END .EQ *
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
|
||||
STATBUF .BS S.STAT
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
|
@ -18,8 +18,7 @@ ArgPattern .BS 1
|
||||
ZPPtr1 .BS 2
|
||||
ZPPatternPtr .BS 2
|
||||
ZPBufPtr .BS 2
|
||||
hFile .BS 1
|
||||
hBuf .BS 1
|
||||
pFile .BS 2
|
||||
LineNum .BS 2
|
||||
char .BS 1
|
||||
delimiter .BS 1
|
||||
@ -33,40 +32,36 @@ ZS.END .ED
|
||||
*--------------------------------------
|
||||
CS.START cld
|
||||
jmp (.1,x)
|
||||
.DA #$61 6502,Level 1 (65c02)
|
||||
.DA #1 BIN Layout Version 1
|
||||
.DA #0 S.PS.F.EVENT
|
||||
.DA #$61 6502,Level 1 (65c02)
|
||||
.DA #2 BIN Layout Version 2
|
||||
.DA #0 S.PS.F.EVENT
|
||||
.DA #0
|
||||
.DA CS.END-CS.START Code Size (without Constants)
|
||||
.DA DS.END-DS.START Data Segment Size
|
||||
.DA #16 Stack Size
|
||||
.DA #ZS.END-ZS.START Zero Page Size
|
||||
.DA 0
|
||||
.DA CS.END
|
||||
.DA ID.END
|
||||
.DA DS.END
|
||||
.DA #32 Stack Size
|
||||
.DA #ZS.END-ZS.START Zero Page Size
|
||||
*--------------------------------------
|
||||
* Relocation Table
|
||||
*--------------------------------------
|
||||
.1 .DA CS.INIT
|
||||
.DA CS.RUN
|
||||
.DA CS.DOEVENT
|
||||
.DA CS.SIG
|
||||
.DA CS.QUIT
|
||||
L.MSG.USAGE .DA MSG.USAGE
|
||||
L.MSG.CRLF .DA MSG.CRLF
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
CS.INIT clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN jsr CS.RUN.CheckArgs
|
||||
bcs CS.RUN.LOOP.RTS
|
||||
bcs .99
|
||||
|
||||
stz LineNum
|
||||
stz LineNum+1
|
||||
.1 >SLEEP
|
||||
|
||||
CS.RUN.LOOP >SLEEP
|
||||
|
||||
>PUSHB hFile
|
||||
>PUSHW ZPBufPtr
|
||||
>PUSHWI 256
|
||||
>PUSHW pFile
|
||||
>LIBC FGetS
|
||||
bcs .9
|
||||
|
||||
@ -77,16 +72,17 @@ CS.RUN.LOOP >SLEEP
|
||||
|
||||
.2 jsr CS.RUN.PRINT
|
||||
|
||||
bcc CS.RUN.LOOP
|
||||
bcc .1
|
||||
|
||||
rts
|
||||
|
||||
.9 cmp #MLI.E.EOF
|
||||
bne .99
|
||||
bne .98
|
||||
|
||||
lda #0 Exit with no Error
|
||||
|
||||
.99 sec
|
||||
CS.RUN.LOOP.RTS rts
|
||||
.98 sec
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.CheckArgs
|
||||
jsr CS.RUN.NextArg
|
||||
@ -105,16 +101,17 @@ CS.RUN.CheckArgs
|
||||
>STYA ZPPatternPtr
|
||||
jsr CS.RUN.SEDParser
|
||||
bcs .97
|
||||
|
||||
bra CS.RUN.CheckArgs
|
||||
|
||||
.11 lda hFile
|
||||
.11 lda pFile+1
|
||||
bne .97
|
||||
|
||||
>LDYA ZPPtr1
|
||||
jsr CS.RUN.OPEN
|
||||
bcs .9
|
||||
|
||||
sta hFile
|
||||
>STYA pFile
|
||||
bra CS.RUN.CheckArgs
|
||||
|
||||
.1 ldy #1
|
||||
@ -139,30 +136,19 @@ CS.RUN.CheckArgs
|
||||
sta bIgnoreCase-1,x
|
||||
bra CS.RUN.CheckArgs
|
||||
|
||||
.4 lda hFile
|
||||
.4 lda pFile+1
|
||||
bne .80
|
||||
|
||||
ldy #S.PS.hStdIn
|
||||
lda (pPS),y
|
||||
tay
|
||||
ldx FILEs.hFD-1,y
|
||||
lda FDs.pLO-1,x
|
||||
sta ZPPtr1
|
||||
lda FDs.pHI-1,x
|
||||
sta ZPPtr1+1
|
||||
jsr X.IsPipeIn
|
||||
bcs .97
|
||||
|
||||
lda (ZPPtr1)
|
||||
cmp #S.FD.T.PIPE
|
||||
bne .97
|
||||
|
||||
sty hFile
|
||||
>STYA pFile
|
||||
|
||||
.80 >LDYAI 256
|
||||
>LIBC GetMem
|
||||
>LIBC Malloc
|
||||
bcs .9
|
||||
|
||||
>STYA ZPBufPtr
|
||||
stx hBuf
|
||||
|
||||
* clc
|
||||
|
||||
@ -171,9 +157,8 @@ CS.RUN.CheckArgs
|
||||
.97 lda #E.SYN
|
||||
|
||||
.98 pha
|
||||
>PUSHW L.MSG.USAGE
|
||||
>PUSHBI 0
|
||||
>LIBC PrintF
|
||||
>LDYA L.MSG.USAGE
|
||||
>LIBC PutS
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
@ -242,7 +227,7 @@ CS.RUN.OPEN >PUSHYA
|
||||
>LIBC FOpen
|
||||
bcs .9
|
||||
|
||||
sta hFile
|
||||
>STYA pFile
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
@ -346,35 +331,38 @@ CS.RUN.toUpper bit bIgnoreCase
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.QUIT lda hFile
|
||||
CS.QUIT >LDYA pFile
|
||||
beq .1
|
||||
|
||||
>LIBC FClose
|
||||
|
||||
.1 lda hBuf
|
||||
.1 >LDYA ZPBufPtr
|
||||
beq .8
|
||||
|
||||
>LIBC FreeMem
|
||||
>LIBC Free
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT sec
|
||||
rts
|
||||
CS.SIG sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
.INB usr/src/shared/x.ispipein.s
|
||||
*--------------------------------------
|
||||
CS.END .EQ *
|
||||
*--------------------------------------
|
||||
OptionList .AS "HhIi"
|
||||
OptionList.Cnt .EQ *-OptionList
|
||||
*--------------------------------------
|
||||
MSG.USAGE .CS "Usage : SED [-I] s/pattern/replacement/ <File>\r\n"
|
||||
.CS " or : CMD|SED [-I] s/pattern/replacement/\r\n"
|
||||
.CS " -I : Ignore Case"
|
||||
MSG.CRLF .CZ "\r\n"
|
||||
.CZ " -I : Ignore Case"
|
||||
*--------------------------------------
|
||||
ID.END .EQ *
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
DS.START
|
||||
STATBUF .BS S.STAT
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
MAN
|
||||
|
117
BIN/XARGS.S.txt
117
BIN/XARGS.S.txt
@ -7,7 +7,6 @@ NEW
|
||||
*--------------------------------------
|
||||
.INB inc/macros.i
|
||||
.INB inc/a2osx.i
|
||||
.INB inc/kernel.i
|
||||
.INB inc/mli.i
|
||||
.INB inc/mli.e.i
|
||||
*--------------------------------------
|
||||
@ -18,11 +17,11 @@ ArgIndex .BS 1
|
||||
ArgPattern .BS 1
|
||||
ZPPtr1 .BS 2
|
||||
ZPCommandPtr .BS 2
|
||||
ZPBufPtr .BS 2
|
||||
ZPLineBuf .BS 2
|
||||
ZPCmdBuf .BS 2
|
||||
hFile .BS 1
|
||||
hBuf .BS 1
|
||||
hCmdBuf .BS 1
|
||||
|
||||
pFile .BS 2
|
||||
|
||||
DashArgs .BS 1
|
||||
|
||||
ZS.END .ED
|
||||
@ -32,20 +31,20 @@ ZS.END .ED
|
||||
CS.START cld
|
||||
jmp (.1,x)
|
||||
.DA #$61 6502,Level 1 (65c02)
|
||||
.DA #1 BIN Layout Version 1
|
||||
.DA #0 S.PS.F.EVENT
|
||||
.DA #2 BIN Layout Version 2
|
||||
.DA #0
|
||||
.DA CS.END-CS.START Code Size (without Constants)
|
||||
.DA DS.END-DS.START Data Segment Size
|
||||
.DA #0
|
||||
.DA CS.END
|
||||
.DA ID.END
|
||||
.DA DS.END
|
||||
.DA #16 Stack Size
|
||||
.DA #ZS.END-ZS.START Zero Page Size
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
* Relocation Table
|
||||
*--------------------------------------
|
||||
.1 .DA CS.INIT
|
||||
.DA CS.RUN
|
||||
.DA CS.DOEVENT
|
||||
.DA CS.SIG
|
||||
.DA CS.QUIT
|
||||
L.MSG.USAGE .DA MSG.USAGE
|
||||
L.MSG.CRLF .DA MSG.CRLF
|
||||
@ -60,10 +59,12 @@ CS.RUN jsr CS.RUN.CheckArgs
|
||||
|
||||
CS.RUN.LOOP >SLEEP
|
||||
|
||||
>PUSHB hFile
|
||||
>PUSHW ZPBufPtr
|
||||
>SS
|
||||
>PUSHW ZPLineBuf
|
||||
>PUSHWI 256
|
||||
>PUSHW pFile
|
||||
>LIBC FGetS
|
||||
>SR
|
||||
bcs .9
|
||||
|
||||
.2 jsr CS.RUN.EXEC
|
||||
@ -96,17 +97,17 @@ CS.RUN.CheckArgs
|
||||
>STYA ZPCommandPtr
|
||||
bra CS.RUN.CheckArgs
|
||||
|
||||
.11 lda hFile
|
||||
.11 lda pFile+1
|
||||
bne .97
|
||||
|
||||
>LDYA ZPPtr1
|
||||
jsr CS.RUN.OPEN
|
||||
bcs .9
|
||||
|
||||
sta hFile
|
||||
>STYA pFile
|
||||
bra CS.RUN.CheckArgs
|
||||
*--------------------------------------
|
||||
.1 ldy #1
|
||||
.1 ldy #1
|
||||
lda (ZPPtr1),y
|
||||
|
||||
ldx #OptionList.Cnt-1
|
||||
@ -125,40 +126,28 @@ CS.RUN.CheckArgs
|
||||
|
||||
tax
|
||||
lda #$80
|
||||
sta DashArgs-1,x
|
||||
sta DashArgs-1,x
|
||||
bra CS.RUN.CheckArgs
|
||||
*--------------------------------------
|
||||
.4 lda hFile
|
||||
.4 lda pFile+1
|
||||
bne .80
|
||||
|
||||
ldy #S.PS.hStdIn
|
||||
lda (pPS),y
|
||||
tay
|
||||
ldx FILEs.hFD-1,y
|
||||
lda FDs.pLO-1,x
|
||||
sta ZPPtr1
|
||||
lda FDs.pHI-1,x
|
||||
sta ZPPtr1+1
|
||||
jsr X.IsPipeIn
|
||||
bcs .97
|
||||
|
||||
>STYA pFile
|
||||
|
||||
lda (ZPPtr1)
|
||||
cmp #S.FD.T.PIPE
|
||||
bne .97
|
||||
|
||||
sty hFile
|
||||
|
||||
.80 >LDYAI 256
|
||||
>LIBC GetMem
|
||||
>LIBC Malloc
|
||||
bcs .9
|
||||
|
||||
>STYA ZPBufPtr
|
||||
stx hBuf
|
||||
>STYA ZPLineBuf
|
||||
|
||||
>LDYAI 256
|
||||
>LIBC GetMem
|
||||
>LIBC Malloc
|
||||
bcs .9
|
||||
|
||||
>STYA ZPCmdBuf
|
||||
stx hCmdBuf
|
||||
|
||||
* clc
|
||||
|
||||
@ -182,71 +171,81 @@ CS.RUN.NextArg inc ArgIndex
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.OPEN >PUSHYA
|
||||
CS.RUN.OPEN >SS
|
||||
>PUSHYA
|
||||
>PUSHBI O.RDONLY+O.TEXT
|
||||
>PUSHBI S.FI.T.TXT
|
||||
>PUSHWZ Aux type
|
||||
>LIBC FOpen
|
||||
>SR
|
||||
bcs .9
|
||||
|
||||
sta hFile
|
||||
>STYA pFile
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN.EXEC >PUSHW ZPCmdBuf
|
||||
CS.RUN.EXEC >SS
|
||||
>PUSHW ZPCmdBuf
|
||||
>PUSHW ZPCommandPtr
|
||||
>LIBC StrCpy
|
||||
>SR
|
||||
|
||||
>SS
|
||||
>PUSHW ZPCmdBuf
|
||||
>PUSHW L.CMD.SPC
|
||||
>LIBC StrCat
|
||||
>SR
|
||||
|
||||
>SS
|
||||
>PUSHW ZPCmdBuf
|
||||
>LDYA ZPBufPtr
|
||||
>PUSHYA
|
||||
>PUSHW ZPLineBuf
|
||||
>LIBC StrCat
|
||||
>SR
|
||||
|
||||
* >LDYA ZPCmdBuf
|
||||
* >LIBC PutS
|
||||
|
||||
>SS
|
||||
>PUSHW ZPCmdBuf
|
||||
>PUSHBI S.PS.F.HOLD
|
||||
|
||||
>LIBC ExecL
|
||||
>SR
|
||||
bcs .9
|
||||
|
||||
|
||||
>SLEEP
|
||||
|
||||
ldy #S.PS.RC
|
||||
lda (pPS),y
|
||||
|
||||
ldy #S.PS.ERRNO
|
||||
jsr A2osX.GetPSy
|
||||
beq .9
|
||||
|
||||
|
||||
sec
|
||||
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.QUIT lda hFile
|
||||
CS.QUIT >LDYA pFile
|
||||
beq .1
|
||||
|
||||
>LIBC FClose
|
||||
|
||||
.1 lda hBuf
|
||||
.1 >LDYA ZPLineBuf
|
||||
beq .2
|
||||
|
||||
>LIBC FreeMem
|
||||
|
||||
.2 lda hCmdBuf
|
||||
>LIBC Free
|
||||
|
||||
.2 >LDYA ZPCmdBuf
|
||||
beq .8
|
||||
|
||||
>LIBC FreeMem
|
||||
>LIBC Free
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT sec
|
||||
CS.SIG sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
.INB usr/src/shared/x.ispipein.s
|
||||
*--------------------------------------
|
||||
CS.END .EQ *
|
||||
*--------------------------------------
|
||||
OptionList .AS "Hh"
|
||||
OptionList.Cnt .EQ *-OptionList
|
||||
@ -255,10 +254,12 @@ MSG.USAGE .CS "Usage : XARGS command <file>\r\n"
|
||||
.CS " or : CMD|XARGS command"
|
||||
MSG.CRLF .CZ "\r\n"
|
||||
CMD.SPC .CZ " "
|
||||
*--------------------------------------
|
||||
ID.END .EQ *
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
DS.START
|
||||
STATBUF .BS S.STAT
|
||||
DS.END .ED
|
||||
*--------------------------------------
|
||||
MAN
|
||||
|
@ -9,6 +9,7 @@ SSCIRQ .EQ 0
|
||||
.INB inc/mli.e.i
|
||||
.INB inc/com.i
|
||||
.INB inc/com.6551.i
|
||||
.INB inc/io.i
|
||||
.INB usr/src/shared/x.ssc.drv.s
|
||||
*--------------------------------------
|
||||
MAN
|
||||
|
Loading…
x
Reference in New Issue
Block a user