Changelog
Version 0.6
- Fixed bugs with the input
- Made some small code changes here and there
- Added a variable for blink reduction
Version 0.5
- Fixed CPU resetting and set it to the backspace key
- moved font loading to a separate script
- added key to load a rom (O key)
- added more comments
- added info
Features:
- Supports most, if not all chip8 and super chip8 opcodes
- Should play most roms
- Easy to learn from
- I included 1 public domain rom (breakout)
- Can see the cpu instructions if you run in debug mode
- Disabled sound since it's just annoying beeps (ie, internal speaker)
Controls:
- Space: Pause
- Backspace: Reset CPU
- 'O': Load rom
- keypad: Game controls (keys vary per game)
- Run in debug mode to see the cpu instructions
- remember to enable num-lock
Notes:
There may be bugs
Chip8 notes
- There are 16 8 bit registers, the last one is used as the carry flag, and 1 16 bit register (I)
- Memory 0-$200 is reserved for the font file
- the stack is normally 16 levels but my implementation has 25
- there are normally 2 timers, but this implementation only uses 1 (1 is normally used for sound)
- the graphics are mono with resolution of 64×32 (double in super chip 8 mode)
- the cpu opcodes are 2 bytes each.
Mirror
Wikipedia: http://en.wikipedia.org/wiki/CHIP-8
Below are public domain
Some Chip 8 roms: http://www.pdc.kth.s...p8/CHIP8/GAMES/
Some super chip roms:
http://www.zophar.ne...p8/sc-games.zip
Edited by Bathy, 12 October 2009 - 10:32 PM.











