Thread: CHIP8 thread
View Single Post
Old November 21st, 2008   #1 (permalink)
Dax
ライチュウ
 
Dax's Avatar
 
Join Date: Nov 2006
Location: USA
Posts: 3,292
CHIP8 thread

Inspired by RAP, I decided to write a C8 emulator too. Here's the progress so far:

Documents used:
1. Chip8 thread on Emutalk: http://www.emutalk.net/showthread.php?t=19894
2. Chip8 thread on our forums
3. Cowgod's documentation: http://devernay.free.fr/hacks/chip8/C8TECH10.HTM
4. Wikipedia: http://en.wikipedia.org/wiki/CHIP-8
5. David Winter's docs: http://www.pdc.kth.se/~lfo/chip8/CHIP8.htm

Opcodes:

Regular C8:

0nnn - SYS addr: Yes(Ignored)
00E0 - CLS: Yes
00EE - RET: Yes
1nnn - JP: Yes
2nnn - CALL: Yes
3xkk - SE: Yes
4xkk - SNE: Yes
5xy0 - SE: Yes
6xkk - LD: Yes
7xkk - ADD: Yes
8xy0 - LD: Yes
8xy1 - OR: Yes
8xy2 - AND: Yes
8xy3 - XOR: Yes
8xy4 - ADD: Yes
8xy5 - SUB: Yes
8xy6 - SHR: Yes
8xy7 - SUBN: Yes
8xyE - SHL: Yes
9xy0 - SNE: Yes
Annn - LD: Yes
Bnnn - JP: Yes
Cxkk - RND: Yes
Dxyn - DRW: Yes
Ex9E - SKP: Yes
ExA1 - SKNP: Yes
Fx07 - LD: Yes
Fx0A - LD: Yes
Fx15 - LD: Yes
Fx18 - LD: Yes
Fx1E - ADD: Yes
Fx29 - LD: Yes
Fx33 - LD: Yes
Fx55 - LD: Yes
Fx65 - LD: Yes

Total: 35/35

Super C8:
00Cn - SCD: No
00FB - SCR: No
00FC - SCL: No
00FD - EXIT: No
00FE - LOW: No
00FF - HIGH: No
Dxy0 - DRW: No
Fx30 - LD: No
Fx75 - LD: No
Fx85 - LD: No

Total: 0/10

Grand Total: 35/45


Compatibility List[Playable, Ingame, Title, Broken]:
Pong: Title: Never crashes, graphics glitches.
Blitz: Broken: Crashes after about 3 seconds, graphics glitches.

Status:
Registers/memory array written out: Yes.
Graphics: Yes, DirectX for now.
Sound: Not yet[Who cares? It's a bloody beep!].
Input: Not yet.

Update March 26: It has graphics!!




Update(2/27/2009): I'm going to rewrite this thing from scratch eventually in C++/SDL. Here's the 'final' version of the old source, for those who might want to see it: http://code.google.com/p/chip8-emu/
Update(3/26/2009): "Rewrite" is complete. The emulator is using C++/DirectX[for now]. No source release yet, as I want it to work as close to 100% as possible before sharing. If you want proof, I'll show the source, but it's not ready for general consumption yet.

Last edited by Dax; March 26th, 2009 at 18:19.. Reason: Status of emulator
Dax is offline   Reply With Quote

Advertisement [Remove Advertisement]