Anonymous

Loading routine "cores": Difference between revisions

From Sinclair Wiki
Document the Search Loader(s?).
(Document Search Loader.)
(Document the Search Loader(s?).)
Line 142: Line 142:


This code has fairly obviously been constructed to have exactly the same runtime as the ROM code, which explains the always failing <code>RET C</code> and <code>NOP</code> (which replaces the <code>RRA</code> of the ROM routine). All the variants which replace the <code>RET NC</code> with a <code>NOP</code> or similar actually have a different runtime as a failing conditional <code>RET</code> is the ''only'' Z80 instruction which takes 5 t-states.
This code has fairly obviously been constructed to have exactly the same runtime as the ROM code, which explains the always failing <code>RET C</code> and <code>NOP</code> (which replaces the <code>RRA</code> of the ROM routine). All the variants which replace the <code>RET NC</code> with a <code>NOP</code> or similar actually have a different runtime as a failing conditional <code>RET</code> is the ''only'' Z80 instruction which takes 5 t-states.
==== "Variant" Search Loader ====
Used by some late era Gremlin games; so far seen only in [https://spectrumcomputing.co.uk/index.php?cat=96&id=2937 Lotus Esprit Turbo Challenge] and [https://spectrumcomputing.co.uk/index.php?cat=96&id=4660 Space Crusade].
LD-SAMPLE  INC B
            RET Z
            LD A,7F
            IN A,(FE)
            XOR C
            AND 40
            JR Z,LD-SAMPLE
While this maintains the distinctive <code>AND 40</code> of the Search Loader, I suspect it's actually an independent derivation.
49

edits