Skip to content

S.T.U.N. Runner for Analogue Pocket 0.2.0

Choose a tag to compare

@plasticbugs plasticbugs released this 04 Sep 17:40
· 9 commits to main since this release

S.T.U.N. Runner for Analogue Pocket 0.2.0

The 3D scenes now render at the arcade's 20 frames per second (0.1.x ran them at 15), and the boot and attract sequence runs within 18 frames of MAME's timeline instead of about 150.

The cause of both was one piece of the graphics processor's memory glue: the TMS34010 clears the screen with VRAM shift-register row transfers, and the core moved each row through SDRAM a word at a time, freezing the graphics processor for most of every fourth frame. Rows now go through SDRAM burst writes, copying the source row's current contents exactly as MAME does.

Also in this release (from 0.1.0): GSP host-port accesses are served between the chip's memory cycles (the attract demo's starfield band), and the 68k's sound commands are paced past the 6502's NMI dead spot (the mid-level sound drone).

Installing

  1. Copy Cores/, Platforms/ and Assets/ from the zip onto the root of the Pocket's SD card.

  2. Build the ROM image from your own MAME stunrun romset and copy it to Assets/stunrun/common/stunrun.rom:

    python3 mra_build.py stunrun.mra stunrun.zip

    Python 3 only; the script checks every ROM's CRC32 and the finished image's md5. Assets/stunrun/common/README.txt on the card explains the same steps. No ROMs are included.

Controls

D-pad or left stick: steer and pitch (the yoke; a centred yoke is the arcade's "lowered" position). A / X / R: fire. B / Y / L: boost. Select: coin. Start: start.

Known differences from the arcade

  • For a few seconds while the core loads, before the game clears its frame buffer, the picture shows whatever the previous core left in memory.