5 ms·
GameLad – Gameboy emulator written in C++
- djhworld 8y agoCool. I wrote a gameboy emulator a few years ago now in Go (https://github.com/djhworld/gomeboycolor https://github.com/djhworld/gomeboycolor), it was a personal project that had a lot of highs but crippling lows. Very rewarding, but frustrating. I don't think it builds anymore due to library conflicts.
- AHTERIX5000 8y agoWriting Gameboy emulator is fun, just like writing a raytracer. And it can be nice way to learn a new language. Is there something special/different in this project compared to many others? For me the most interesting GB emulation project is Mooneye due to being written in Rust and its emphasis on accuracy and documentation of GB hardware: https://github.com/Gekkio/mooneye-gb https://github.com/Gekkio/mooneye-gb
- ericfrederich 8y agoMy thoughts exactly. Being written in C++ isn't interesting enough on its own. What about the implementation is interesting? Does it make heavy use of some new feature like coroutines, or something? It is supposed to be very elegant? What?
- drewying 8y agoDoes it have to be interesting to share? Writing a gameboy emulator is a fun and challenging project in and of itself, and something that not everyone can do. That alone I think is impressive enough to share.
- jeremiep 8y agoNot everything has to be "look at what I did in the trendy language of the week".
- danmg 8y agoThe code is fairly easy to read.
- deleted 8y ago[deleted]
- blackmagevivi9 8y agoNice, looks awesome! I've been writing my own GB emulator off and on for a few years now. Was this your first emulator? What were the major challenges with this project for you?
- khedoros1 8y agoI finished a Game Boy + Color emulator about a month ago: https://github.com/khedoros/khedgb https://github.com/khedoros/khedgb It was my second major emulation project, and took roughly 3 months to write. Years ago, I started work on an NES emulator and worked on it on+off for...well, probably about 5-7 years. Despite the time investment, khednes is a much uglier chunk of code than khedgb. I like to think of it as evidence that I've learned some things in the meantime. Game Boy's fun; the CPU's a little nicer than the NES's, the memory controllers in the cartridges are less numerous and more regular, and the video controller is built in such a way that most games use less cycle-counting than they did on NES, so timing isn't as finicky. I'm moving on to Game Boy Advance now. Figuring out ARM instruction decoding and reading up on the architecture has taken about the amount of time that it took to write my initial GBZ80 implementation.
- jirenandcell 8y agoThis is cool - well done. What sites / documents did you use to be able to create an emulator?