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

Author: andrewbroad

Date: 28/12/2002

Subject: Re: Manic Miner: the Three-Blocks Bug

 

john_elliott_uk wrote:

>
> andrewbroad wrote:
> >
> > I call it the Three-Blocks Bug because it causes three erroneous
> > blocks to appear in the playing-area, always at (0,1), (0,5) and
> > (3,24).
> >
> > I think it might be caused by excessive use of the pause-key.
> > Unlike other MM games, the pause-key is as much a control of
> > Ma jolie as left, right and jump! ;-)
>
> I find it hard to see how the pause can be implicated, since it
> only uses the A and B registers, and the code immediately after
> the pause changes these anyway.

Indeed the 3-Blocks Bug doesn't seem to be caused by pausing.
I recently noticed the blocks appearing when I was just walking
along! A very insidious bug! :-(

I can only imagine that at some point the game-engine is trying to
write to three memory-locations, and gets the addresses wrong such
that it gets printed on the screen. But there must be more to it than
that, as the sound is distorted, and on some screens the blocks
change colour when you jump, or if a guardian walks through them!
Curiouser and curiouser! Perhaps it's to do with OUT instructions
rather than memory?

I'll see if I can get it to happen on an emulator, so that I can
compare a snapshot /without/ the bug with a snapshot /with/ the bug,
and see if there are any changes at unusual addresses.

--
Andrew Broad
http://www.cs.man.ac.uk/~broada/
http://www.cs.man.ac.uk/~broada/spectrum/
http://www.cs.man.ac.uk/~broada/spectrum/willy/

 

 

arrowleft
arrowright