Releases: deathscreton/chip8
SCHIP Compatibility!
2.0 finally brings SCHIP Compatibility! This was a tough road to follow. Often I felt like giving up, and when I didn't, but was still struggling, it felt like cheating to pull ideas and explanations from other sources. But sticking to it has finally brought the emulator to a new milestone.
That being said, the code is still a mess, but the emulator functions and runs. Some SCHIP games will run better than others due to a difference in expected operating speeds, but I will implement functionality to change the emulated CPU speed down the line after I've completed a much needed refactor.
If you're new to C++ and you're having troubles learning and pushing forward, remember that the only way to fail is to give up, otherwise, you will succeed eventually. Enjoy!
Sound Update!
This is the final update before SCHIP functionality becomes the focus.
1.1.5 introduces sound, a simple beep now plays instead of "BEEP MOFO" being displayed in the console window.
You can now also soft reset, hard reset and quit the application gracefully, using F1, F2 and Escape respectively.
The next large focus will be SCHIP opcodes.
Technical Spahgetti
1.1.2 is a technical update. A lot of the inner-workings were refactored. You can see the changes in the commits. This shouldn't affect outward performance, nor how the user interacts with the program.
Alongside the technical stuff, I've added a ton of new roms and removed the old ones. You can see which ones by downloading the rom rar below, or checking the source code.
Chip8 1.0
The initial binary release for the Chip8 emulator in C++ using SFML for display and control.
The functionality of the core emulator is there. It will run Chip8 games and control them. There is no sound, and once a game is over, you must restart the program. There is no SCHIP8 functionality as of yet. This is planned for the future.
To load a rom, either drag and drop a rom file onto the exe, or open run the "Chip8 Emulator.exe" file and provide the program with a absolute pathfile: "C:\Roms\INVADERS.c8". The extension of the file does not matter.
You can find a selection of roms from the internet collected in the rar folder below, or in the source code under the folder "roms".
You control the program using the keys below:
'1234
qwer
asdf'