mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-24 17:04:19 +00:00
Upload
Digital Research
This commit is contained in:
68
CPM OPERATING SYSTEMS/CPM 2.X/CPM 2.2/PATCHES/MAC.FIX
Normal file
68
CPM OPERATING SYSTEMS/CPM 2.X/CPM 2.2/PATCHES/MAC.FIX
Normal file
@@ -0,0 +1,68 @@
|
||||
TOPIC : HOW TO MODIFY MAC.COM TO NOT CHANGE LOWER-CASE TO UPPER-CASE
|
||||
FROM : IRVIN M. HOFF
|
||||
DATE : 22 OCT 82
|
||||
|
||||
MAC.COM (by Digital Research) is one of the most popular assemblers
|
||||
used with CP/M. It has one feature that most people do not like -- when
|
||||
making a print file (FILENAME.PRN) it automatically converts any lower-
|
||||
case characters to upper-case.
|
||||
|
||||
Neither ASM.COM nor RMAC.COM by the same firm does that.
|
||||
|
||||
There are two ways to modify MAC.COM to approach this problem.
|
||||
Changing address 165C from C8 to D0 will convert any lower-case source
|
||||
code to upper, leaving DB strings and comments alone. (1st example
|
||||
below). Changing 1663 from E6 to 5F will leave all the lower case
|
||||
comments alone, will convert all DB strings to upper case, but will
|
||||
toss out any lower case code that does not agree with labels that
|
||||
are also lower case. (second example.)
|
||||
1st example: leaves all comments and DB strings alone
|
||||
===================================================
|
||||
|
||||
1655 47 MOV B,A
|
||||
1656 3A 05 30 LDA 3005
|
||||
1659 FE 03 CPI 03
|
||||
165B 78 MOV A,B
|
||||
165C C8 RZ
|
||||
|
||||
Change the RZ (C8) to a RNC (D0)
|
||||
|
||||
Using DDT or SID:
|
||||
|
||||
165C C8 D0
|
||||
|
||||
A>SAVE 46 MAC.COM
|
||||
|
||||
This will convert any source code not in a string from lower to
|
||||
upper, and not bother any comment areas or DB strings. It's as close
|
||||
as you can get easily, to leaving all lower case alone.
|
||||
|
||||
2nd example: leaves all comments alone, but throws out lower case
|
||||
source code including strings that do not match.
|
||||
===================================================
|
||||
1663 E6 5F (ANI 5FH)
|
||||
|
||||
Using DDT or SID, change to:
|
||||
|
||||
1663 E6 7F (ANI 7FH)
|
||||
|
||||
A>SAVE 46 MAC.COM (new, normal version)
|
||||
|
||||
|
||||
This prevents the lower-case from being changed to upper-case.
|
||||
For a complete disassembly of that area:
|
||||
|
||||
|
||||
1655 47 MOV B,A ;Put the char. into 'B' temporarily
|
||||
1656 3A 05 30 LDA ABORT ;See any request to quit
|
||||
1659 FE 03 CPI 03
|
||||
165B 78 MOV A,B ;Get the char. back again
|
||||
165C C8 RZ ;Exit with the char. if a 03
|
||||
165D FE 61 CPI 61H ;Less than lower-case alpha char.?
|
||||
165F D8 RC ;If less, ignore
|
||||
1660 FE 7B CPI 7AH+1 ;More than lower-case alpha char.?
|
||||
1662 D0 RNC ;If more, ignore
|
||||
1663 E6 5F ANI 5FH ;Otherwise change to upper-case
|
||||
1665 C9 RET ;Finished
|
||||
|
||||
--end--
|
||||
Reference in New Issue
Block a user