First pongoOS game #pongoOSMasterRace
A pongoOS module for running the BRIX game, featuring rendering code I wrote at 1 AM and the CHIP-8 emulator I made 2 years earlier when I was scared of bitwise operations apparently
Warning: This project was intended to be compiled on macOS. If you're using Linux, you will have to modify the makefile and you might need to use something other than pongoterm
.
../pongoOS
.pongo_changes.patch
to ../pongoOS
. This patch makes pongoOS export two additional symbols that are required by the CHIP-8 emulator. You can apply this patch by running git apply pongo_changes.patch
in ../pongoOS
(replace pongo_changes.patch
with the absolute path).make
in ../pongoOS
.pongoterm
by running make
in ../pongoOS/scripts
.checkrain -k ../pongoOS/build/Pongo.bin -p
if your device isn't already in pongoOS.Currently supported devices:
If your device is already supported, great! You won't have to modify the code. You can skip to running BRIX. If your device isn't supported, adding support for your own device shouldn't be hard.
Different devices use different addresses for buttons and there doesn't appear to be an automatic way to extract these addresses from the device. However, you can use button_helper
in this repository to manually find the button addresses for your device.
make load_buttons
. This will install the button helper module in pongoOS and show you the pongoOS shell.button_helper
.pongoOS> button_helper
Device: iPad7,4
Get ready.
Hold "volume_down".
Release "volume_down" and keep it released.
Address: 0x20f1000ac
Get ready.
Hold "volume_up".
Release "volume_up" and keep it released.
Address: 0x20f1000a0
...
main.c
, add the values printed by this program. For the buttons your device doesn't have, specify NULL
. If the program failed to identify any of the buttons, you can re-run the program until it finds the correct addresses. Make sure you place your values before { .name = NULL }
since anything that comes after that will be ignored.
make load_brix
. This will compile the module and load it in pongoOS.brix
in the pongoOS shell. Your device should now be running BRIX.