(S)CHIP 8 Emulator 1.3
(S)CHIP 8 Emulator 1.3
...
Last edited by Heathen on Thu May 07, 2009 10:32 am, edited 48 times in total.
I love Purebasic.
Thanks 
Here's some public domain roms (not all work yet)
http://www.zophar.net/roms.phtml?op=show&type=chip8
Btw anyone can use this code however you want (help is more than welcome also), PB needs a good and solid open source chip8 emulator for everyone to learn from.
Here's a bit of info if anyone is interested
- There are 16 registers from 0-15 register(X)
- Register(15) is the cary register and collision flag
- I is another register mostly for memory access
- chip8 mode is 64 x 32 while schip8 mode is 128 x 64 (scaled to the window)
- The stacksize only allows for 16 subroutine calls
- All graphics are XORed onto the screen
- I do not use wrapping (as the documentation suggests) since only 1 game uses it (that I know of) and it causes problems in some games. Most games that that need it, handle it themselves.
- The rom starts at $200 since the first 512 bytes is reserved for the interpreter.

Here's some public domain roms (not all work yet)
http://www.zophar.net/roms.phtml?op=show&type=chip8
Btw anyone can use this code however you want (help is more than welcome also), PB needs a good and solid open source chip8 emulator for everyone to learn from.
Here's a bit of info if anyone is interested
- There are 16 registers from 0-15 register(X)
- Register(15) is the cary register and collision flag
- I is another register mostly for memory access
- chip8 mode is 64 x 32 while schip8 mode is 128 x 64 (scaled to the window)
- The stacksize only allows for 16 subroutine calls
- All graphics are XORed onto the screen
- I do not use wrapping (as the documentation suggests) since only 1 game uses it (that I know of) and it causes problems in some games. Most games that that need it, handle it themselves.
- The rom starts at $200 since the first 512 bytes is reserved for the interpreter.
Last edited by Heathen on Thu Jan 18, 2007 2:47 pm, edited 3 times in total.
I love Purebasic.
works fine here


PureBasic 5.73 | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

-
- Addict
- Posts: 1126
- Joined: Wed Oct 15, 2003 12:40 am
- Location: Sweden
- Contact:
Really great! and nice looking code, almost beautiful... 

Last edited by techjunkie on Fri Jan 19, 2007 4:17 pm, edited 1 time in total.

(\__/)
(='.'=) This is Bunny. Copy and paste Bunny into your
(")_(") signature to help him gain world domination.
-
- Addict
- Posts: 2345
- Joined: Mon Jun 02, 2003 9:16 am
- Location: Germany
- Contact:
Here is his gameboy emulator
Very incomplete though.
Now that this emulator is almost done, does anyone want to help me with writing a gameboy emulator?
Im probably going to start mapping the z80 instructions today
Edit:
Updated to 1.1, almost perfect compatibility now. Even more games work perfectly like joust. Check the changelog.
Very incomplete though.
Now that this emulator is almost done, does anyone want to help me with writing a gameboy emulator?
Im probably going to start mapping the z80 instructions today
Edit:
Updated to 1.1, almost perfect compatibility now. Even more games work perfectly like joust. Check the changelog.
I love Purebasic.
-
- Addict
- Posts: 2345
- Joined: Mon Jun 02, 2003 9:16 am
- Location: Germany
- Contact: