I’m super excited about the upcoming FX chip version of Arduboy.
We can have all our favourite games loaded easily! There’s work underway to compile the very best community programs, to produce a ‘GoldCart’-
We need to ensure there’s no EEPROM collisions, so save game data works seamlessly when switching between games. I’ve started this game list and EEPROM map, and ask all of the community to contribute : List of Games (Google Docs).
Please add you favourite games (there’s 250+!) and any software you’ve developed. The first tab records basic game list details, the other tab is a detailed visual map of the current EEPROM usage. If you notice your code has an EEPROM clash, don’t worry! …But it is good to start to think if it can be minimised / compressed a little, by picking minimal datatypes, etc.
Enjoy !
PS - This thread is intended for discussing the game list(s). Please do add your games directly to the spreadsheet (don’t list games in this thread, unless they really need discussing). Please direct technical discussions of EEPROM to its dedicated thread. Please discuss specific aspects of an individual game in the appropriate game thread, to keep everything focussed and accessible.
@Mr.Blinky is going through and using a script to read through the disassembled hex to discover the EEPROM addresses that are used. So long as he can share that output here then it’s still on track.
So, in other words this actually could be extra work, it really isn’t needed until after we have cataloged (and probably manually remove conflicts) from all the existing games.
@Prototype,
I tried to add Egg Master to the spreadsheet but I don’t know how much total EEPROM space it uses. (I don’t feel like figuring out the space that the timetable uses.)
If you can provide that, the entry can be completed.
Edit: I found the timeTable array and based on that it looks like the timetable is 18 bytes, so EEPROM use is 23 bytes total? (Starting at address 433)
I like your list @acedent very detailed. Mine’s just focused at the EEPROM addresses. I’ve screened 181 programs (halfway though ) of which 77 use EEPROM:
games in red need attention, ‘-’ means no EEPROM is used by the program
Circuit Dude: I use EEPROM.put() at EEPROM_STORAGE_SPACE_START + 412 for the leveldata progress. For custom levels, I store them from EEPROM_STORAGE_SPACE_START + 90 to (EEPROM_STORAGE_SPACE_START + 90) + 6 * 70, which is 6 levels, with 70 bytes, each.
Suit Shooter: I use EEPROM.put() at EEPROM_STORAGE_SPACE_START + 402 for the high score.