More actions
GBA exploader | |
---|---|
General | |
Author | Rudolph, ApacheThunder |
Type | Handheld |
Version | 0.65 |
License | Mixed |
Last Updated | 2024/08/12 |
Links | |
Download | |
Website | |
Source | |
With this program, you can run GBA games which are in SLOT1 flash card through SLOT2 expansion pack.
If your SLOT1 flash card supports soft reset, you can use your exp pack as Rumble Pak or Memory Expansion Pak.
Supported SLOT2 expansion packs are 3in1 Expansion Pack, EZ4 lite-delux and EWIN EXPANSION PAK (2in1). NOR mode and Rumble Pak function are enabled only in 3in1 Expansion Pack.
A patch is released for GBA Exploader so it'll work on M3DS Real and iTouchDS.
Installation
Please patch the DLDI on GBA_ExpLoader.NDS (if your flash card supports auto DLDI patch, you need not to do this).
Create /GBA_SAVE/ and /GBA_SIGN/ folder on the root of your SD card (modify GBA_ExpLoader.ini, and you can set other folders).
Copy GBA files into your SD card.
Put SAV files into /GBA_SAVE/ (if there are no SAV files, they will be created automatically).
Put gbaframe.bmp (24bit or 8bit) into the root, /GBA_SIGN/ or /_system_/ if you want to use GBA frame.
User guide
You can choose between 3 modes if you use the 3in1 Expansion Pack:
- PSRAM mode.
- NOR mode.
- Expansion mode (if supported).
PSRAM/SDRAM mode
If you run a GBA in PSRAM/SDRAM mode, SAV file will be saved next time. You can select where to save or not to save.
- Write a GBA file into PSRAM with SRAM patch.
- Load SRAM data from SAV file.
- Then run GBA from PSRAM.
- Backup SRAM data to SAV file.
- Restore SRAM.BIN to SRAM.
- Backup all SRAM data to SRAM.BIN.
- Patch PSRAM for DS Browser and soft reset (disabled when your pack is 3in1 Expansion Pack).
With 3in1 Expansion Pack:
- You can run a GBA up to 16MByte (16000KB) in PSRAM mode.
- Return to your flashcard's menu if soft reset is supported.
- You can run GBA from RAM until turning off DS or pulling out your expansion pack.
When you want to exchange SAV file:
- Backup SAV data (or run another GBA) first and then exchange the file.
- SAV file will be written into SRAM every time you run the GBA, even if you run the same file again and again.
- If your expansion pack has only 128KB SRAM, you cannot run GBA with FLASH 1Mb save.
NOR mode
Enabled only with 3in1 Expansion Pack.
- Backup SRAM data to SAV file.
- Write GBA file to NOR with SRAM patch.
- Then load SRAM data from SAV file.
- You can also run NOR in DS menu like a normal GBA cartridge.
- Run GBA (Slot2) stored in NOR.
Expansion mode
Enabled only with 3in1 Expansion Pack.
- Change Rumble level (low/medium/high).
- Patch PSRAM for DS Browser and then soft reset.
Repairing of header
GBA ExpLoader will repair corrupted header of GBA.
Savedata
If save type is not SRAM, GBA ExpLoader Will patch SRAM automatically.
Supported save types:
- EEPROM_V111, EEPROM_V120, EEPROM_V121, EEPROM_V122, EEPROM_V124, EEPROM_V125, EEPROM_V126.
- FLASH_V120, FLASH_V121, FLASH_V123, FLASH_V124, FLASH_V125, FLASH_V126.
- FLASH512_V130, FLASH512_V131, FLASH512_V133.
- FLASH1M_V102, FLASH1M_V103.
- Special save type of Famicom Mini(Classic NES)EEPROM_V122, EEPROM_V124 and undefined type.
Additional:
- The size of SAV file will be adjusted to the real SAVE size. But GBA ExpLoader cannot detect EEPROM 512B or 8KB, so all EEPROM size will be set to 8KB.
- If GBA ExpLoader cannot detect save type, it will be set to SRAM 64K.
- It's OK even if SAVE data has dummy area at the tail of the file. E.g. real file size is 64K but file size is 128K.
- SAV file will be saved to /GBA_SAVE/.
- File name will be the same of the ROM file name.
- When you run a ROM first time, analyzed data (SGN file) will be saved to /GBA_SIGN/.
- If the file extension is BIN, GBA ExpLoader won't patch. And SAV file size will be set to 64KB.
- In file select window, top SAV will be saved as .SAV and <1> to <5> will be saved .SV1 to .SV5.
- You'd better create /GBA_SAVE/ and /GBA_SIGN/ yourself (Some Slot1 flash cards cannot create these folders correctly. N-Card series will take a long time to do this).
Controls
L/R - Change mode (3in1 Expansion Pack only)
PSRAM/SDRAM mode:
A - Write a GBA file into PSRAM with SRAM patch, load SRAM data from SAV file and run GBA from PSRAM.
B - Backup SRAM data to SAV file
Y - Restore SRAM.BIN to SRAM
X - Backup all SRAM data to SRAM.BIN
R - Patch PSRAM for DS Browser and soft reset
Select - Return to your flashcard's menu if soft reset is supported
B - Backup SAV data (or run another GBA) first and then exchange the file
NOR mode:
A - Backup SRAM data to SAV file, then load SRAM data from SAV file
B - Backup SRAM data to SAV file
Y - Load SRAM data from SAV file
X - Run GBA (Slot2) stored in NOR
Changelog
New release by ApacheThunder
V0.65 2024/08/12
- Now prompts if user is using DE or regular Omega if EZFlash Omega is detected during intial boot. Regular omega can be used if soft reset method is used (aka, a cart like EZ-Flash Parallel is used to cause console to reboot on reinsert) after saving a game so that it can be backed up before power loss. If DE mode is selected setRamPage is set to normal range and will make it use FRAM chip. Since that is non-volatile soft-resetting in this manner would not be required. Regular Omega will use page 0x40 for RTS section of SRAM. (normal range is read only for some reason. FPGA must unlock it after sending specific table data to SD card buffer register which I have not got working yet)
- NDS files can now be booted. Since bootloader from nds-hb-menu was added to fix soft-reset stuff I might as well just add in support to boot NDS files. :P
V0.64 2024/07/12
- 3 in 1 Plus remaining issue with x button option to boot to nor flash game after having completed a norflash flash operation has now been resolved. :D
- NorFlash menu appearing when hitting L after entering rumble selection menu on Omega/Omega DE has been resolved. NorFlash menu now fully disabled for Omega to avoid possible bricking of this cart.
- Screen init process for GBA Frame loader optimized.
- Credit to stl25 for help testing the 3in1 Plus as I did not personally own one. :D
V0.63 2024/06/29
- Patching system from SCFW implemented for SuperCards. Prepatched roms no longer required for use with GBA-Exploader for SuperCards! This also resolves all remaining save issues for SuperCards!
- dat file system used for storing save meta data on current save for EWIN cards now used for SuperCards as SuperCards do not have a spare ram page for storing this. This was also why there was save issues initially with random games even ones with 64KB or smaller saves. This resolves that.
- Initial EZ Flash Omega/Omega DE support! Note that there are still save issues right now. DE has partial saves working with just 128KB saves not working. (so Pokemon games do not hold saves currently)
- Progress bars added for most UI actions that result in writing sram to/from file so that it doesn't look like UI is frozen. This is especially important for some slower cards like Supercard where SRAM read/writes is a bit slower (on SC Lite anyways)
V0.62 2024/05/25
- Subdirectories now only display ".." at the top of the file tree. The "." directory entry is not useful (as it just causes you to navigate to the current directory you are already in).
- TTMenu folder now a possible alternate path for gbaframe.bmp if gbaframe.bmp is not found in the other possible locations.
V0.61b Hotfix 2024/05/20
- Fix mistake that caused DS mode Slot-2 booting to not work. (accidentally removed needed arm7 code in previous commit after optimizing code relating to Rumble Menu softreset).
V0.61 2024/05/20
- Soft Reset for Rumble Menu fixed. New scheme is now used for loading SoftReset.xxxx. Now instead it will look for R4TF.nds (R4TF = 4 character ioType code for DLDI user is currently using with R4TF as an example). If not found it will look for a few specific NDS files to try. If those aren't found it will try boot.nds. If boot.nds isn't found then rumble menu will not be available.
V0.60 2024/05/19
- NorFlash read/write now working for 3 in 1 Plus! Big thanks to cory1492 for he had managed to make available the version of source code of gbaldr that had the code needed to make this work. Also thanks to stl25 for helping test 3in1 Plus support as I do not own a 3 in 1 Plus myself.
- 64MB roms appear to write to NorFlash correctly with 3 in 1 Plus however note that this does not mean retail roms that used that size will work (not without patching anyways). 3 in 1 Plus had 64MB NorFlash but doen't use normal page switch commands so retail roms will need patching to use this.
- r4tf bool set to false for SuperCard and Rumble menu disabled for SuperCard. Program would crash if user attempts to use R shoulder button to access rumble menu if a SuperCard is inserted and a NDS file for soft reset was available. This has been fixed by disabling this menu for SuperCard. The rumble menu will not work as intended for SuperCards anyways.
- Soft Reset for rumble menu is currently broken. (has been since initial rebuild). The method the program uses for loading NDS files likely needs to be rewritten.
- Hitting X after flashing a game to NorFlash on 3 in 1 Plus may cause hang. The game flashed will still be bootable provided the user power cycles the console and boots the card as normal. No plans to fix as I'm unsure why it's happening and it's a minor issue. Hitting X after switching to NorFlash without flashing anything seems to still work though. Feel free to create a push request if you managed to fix this. ;)
V0.59 2024/05/19
- Initial rebuild to new libnds.
- Add new error message for detecting if run on DSi/3DS consoles as this program isn't really compatible with those consoles for obvious reasons.
- Add initial support for SuperCard Lite (and possibly other SuperCard varients). Note that saves are not currently functional though.
- Add back initial support for EZ Flash 3 in 1 Plus. Note that NorFlash commands appear to not be working at the moment. RAM mode untested. New code added for detecting 3 in 1 Plus when detecting max allowed file size. This should allow writing 64MB gba roms to 3 in 1 Plus...once NorFlash stuff is fixed that is. :P
- Tested as working properly with regular EZ Flash 3 in 1 carts.
- Note that version 0.58 already exists but we do not have source code for it. (source was released only for 0.57. Rudolph could not find the last version's source code unfortunately. This is why 3 in 1 Plus support is incomplete. (it at least detects it now which original 0.57 could not do and will in theory allow writing 64MB GBA roms once NorFlash stuff is fixed for that cart)
Unofficial
V0.58b0MX 2010/04/15
- This is the combined patches of the 0.58X M3 Patch and 0.58b0 Patch.
- Fixed bugs related to 3IN1+.
- This doesn't fix rumble or browser mode with a 3IN1+.
V0.58b0 2010/01/05
- This contains the 0.58b version and a patched version that shows up as 0.58b0 of GBA ExpLoader. The ips file is also included if you prefer to patch it yourself.
- For NOR writes you are limited to 32MB.
V0.58X M3 Patch (0.58b unexcluded ips) 2009/01/09
- A patch for GBA Exploader so it'll work on M3DS Real and iTouchDS.
Official
MSHL2 V0.1 2009/02/01
- Launch GBA files via extension association in MoonShell2.
- It launches the specified GBA file from MoonShell2 using GBA ExpLoader V0.58 with "PSRAM/SDRAM mode" and "No_MultiSave" settings.
V0.58b 2008/12/21
- Fixed FAT initialization processing remaining in test mode since V0.58a.
- Fixes a bug with the Flash 512Kbit save type used in several notable games.
- Although untested it now supports 3IN1+ (up to 32MB NOR).
V0.58 2008/12/07
- Fixed the bug of FLASH1M in DSTT GBA&EXPLORER 2IN1.
- Support FLASH1M in M3 (SLOT2), G6 (SLOT2) and GBA Expansion Pack.
- Fixed the Added auto header fix function.
V0.57 2008/05/12
- Fixed the bug of timestamp of save file again.
- Changed Famicom Mini(Classic NES) save data format to VBA save format. Attention: Compatibility is lost.
V0.56 2008/04/13
- Fixed the bug of timestamp of save file.
- Fixed the display of Japanese character.
- Fixed the bug of the display when filename is short name (shorter than 8 words).
V0.55 2008/03/30
- Fixed the bug of NOR writing.
- Support FLASH1M in DSTT GBA&EXPLORER 2IN1.
V0.54 2008/03/23
- Has save bug. With M3, G6 or GBA Expansion Pack, save data will be damaged. replaced.
V0.53 2008/03/22
- Fixed the recognition of DSTT GBA&EXPLORER 2IN1 which have 128K SRAM.
- Now, M3(SLOT2), G6(SLOT2) and GBA Expansion Pack are supported temporarily (FLASH1M save is not supported yet).
- Fixed the bug of the message when cannot soft reset.
- Support DLDI of SLOT1 flash cards.
V0.51 2008/03/15
- Fixed libfat to change the alias name. Now Windows compatible (Digit is set to double figures).
- Fixed so-called "0xE5 problem". All Japanese words and short name supported.
- Fixed extension pack recognition.
- Fixed the bug of the process of SRAM.BIN in [EXP128K] mode.
V0.5 2008/03/12
- V0.5 final release.
- Support EEPROM_V122 Famicom Mini (Classic NES) and undefined type.
- Fixed the bug of the reset after setting Rumble Pak.
- Added directory create date.
V0.5 beta 2008/03/09
- Support EEPROM_V124 Famicom Mini (Classic NES) (EEPROM_V122 is not yet).
- Support EWIN EXPANSION PAK (2in1) with 128KB SRAM temporarily.
- Added auto header fix function.
- Added setting about SAVE/SIGN directories and MultiSave option.
V0.5 beta1 2008/3/10
- Has module error. replaced.
V0.4 2008/03/01
- Changed some message.
- Fixed the bug that EWIN EXP PAK won't be detected after you select Memory RAM or LINK and reset.
- Fixed the detection of EWIN EXP PAK with 128KB SRAM.
- Add SAV file; 6 files: SAV and <1> to <5> (sv1 tosv5).
V0.3 2008/02/21
- Fixed the bug that soft rest is disabled if your flash card is R4/M3S.
- Fixed the bug of EEPROM_V111 patch.
- Fixed the bug of FLASH1M_V103 patch in NOR mode.
- Support "EZ4 lite-delux" and "EWIN EXPANSION PAK (2in1)".
- SAVE data in PSRAM/SDRAM mode will be saved to SAV file when GBA_ExpLoader is run.
V0.2 2008/02/10
- Fixed the bug about SAV file extension.
- Set SAVE size of BIN file and UNKNOWN games to 64KB.
- Changed the color of the menu in NOR mode.
- Stopped DMA transfer in PSRAM mode. Speed will be slow but more stable.
V0.1 2008/02/08
- Support 3in1/2in1 games.
V0.0 2008/02/06
- Prototype version.
Credits
- Rudolph for creating GBA Exploader.
- cory1492 for providing updated source code to gbaldr which was used as reference for restoring missing 3 in 1 Plus support.
- stl25 for playtesting GBA Exploader to ensure 3 in 1 Plus stuff was working.
- WinterMute/devKitPro for the bootloader being used to replace the old NDS loader for Rumble Menu soft-reset.
External links
- Author's website - https://kotei.blog.ss-blog.jp/archive/c530-1
- GitHub - https://github.com/ArcheyChen/GBA-Exploader