4 ms·
That is very cool. I'm always kind of in awe of this sort of thing. Maybe I should try to do it. Should take some of the awe away. But I should probably focus
by qwertyuiop924 10y ago
That is very cool.
I'm always kind of in awe of this sort of thing. Maybe I should try to do it. Should take some of the awe away.
But I should probably focus on sucking less, first.
- bluedino 10y agoTry making a small virtual machine first - https://github.com/tekknolagi/carp/blob/master/README.md https://github.com/tekknolagi/carp/blob/master/README.md
- tekknolagi 10y agoWhoa, that's my project. Wouldn't recommend looking at that one, but definitely take a look at it's successor (linked on the README).
- deleted 10y ago[deleted]
- Jach 10y agoAnother interesting project to take away some magic: https://github.com/ssloy/tinyrenderer/wiki https://github.com/ssloy/tinyrenderer/wiki
- toast0 10y agoThere's a lot of docs out there, and some test roms to help. A CPU emulator is actually pretty straightforward. Adding the PPU is more complex, of course.
- khedoros1 10y agoDo it. Emulation has always fascinated me, so I wrote a (kind of crappy) NES emulator a few years ago. It demystifies things, there's a ton of documentation out there, and you'll get the joy of increasing numbers of games working as you make progress.
- plandis 10y agoAs someone currently writing an NES emulator, do it! There are a ton of references to help you figure everything out it's been a pretty interesting experience.
- colanderman 10y agoI recommend this reference quite highly: http://wiki.nesdev.com/w/index.php/NES_reference_guide http://wiki.nesdev.com/w/index.php/NES_reference_guide
- andreaorru 10y agoI'm the author. Everything you need is on the NESdev wiki or it's linked there. A couple of particularly helpful resources are linked in my README. The PPU diagram and the 6502 reference were especially useful. I definitely encourage you to do it, it's a great learning experience and very rewarding. When games start running is pure programming ecstasy :)
- qwertyuiop924 10y agoHey, thanks.
- xem 10y agoStarting with a chip8 emulator is also a good exercise. We made one in JS in less than 1kb for this 13kb games compilation: http://js13kgames.com/entries/26-games-in-1 http://js13kgames.com/entries/26-games-in-1 (unminified version here: http://xem.github.io/chip8/c8.html http://xem.github.io/chip8/c8.html)
- adefa 10y agoI agree! I started a chip8 emulator in Rust. Once I get video and input finished, I'm considering writing a Gameboy emulator. https://github.com/TrevorS/rustychip8 https://github.com/TrevorS/rustychip8
- Arnt 10y agoI did it precisely in order to not suck. The courses at the university seemed too toy-like, so I decided to write something bigger and with a real goal. 7500 lines of 386 and then some Modula 2, and a bit of AWOL from university. In my case the Sinclair Spectrum, which I did cycle-accurately on about a 25MHz 386 and fast enough to play Jetpac on the slowest 386 ever sold. Cycle accuracy really only helped with pitch-perfect sound. It was fun, and pushing something from a blank sheet to a working program is... shall we call it a practical exercise in not sucking?