So, I've talked about this in a few other, smaller places before and I guess it's time to put something up here on the blog about it.
The Pandora's Box 6 Customization Platform
There's a lot of people in the community from people modding Arcade 1ups, to those with JAMMA machines, to dual arcade stick home setups and everything in between. One of the most common things I hear about the Pandora's Box 6 is "oh, it's great but I wish ____ was fixed" or "game ___ ran better", or "I wish I could change __". It is my intention to allow you the possibility of doing those things on your Pandora's Box 6 and put the power in your hands to change things as you see fit.
What will I need to have when the customization platform is released?
- A USB stick of at least 32GB formatted as FAT32. (Yes, it can be the same one you use now.)
- A second SD card of at least 16GB of size containing a backup of your original SD card. (No, cannot be the default SD card.)
- Some way to write to a Linux EXT3 filesystem, preferably with a Linux PC. (Other options may be possible but untested.)
- Some very basic understanding of Linux would be helpful.
How is the customization platform set up? What do I need to do?
You'll be using Linux to replace two files on your backup SD card with two from our setup and adding a third. Instructions will be given when the platform is launched.
How does the customization platform work?
With the changes made above, most of the files that the Pandora's Box 6 uses will be read from your USB stick instead of the internal SD card. This allows you to plug your USB stick into your Windows PC to make the changes you need to make, eject it and pop it into the Pandora's Box 6. Once the original installation on the SD card is done, there shouldn't be a need to ever touch it again as everything will be just taken from your USB stick instead.
What would I be able to change with the customization platform?
This is a list of everything that we've been able to change to this point.
- Replacement of boot videos.
- Replacement of boot up logo (untested).
- Replacement of interface sound effects (untested).
- Replacement of now loading image (untested).
- Replacement of MAME configuration files.
- Adding additional NVRAM files to allow more games to run on PB6 - Joust, Robotron, Defender, NARC and more.
- Adding game-specific MAME configuration files.
- Replacing emulator executables to fix problems in originals. (Already removed vibration support from PS1 emulator to avoid crashes - yes, Einhander works!)
What is currently incomplete that you are hoping to look at?
- Save data for arcade games.
- Saved memory cards for PlayStation 1 games.
- Force proper rotation for games that only work in FBA that only work in TATE mode currently.
- Replace game titles for default 1300 games - graphics are encrypted.
- Replace the main menu Pandora's Box 6 logo - graphics are encrypted.
- Lots more.
Anything else you want to let us know about?
You'll be able to have a script called userscripts.sh on the USB stick that is a Linux shell script. You'll be able to use it to do whatever you might find interesting. I've used it to add music to the default PB6 interface, for instance.
When will it be ready for release?
Here's the big thing, hmm?
Release depends upon a few factors, however the largest factor is whether or not the changes and hacks we still want to finish will require any further fundamental changes to the PB6 software. When we determine that the work we want to do is no longer going to require further changes to the SD card, we will be confident to release with what we have and then push out updates afterwards which will only require changes to the USB stick. I really, really want to avoid making further changes to the SD card as that will already be difficult enough for some people to execute so I don't want to keep asking them to make further changes if we can avoid it.
Why can't you release an SD card image that has the hack already preinstalled?
Because it will work for my PB6 and won't for anyone else's. Embedded in the SD card image is a sort of key that is checked on bootup. My key isn't going to match your motherboard so it will not work. This is why you will need to make a backup image of your own SD card image and make changes to it yourself.
I have hacking info on the PB6 that can help you. / I have more suggestions for changes.
Feel free to email me - firstname.lastname@example.org - and let me know what you've got.
I hope that you see that there's a lot of good stuff that's going to be coming to your PB6 and I hope that we can unite with other like-minded individuals for the good of us all.