haroldo-ok

Jazz Jackrabbit Infinite Runner For Sms — Development skill for Claude Code

Development community

This is a W.I.P. (currently very bad) Jazz Jackrabbit-themed infinite runner with for Sega Master System, that I generated using Claude while I was far away from my computer.

How to install Jazz Jackrabbit Infinite Runner For Sms

This entry records only its repository, not the path inside it, so there is no exact command to give. Open haroldo-ok/jazz-jackrabbit-infinite-runner-for-sms and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Jazz Jackrabbit Infinite Runner For Sms does

This is a W.I.P. (currently very bad) Jazz Jackrabbit-themed infinite runner with for Sega Master System, that I generated using Claude while I was far away from my computer. I just gave it a few sprite sheets from the Spriter's Resource and kept pointing out various corrections that needed to be done.

Alternatives in Development

  • Opencove — Your infinite canvas workspace for agents, tasks, knowledge, and research 1.2k ★
  • Infinite Agentic Loop — An experimental project demonstrating Infinite Agentic Loop in a two-prompt system using Claude Code 537 ★
  • Bob Export — Create a Hacker Bob post-release improvement bundle for the currently installed Bob version 97 ★

README

Here's a full summary of what we built together:

**Project: Jazz Jackrabbit Infinite Runner for Sega Master System**

A single-button endless runner ROM built from scratch using devkitSMS (SDCC C compiler + SMSlib), compiled to a valid 32KB `.sms` file with a proper `TMR SEGA` header and checksum --- bootable on real hardware and emulators.


**Toolchain**

  • Installed sdcc (Small Device C Compiler with Z80 backend)
  • Cloned devkitSMS (sverx's SMS/GG C library) from GitHub
  • Used ihx2sms to convert the SDCC linker output to a valid SMS ROM

**Asset extraction pipeline** (Python/Pillow)

All graphics were extracted directly from the uploaded Jazz Jackrabbit (1994, DOS) sprite sheets and tileset:

  • **Jazz sprites**: Scanned the sprite sheet with density analysis to find actual pixel-gap separators (no fixed grid), identified the correct animation rows visually, and extracted tight per-sprite bounds. Row 2 (y=97--126) is the running animation (Jazz leaning forward with motion-blur ear streaks). Row 4 col 0 is the jump frame. Sprites are 4×5 SMS tiles (32×40px), padded right/bottom only to avoid bleeding from adjacent cells.

  • **Turtle Goon sprites**: Similarly scanned the enemies sheet using both background colors (the sheet has two --- dark and light blue-grey). Found 4 walk frames in columns x=36--100, 107--172, 178--242, 250--305, all at y=36--79. Extended right edge to x=100 to capture the beak. Flipped horizontally so the turtle faces left toward Jazz. Scaled proportionally to 32×24px (4×3 SMS tiles).

  • **Diamondus tileset**: Identified 4 key 32×32 source tiles --- night sky with stars (row 13 col 0), green neon-pillar ground top (row 1 col 4), dark purple speckled ground fill (row 5 col 0), and cloud (row 0 col 1). Each 32×32 tile was split into a 4×4 grid of 8×8 SMS sub-tiles. The BG palette (16 colors) was derived from the 23 unique colors actually present in those tiles.

  • **Color quantization**: A combined 16-colo