What's new

Chip 8

Doomulation

?????????????????????????
Stole my word, dammit. I was about to write congrats before I scrolled down to see that message :p
So congrats, zAlbee!
 

albertwesker

New member
I had a heck of a time figuring out just how the sprites were drawn from the vague David Winters documentation... argh.

i'm also finding it's sprite drawing info to be a little sparse - especially with regards to collision.

can anyone recommend a more comprehensive document on chip8?

i've implemented almost all of the opcodes, except for 8XY4-8XYE, FX29 and FX33, which are a little confusing to me, so any high level explanation would be helpful.

btw, this is my first post. ^_^
 

refraction

PCSX2 Coder
albertwesker said:
i'm also finding it's sprite drawing info to be a little sparse - especially with regards to collision.

can anyone recommend a more comprehensive document on chip8?

i've implemented almost all of the opcodes, except for 8XY4-8XYE, FX29 and FX33, which are a little confusing to me, so any high level explanation would be helpful.

btw, this is my first post. ^_^


just read the doc again and again, unfortunately there isnt much other than that , goldroad seems to have dissapeared altho that explained it.

all i can remember is you need to reset the collision detection bit at the beginning of the drawing routine (its been too long :p)
 

refraction

PCSX2 Coder
ah i remember now!!!

reset your colission bit at the beginning of the drawing routine.

set your bits 1 by one, if one bit is already set, you set your collision bit, if not you just write the pixel bit.


under no circumstances clear the collision bit after the beginning of the drawing routine eg dont set it to 0 if you find a bit that doesnt collide
 

zAlbee

Keeper of The Iron Tail
hap and doom: thanks :)

for FX29, I found this doc explains the fonts quite well. http://devernay.free.fr/hacks/chip8/C8TECH10.HTM#dispcoords
Cowgod's Chip-8 Technical Reference said:
Programs may also refer to a group of sprites representing the hexadecimal digits 0 through F. These sprites are 5 bytes long, or 8x5 pixels. The data should be stored in the interpreter area of Chip-8 memory (0x000 to 0x1FF).

For 8XY4-E, a carry just means you added the numbers, and it was larger than the max value (larger than 0xFF). To borrow means you subtracted a larger number from a smaller number.

For FX33, just google BCD representation (binary-coded decimal). You'll find that it is pretty simple. :)
 

albertwesker

New member
thanks for the info zAlbee!

also the goldroad and cowgod docs were a great help and exactly what i was looking for, now i have all the opcodes finished except for schip, which i'll finish tomorrow.
 

refraction

PCSX2 Coder
albertwesker said:
thanks for the info zAlbee!

also the goldroad and cowgod docs were a great help and exactly what i was looking for, now i have all the opcodes finished except for schip, which i'll finish tomorrow.


dont rely too heavily on the goldroad documents they arent entirely accurate but they are good guidance.
 

Doomulation

?????????????????????????
My docs that I wrote are the only truly accurate doc I can name. I wrote it after getting (with refraction's help) almost all games working. Some seemed a little odd (like field?), but nevertheless...
 

blueshogun96

A lowdown dirty shame
I just wanted to say thanks doomulation for your excellent documentation :bouncy: . I learned so0o0o0o0o0o0o0o0o0o0o0 much. It was so good, I immediatly found mistakes made by other chip8 emu authors (i.e. crazy chip8) :blush:

thank you sir
 
Last edited:

bobmcbob

New member
Hi,

Doomulation I have searched for your docs on Chip8 and cant seem to find them. Do you still have them or a link?

Im about to start a research project into emulators and am planning on getting my feet wet with a chip8 emu. To save some time I was hoping i could read your doc as it seems the most complete from what I have heard.

Thanks for any help,

Bob
 

blueshogun96

A lowdown dirty shame
bobmcbob said:
Hi,

Doomulation I have searched for your docs on Chip8 and cant seem to find them. Do you still have them or a link?

Im about to start a research project into emulators and am planning on getting my feet wet with a chip8 emu. To save some time I was hoping i could read your doc as it seems the most complete from what I have heard.

Thanks for any help,

Bob
His documentation is still in this thread, i got itthe other day

while your at it, read this one too if you haven't already. this one and doomulations doc is almost an even match :)

http://devernay.free.fr/hacks/chip8/C8TECH10.HTM

also, if you havent seen this already, read it too :)
http://www.emutalk.net/programming/30272-neat-emulator-programming-tutorial.html
 

blueshogun96

A lowdown dirty shame
refraction said:
it is? where? cos ive just looked through the whole thread n im damned if i can find it ;p
Hmmm. maybe it is gone, i grabbed a copy a while ago. but now that i search the thread again, i don't see it :huh:
 

blueshogun96

A lowdown dirty shame
btw doomulation, I made you a pdf version if you are interested :)

*attachment removed by doomulation's request*
 
Last edited:

Doomulation

?????????????????????????
Thanks for the offer but... I hate pdf and I'd appreciate if you did not distrubute it and removed the attachment. Pdf is evil! :devil: Html is better and has almost the same capabilities I say. But is there a need for an html document?

EDIT: Btw, I updated my document a little, so here's a new version of it. Contains fixes, it's cleaner and notes added.
 
Last edited:

refraction

PCSX2 Coder
Doomulation said:
Thanks for the offer but... I hate pdf and I'd appreciate if you did not distrubute it and removed the attachment. Pdf is evil! :devil: Html is better and has almost the same capabilities I say. But is there a need for an html document?


does it matter on the format its in? :p to be honest any format document is good as long as it helps others code their emus
 

Top