Mercurial > hg > Members > kono > nitros9-code
changeset 215:b17658d6f0e7
Commands/modules removed are now linked from level1/CMDS and level2/CMDS
where appropriate
author | boisy |
---|---|
date | Mon, 15 Jul 2002 22:38:10 +0000 |
parents | aa7dad921edd |
children | b410fadf8c9b |
files | level2/cmds/dump.asm level2/cmds/free.asm level2/cmds/inkey.asm level2/cmds/login.asm level2/cmds/makefile level2/cmds/montype.asm level2/cmds/procs.asm level2/cmds/rename.asm level2/cmds/setime.asm level2/cmds/sleep.asm level2/cmds/tsmon.asm level2/cmds/unlink.asm level2/cmds/wcreate.asm |
diffstat | 13 files changed, 3 insertions(+), 2207 deletions(-) [+] |
line wrap: on
line diff
--- a/level2/cmds/dump.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,218 +0,0 @@ -******************************************************************** -* Dump - Show file contents in hex -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 6 Original Tandy distribution version - - nam Dump - ttl Show file contents in hex - -* Disassembled 98/09/14 23:34:34 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 6 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 1 -u0001 rmb 1 -u0002 rmb 1 -u0003 rmb 1 -u0004 rmb 1 -u0005 rmb 1 -u0006 rmb 2 -u0008 rmb 2 -u000A rmb 2 -u000C rmb 16 -u001C rmb 5 -u0021 rmb 1 -u0022 rmb 16 -u0032 rmb 8 -u003A rmb 17 -u004B rmb 16 -u005B rmb 201 -size equ . - -name fcs /Dump/ - fcb edition -L0012 fcc "Addr 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 2 4 6 8 A C E" - fcb C$CR -L0051 fcc "---- ---- ---- ---- ---- ---- ---- ---- ---- ----------------" -L0090 fcb C$CR -L0091 fcb C$LF - fcb C$LF - fcb C$LF - fcb C$LF - fcc " 0 1 2 3 4 5 6 7 0 2 4 6" - fcb C$LF - fcc "ADDR 8 9 A B C D E F 8 A C E"" - fcb C$CR -L00D1 fcc "==== +-+-+-+-+-+-+-+- + + + + " - fcb C$CR - -L00F0 lda ,x+ - cmpa #$20 - beq L00F0 - leax -$01,x - cmpa #$0D - rts - -start lda #63 - sta <u000A - clr <u0000 - pshs y,x,b,a - lda #1 - ldb #SS.ScSiz - os9 I$GetStt get size of window - bcc L0115 - cmpb #E$UnkSvc - beq L0120 - puls y,x,b,a - lbra L01FE -L0115 cmpx #63 - bge L0120 - ldb #31 - stb <u000A - inc <u0000 -L0120 puls y,x,b,a - ldd #$0001 - std <u0001 - bsr L00F0 - beq L0147 - lda #READ. - os9 I$Open - lbcs L01FE - sta <u0001 - bsr L00F0 - beq L0147 - lda #WRITE. - ldb #$0B - os9 I$Create - lbcs L01FE - sta <u0002 -L0147 ldd #$0000 -L014A std <u0003 - tst <u0000 - beq L0156 - bitb #$3F - bne L017D - bra L0159 -L0156 tstb - bne L017D -L0159 leax >L0090,pcr - lbsr L01EF - leax >L0012,pcr - tst <u0000 - beq L016C - leax >L0091,pcr -L016C lbsr L01EF - leax >L0051,pcr - tst <u0000 - beq L017B - leax >L00D1,pcr -L017B bsr L01EF -L017D leax <u001C,u - lda #$20 - ldb <u000A -L0184 sta ,x+ - decb - bne L0184 - leax <u001C,u - stx <u0006 - lda <u0003 - bsr L0201 - lda <u0004 - bsr L0201 - leax <u0022,u - stx <u0006 - leax <u004B,u - stx <u0008 - ldy #$0010 - tst <u0000 - beq L01B6 - leax <u0021,u - stx <u0006 - leax <u0032,u - stx <u0008 - ldy #$0008 -L01B6 leax u000C,u - lda <u0001 - os9 I$Read - bcs L01F9 - tfr y,d - stb <u0005 -L01C3 bsr L0223 - decb - beq L01D5 - bsr L0223 - tst <u0000 - bne L01D2 - lda #$20 - bsr L0219 -L01D2 decb - bne L01C3 -L01D5 lda #$0D - sta <u005B - tst <u0000 - beq L01DF - sta <u003A -L01DF leax <u001C,u - bsr L01EF - bcs L01FE - ldd <u0003 - addb <u0005 - adca #$00 - lbra L014A -L01EF ldy #$0050 - lda <u0002 - os9 I$WritLn - rts -L01F9 cmpb #E$EOF - bne L01FE - clrb -L01FE os9 F$Exit -L0201 pshs a - lsra - lsra - lsra - lsra - bsr L020F - lda ,s - bsr L020F - puls pc,a -L020F anda #$0F - cmpa #$09 - bls L0217 - adda #$07 -L0217 adda #$30 -L0219 pshs x - ldx <u0006 - sta ,x+ - stx <u0006 - puls pc,x -L0223 lda ,x+ - bsr L0201 - pshs x,a - anda #$7F - cmpa #$20 - bcs L0233 - cmpa #$7E - bcs L0235 -L0233 lda #$2E -L0235 ldx <u0008 - sta ,x+ - stx <u0008 - puls pc,x,a - - emod -eom equ * - end
--- a/level2/cmds/free.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,316 +0,0 @@ -******************************************************************** -* Free - Print disk free space -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 6 Original Tandy/Microware version -* 7 Incorporated Glenside Y2K fixes BGP 99/05/11 - - nam Free - ttl Print disk free space - -* Disassembled 98/09/11 16:58:25 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $00 -edition set 7 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 1 -u0001 rmb 1 -u0002 rmb 1 -u0003 rmb 1 -u0004 rmb 1 -u0005 rmb 2 -u0007 rmb 1 -u0008 rmb 1 -u0009 rmb 1 -u000A rmb 1 -u000B rmb 1 -u000C rmb 1 -u000D rmb 26 -u0027 rmb 54 -u005D rmb 4 -u0061 rmb 2 -u0063 rmb 1 -u0064 rmb 19 -u0077 rmb 5 -u007C rmb 26 -u0096 rmb 6 -u009C rmb 2 -u009E rmb 2 -u00A0 rmb 4544 -size equ . - -name fcs /Free/ - fcb edition -L0012 fcb C$LF - fcc "Use: free [/diskname]" - fcb C$LF - fcc " tells how many disk sectors are unused" - fcb C$CR -L0052 fcs /" created on:/ -L005F fcs "Capacity:" -L0068 fcs " sectors (" -L0072 fcs "-sector clusters)" -L0083 fcs " free sectors, largest block" -L009F fcs " sectors" - -start leay u000D,u - sty <u0001 - cmpd #$0000 - beq L00E0 - lda ,x+ - cmpa #C$CR - beq L00E0 - cmpa #PDELIM - beq L00CC -L00BC leax >L0012,pcr - ldy #$0040 - lda #$02 - os9 I$WritLn - lbra L01CC -L00CC leax -$01,x - pshs x - os9 F$PrsNam - puls x - bcs L00BC -L00D7 lda ,x+ - lbsr L0218 - subb #$01 - bcc L00D7 -L00E0 lda #$40 - lbsr L0218 - lbsr L0216 - leax u000D,u - stx <u0001 - lda #READ. - os9 I$Open - sta <u0003 - bcs L00FF - leax <u005D,u - ldy #$003F - os9 I$Read -L00FF lbcs L01CD - lbsr L0222 - lda #$22 - lbsr L0218 - leay <u007C,u - lbsr L020C - dec <u0002 - leay >L0052,pcr - lbsr L020C - lbsr L0293 - lbsr L0222 - leay >L005F,pcr - lbsr L020C - leax <u005D,u - lbsr L024F - leay >L0068,pcr - lbsr L020C - dec <u0002 - ldd <u0063 - pshs b,a - clr ,-s - leax ,s - lbsr L024F - leas $03,s - leay >L0072,pcr - lbsr L020C - lbsr L0222 - clra - clrb - sta <u0004 - std <u0005 - sta <u000A - std <u000B - sta <u0007 - std <u0008 - lda <u0003 - ldx #$0000 - pshs u - ldu #$0100 - os9 I$Seek - puls u -L016A leax >u009E,u - ldd #$1000 - cmpd <u0061 - bls L0178 - ldd <u0061 -L0178 leay d,x - sty <u009C - tfr d,y - lda <u0003 - os9 I$Read - bcs L01CD -L0186 lda ,x+ - bsr L01D0 - stb ,-s - beq L019C -L018E ldd <u0005 - addd <u0063 - std <u0005 - bcc L0198 - inc <u0004 -L0198 dec ,s - bne L018E -L019C leas $01,s - cmpx <u009C - bcs L0186 - ldd <u0061 - subd #$1000 - std <u0061 - bhi L016A - bsr L01ED - leax u0004,u - lbsr L024F - leay >L0083,pcr - bsr L020C - leax u0007,u - lbsr L024F - leay >L009F,pcr - bsr L020C - bsr L0222 - lda <u0003 - os9 I$Close - bcs L01CD -L01CC clrb -L01CD os9 F$Exit -L01D0 clrb - cmpa #$FF - beq L01ED - bsr L01D7 -L01D7 bsr L01D9 -L01D9 bsr L01DB -L01DB lsla - bcs L01ED - incb - pshs b,a - ldd <u000B - addd <u0063 - std <u000B - bcc L01EB - inc <u000A -L01EB puls pc,b,a -L01ED pshs b,a - ldd <u000A - cmpd <u0007 - bhi L01FE - bne L0204 - ldb <u000C - cmpb <u0009 - bls L0204 -L01FE sta <u0007 - ldd <u000B - std <u0008 -L0204 clr <u000A - clr <u000B - clr <u000C - puls pc,b,a -L020C lda ,y - anda #$7F - bsr L0218 - lda ,y+ - bpl L020C -L0216 lda #$20 -L0218 pshs x - ldx <u0001 - sta ,x+ - stx <u0001 - puls pc,x -L0222 pshs y,x,a - lda #$0D - bsr L0218 - leax u000D,u - stx <u0001 - ldy #$0050 - lda #$01 - os9 I$WritLn - puls pc,y,x,a -L0237 fcb $98 - fdb $9680,$0f42,$4001,$86a0,$0027,$1000,$03e8,$0000 - fdb $6400,$000a,$0000 - fcb $01 -L024F lda #$0A - pshs y,x,b,a - leay <L0237,pcr - clr <u0000 - ldb ,x - ldx $01,x -L025C lda #$FF -L025E inca - exg d,x - subd $01,y - exg d,x - sbcb ,y - bcc L025E - bsr L02B9 - exg d,x - addd $01,y - exg d,x - adcb ,y - leay $03,y - dec ,s - beq L0291 - lda ,s - cmpa #$01 - bne L0281 - sta <u0000 -L0281 bita #$03 - bne L025C - dec ,s - tst <u0000 - beq L025C - lda #$2C - bsr L0218 - bra L025C -L0291 puls pc,y,x,b,a -L0293 leax <u0077,u - bsr L02C3 - bsr L029A -L029A lda #$2F - lbsr L0218 - clr <u0000 - ldb ,x+ - lda #$FF -L02A5 inca - subb #$64 - bcc L02A5 - bsr L02B9 -L02AC lda #$0A - sta <u0000 -L02B0 deca - addb #$0A - bcc L02B0 - bsr L02B9 - tfr b,a -L02B9 tsta - beq L02BE - sta <u0000 -L02BE tst <u0000 - bne L02D6 - rts -L02C3 ldb ,x+ - lda #$AE -L02C7 inca - subb #$64 - bcc L02C7 - pshs b - tfr a,b - bsr L02AC - puls b - bra L02AC -L02D6 adda #$30 - lbra L0218 - - emod -eom equ * - end
--- a/level2/cmds/inkey.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,69 +0,0 @@ -******************************************************************** -* Inkey - Key detect subroutine -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* ? Original Tandy/Microware version -* 1 Put a proper edition number after the name BGP 98/10/26 - - nam Inkey - ttl Key detect subroutine - -* Disassembled 98/09/11 11:55:29 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Sbrtn+Objct -atrv set ReEnt+rev -rev set $01 -edition set 1 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 0 -size equ . - -name fcs /Inkey/ - fcb edition -start leax $04,s - ldd $02,s - cmpd #$0001 - beq L0033 - cmpd #$0002 - bne L0057 - ldd [<$04,s] - ldx $06,s - leax -$01,x - beq L0031 - leax -$01,x - bne L0057 - tfr b,a -L0031 leax $08,s -L0033 ldu $02,x - ldx ,x - ldb #$FF - stb ,x - cmpu #$0002 - bcs L0043 - stb $01,x -L0043 ldb #$01 - os9 I$GetStt - bcs L0052 - ldy #0001 - os9 I$Read - rts -L0052 cmpb #E$NotRdy - bne L0059 - rts -L0057 ldb #$38 -L0059 coma - rts - - emod -eom equ * - end -
--- a/level2/cmds/login.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,472 +0,0 @@ -******************************************************************** -* Login - Allow remote shell access -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 16 Original Tandy distribution version -* 17 Changed Icpt routine's rts to rti BGP 98/10/15 - - nam Login - ttl Allow remote shell access - -* Disassembled 98/09/14 23:54:24 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 17 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 1 -u0001 rmb 1 -u0002 rmb 1 -u0003 rmb 1 -u0004 rmb 1 -u0005 rmb 1 -u0006 rmb 2 -u0008 rmb 2 -u000A rmb 2 -u000C rmb 1 -u000D rmb 256 -u010D rmb 128 -u018D rmb 80 -u01DD rmb 80 -u022D rmb 32 -size equ . - -name fcs /Login/ - fcb edition - -L0013 fcc "SYS/PASSWORD" - fcb C$CR - fcc ",,,,,,,,,,,,,,," -L002F fcb C$LF - fcb C$LF - fcc "OS-9 Timesharing system" - fcb C$LF - fcc "Level II RS VR. 0" - fcb 48+OS9Vrsn - fcc ".0" - fcb 48+OS9Major - fcc ".0" - fcb 48+OS9Minor - fcb C$LF -L0063 fcb C$LF - fcb C$LF - fcc "OS-9 Level II RS Vr0" - fcb 48+OS9Vrsn - fcc ".0" - fcb 48+OS9Major - fcc ".0" - fcb 48+OS9Minor - fcb C$LF -L0082 fcb C$LF - fcc "User name?: " -L008F fcc "Who?" - fcb C$CR -L0094 fcc "Password: " -L009E fcc "Invalid password." - fcb C$CR -L00B0 fcb C$LF - fcc "Process #" -L00BA fcc " logged on " -L00C5 fcc " logged on " - fcb C$LF -L00D1 fcc "Welcome!" - fcb C$CR -L00DA fcc "Directory not found." - fcb C$CR -L00EF fcb C$LF - fcc "Syntax Error in password file" -L010D fcb C$LF - fcc "It's been nice communicating with you." - fcb C$LF - fcc "Better luck next time." - fcb C$CR -L014C fcc "SYS/MOTD" - fcb C$CR -L0155 fcc "...... " - -IcptRtn rti changed from rts ++BGP - -start leas >u010D,u - pshs y,x - leax <IcptRtn,pcr - os9 F$Icpt - bcs L0172 - ldy #$0000 - os9 F$SUser -L0172 puls y,x - lbcs L02F4 - clr <u0000 - leay >u01DD,u - sty <u000A - leay >u018D,u - sty <u0008 - std ,--s - beq L0194 -L018C lda ,x+ - sta ,y+ - cmpa #$0D - bne L018C -L0194 lda #$01 - ldb #SS.ScSiz - os9 I$GetStt - bcc L01A4 - cmpb #$D0 - beq L01AB - lbra L0280 -L01A4 cmpx #$0046 - bcc L01AB - inc <u0000 -L01AB lda #$01 - leax >L0155,pcr - os9 I$ChgDir - lda #$01 - leax >L0013,pcr - os9 I$Open - lbcs L02F4 - sta <u0001 - lda #$03 - sta <u0003 - ldd ,s++ - beq L01D3 - ldx <u0008 - lda ,x - cmpa #$0D - bne L0209 -L01D3 tst <u0000 - beq L01E1 - leax >L0063,pcr - ldy #$001F - bra L01E9 -L01E1 leax >L002F,pcr - ldy #$0034 -L01E9 lbsr L032F -L01EC dec <u0003 - leax >L010D,pcr - lbmi L031F - leax >u018D,u - stx <u0008 - leax >L0082,pcr - ldy #$000D - lbsr L0347 - bcs L020E -L0209 lbsr L0393 - bcc L0217 -L020E leax >L008F,pcr -L0212 lbsr L0325 - bra L01EC -L0217 lbsr L03B9 - bcc L0253 - ldx <u0008 - lda ,x - cmpa #$0D - bne L0242 - lda #$2C - sta ,x+ - stx <u0008 - lbsr L0357 - leax >L0094,pcr - ldy #$000A - lbsr L0347 - lbsr L037F - bcs L020E - lbsr L03B9 - bcc L0253 -L0242 leax >u018D,u - stx <u0008 - lbsr L03A1 - bcc L0217 - leax >L009E,pcr - bra L0212 -L0253 lda <u0001 - os9 I$Close - lbsr L0408 - tfr d,y - os9 F$SUser - lbsr L0408 - tsta - lbne L031B - tstb - lbeq L031B - stb <u0005 - os9 F$ID - sta <u0004 - lda #$01 - leax >L014C,pcr - os9 I$Open - bcc L0280 - clra -L0280 sta <u0002 - lda #$04 - bsr L02F7 - lda #$03 - bsr L02F7 - leax >L00B0,pcr - ldy #$000A - lbsr L033D - leax u0004,u - lbsr L0471 - tst <u0000 - beq L02A8 - leax >L00C5,pcr - ldy #$000C - bra L02B0 -L02A8 leax >L00BA,pcr - ldy #$000B -L02B0 bsr L032F - leax >L00D1,pcr - bsr L0325 - lbsr L03F0 - clrb - ldx <u0006 - leau ,x -L02C0 lda ,u+ - cmpa #$30 - bcc L02C0 - cmpa #$2C - beq L02CC - leau -u0001,u -L02CC lda ,u+ - cmpa #$20 - beq L02CC - leau -u0001,u - pshs u - ldy #$0000 -L02DA lda ,u+ - leay $01,y - cmpa #$0D - bne L02DA - puls u - lda <u0004 - ldb <u0005 - os9 F$SPrior - ldd #$0100 - os9 F$Chain - os9 F$PErr -L02F4 os9 F$Exit -L02F7 ldx <u0006 - os9 I$ChgDir - bcs L0315 - ldx <u0006 -L0300 lda ,x+ - cmpa #$0D - beq L031B - cmpa #$2C - bne L0300 - lda #$20 -L030C cmpa ,x+ - beq L030C - leax ,-x - stx <u0006 - rts -L0315 leax >L00DA,pcr - bra L031F -L031B leax >L00EF,pcr -L031F bsr L0325 - clrb - os9 F$Exit -L0325 ldy #$0100 - lda #$01 - os9 I$WritLn - rts -L032F bsr L033D - lbsr L0498 - lbsr L0498 - lbsr L0498 - lbra L0454 -L033D lda ,x+ - lbsr L049A - leay -$01,y - bne L033D - rts -L0347 bsr L033D - lbsr L04AC - ldx <u0008 - ldy #$0050 - clra - os9 I$ReadLn - rts -L0357 pshs x,b,a - leax >u022D,u - ldb #$00 - clra - os9 I$GetStt - bcs L0379 - lda ,x - cmpa #$00 - bne L0379 - lda $04,x - pshs a - clr $04,x - bsr L037F - puls a - sta $04,x - puls pc,x,b,a -L0379 lda #$FF - sta ,x - puls pc,x,b,a -L037F pshs x,b,a,cc - leax >u022D,u - lda ,x - cmpa #$00 - bne L0391 - ldb #$00 - clra - os9 I$SetStt -L0391 puls pc,x,b,a,cc -L0393 pshs u - lda <u0001 - ldx #$0000 - leau ,x - os9 I$Seek - puls u -L03A1 lda <u0001 - leax >u010D,u - ldy #$0080 - os9 I$ReadLn - bcs L03B8 - stx <u0006 - bsr L03B9 - bcs L03A1 - stx <u0006 -L03B8 rts -L03B9 ldx <u0006 - ldy <u0008 -L03BE lda ,x+ - cmpa #$2C - beq L03D2 - cmpa #$0D - beq L03D0 - eora ,y+ - anda #$DF - beq L03BE -L03CE comb - rts -L03D0 leax -$01,x -L03D2 lda ,y+ - cmpa #$2C - beq L03DE - cmpa #$30 - bcc L03CE - leay -$01,y -L03DE lda ,y+ - cmpa #$20 - beq L03DE - leay -$01,y - sty <u0008 - stx <u0006 - clrb - rts -L03ED lbsr L0325 -L03F0 lda <u0002 - beq L0406 - leax >u018D,u - ldy #$0050 - os9 I$ReadLn - bcc L03ED - lda <u0002 - os9 I$Close -L0406 clrb - rts -L0408 ldx <u0006 - clra - clrb - pshs y,x,b,a - pshs b -L0410 ldb ,x+ - cmpb #$2E - bne L0423 - tsta - lbne L031B - ldb $02,s - stb ,s - clr $02,s - bra L0410 -L0423 subb #$30 - cmpb #$09 - bhi L043C - clra - ldy #$000A -L042E addd $01,s - lbcs L031B - leay -$01,y - bne L042E - std $01,s - bra L0410 -L043C lda -$01,x - cmpa #$2C - lbne L031B - stx <u0006 - lda ,s+ - beq L0452 - tst ,s - lbne L031B - sta ,s -L0452 puls pc,y,x,b,a -L0454 leax u000D,u - os9 F$Time - bsr L0469 - bsr L0498 - bsr L0461 - bra L04A4 -L0461 bsr L0471 - bsr L0465 -L0465 lda #$3A - bra L046F -L0469 bsr L0471 - bsr L046D -L046D lda #$2F -L046F bsr L049A -L0471 ldb ,x+ - lda #$2F - clr <u000C -L0477 inca - subb #$64 - bcc L0477 - bsr L048D - lda #$3A -L0480 deca - addb #$0A - bcc L0480 - bsr L049A - tfr b,a - adda #$30 - bra L049A -L048D inc <u000C - cmpa #$30 - bne L049A - dec <u000C - bne L049A - rts -L0498 lda #$20 -L049A pshs x - ldx <u000A - sta ,x+ - stx <u000A - puls pc,x -L04A4 pshs a - lda #$0D - bsr L049A - puls a -L04AC pshs y,x,b,a - leax >u01DD,u - ldd <u000A - stx <u000A - subd <u000A - tfr d,y - lda #$01 - os9 I$WritLn - puls pc,y,x,b,a - - emod -eom equ * - end
--- a/level2/cmds/makefile Mon Jul 15 22:27:56 2002 +0000 +++ b/level2/cmds/makefile Mon Jul 15 22:38:10 2002 +0000 @@ -17,9 +17,9 @@ UTILPAK2 = ddir idir pmap xmode LEVEL1FILES = binex.asm attr.asm build.asm date.asm deiniz.asm del.asm deldir.asm \ - echo.asm exbin.asm ident.asm iniz.asm link.asm \ - list.asm load.asm pwd.asm pxd.asm \ - save.asm sleep.asm tee.asm tmode.asm verify.asm + dump.asm echo.asm exbin.asm free.asm ident.asm iniz.asm inkey.asm link.asm \ + list.asm load.asm pwd.asm pxd.asm rename.asm \ + save.asm setime.asm sleep.asm tee.asm tmode.asm tsmon.asm verify.asm LEVEL2FILES = gfx.asm mdir.asm mfree.asm montype.asm procs.asm \ unlink.asm wcreate.asm
--- a/level2/cmds/montype.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,90 +0,0 @@ -******************************************************************** -* MonType - Change monitor type -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 1 Original Tandy/Microware version - - nam MonType - ttl Change monitor type - -* Disassembled 98/09/10 23:52:51 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 1 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 300 -size equ . - -name fcs /MonType/ - fcb edition - -CurOn fdb $1B21 -HelpMsg fcb C$CR - fcb C$LF - fcc "MonType - Set up the monitor type" - fcb C$CR - fcb C$LF - fcc "Syntax: MonType [opt]" - fcb C$CR - fcb C$LF - fcc "Options: r = rgb monitor" - fcb C$CR - fcb C$LF - fcc " c = composite monitor (t.v.)" - fcb C$CR - fcb C$LF - fcc " m = monochrome monitor" - fcb C$CR - fcb C$LF -HelpMsgL equ *-HelpMsg - -start bsr L00F3 - cmpa #C$CR - beq L00FA - anda #$5F - cmpa #'R - bne L00C7 - ldx #$0001 - bra L00D7 -L00C7 cmpa #'C - bne L00D0 - ldx #$0000 - bra L00D7 -L00D0 cmpa #'M - bne L00FA - ldx #$0002 -L00D7 lda #1 - ldb #SS.Montr - os9 I$SetStt - bcs L00F0 - leax >CurOn,pcr - lda #1 - ldy #2 - os9 I$Write - bcs L00F0 -L00EF clrb -L00F0 os9 F$Exit -L00F3 lda ,x+ - cmpa #C$SPAC - beq L00F3 - rts -L00FA lda #1 - leax >HelpMsg,pcr - ldy #HelpMsgL - os9 I$Write - bra L00EF - - emod -eom equ * - end
--- a/level2/cmds/procs.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,287 +0,0 @@ -******************************************************************** -* Procs - Show process information -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 14 Original Tandy/Microware version - - nam Procs - ttl program module - -* Disassembled 98/09/11 17:07:20 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 14 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 1 -u0001 rmb 1 -u0002 rmb 1 -u0003 rmb 1 -u0004 rmb 1 -u0005 rmb 1 -u0006 rmb 2 -u0008 rmb 1 -u0009 rmb 1 -u000A rmb 32 -u002A rmb 58 -u0064 rmb 22 -u007A rmb 110 -u00E8 rmb 1164 -size equ . - -name fcs /Procs/ - fcb edition -L0013 fcs " User Mem Stack" -L003E fcs "Id PId Number Pty Age Sts Signl Siz Ptr Primary Module" -L0079 fcs "--- --- ------- --- --- --- ----- --- ----- ----------------" -L00B5 fcs "Id PId User# Pty Age Sts" -L00D2 fcs " Sigl Mem StPtr Primary" -L00EF fcs "=============================" -L010C fcs "DEAD" - -start clr <u0000 - clr <u0002 - lda #$01 - sta <u0001 - lda ,x+ - eora #$45 - anda #$DF - bne L0122 - inc <u0000 -L0122 leax <u002A,u - stx <u0006 - leax <u007A,u - os9 F$GBlkMp - tfr a,b - nega - sta <u0008 - lda #$FE -L0134 inca - lsrb - bne L0134 - sta <u0009 - os9 F$ID - sty <u0003 - lbsr L024F - lda #$01 - ldb #$26 - os9 I$GetStt - bcc L0154 - cmpb #$D0 - lbne L0241 - bra L017B -L0154 cmpx #$003C - bge L017B - inc <u0002 - leay >L00B5,pcr - lbsr L0244 - lbsr L024F - leay >L00D2,pcr - lbsr L0244 - lbsr L024F - leay >L00EF,pcr - lbsr L0244 - lbsr L024F - bra L0199 -L017B leay >L0013,pcr - lbsr L0244 - lbsr L024F - leay >L003E,pcr - lbsr L0244 - lbsr L024F - leay >L0079,pcr - lbsr L0244 - lbsr L024F -L0199 inc <u0001 - lbeq L0240 - lda <u0001 - leax <u007A,u - os9 F$GPrDsc - bcs L0199 - ldd <u0003 - cmpd $08,x - beq L01B4 - tst <u0000 - beq L0199 -L01B4 ldb ,x - lbsr L026F - lbsr L0292 - ldb $01,x - lbsr L026F - lbsr L0292 - ldd $08,x - lbsr L02C3 - lbsr L0292 - lbsr L0292 - lbsr L0292 - ldb $0A,x - lbsr L026F - lbsr L0292 - tst <u0002 - beq L01E1 - lbsr L0292 -L01E1 ldb $0B,x - lbsr L026F - lbsr L0292 - tst <u0002 - beq L01F0 - lbsr L0292 -L01F0 lda #$24 - lbsr L0296 - lda $0C,x - lbsr L02A0 - clra - tst <u0002 - beq L0202 - lbsr L024F -L0202 ldb <$19,x - lbsr L02C3 - lbsr L0292 - lbsr L0292 - ldb $07,x - bsr L026F - bsr L0292 - tst <u0002 - beq L021E - bsr L0292 - bsr L0292 - bsr L0292 -L021E lda #$24 - bsr L0296 - lda $04,x - bsr L02A0 - lda $05,x - bsr L02A0 - bsr L0292 - tst <u0002 - beq L0234 - bsr L0292 - bsr L0292 -L0234 lbsr L02FA - bsr L0244 - bsr L0292 - bsr L024F - lbra L0199 -L0240 clrb -L0241 os9 F$Exit -L0244 lda ,y - anda #$7F - bsr L0296 - lda ,y+ - bpl L0244 - rts -L024F pshs y,x,a - lda #$0D - bsr L0296 - leax <u002A,u - stx <u0006 - tst <u0002 - beq L0264 - ldy #$0020 - bra L0268 -L0264 ldy #$0050 -L0268 lda #$01 - os9 I$WritLn - puls pc,y,x,a -L026F clr <u0005 - lda #$FF -L0273 inca - subb #$64 - bcc L0273 - bsr L0289 - lda #$0A -L027C deca - addb #$0A - bcc L027C - bsr L0289 - tfr b,a - adda #$30 - bra L0296 -L0289 tsta - beq L028E - sta <u0005 -L028E tst <u0005 - bne L0294 -L0292 lda #$F0 -L0294 adda #$30 -L0296 pshs x - ldx <u0006 - sta ,x+ - stx <u0006 - puls pc,x -L02A0 pshs a - anda #$F0 - lsra - lsra - lsra - lsra - bsr L02AE - puls a - anda #$0F -L02AE adda #$30 - cmpa #$39 - bls L0296 - adda #$07 - bra L0296 -L02B8 fdb $2710,$03e8,$0064,$000a - fcb $00,$01,$ff - -L02C3 pshs y,x,b,a - leax <L02B8,pcr - ldy #$2F20 -L02CC leay >$0100,y - subd ,x - bcc L02CC - addd ,x++ - pshs b,a - tfr y,d - tst ,x - bmi L02F4 - ldy #$2F30 - cmpd #$3020 - bne L02EE - ldy #$2F20 - lda #$20 -L02EE bsr L0296 - puls b,a - bra L02CC -L02F4 bsr L0296 - leas $02,s - puls pc,y,x,b,a -L02FA pshs u,x - leay >L010C,pcr - lda $0C,x - bita #$01 - bne L0330 - leay <$40,x - tfr y,d - ldx <$11,x - ldy #$0009 - leau u000A,u - os9 F$CpyMem - pshs b,a - ldd u0004,u - leax d,x - puls b,a - ldy #$0020 - os9 F$CpyMem - leay ,u - lda <$1F,y - ora #$80 - sta <$1F,y -L0330 puls pc,u,x - - emod -eom equ * - end -
--- a/level2/cmds/rename.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,172 +0,0 @@ -******************************************************************** -* Rename - Rename a file -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 6 Original Tandy/Microware version - - nam Rename - ttl Rename a file - -* Disassembled 98/09/11 01:35:46 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 6 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 1 -u0001 rmb 1 -u0002 rmb 2 -u0004 rmb 1 -u0005 rmb 2 -u0007 rmb 1 -u0008 rmb 24 -u0020 rmb 26 -u003A rmb 2 -u003C rmb 405 -size equ . - -name fcs /Rename/ - fcb edition - -start cmpd #$0004 - lbcs L00A8 - stx <u0000 - lda #WRITE. - os9 I$Open - bcc L0032 - cmpb #E$FNA - bne L00A5 - ldx <u0000 - lda #DIR.+WRITE. - os9 I$Open - bcs L00A5 -L0032 stx <u0005 - ldb #$00 - leax <u0020,u - os9 I$GetStt - bcs L00A5 - os9 I$Close - bcs L00A5 - ldb <u0020 - cmpb #$01 - bne L00A8 - bsr L00AE - bcs L00A5 - ldx <u0002 - lda #C$CR - sta -1,x - ldx <u0000 - lda #$03 - os9 I$ChgDir - bcs L00A5 - ldx <u0005 - ldb <u0008 - decb - lda b,x - ora #$80 - sta b,x - incb - cmpb <u0004 - bne L0075 - leay ,x - ldx <u0002 - os9 F$CmpNam - bcc L0082 -L0075 ldx <u0005 - lda #READ. - os9 I$Open - bcc L00A8 - cmpb #E$PNNF - bne L00A8 -L0082 leax <L00AC,pcr - lda #DIR.!UPDAT. - os9 I$Open - bcs L00A5 - ldx <u003A - ldu <u003C - os9 I$Seek - bcs L00A5 - ldx <u0005 - ldy <u0007 - os9 I$Write - bcs L00A5 - os9 I$Close - bcs L00A5 - clrb -L00A5 os9 F$Exit -L00A8 ldb #E$BPNam - bra L00A5 -L00AC fdb $2EFE -L00AE ldx <u0000 - bsr L00F6 - ldu <u0000 - lda ,u - cmpa #PDELIM - beq L00C7 - lda ,y - cmpa #PDELIM - beq L00C7 - leau <L00AC,pcr - stu <u0000 - bra L00CD -L00C7 leax ,y - bsr L00F6 - bcs L00F2 -L00CD stx <u0002 - stb <u0004 - leax ,y - bsr L00F6 - bcc L00CD - ldb <u0004 - beq L00F2 - ldx <u0005 - os9 F$PrsNam - bcs L00F2 - lda ,y - cmpa #PDELIM - beq L00F2 - cmpb #$1E - bcc L00F2 - stx <u0005 - clra - std <u0007 - rts -L00F2 comb - ldb #E$BPNam - rts -L00F6 os9 F$PrsNam - bcc L0119 - clrb - leau ,x -L00FE lda ,u+ - bpl L0107 - incb - cmpa #$AE - bne L010C -L0107 incb - cmpa #C$PERD - beq L00FE -L010C decb - beq L0118 - leay -u0001,u - cmpb #$03 - bcc L0118 - clrb - bra L0119 -L0118 coma -L0119 rts - - emod -eom equ * - end -
--- a/level2/cmds/setime.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,154 +0,0 @@ -******************************************************************** -* Setime - Set Date/Time -* -* $Id$ -* -* This is a Setime for use when a Y2K compliant system is required. -* -* This is somewhat of a cheat in that any attempts to do a full -* 4 digit conversion on the entered date string would have -* seriously broken the nice, generally compact codeing of the -* original setime module. I didn't want to do that, so I cheated -* and simply added one more byte to the date packet image it builds -* on the stack. Its conversion algorithm does 2 digits per pass/byte -* so if you enter 1998 (You MUST now enter the year as a 4 digit -* value!), this image will have a $13 as itas first and unused -* digit, if you enter a 20xx date, it will be a $14. -* -* I check this value after the rest of the conversion is all -* done, and if its $14 (or more), an extra 100 ($64) is added to the -* os9 year byte before the system F$STime call is made, pointing -* the F$STime call at only the normal 6 byte packet of time data. -* -* I've played with this maybe 20 minutes. Hopefully you can use -* this into the next century without any further concerns about -* the "Y2K" problem. -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 10 Made Y2K compliant GH -* 11 Made totally compliant for 1900-2155 BGP 99/05/07 - - nam Setime - ttl Set Date/Time - -* Disassembled 96/09/26 00:34:54 by Dsm v1.7 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 11 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 450 -size equ . - -name fcs /Setime/ - fcb 10 - -L0014 fcb C$LF - fcb C$LF - fcb C$BELL - fcc " >> No Clock module found <<" - fcb C$LF - fcb C$LF -L0036 fcb C$LF - fcb C$LF - fcb C$BELL - fcc " >> Clock Initialization Errors <<" - fcb C$LF - fcb C$LF -L005E fcb C$LF - fcc " yyyy/mm/dd hh:mm:ss" - fcb C$LF - fcc "Time ? " -L005EL equ *-L005E - -start cmpd #2 - bcc L00A3 - leas <-20,s - leax >L005E,pcr - ldy #L005EL - lda #1 - os9 I$WritLn - leax ,s - lda #C$CR - sta ,x - ldy #21 - clra - os9 I$ReadLn - -* Make room for time packet on stack -L00A3 leas -7,s - bsr L00E3 - stb ,s - bsr L00E3 - stb $01,s - bsr L00E3 - stb $02,s - bsr L00E3 - stb $03,s - bsr L00E3 - stb $04,s - bsr L00E3 - stb $05,s - bsr L00E3 - stb $06,s now we have a 7 byte pkt - ldb ,s get 1st 2 digits (century) - subb #19 subtract 19 from century +BGP+ - lda #100 now we will +BGP+ - mul multiply difference * 100, now B holds 0, 100 or 200 +BGP+ - addb 1,s add os9's year to century byte +BGP+ - stb 1,s save back in year - leax 1,s - os9 F$STime - bcc L00DF - cmpb #$EA - bne L00D2 - leax >L0014,pcr - ldy #$0022 - bra L00DA -L00D2 leax >L0036,pcr - ldy #40 -L00DA lda #1 - os9 I$WritLn -L00DF clrb - os9 F$Exit - -L00E3 clrb - bsr L0101 - bsr L0101 - lda ,x+ - cmpa #C$SPAC - beq L0100 - cmpa #'/ - beq L0100 - cmpa #': - beq L0100 - cmpa #', - beq L0100 - cmpa #'. - beq L0100 - leax -1,x -L0100 rts - -L0101 lda ,x get a digit - suba #$30 make it binary - bcs L0114 not a number, go - cmpa #$09 - bhi L0114 not a number, go - leax $01,x inc to next num - pshs a save a - lda #$0A do a 10x - mul - addb ,s+ save result -L0114 rts all done - - emod -eom equ * - end
--- a/level2/cmds/sleep.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ -******************************************************************** -* Sleep - Sleep for some ticks -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 2 Original Tandy distribution version - - nam Sleep - ttl Sleep for some ticks - -* Disassembled 98/09/14 23:48:34 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 2 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 450 -size equ . - -name fcs /Sleep/ - fcb edition - -start clra - clrb - bsr L0028 - bsr L0028 - bsr L0028 - bsr L0028 - bsr L0028 - tfr d,x - os9 F$Sleep - clrb - os9 F$Exit -L0028 pshs b,a - ldb ,x - subb #$30 - bcs L0048 - cmpb #$09 - bhi L0048 - leax $01,x - pshs b - ldb #$0A - mul - stb $01,s - lda $02,s - ldb #$0A - mul - addb ,s+ - adca ,s - std ,s -L0048 puls pc,b,a - - emod -eom equ * - end -
--- a/level2/cmds/tsmon.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,87 +0,0 @@ -******************************************************************** -* TSMon - Time sharing monitor -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 8 Original Tandy distribution version - - nam Tsmon - ttl Time sharing monitor - -* Disassembled 98/09/14 23:52:10 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 8 - - mod eom,name,tylg,atrv,start,size - -ChildPID rmb 1 -DevName rmb 2 -ParmArea rmb 2 -u0005 rmb 451 -size equ . - -name fcs /Tsmon/ - fcb edition - -Login fcc "LOGIN" -Param fcb C$CR - -* Intercept routine -IcptRtn rti - -start stx <DevName store pointer to device name - std <ParmArea save parameter area size - leax <IcptRtn,pcr - os9 F$Icpt install interrupt svc rtn -L0024 ldx <DevName get device name pointer - ldd <ParmArea get parameter area size - cmpd #$0002 size is 2? - bcs L0052 if less than, just use stdin - lda ,x else get char at X - cmpa #C$CR carriage return? - beq L0052 yep, just use stdin - clra else set A to 0 - os9 I$Close close stdin - lda #READ.!WRITE. - os9 I$Open open path to device (path 0 is used) - bcs Error branch if error - inca A = 1 (stdout) - os9 I$Close close stdout path - inca A = 2 (stderr) - os9 I$Close close stderr path - clra A = 0 (stdin) - os9 I$Dup duplicate to standard out - bcs Error branch if error - os9 I$Dup duplicate to standard error - bcs Error branch if error -L0052 clra A = 0 (stdin) - leax u0005,u X = buffer - ldy #$0001 character count - os9 I$ReadLn read - bcs L0024 - lda #Objct - clrb size of data area - leax <Login,pcr point to Login name - leau <Param,pcr and parameter area - ldy #$0000 size of parameter area - os9 F$Fork fork it! - bcs L0024 branch if error - sta <ChildPID save PID of Login process -L0072 os9 F$Wait wait for it to die - cmpa <ChildPID A = PID of dead process.. same as our child? - bne L0072 if not, continue waiting - bra L0024 else restart procedure -Error os9 F$Exit - - emod -eom equ * - end
--- a/level2/cmds/unlink.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -******************************************************************** -* Unlink - Unlink a module -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 2 Original Tandy/Microware version - - nam Unlink - ttl Unlink a module - -* Disassembled 98/09/10 23:12:44 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 2 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 512 -size equ . - -name fcs /Unlink/ - fcb edition - -start clra - os9 F$UnLoad - bcs exit - lda ,x+ - cmpa #C$COMA - beq start - lda ,-x - cmpa #C$CR - bne start - clrb -exit os9 F$Exit - - emod -eom equ * - end
--- a/level2/cmds/wcreate.asm Mon Jul 15 22:27:56 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,228 +0,0 @@ -******************************************************************** -* WCreate - Create a window -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 3 Original Tandy/Microware version - - nam WCreate - ttl Create a window - -* Disassembled 98/09/11 18:26:55 by Disasm v1.6 (C) 1988 by RML - - ifp1 - use defsfile - endc - -tylg set Prgrm+Objct -atrv set ReEnt+rev -rev set $01 -edition set 3 - - mod eom,name,tylg,atrv,start,size - -u0000 rmb 2 -u0002 rmb 1 -u0003 rmb 7 -u000A rmb 1 -u000B rmb 1 -u000C rmb 1 -u000D rmb 1 -u000E rmb 480 -size equ . - -name fcs /WCreate/ - fcb edition -L0015 fcb C$CR - fcb C$LF - fcc "WCreate <windpath> [-s=stype] xpos ypos width height fcol bcol [bord]" - fcb C$CR - fcb C$LF - fcc "Use: Create a new window" - fcb C$CR - fcb C$LF - fcc "Options: -s=stype place the window on a new screen, must also" - fcb C$CR - fcb C$LF - fcc " include the border color." - fcb C$CR - fcb C$LF - fcc " -z receive commands from standard input" - fcb C$CR - fcb C$LF - fcc " -? receive help message" - fcb C$CR - fcb C$LF -L0148 fdb $1B21 - -start clr <u000D - clra - coma - sta <u000C - lbsr L0260 - lda ,x - cmpa #PDELIM - bne L015D - bsr L01B2 - bra L01AF -L015D cmpa #'- - lbne L026B - leax 1,x - lda ,x+ - cmpa #$3F - lbeq L026B - cmpa #$7A - beq L0177 - cmpa #$5A - lbne L026B -L0177 lda #$01 - sta <u000D -L017B clra - leax u000E,u - ldy #$0050 - os9 I$ReadLn - bcs L019C - lda ,x - cmpa #$2A - beq L0177 - lbsr L0260 - lda ,x - cmpa #C$CR - beq L01A0 - bsr L01B5 - bcs L01AF - bra L017B -L019C cmpb #$D3 - bne L01AF -L01A0 lda #$01 - lbsr L0254 - lda <u000C - bmi L01AE - os9 I$Close - bcs L01AF -L01AE clrb -L01AF os9 F$Exit -L01B2 lbsr L0260 -L01B5 clr <u000A - clr <u0002 - lda ,x - cmpa #PDELIM - lbne L0269 - lda #$03 - pshs u,x,a - leax $01,x - os9 I$Attach - puls u,x,a - lbcs L0253 - os9 I$Open - bcs L0253 - sta <u000B - lbsr L0260 - lda ,x+ - cmpa #'- - bne L01FD - lda ,x+ - cmpa #$73 - beq L01EA - cmpa #$53 - bne L0269 -L01EA lda ,x+ - cmpa #$3D - bne L0269 - leay u0002,u - lbsr L027B - bcs L0269 - inc <u000A - ldb #$07 - bra L0203 -L01FD leay u0003,u - ldb #$06 - leax -1,x -L0203 bsr L027B - bcs L0269 - decb - bne L0203 - leax ,u - lda #$1B - sta ,x - lda #$20 - sta 1,x - tst <u000A - beq L021E - ldy #$000A - bra L0222 -L021E ldy #$0009 -L0222 lda <u000B - os9 I$Write - bcs L0253 - tst <u000D - beq L024E - tst <u000A - beq L024E - tst <u000C - bpl L0239 - lda #$01 - bsr L0254 -L0239 lda <u000B - bsr L0254 - bcs L0253 - tst <u000C - bmi L0248 - lda <u000C - os9 I$Close -L0248 lda <u000B - sta <u000C - bra L0253 -L024E lda <u000B - os9 I$Close -L0253 rts -L0254 leax >L0148,pcr - ldy #$0002 - os9 I$Write - rts -L0260 lda ,x+ - cmpa #$20 - beq L0260 - leax -1,x - rts -L0269 leas $02,s -L026B lda #$01 - leax >L0015,pcr - ldy #$0133 - os9 I$Write - lbra L01AE -L027B pshs b - clrb - stb ,y -L0280 lda ,x+ - cmpa #$30 - blt L029B - cmpa #$39 - bhi L029B - suba #$30 - pshs a - lda #$0A - ldb ,y - mul - addb ,s+ - stb ,y - bvs L02A7 - bra L0280 -L029B cmpa #C$CR - beq L02AA - cmpa #C$SPAC - bsr L0260 - bra L02AA - bne L02A7 -L02A7 comb - bra L02AD -L02AA clrb - leay $01,y -L02AD puls pc,b - - emod -eom equ * - end -