NEW AUTO 3,1 .LIST OFF .OP 65C02 .OR $2000 .TF BIN/WHO *-------------------------------------- .INB INC/MACROS.I .INB INC/MLI.I .INB INC/A2OSX.I .INB INC/KERNEL.I *-------------------------------------- .DUMMY .OR ZPBIN ZS.START USRID .BS 1 ZPPWPtr .BS 2 ZS.END .ED *-------------------------------------- * 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 Code Size (without Constants) .DA DS.END-DS.START Data SegmentSize .DA #64 Stack Size .DA #ZS.END-ZS.START Zero Page Size .DA 0 *-------------------------------------- * Relocation Table *-------------------------------------- .1 .DA CS.INIT .DA CS.RUN .DA CS.EVENT .DA CS.QUIT L.MSG0 .DA MSG0 L.MSG1 .DA MSG1 .DA 0 *-------------------------------------- CS.INIT clc rts *-------------------------------------- CS.RUN >LDYA L.MSG0 >SYSCALL puts ldx #1 stx USRID >DEBUG .1 lda USR.Table.hPW-1,x beq .7 lda USR.Table.hFile-1,x tax jsr CS.RUN.GETIO >PUSHYA ldx USRID lda USR.Table.hPW-1,x >SYSCALL GetMemPtr >STYA ZPPWPtr lda ZPPWPtr clc adc #S.USR.NAME tay lda ZPPWPtr+1 adc /S.USR.NAME >PUSHYA >PUSHB (ZPPWPtr) ldy #S.USR.UID >PUSHB (ZPPWPtr),y >PUSHB USRID >PUSHBI 7 >LDYA L.MSG1 >SYSCALL printf .7 inc USRID ldx USRID cpx #K.USR.MAX+1 bne .1 .8 lda #0 tell TSKMGR that all done ok, but sec we do not want to stay in memory .9 rts *-------------------------------------- CS.RUN.GETIO lda OF.Table.hPath-1,x bne .1 lda OF.Table.hFD-1,x tax lda Dev.Table-1,x clc adc #S.FD.DEV tay lda Dev.Table,x adc /S.FD.DEV rts .1 >SYSCALL GetMemPtr rts *-------------------------------------- CS.EVENT sec rts *-------------------------------------- CS.QUIT clc rts *-------------------------------------- CS.END MSG0 .AZ "Usr UID Privileges Name Dev" MSG1 .AZ "%3d %3d %b %16s %16s\r\n" *-------------------------------------- .DUMMY .OR 0 DS.START DS.END .ED *-------------------------------------- MAN SAVE USR/SRC/BIN/WHO.S ASM