home *** CD-ROM | disk | FTP | other *** search
- ;*** RMDIR PROGRAM
-
- .SEQ ACEHEAD.S
- .ORG ACE┴PP┴DDRESS
- .OBJ "@0:RMDIR"
-
- JMP MAIN
- .BYTE ACE╔─1,ACE╔─2,ACE╔─3
- .BYTE 64,0 ;** STACK,RESERVED
-
- ;*** GLOBAL DECLARATIONS
-
- LIBWORK = $60
-
- CHR├╥ = $0D
- CHR╤UOTE = $22
-
- ;******** STANDARD LIBRARY ********
- PUTS = *
- LDX #STDOUT
- FPUTS = *
- STA ZP+0
- STY ZP+1
- LDY #$FF
- - INY
- LDA (ZP),Y
- BNE -
- TYA
- LDY #0
- JMP WRITE
- EPUTS = *
- LDX #STDERR
- JMP FPUTS
-
- PUTCHAR = *
- LDX #STDOUT
- PUTC = *
- STA PUTC┬UFFER
- LDA #<PUTC┬UFFER
- LDY #>PUTC┬UFFER
- STA ZP+0
- STY ZP+1
- LDA #1
- LDY #0
- JMP WRITE
- PUTC┬UFFER .BUF 1
-
- GETCHAR = *
- LDX #STDIN
- GETC = *
- LDA #<GETC┬UFFER
- LDY #>GETC┬UFFER
- STA ZP+0
- STY ZP+1
- LDA #1
- LDY #0
- JSR READ
- BEQ +
- LDA GETC┬UFFER
- RTS
- + SEC
- RTS
- GETC┬UFFER .BUF 1
-
- GETARG = *
- STY ZP+1
- ASL
- STA ZP+0
- ROL ZP+1
- CLC
- LDA ACE┴RGV+0
- ADC ZP+0
- STA ZP+0
- LDA ACE┴RGV+1
- ADC ZP+1
- STA ZP+1
- LDY #0
- LDA (ZP),Y
- TAX
- INY
- LDA (ZP),Y
- STX ZP
- STA ZP+1
- RTS
-
- ;===REMOVE===
- ARG = 2
- NAME = 4
-
- MAIN = *
- ;** CHECK ARGUMENT COUNT
- LDA ACE┴RGC+1
- BNE ENOUGH┴RGS
- LDA ACE┴RGC+0
- CMP #2
- BCS ENOUGH┴RGS
-
- USAGE = *
- LDA #<USAGE═SG
- LDY #>USAGE═SG
- JMP PUTS
-
- USAGE═SG = *
- .ASC "╒SAGE: RMDIR FLAT─IR╬AME ..."
- .BYTE CHR├╥,0
-
- ENOUGH┴RGS = *
- LDA #1
- LDY #0
- STA ARG+0
- STY ARG+1
- - LDA ARG+0
- LDY ARG+1
- JSR GETARG
- LDA ZP+0
- LDY ZP+1
- STA NAME+0
- STY NAME+1
- ORA ZP+1
- BEQ PRG┼XIT
- JSR STOPKEY
- BCS STOPPED
- JSR ECHO
- LDA NAME+0
- LDY NAME+1
- STA ZP+0
- STY ZP+1
- JSR RMDIR
- BCC +
- JSR ERROR
- + INC ARG+0
- BNE +
- INC ARG+1
- + JMP -
-
- PRG┼XIT = *
- RTS
-
- STOPPED = *
- LDA #<STOPPED═SG
- LDY #>STOPPED═SG
- JMP EPUTS
- STOPPED═SG = *
- .ASC "<STOPPED>"
- .BYTE CHR├╥,0
-
- ERROR = *
- LDA #<ERROR═SG1
- LDY #>ERROR═SG1
- JSR EPUTS
- LDA NAME+0
- LDY NAME+1
- JSR EPUTS
- LDA #<ERROR═SG2
- LDY #>ERROR═SG2
- JMP EPUTS
-
- ERROR═SG1 = *
- .ASC "┼RROR ATTEMPTING REMOVE DIR "
- .BYTE CHR╤UOTE,0
- ERROR═SG2 = *
- .BYTE CHR╤UOTE,CHR├╥,0
-
- ECHO = *
- LDA #<ECHO═SG1
- LDY #>ECHO═SG1
- JSR EPUTS
- LDA NAME+0
- LDY NAME+1
- JSR EPUTS
- LDA #<ECHO═SG2
- LDY #>ECHO═SG2
- JMP EPUTS
-
- ECHO═SG1 = *
- .ASC "╥EMOVING DIRECTORY "
- .BYTE CHR╤UOTE,0
-
- ECHO═SG2 = *
- .BYTE CHR╤UOTE,CHR├╥,0
-
- ;===THE END===
- END = *
-