Mercurial > hg > Members > kono > nitros9-code
changeset 326:bdd31b961b6f
Moved from OS-9 Level Two V3 -- this dir is the Tandy OS-9 Level Two dir with
Y2K fixes and is newer than the Tandy OS-9 Level One dir
author | boisy |
---|---|
date | Wed, 24 Jul 2002 04:59:43 +0000 |
parents | 8359c4f13735 |
children | f0a2dcf03503 |
files | level1/cmds/dir.asm |
diffstat | 1 files changed, 232 insertions(+), 223 deletions(-) [+] |
line wrap: on
line diff
--- a/level1/cmds/dir.asm Wed Jul 24 04:51:33 2002 +0000 +++ b/level1/cmds/dir.asm Wed Jul 24 04:59:43 2002 +0000 @@ -3,15 +3,20 @@ * * $Id$ * +* This dir initially started from the dir command that came with +* the OS-9 Level Two package, then incorporated Glenside's Y2K +* fix. +* * Ed. Comments Who YY/MM/DD * ------------------------------------------------------------------ -* 5 From Tandy OS-9 Level One VR 02.00.00 -* 7 Made compliant with 1900-2155 BGP 99/05/11 +* 10 Incorporated Glenside Y2K fixes BGP 99/05/11 nam Dir ttl Show directory -* Disassembled 99/04/11 17:39:33 by Disasm v1.6 (C) 1988 by RML + ttl program module + +* Disassembled 99/04/11 16:36:40 by Disasm v1.6 (C) 1988 by RML ifp1 use defsfile @@ -19,8 +24,8 @@ tylg set Prgrm+Objct atrv set ReEnt+rev -rev set $01 -edition set 7 +rev set $00 +edition set 10 mod eom,name,tylg,atrv,start,size @@ -29,24 +34,24 @@ u0003 rmb 1 u0004 rmb 1 u0005 rmb 1 -u0006 rmb 1 -u0007 rmb 1 +u0006 rmb 2 u0008 rmb 1 u0009 rmb 1 u000A rmb 1 u000B rmb 1 -u000C rmb 3 -u000F rmb 3 -u0012 rmb 29 -u002F rmb 1 +u000C rmb 1 +u000D rmb 3 +u0010 rmb 3 +u0013 rmb 29 u0030 rmb 1 u0031 rmb 1 u0032 rmb 1 -u0033 rmb 2 -u0035 rmb 6 -u003B rmb 2 -u003D rmb 2 -u003F rmb 530 +u0033 rmb 1 +u0034 rmb 2 +u0036 rmb 6 +u003C rmb 2 +u003E rmb 2 +u0040 rmb 530 size equ . name fcs /Dir/ @@ -58,313 +63,317 @@ fcb C$CR L0022 fcc "@" fcb C$CR -WideDir fcb C$LF - fcc "Owner Last modified Attributes Sector Bytecount Name" - fcb C$LF - fcc "----- --------------- ---------- ------ --------- ----------" - fcb C$CR -WideDirL equ *-WideDir - -NrrwDir fcb C$LF - fcc "Modified on Owner Name" - fcb C$LF +L0024 fcb C$CR,C$LF + fcc "Owner Last modified Attributes Sector Bytecount Name" + fcb C$CR,C$LF + fcc "----- ---------------- ---------- ------ --------- ----------" + fcb C$CR,C$LF +L00A0 fcb C$CR,C$LF + fcc "Modified on Owner Name" + fcb C$CR,C$LF fcc " Attr Sector Size" - fcb C$LF + fcb C$CR,C$LF fcc "===============================" fcb C$CR -NrrwDirL equ *-NrrwDir + fcb C$LF -start leay <u003F,u - sty <u000A +start leay <u0040,u + sty <u000B clr <u0004 clr <u0003 - clr <u0009 + clr <u000A lda #$10 ldb #$30 - std <u0007 + std <u0008 pshs y,x,b,a - lda #1 + lda #$01 ldb #$26 os9 I$GetStt - bcc L0111 + bcc L0120 cmpb #$D0 - beq L011E + beq L012D puls y,x,b,a - lbra L0258 -L0111 cmpx #80 - beq L011E - inc <u0009 + lbra L0268 +L0120 cmpx #$0040 + bge L012D + inc <u000A lda #$0A ldb #$14 - std <u0007 -L011E puls y,x,b,a - lbsr L032F + std <u0008 +L012D puls y,x,b,a + lbsr L0370 lda ,-x cmpa #$0D - bne L012D + bne L013C leax >L0020,pcr -L012D stx <u0000 +L013C stx <u0000 lda #$81 ora <u0004 pshs x,a os9 I$Open sta <u0002 puls x,a - lbcs L0258 + lbcs L0268 os9 I$ChgDir - lbcs L0258 + lbcs L0268 pshs x leay >L0011,pcr - lbsr L02CC + lbsr L02E6 ldx <u0000 -L0152 lda ,x+ - lbsr L02A6 +L0161 lda ,x+ + lbsr L02B7 cmpx ,s - bcs L0152 + bcs L0161 leas $02,s - lbsr L032F - lbsr L02A4 - lbsr L02A4 - leax u000C,u + lbsr L0370 + lbsr L02B5 + lbsr L02B5 + leax u000D,u os9 F$Time - leax u000F,u - lbsr L0302 - lbsr L02D7 + leax <u0010,u + lbsr L0328 + lbsr L02F5 tst <u0003 - beq L01A3 + beq L01B3 lda #$01 ora <u0004 leax >L0022,pcr os9 I$Open - lbcs L0258 + lbcs L0268 sta <u0005 - tst <u0009 - bne L0196 - leax >WideDir,pcr - ldy #WideDirL - bra L019E -L0196 leax >NrrwDir,pcr - ldy #NrrwDirL -L019E lda #$01 - os9 I$WritLn -L01A3 lda <u0002 + tst <u000A + bne L01A6 + leax >L0024,pcr + ldy #$007C + bra L01AE +L01A6 leax >L00A0,pcr + ldy #$005A +L01AE lda #$01 + os9 I$Write +L01B3 lda <u0002 ldx #$0000 pshs u ldu #$0040 os9 I$Seek puls u - lbra L0243 -L01B5 tst <u0012 - lbeq L0243 + lbra L0253 +L01C5 tst <u0013 + lbeq L0253 tst <u0003 - bne L01D8 - leay <u0012,u - lbsr L02CC -L01C5 lbsr L02A4 - ldb <u000B - subb #$3F - cmpb <u0008 - bhi L021C -L01D0 subb <u0007 - bhi L01D0 - bne L01C5 - bra L0243 -L01D8 pshs u - lda <u0031 + bne L01E8 + leay <u0013,u + lbsr L02E6 +L01D5 lbsr L02B5 + ldb <u000C + subb #$40 + cmpb <u0009 + bhi L022C +L01E0 subb <u0008 + bhi L01E0 + bne L01D5 + bra L0253 +L01E8 pshs u + lda <u0032 clrb tfr d,u - ldx <u002F + ldx <u0030 lda <u0005 os9 I$Seek puls u - bcs L0258 - leax <u0032,u + bcs L0268 + leax <u0033,u ldy #$000D os9 I$Read - bcs L0258 - tst <u0009 - bne L0221 - ldd <u0033 + bcs L0268 + tst <u000A + bne L0231 + ldd <u0034 clr <u0006 - bsr L0263 - lbsr L02A4 - lbsr L02ED - lbsr L02A4 - lbsr L02B9 - lbsr L02A4 - lbsr L02A4 - bsr L025D - bsr L026F - leay <u0012,u - lbsr L02CC -L021C lbsr L02D7 - bra L0243 -L0221 lbsr L02ED - ldd <u0033 + bsr L0274 + lbsr L02B5 + lbsr L030B + lbsr L02B5 + lbsr L02D3 + lbsr L02B5 + lbsr L02B5 + bsr L026E + bsr L0280 + leay <u0013,u + lbsr L02E6 +L022C lbsr L02F5 + bra L0253 +L0231 lbsr L030B + ldd <u0034 clr <u0006 - bsr L0263 - bsr L02A4 - leay <u0012,u - lbsr L02CC - lbsr L02D7 - lbsr L02B9 - bsr L02A4 - bsr L02A4 - bsr L025D - bsr L026F - lbsr L02D7 -L0243 leax <u0012,u + bsr L0274 + bsr L02B5 + leay <u0013,u + lbsr L02E6 + lbsr L02F5 + lbsr L02D3 + bsr L02B5 + bsr L02B5 + bsr L026E + bsr L0280 + lbsr L02F5 +L0253 leax <u0013,u ldy #$0020 lda <u0002 os9 I$Read - lbcc L01B5 + lbcc L01C5 cmpb #$D3 - bne L0258 + bne L0268 clrb -L0258 bsr L02D7 +L0268 lbsr L02F5 os9 F$Exit -L025D lda <u002F - bsr L0287 - ldd <u0030 -L0263 bsr L0289 +L026E lda <u0030 + bsr L0298 + ldd <u0031 +L0274 bsr L029A tfr b,a - bsr L027D + bsr L028E inc <u0006 - bsr L028B - bra L02A4 -L026F ldd <u003B - bsr L0287 + bsr L029C + bra L02B5 +L0280 ldd <u003C + bsr L0298 tfr b,a - bsr L0289 - bsr L02A4 - ldd <u003D - bra L0263 -L027D pshs a + bsr L029A + bsr L02B5 + ldd <u003E + bra L0274 +L028E pshs a lsra lsra lsra lsra - bsr L028D + bsr L029E puls pc,a -L0287 clr <u0006 -L0289 bsr L027D -L028B anda #$0F -L028D tsta - beq L0292 +L0298 clr <u0006 +L029A bsr L028E +L029C anda #$0F +L029E tsta + beq L02A3 sta <u0006 -L0292 tst <u0006 - bne L029A +L02A3 tst <u0006 + bne L02AB lda #$20 - bra L02A6 -L029A adda #$30 + bra L02B7 +L02AB adda #$30 cmpa #$39 - bls L02A6 + bls L02B7 adda #$07 - bra L02A6 -L02A4 lda #$20 -L02A6 pshs x - ldx <u000A - sta ,x+ - stx <u000A + bra L02B7 +L02B5 lda #$20 +L02B7 pshs x + ldx <u000B + cmpx #$0090 + bcs L02C4 + bsr L02F1 + ldx <u000B +L02C4 sta ,x+ + stx <u000B puls pc,x -L02B0 fcc "dsewrewr" - fcb $FF -L02B9 fcb $D6,$32 - leax <L02B0,pcr +L02CA fcc "dsewrewr" + fcb $FF +L02D3 fcb $D6,$33,$30,$8C,$F2 lda ,x+ -L02C0 lslb - bcs L02C5 +L02DA lslb + bcs L02DF lda #$2D -L02C5 bsr L02A6 +L02DF bsr L02B7 lda ,x+ - bpl L02C0 + bpl L02DA rts -L02CC lda ,y +L02E6 lda ,y anda #$7F - bsr L02A6 + bsr L02B7 lda ,y+ - bpl L02CC + bpl L02E6 rts -L02D7 pshs y,x,a +L02F1 pshs y,x,b,a + bra L02FB +L02F5 pshs y,x,b,a lda #$0D - bsr L02A6 - leax <u003F,u - stx <u000A + bsr L02B7 +L02FB leax <u0040,u + stx <u000B ldy #$0050 lda #$01 os9 I$WritLn - puls pc,y,x,a -L02ED leax <u0035,u + puls pc,y,x,b,a +L030B leax <u0036,u +L030E bsr L0338 + bsr L0324 + bsr L0324 + bsr L02B5 + bsr L034F + tst <u000A + beq L0320 + bsr L034F + bra L02B5 +L0320 bsr L0332 + bra L02B5 +L0324 lda #$2F + bra L0334 +L0328 tst <u000A + bne L0330 + leax u000D,u + bra L030E +L0330 bsr L034F +L0332 lda #$3A +L0334 bsr L02B7 + bra L034F +L0338 lda #$AE ldb ,x - cmpb #100 - blo L1900 - subb #100 - cmpb #100 - blo L2000 -L2100 subb #100 +L033C inca + subb #$64 + bcc L033C stb ,x - ldb #21 - bra PrCnty -L1900 stb ,x - ldb #19 - bra PrCnty -L2000 stb ,x - ldb #20 -PrCnty bsr L030C - bsr L030A - bsr L02FE - bsr L02FE - bsr L02A4 - bsr L030A - bsr L030A - bra L02A4 -L02FE lda #$2F - bra L0308 -L0302 bsr L030A - bsr L0306 -L0306 lda #$3A -L0308 lbsr L02A6 -L030A ldb ,x+ -L030C lda #$2F - cmpb #$64 - bcs L0313 - clrb -L0313 inca + tfr a,b + tst <u000A + bne L034B + bsr L035F +L034B ldb ,x+ + bra L035F +L034F ldb ,x+ + lda #$2F +L0353 inca subb #$64 - bcc L0313 + bcc L0353 cmpa #$30 - beq L031E - lbsr L02A6 -L031E lda #$3A -L0320 deca + beq L035F + lbsr L02B7 +L035F lda #$3A +L0361 deca addb #$0A - bcc L0320 - lbsr L02A6 + bcc L0361 + lbsr L02B7 tfr b,a adda #$30 - lbra L02A6 -L032F ldd ,x+ + lbra L02B7 +L0370 ldd ,x+ cmpa #$20 - beq L032F + beq L0370 cmpa #$2C - beq L032F + beq L0370 eora #$45 anda #$DF - bne L0347 + bne L0388 cmpb #$30 - bcc L0347 + bcc L039A inc <u0003 - bra L032F -L0347 lda -$01,x + bra L0370 +L0388 lda -$01,x eora #$58 anda #$DF - bne L0359 + bne L039A cmpb #$30 - bcc L0359 + bcc L039A lda #$04 sta <u0004 - bra L032F -L0359 rts + bra L0370 +L039A rts emod eom equ *