home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
UTILS
/
SQUSQ
/
CRN24PAT.AZM
< prev
next >
Wrap
Text File
|
2000-06-30
|
1KB
|
45 lines
;CRN24PAT.AZM
; causes XZY files to crunch to XZZ, as suggested in the source for
; CRUNCH24.
; The equated labels refer to the CRUNCH24 source; the equated values
; refer to the distributed version of CRUNCH24.COM. This code
; takes fewer bytes than the original.
; To use:
; A>Z1 CRN24PAT
; A>MLOAD CRUNCH24.COM,CRN24PAT
CBL EQU 0248H
OUTFCB EQU 1828H
ERR7 EQU 06ECH
SKP991 EQU 0349H
ORG CBL+20 ; start 8 lines down from CBL:
LD HL,OUTFCB+9 ; point to first char in extension
LD A,' ' ; See if extension is blank
CP (HL) ;
LD A,'Z' ; we'll need a Z later
JR Z,ZZZ ; If so, force an extension of "ZZZ"
INC HL ; point to second char in extension
CP (HL) ; See if middle letter is "Z"
JR NZ,XZY ; Normal condtition- simply force 2nd ltr to Z
INC HL ; point to last char
CP (HL) ; See if last char is "Z"
JR NZ,XZZ ; no - extension will be "XZZ"
DEC HL ; point to first char
DEC HL
CP (HL) ; See if first char is "Z"
JR NZ,ZZZ ; no - extension will be "ZZZ"
LD DE,ERR7 ; Already "ZZZ" - User had better rename file
JP SKP991 ; but give him a straight copy, anyway
ZZZ: LD (HL),A ; First char becomes Z
INC HL
LD (HL),A ; Second char becomes Z
INC HL
XZY:
XZZ:
LD (HL),A ; Pointed-to char becomes Z
; since this code takes less space than original, we fill with NOPs (00)
DB 0,0,0,0,0,0,0,0,0
END