Skip to content

ROM compatibility (tentative) #9

@tomdaley92

Description

@tomdaley92

Here is an incomplete list of known CHIP-8 programs that require special settings to run properly, those that have unresolved issues with my emulator, or those that simply have issues in general. Some of these settings or "quirks" will apply to other CHIP-8 emulators as well so I wanted to take this chance to document something that should've been documented a long time ago. Hopefully this will shed some light on the discrepancies between the various CHIP-8 documents and opcode implementations that you will find all over the web.

  • Astro Dodge [Revival Studios, 2008]
    • Problem: Garbage on sides of screen, score won't increment.
    • Fix: load_store_quirk = 1
  • Tic-Tac-Toe [David Winter]
    • Problem: Score won't increment.
    • Fix: load_store_quirk = 1
  • Animal Race [Brian Astle]
    • Problem: Rendered Garbage, text unreadable.
    • Fix:
    • Problem: Animal sprites are all messed up.
    • Fix: load_store_quirk = 0
  • BMP Viewer - Hello (C8 example) [Hap, 2005]
    • Problem: Renders jumbled garbage on a single row at the top of the screen.
    • Fix: shift_quirk = 1
  • Space Invaders [David Winter]
    • Problem: Aliens disappear and reappear in pairs when you hit only one.
    • Fix: shift_quirk = 1
  • Blinky [Hans Christian Egeberg, 1991]
    • Problem: map is rendered improperly, unplayable.
    • Fix: shift_quirk = 1
    • Problem: Game freezes (ends) as soon as you hit a wall
    • Fix: load_store_quirk = 1
  • Stars [Sergey Naydenov, 2010]
    • Problem: Stars don't start flashing, only dots appear.
    • Fix: load_store_quirk = 1
  • Missile [David Winter]
    • Problem: Sprite disappears when it start moving too fast.
    • Fix: Run the interpreter at anything <=720 instr/sec.
  • Space Intercept [Joseph Weisbecker, 1978]
    • Problem: Ship flickers and goes away for a few seconds at a time.
    • Fix: Run the interpreter at anything <=600 instr/sec.
  • Connect 4 [David Winter]
    • Problem: Game pieces overwrite each other and only stack diagonally.
    • Fix: load_store_quirk = 1
  • Keypad Test [Hap, 2006]
    • Problem: keypad does not render properly
    • Fix: shift_quirk = 1
  • Hidden [David Winter, 1996]
    • Problem: The last two tiles left are different, so you can't beat the game.
    • Fix: load_store_quirk = 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions