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

 

arrowleft Previous message
Next message arrowright
arrowleftthread Previous in thread
Next in thread arrowrightthread

 

 

Message: 6908

Author: ian.rushforth

Date: 04/10/2016

Subject: Re: Advanced Trainer - Daniel's suggestions

 

Andrew wrote:

Standing on a Crumbly cell in row 0 causes row 8 to crumble!

I've noticed this amazing phenomenon in one of the rooms of "Manic
Scribbler".

It first appeared in MM:N-AT's "A Reel Challenge" [1], albeit for
purely aesthetic value. In Manic Scribbler's "Ambergris screen" [2],
it's actually cell-row 9 that crumbles, because the Crumbly cell is
in row 1.

The pixel-pattern crumbles in row 8 (or 9), but the colour-attribute

(and hence cell-type) changes from Crumbly to Air in row 0 (or 1) as
you'd expect.

Whilst it's true that the code which is supposed to change the colour-attribute of a Crumbly cell after it pixels have been cleared, in the circumstances described above, does affect the cell under Willy's feet in row 0 or 1, rather than the cell in row 8 or 9 that has had its pixels 'quirkily' removed...

...this does not manifest itself in a change to the colour-attribute of the Crumbly cell in row 0 or 1. Rather, it causes the top pixel-row of the Crumbly cell upon which Willy is standing, to be temporarily cleared (temporarily because it is only cleared whilst Willy is standing on it ; if he jumps up and down then the pixel-row disappears, and then reappears when he lands).

This occurs because, instead of incrementing HL from the range #5Cxx to #5Exx (i.e. switching from the Occupied Room Attribute Buffer, to the Empty Room Attribute Buffer, to permanently remove the Crumbly from the room) the code (at #8BD4-#8BDC) ends up pointing HL at an address in the range #60xx, which lies within the Occupied Room Display Buffer (and is therefore refreshed during every 'tick', refilling the errant pixel-row from #70xx in the Empty Room Display Buffer if Willy is elsewhere).

 

 

arrowleft Previous message Back to the Yahoo! Archive
home page
Next message arrowright
arrowleftthread Previous in thread Next in thread arrowrightthread