- 2m
- 14m
- 23m
- 4. Structuring Our Project 8m
- 5. Implementing The Memory 15m
- 6. Creating The Registers 9m
- 7. Creating The Stack 20m
- 8. Creating The Keyboard 28m
- 9. Initializing The Chip-8 3m
- 10. Creating The Default Character Set 8m
- 11. Creating The Chip-8 Display 13m
- 12. Drawing Sprites To The Screen 26m
- 13. Implementing The Delay Timer 4m
- 14. Implementing The Sound Timer 4m
- 15. Starting The Creation Of The Instruction Set Simulator 27m
- 16. Implementing The Chip-8 Instruction Set 1h 37m
- 17. Speeding Up The Emulator 5m
- 18. Small improvements 6m
Creating A Chip-8 Emulator In C
About this course
This course is great for anyone who has programming experience and would love to create an emulator but just does not know where to start or has attempted to do it but ran into problems
You are taken through every step of emulator creation, throughout this course we start by setting up our project, then we start writing code to emulate the display and keyboard from the era. We soon move to simulating the entire Chip-8 instruction set.
After you complete this course you will have a fully functioning Chip-8 emulator that can run space invaders, pong and many other classic games.
What you'll learn
- How to create an emulator for the Chip-8 machine
- Knowledge of how instruction sets work
- Understanding of how machines work
Who this course is for
- People interested in how to create an emulator
Requirements
- You must be confident in the C programming language
- You must understand hexadecimal
- You must understand bitwise operators and bit shifting
Curriculum
18 Lessons • 5h 4m estimated learning time
- 0.00 instructor rating
- 1 courses
- Systems students worldwide
Daniel McCarthy
Learn from DragonZap instructors with practical, build-first lessons focused on systems, low-level programming, compilers, kernels, and real-world engineering fundamentals.
Student reviews
Interesting topic, I have followed along with my Zig implementation, it was nice and interactive
The course does a good job of walking you through technical documentation and helping you understand what you’re reading. The actual coding and learning process isn’t great though. Purely following along by video doesn’t...
Good
No nonsense to the point development, exactly what it says on the tin. I thoroughly enjoyed the course, sometimes it was a little too quick for me, but that just made me learn faster :-) All in all I'd highly recommend...
I love your courses sir, really clear "hello, world" for emulators. Will definitely purchase other things.