Implementing The Chip-8 Instruction Set
In this lecture we implement the Chip-8 instruction set and end up with a fully working emulator Lesson locked purchase
Description
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.
Requirements
-
You must be confident in the C programming language
-
You must understand hexadecimal
-
You must understand bitwise operators and bit shifting
Who This Course is For
People interested in how to create an emulator
What You Will be Learn
How to create an emulator for the Chip-8 machine
Knowledge of how instruction sets work
Understanding of how machines work
Dragon Zap Instructor
Daniel McCarthy is a seasoned software engineer, boasting an impressive career spanning over 14 years in the industry. Holding a Master's Degree in Advanced Computer Science from Cardiff Metropolitan University, his broad spectrum of experience encompasses everything from web development to complex compiler and interpreter development. Daniel has honed his skills in bootloader and kernel development. In testament to his proficiency in the field, he has designed two proprietary programming languages: Craft, a general-purpose language, and Marble, a web-focused language akin to PHP. Moreover, he has successfully developed compilers for the C programming language. A testament to his versatility, Daniel demonstrates proficiency in an extensive list of programming languages that includes C, C++, Java, x86 Assembly language, PIC assembly, SQL, PHP, HTML5, JavaScript, CSS, and of course, his own creations, Craft and Marble. His professional portfolio also includes the development of Linux kernel modules, a task he has executed with proficiency in a professional context. Currently, Daniel is channeling his wealth of experience and expertise into the education sector, with the aim of nurturing the next generation of professional software engineers.
Ask a question
Questions (1)
Derwin Prince
1 year ago
I guess the only way to debug games is possibly by using the ide's debugger/gdb and sort of debug alongside looking at the source code of the game if you have it, I notice the emulator works pretty well but certain games have minor bugs -- I guess that's what makes emulation such a challenge - Anyways great course, going to try and apply it to a 6502
Daniel McCarthy
1 year ago
Hello, Yes debugging is difficult because its the CHIP-8 instruction set but setting a bunch of breakpoints in GDB on all the instructions we are emulating is a good way to do it Thanks Dan
Daniel McCarthy
1 year ago
Also glad you like the course please leave a review!