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: 6250
Author: adban_de_corcy
Date: 03/09/2007
Subject: Re: Tweaking the JSW engine: One for the experts
Ok...
So let me do a guided exercise:
I want to modify Room 47. Room 47's right exit takes you to Room 77,
unless you do it at the right time. If you do it at the right time, it
takes you to Room 78.
1) Find where Room 47 is stored. 47/32 = 1. Quotient 1, remainder 15.
Quotient 1 = Memory Bank 3
Remainder 15
2) Multiply Remainder x 512
15 x 512 = 7680
3) Convert it to hexadecimal.
7680 = 1E00
4) Add C0FD
1E00 + C0FD = DEFD
So, I have to modify bank 3, offset #DEFD
5) Reserve a memory page: let's use #d800
6) Enter in bank 3, offset #DEFD (This address defines Room 47)
16 22 3a 83 85 fe 30 28
06 fe 35 28 02 16 1d 7a
32 e9 80 c9
Change 22 to 77 (hex 4D)(Room 77)
Change 1d to 78 (hex 4E) (Room 78)
Change e9 to ea (left exit to right exit)
7) Go to offset #C2FD and enter
00 d8
I hope I got it right...
It seems there's something wrong... It seems I've corrupted Room 47,
and the game enters in a infinite-death mode as soon as I enter Room 47.
Could you please help me, John? I don't understand what I'm doing
wrong... I think I followed your directions correctly...
