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: 5680
Author: andrewbroad
Date: 07/03/2006
Subject: Re: How JSWED recognises which game-engine it's given
john_elliott_uk wrote:
>So... if you save the snapshot before the RANDOMIZE USR VAL "20140"
>>> Weirdness. In my copy there's a string at #6480 reading
>>>
>>> THE FINAL FROINTIER BY D.P.ROWSON.
>>>
>>> and I thought it would be in all copies
>
> Partly solved now. It's part of the decrypt sequence, so once the
> game is completely decrypted it goes away. I'll change the
> recognition sequence in 2.3.1.
in the BASIC loader, then JSWED will recognise it as a JSW II game
but the data will be garbled because they're still encrypted,
whereas if you save the snapshot on the title-screen, the data will
be decrypted but it won't be recognised as JSW II?
I've tried saving 48K SNA files at both points, but JSWED doesn't
recognise either of them as JSW II, even after I've put "THE FINAL
FROINTIER BY D.P.ROWSON." at #6480. So I've been unable to break
into the JSW II editor yet.
Matching a text-string isn't a reliable method of recognising a game-
engine anyway (what if someone changed "AIR" to "GAS" in MM, for
example?). It would be better to match some data (e.g. critical
machine-code instructions) which are most unlikely to change in any
patch to that game-engine.
Then, if no game-engine matches, perhaps JSWED could calculate the
percentage of bytes which match each known game-engine, and select
the game-engine with the highest percentage, and only treat it as a
non-match (i.e. only enabling the hex-editor) if no game-engine has
a high enough percentage.
SPECSAISIE currently has to be told by the user which game-engine
it's given, but automatic recognition is a possibility for future
revisions.
JSWED should allow the game-engine to be selected manually in case
automatic recognition fails or is incorrect, or the user just likes
looking at misinterpreted data! :-)
Another issue is that 128K SNA files (RealSpectrum operates in 128K
mode by default) always seem to be recognised as JSW128 games
(unless, I presume, they are recognised as JSW64 or MM128).
--
Dr. Andrew Broad
http://geocities.com/andrewbroad/
http://geocities.com/andrewbroad/spectrum/
http://geocities.com/andrewbroad/spectrum/willy/
