A2osX/BIN/LSOF.S.txt

156 lines
2.7 KiB
Plaintext
Raw Normal View History

2018-10-05 14:58:38 +00:00
NEW
2020-08-17 20:47:31 +00:00
AUTO 3,1
2018-10-05 14:58:38 +00:00
.LIST OFF
.OP 65C02
.OR $2000
2020-08-17 20:47:31 +00:00
.TF bin/lsof
2018-10-05 14:58:38 +00:00
*--------------------------------------
2020-08-17 20:47:31 +00:00
.INB inc/macros.i
.INB inc/mli.i
.INB inc/a2osx.i
.INB inc/kernel.i
2018-10-05 14:58:38 +00:00
*--------------------------------------
2021-03-11 21:40:55 +00:00
.DUMMY
.OR ZPBIN
ZS.START
ZPFDPtr .BS 2
FILE.ID .BS 2
ZS.END .ED
2018-10-05 14:58:38 +00:00
*--------------------------------------
* File Header (16 Bytes)
*--------------------------------------
CS.START cld
jmp (.1,x)
.DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1
.DA 0
.DA CS.END-CS.START CS
.DA DS.END-DS.START DS
.DA #16 SS
2021-03-11 21:40:55 +00:00
.DA #ZS.END-ZS.START Zero Page Size
2018-10-05 14:58:38 +00:00
.DA 0
*--------------------------------------
* Relocation Table
2019-10-03 06:25:27 +00:00
*--------------------------------------
2018-10-05 14:58:38 +00:00
.1 .DA CS.INIT
.DA CS.RUN
2022-11-02 06:54:30 +00:00
.DA CS.EVENT
2018-10-05 14:58:38 +00:00
.DA CS.QUIT
2023-05-16 16:53:52 +00:00
L.MSG.HEADER .DA MSG.HEADER
L.MSG.BODY .DA MSG.REGDIR
.DA MSG.SPECIAL
2018-10-05 14:58:38 +00:00
L.FD.T .DA FD.T.REG
.DA FD.T.DIR
.DA FD.T.CDEV
.DA FD.T.BDEV
.DA FD.T.LNK
.DA FD.T.DSOCK
.DA FD.T.SSOCK
.DA FD.T.PIPE
.DA 0
*--------------------------------------
CS.INIT clc
rts
*--------------------------------------
2023-05-16 16:53:52 +00:00
CS.RUN >LDYA L.MSG.HEADER
2020-02-28 07:21:46 +00:00
>SYSCALL PutS
2018-10-05 14:58:38 +00:00
2021-07-24 20:42:23 +00:00
ldx #1
2020-02-14 07:21:56 +00:00
2020-12-15 13:23:22 +00:00
.1 stx FILE.ID
2021-07-24 20:42:23 +00:00
lda hFDs-1,x
2018-10-05 14:58:38 +00:00
beq .7
2020-02-14 07:21:56 +00:00
2023-05-16 16:53:52 +00:00
>SYSCALL GetMemPtr
>STYA ZPFDPtr
ldx FILE.ID
lda hFDs.oCnt-1,x
beq .7
ldy #0
lda (ZPFDPtr)
cmp #S.FD.T.DIR+1
bcc .2
iny
iny
.2 >PUSHW L.MSG.BODY,y
2022-11-02 06:54:30 +00:00
2020-12-15 13:23:22 +00:00
txa
2020-02-14 07:21:56 +00:00
>PUSHA
2021-07-24 20:42:23 +00:00
lda hFDs-1,x
2020-02-14 07:21:56 +00:00
>PUSHA
2021-07-24 20:42:23 +00:00
lda hFDs.oCnt-1,x
>PUSHA
2022-11-02 06:54:30 +00:00
2018-11-19 07:43:00 +00:00
lda (ZPFDPtr)
2023-05-16 16:53:52 +00:00
tay
>PUSHW L.FD.T,y
jsr CS.RUN.GetName
2022-11-02 06:54:30 +00:00
2023-05-16 16:53:52 +00:00
>PUSHYA
2021-07-24 20:42:23 +00:00
>PUSHBI 7
2022-11-02 06:54:30 +00:00
2020-02-28 07:21:46 +00:00
>SYSCALL PrintF
2022-11-02 06:54:30 +00:00
2020-12-15 13:23:22 +00:00
.7 ldx FILE.ID
inx
2021-07-24 20:42:23 +00:00
cpx #K.hFD.MAX+1
2018-10-05 14:58:38 +00:00
bne .1
2020-01-29 21:45:06 +00:00
2020-12-15 13:23:22 +00:00
lda #0
2020-01-29 21:45:06 +00:00
sec
2018-10-05 14:58:38 +00:00
.9 rts
*--------------------------------------
2023-05-16 16:53:52 +00:00
CS.RUN.GetName lda hFDs.hName-1,x
bne .1
lda ZPFDPtr
clc
adc #S.FD.DEV
tay
lda ZPFDPtr+1
adc /S.FD.DEV
rts
.1 >SYSCALL GetMemPtr
rts
*--------------------------------------
2018-10-05 14:58:38 +00:00
CS.EVENT sec
rts
*--------------------------------------
CS.QUIT clc
rts
*--------------------------------------
CS.END
2023-05-16 16:53:52 +00:00
MSG.HEADER .CZ "hFILE hFD Cnt Type Filepath"
MSG.REGDIR .CZ "%3d %3d %3d %4s %s\r\n"
MSG.SPECIAL .CZ "%3d %3d %3d %4s /dev/%s\r\n"
2022-11-02 06:54:30 +00:00
FD.T.REG .CZ "REG"
FD.T.DIR .CZ "DIR"
FD.T.CDEV .CZ "CDEV"
FD.T.BDEV .CZ "BDEV"
FD.T.LNK .CZ "LNK"
FD.T.DSOCK .CZ "DSCK"
FD.T.SSOCK .CZ "SSCK"
2022-11-02 06:54:30 +00:00
FD.T.PIPE .CZ "PIPE"
2018-10-05 14:58:38 +00:00
*--------------------------------------
.DUMMY
.OR 0
DS.START
2020-08-17 20:47:31 +00:00
DS.END .ED
2018-10-05 14:58:38 +00:00
*--------------------------------------
MAN
2020-08-17 20:47:31 +00:00
SAVE usr/src/bin/lsof.s
2018-10-05 14:58:38 +00:00
ASM