Resource centre for ZX Spectrum games
using Manic Miner and Jet Set Willy game engines
Archive of the
Manic Miner & Jet Set Willy Yahoo! Group
messages
|
|
||
|
|
Message: 4650
Author: andrewbroad
Date: 04/01/2005
Subject: F.A.O. DrUnKeN mAsTeR (F.I.R.3 / How to Apply POKEs)
dm_boozefreek wrote:
>As I explained in Message 4394, two pokes will put it right:
>> BTW, did you see my message about fixing the bug in F.I.R.3?
>>http://groups.yahoo.com/group/manicminerandjetsetwilly/message/4394
>
> I did but unfortunately short of starting again from scratch I
> have absolutely no idea how to put it right :(
POKE 58862,54
POKE 58863,150
Is this enough information? If not, please read on...
---------------------------------
How to Apply POKEs to a .SNA File
---------------------------------
"finished.sna" is a running snapshot, so there are two ways to apply
pokes to it:
(a) The quick-and-dirty solution: Load the snapshot in an emulator,
use the emulator's direct poking facility (e.g. F9 in RealSpectrum)
and simply resave the snapshot. Dirty because the program will run
on a little between loading and saving.
(b) Use a program that allows you to apply pokes to snapshots, such
as SPECSAISIE Poke
<http://www.geocities.com/andrewbroad/spectrum/download/specsaisie.ht
ml> (Yahoo! will cut up this URL).
Type the following commands at a Command Prompt:
1> java Poke finished.sna 58862 54
2> java Poke finished.sna 58863 150
Notes:
1. This assumes you have installed both Java and SPECSAISIE, and
have set up your PATH and CLASSPATH environment-variables correctly.
2. "Poke" in SPECSAISIE 1.2 overwrites the input-file, so you may
want to have a backup to hand just in case.
3. "Poke" in SPECSAISIE 1.3 (beta in Files section) takes the output-
file as an extra argument, so the same effect can be had with:
1> java Poke finished.sna finished.sna 58862 54
2> java Poke finished.sna finished.sna 58863 150
Or, more safely, with:
1> java Poke finished.sna finished1.sna 58862 54
2> java Poke finished1.sna finished2.sna 58863 150
3> java Compare finished.sna finished2.sna
[58862]: 54
[58863]: 150
Then you can delete "finished.sna" and "finished1.sna", and
rename "finished2.sna" back to "finished.sna".
---------------------------------
How to Apply POKEs to a .TAP File
---------------------------------
(c) Using an emulator in BASIC mode:
{Open "original.tap" for reading}
MERGE ""
CLEAR 32767
LOAD "" CODE
POKE 58862,54
POKE 58863,150
{Open "original.tap" for writing}
SAVE "JetSet" LINE 0
SAVE "jsw.js2" CODE 32768,32768
{Close "original.tap"}
(d) Using SPECSAISIE 1.3:
1> java Split original.tap
{This creates "original_1.tap" and "original_2.tap"}
2> java Poke original_2.tap original.sna 58862 54
{This creates "original.sna"}
3> java Poke original.sna original.sna 58863 150
4> java SNAtoTAP original.sna original_2.tap "jsw.js2" 32768 32768
{This overwrites "original_2.tap"}
5> java Cat original.tap original_1.tap original_2.tap
{This overwrites "original.tap" as "original_1.tap" +
"original_2.tap"}
original.sna, original_1.tap and original_2.tap can now be deleted.
(e) If you're using a Spectrum-based JSW-editor, you could apply the
pokes using the emulator's direct poking facility (e.g. F9 in
RealSpectrum) and resave the .tap file, but this will lose the BASIC
loader, so you'd have to reconcatenate "original.tap" as per Method
(c) or (d).
(f) Does JSWED allow you to apply arbitrary pokes, or to set patch-
vectors to point to a RET instruction (as these pokes do for the
Room 37 patch-vector)?
(Read the manual, Andrew, read the manual already...)
--
Dr. Andrew Broad
http://www.geocities.com/andrewbroad/
http://www.geocities.com/andrewbroad/spectrum/
http://www.geocities.com/andrewbroad/spectrum/willy/
