home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
cpm
/
turbopas
/
helppat.doc
< prev
next >
Wrap
Text File
|
1985-02-04
|
3KB
|
75 lines
Below is a patch that causes Turbo Pascal (Z80 version) to automatically
load the error message overlay file without asking the user first. In
essence, what happens is that Turbo displays the question (do you want
to load the message file), calls a subroutine to read the response, and
stores the response. The yes_or_no sbr returns a 0 if the answer was
'N', and non-zero (I didn't check the exact value) if the answer was
'Y'. Turbo then loads the message file if the zero flag is not set.
This patch overwrites the call to the "display string" function and the
start of the message. It clears the A register, adds one to clear the
zero flag, and branches past the call to yes_or_no. If don't you want
to load the error file, change the increment instruction to a no_op.
When the patched Turbo is run, the copyright message will be displayed
until the error file has been loaded, then it will display the "main"
menu. If the error file is not being loaded, the c-r message will be
displayed briefly, to be replaced by the main menu. Remember, this
patch is for the Z-80 versions, but a similar patch is available for the
IBM version.
NOTE: in the patches below, all user input is in lower case, and comments
to the user are in brackets [].
------------------------------------------------------------
Patch for Z-80 version 1.0
A>ddt turbo.com
DDT VERS 2.2
NEXT PC
6F00 0100
-d1e40,1e6f [ display original code ]
1E40 6E 63 2E 0D 0A 0A 00 21 23 01 CD A5 01 CD F8 01 nc.....!#.......
1E50 0D 0A 0A 0A 49 6E 63 6C 75 64 65 20 65 72 72 6F ....Include erro
1E60 72 20 6D 65 73 73 61 67 65 73 00 CD 1F 29 32 6D r messages...)2m
-a1e4d [ enter patch in assembler ]
1E4D sub a
1E4E inr a [ type NOP if you DON'T want the error file loaded ]
1E4F jmp 1e6e
1E52 . [ exit from assembler input mode ]
-d1e40,1e6f [ display patched code ]
1E40 6E 63 2E 0D 0A 0A 00 21 23 01 CD A5 01 97 3C C3 nc.....!#.......
1E50 6E E1 0A 0A 49 6E 63 6C 75 64 65 20 65 72 72 6F n...Include erro
1E60 72 20 6D 65 73 73 61 67 65 73 00 CD 1F 29 32 6D r messages...)2m
-g0 [ exit from DDT ]
A>save 110 turbo.com [ save patched version ]
A>
------------------------------------------------------------
Patch for Z-80 version 2.0
A>ddt turbo.com
DDT VERS 2.2
NEXT PC
7800 0100
-d2100,212f [ display original code ]
2100 6C 3A 20 00 21 53 01 CD D0 01 CD 25 02 0D 0D 0A l: .!S.....!....
2110 0A 0A 49 6E 63 6C 75 64 65 20 65 72 72 6F 72 20 ..Include error
2120 6D 65 73 73 61 67 65 73 00 CD 42 2c 32 24 44 C4 messages..B,2$D.
-a210a [ enter patch in assembler ]
210A sub a
210B inr a [ type NOP if you DON'T want the error file loaded ]
210C jmp 212c
210F . [ exit from assembler input mode ]
-d2100,212f [ display patched code ]
2100 6C 3A 20 00 21 53 01 CD D0 01 97 3C C3 2C 21 0A l: .!S.....<.,!.
2110 0A 0A 49 6E 63 6C 75 64 65 20 65 72 72 6F 72 20 ..Include error
2120 6D 65 73 73 61 67 65 73 00 CD 42 2c 32 24 44 C4 messages..B,2$D.
-g0 [ exit from DDT ]
A>save 119 turbo.com [ save patched version ]
A>
------------------------------------------------------------