First post, by K1n9_Duk3
- Rank
- Member
Here is a fix that will help you if you're trying to run Crystal Caves and/or Secret Agent on a real DOS PC and the display is only showing you vertical lines that stretch from the top of the screen all the way to the bottom, like in the following screenshot:
Copy the following script and save it as a plain text file. Then get my patching utility and open the text file with it. Follow the instructions to patch the games' executables.
Note that there are at least two slightly different versions of CC1.EXE floating around. Both versions are supported by this patch, so it is completely normal to get one error message saying that the size of CC1.EXE doesn't match during the patching process. If you don't have all of these games, simply click "Cancel" when the program asks you to open an executable that you don't have. The program will continue with the other executales in the script.
This patch script will work on version 1.0 as well as version 1.0a of both games (1.0a is really just a hacked up v1.0, where two bytes have been changed to prevent the game from setting the date back to the 1900's).
%exefile cc1.exe 184304
%patch $28C6C
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%exefile cc1.exe 184288
%patch $28C5C
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%exefile cc2.exe 183296
%patch $2887C
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%exefile cc3.exe 189472
%patch $2A09C
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%exefile sam1.exe 188768
%patch $29E16
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%exefile sam2.exe 189744
%patch $2A1E6
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%exefile sam3.exe 189792
%patch $2A216
$D1 $EB # shr bx, 1
$8A $E3 # mov ah, bl
$BA $03D4w # mov dx, 3D4h
$B0 $13 # mov al, 13h
$EF # out dx, ax
$5D # pop bp
$CA $0002w # retf 2
%end