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: 5904

Author: john_elliott_uk

Date: 20/08/2006

Subject: Re: A technical question about J. G. Harston's patch - items problem

 

--- In manicminerandjetsetwilly@yahoogroups.com, "Daniel"
wrote:

> So I guess - thinking aloud - that after applying the patch, the
> addresses &A4xx would have to be modified manually (in JSWED's Hex
> editor, I guess). But what needs to be done exactly?

As I understand the way the patch works, you need to reset bit 6 on
all items in rooms 0-63, and set it on items in rooms 64-127. Hex
values #00-#3F and #80-#BF have bit 6 reset, and values #40-#7F and
#C0-#FF have it set.

> Also, why are the items invisible (in the emulator) in case of some
> TAP files (after applying the patch), but they are visible and
> in the wrong places in case of other TAP files?

I suspect that items being invisible is due to bit 6 being set, so
that instead of the items appearing in room , they appear in room
. Not sure why their locations would be wrong.

> Does the value of the
> addresses &A6xx need to be corrected as well? If so, how exactly?

It shouldn't need to be, because just before the title screen is
drawn (the code is at #8800) the item-collected flags get set for all
items. If you patch a running snapshot this may get missed, but
cold-starting from .TAP or from JSWED's Playtest option will ensure it
gets called.

It's interesting to note that JSW128 and JSW64 took the opposite
approach to expanding the item table - the 'item collected' flag and
the top bit of the item Y-coordinate stay in the #A400-#A4FF range,
and the item location moves to a new table at #C000-#C0FF.

 

 

arrowleft
arrowright