How To Flash NES/Famicom Games on GBA Cartridges?

Vanessa__

Active Member
OP
Newcomer
Joined
Jan 12, 2024
Messages
25
Trophies
0
Age
21
XP
106
Country
United Kingdom
My boyfriend's birthday is coming up and I was originally gonna translate a certain game for him, but I found out that said game has an Famicom version with a translation.

I saw online, people selling GBA cartridges with NES games flashed on them, and was wondering if that's at as possible?

I have a BennVenn Joey Jr. GBA flasher, that we've used to flash GBA games onto cartridges.

But would it be possible for me to convert the .nes file to a .gba file to be able to flash it on a GBA cartridge?

-Best Thanks! Vanessa! :wub:
 

Localhorst86

Robert'); DROP TABLE members;--
Member
Joined
Jul 17, 2014
Messages
2,842
Trophies
2
Location
Nintendo works for my dad
XP
6,234
Country
Germany
There is a NES emulator for the GBA called "PocketNES" that you can use to create a GBA ROM with an NES game.
Not sure what the most updated version is, but this is from 2020:
https://github.com/Dwedit/PocketNES/releases

As to flashing it to an actual GBA cartridge: I recall people were able to reflashing bootleg cartridges from china, but other than knowing it has been done, I wouldn't know specifics on how to do that.
 

Jayro

MediCat USB Dev
Developer
Joined
Jul 23, 2012
Messages
14,272
Trophies
7
Location
WA State
Website
ko-fi.com
XP
19,775
Country
United States
As to flashing it to an actual GBA cartridge: I recall people were able to reflashing bootleg cartridges from china, but other than knowing it has been done, I wouldn't know specifics on how to do that.
OP should invest in a GBxCart RW v1.4 by InsideGadgets, they won't be disappointed. I even use mine to make money, selling my homebrew on real carts. But back to the subject at hand... All bootlegs on AliExpress can be reflashed using this device, and the maintainer for the FlashGBX software (Lesserkuma) is really friendly and always adds new chip support as new bootlegs are rolled out. So compatibility with all carts out there is really, really high.

The best bootlegs to get are as follows.

Batteryless saving:


Kingdom Hearts - Chain of Memories
for GBA. (This one is recommended for Lesserkuma's batteryless Goomba Color fork and batteryless PocketNES fork.)
(32MB ROM and 512K SRAM)

Shantae for GBC.
(4MB ROM space)

Battery-backed SRAM saving:


YuGiOh Dual-Pack
for GBA.
(32MB ROM with 512K battery-backed SRAM)

Perfect Dark or Dragon Warrior III for GBC.
(4MB ROM space and battery-backed SRAM)

For Pokemon games:


There's really no bootleg cart that's good for these since they need a real-time clock and 1M of SRAM to save properly. I highly suggest just buying a premium GBA flash cart that has RTC built-in for Pokemon:

For Pokemon on GBA, I recommend the EZ-Flash Omega or Omega DE.
For Pokemon on GBC, I recommend Bennvenn's MBC3000 RTC cart, as you can store two separate Pokemon ROMs on it, and they each have their own RTC and save file. You switch between them using a dip switch on the PCB. And it's under $40, which is fantastic.
 
Last edited by Jayro,

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
@Jayro

This is really good info, do you have any recommendations of particular bootleg carts that will work with GBABF?

https://gbatemp.net/download/gbabf.37005/

I'd be interested in reflashing them directly with my phat ds.

Oh also I'm intersted in any multi-bank bootleg carts I can reflash with this:

https://github.com/lesserkuma/GBA_MultiMenu

Anyway, any tips for kinds of single or multicart booglegs to purchase would be greatly appreciated, the listings on aliexpress are little overwhelming and I don't know exactly what to look for.
 
Last edited by Xyvir,

Jayro

MediCat USB Dev
Developer
Joined
Jul 23, 2012
Messages
14,272
Trophies
7
Location
WA State
Website
ko-fi.com
XP
19,775
Country
United States
@Jayro

This is really good info, do you have any recommendations of particular bootleg carts that will work with GBABF?

https://gbatemp.net/download/gbabf.37005/

I'd be interested in reflashing them directly with my phat ds.

Oh also I'm intersted in any multi-bank bootleg carts I can reflash with this:

https://github.com/lesserkuma/GBA_MultiMenu

Anyway, any tips for kinds of single or multicart booglegs to purchase would be greatly appreciated, the listings on aliexpress are little overwhelming and I don't know exactly what to look for.
For the multi menu, I use the 369 in 1 cart. Gives you 256MB of romspace. Not good for Pokemon tho, as it only has half the SRAM needed. And you need to patch the games to work batteryless.

But to answer your first question, if you don't need pokemon, most GBA carts are flashable with no problem with GBABF.
 

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
For the multi menu, I use the 369 in 1 cart. Gives you 256MB of romspace. Not good for Pokemon tho, as it only has half the SRAM needed. And you need to patch the games to work batteryless.

But to answer your first question, if you don't need pokemon, most GBA carts are flashable with no problem with GBABF.

SWEET THANKS 🙏🙏🙏👍👍👍
 

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
OP should invest in a GBxCart RW v1.4 by InsideGadgets, they won't be disappointed. I even use mine to make money, selling my homebrew on real carts. But back to the subject at hand... All bootlegs on AliExpress can be reflashed using this device, and the maintainer for the FlashGBX software (Lesserkuma) is really friendly and always adds new chip support as new bootlegs are rolled out. So compatibility with all carts out there is really, really high.

The best bootlegs to get are as follows.

Batteryless saving:


Kingdom Hearts - Chain of Memories
for GBA. (This one is recommended for Lesserkuma's batteryless Goomba Color fork and batteryless PocketNES fork.)
(32MB ROM and 512K SRAM)

Shantae for GBC.
(4MB ROM space)

Battery-backed SRAM saving:


YuGiOh Dual-Pack
for GBA.
(32MB ROM with 512K battery-backed SRAM)

Perfect Dark or Dragon Warrior III for GBC.
(4MB ROM space and battery-backed SRAM)

For Pokemon games:


There's really no bootleg cart that's good for these since they need a real-time clock and 1M of SRAM to save properly. I highly suggest just buying a premium GBA flash cart that has RTC built-in for Pokemon:

For Pokemon on GBA, I recommend the EZ-Flash Omega or Omega DE.
For Pokemon on GBC, I recommend Bennvenn's MBC3000 RTC cart, as you can store two separate Pokemon ROMs on it, and they each have their own RTC and save file. You switch between them using a dip switch on the PCB. And it's under $40, which is fantastic.

For GBA Pokemon you also have the option of insidegadgets RTC-supported GBA carts:

https://shop.insidegadgets.com/prod...with-rtc-flash-cart-works-with-pokemon-games/
 
  • Like
Reactions: 4d1xlaan

iball

Member
Newcomer
Joined
May 25, 2006
Messages
22
Trophies
1
XP
318
Country
Gambia, The
For GBA Pokemon you also have the option of insidegadgets RTC-supported GBA carts:
Can confirm the IG carts are quality. Currently playing through Pokemon Unbound on that cart in a GBA SP with no issues.

As for the 150-in-1 NES GBA carts, I reflashed mine with Mother 3. That cart has an SRAM battery in it.

1) Check ROM with GBATA, verify save is SRAM.

2) Flash ROM to cart via FlashGBX w/GBxCart flasher hardware.

Now the 369-in-1 cart was a wee bit more difficult and involved more steps including patching all non-SRAM ROMs for SRAM saving then running the batteryless patch on each ROM, then creating a giant ROM of all the ROMs via the ROM builder GBA_multimenu tool from lesserkuma.

Turns this:
1716832848998.png


Into this:
1716832897201.png
 

Jayro

MediCat USB Dev
Developer
Joined
Jul 23, 2012
Messages
14,272
Trophies
7
Location
WA State
Website
ko-fi.com
XP
19,775
Country
United States
Can confirm the IG carts are quality. Currently playing through Pokemon Unbound on that cart in a GBA SP with no issues.

As for the 150-in-1 NES GBA carts, I reflashed mine with Mother 3. That cart has an SRAM battery in it.

1) Check ROM with GBATA, verify save is SRAM.

2) Flash ROM to cart via FlashGBX w/GBxCart flasher hardware.

Now the 369-in-1 cart was a wee bit more difficult and involved more steps including patching all non-SRAM ROMs for SRAM saving then running the batteryless patch on each ROM, then creating a giant ROM of all the ROMs via the ROM builder GBA_multimenu tool from lesserkuma.

Turns this:
View attachment 439376

Into this:
View attachment 439377
I made custom menu colors, so I'll have to post the alternate color pack eventually.
 

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
For the multi menu, I use the 369 in 1 cart. Gives you 256MB of romspace. Not good for Pokemon tho, as it only has half the SRAM needed. And you need to patch the games to work batteryless.

But to answer your first question, if you don't need pokemon, most GBA carts are flashable with no problem with GBABF.
Hello,

I'm trying to flash the 369-in-1 bootleg cart using GBABF and a mego-rom created with the GBA_Multimenu tool but getting an error "unable to unlock sector 512" while it's trying to erase.

IS this possible? Am i missing something with GBABF or do I need to get a GBxCart RW to get this going?

JUst let me know, thanks!
 

Jayro

MediCat USB Dev
Developer
Joined
Jul 23, 2012
Messages
14,272
Trophies
7
Location
WA State
Website
ko-fi.com
XP
19,775
Country
United States
Hello,

I'm trying to flash the 369-in-1 bootleg cart using GBABF and a mego-rom created with the GBA_Multimenu tool but getting an error "unable to unlock sector 512" while it's trying to erase.

IS this possible? Am i missing something with GBABF or do I need to get a GBxCart RW to get this going?

JUst let me know, thanks!
GBABF does not support this cartridge, or any cartridge over 32MB in size. I highly recommend the Joey Jr V2++ flashed with Lesserkuma's L13 firmware (From FlashGBX), as it's much faster to flash carts with than the GBxCart RW. (I have both, and they both work with FlashGBX flawlessly, but the Joey Jr is noticeably faster at flashing GBA carts))
 
  • Like
Reactions: Xyvir

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
GBABF does not support this cartridge, or any cartridge over 32MB in size. I highly recommend the Joey Jr V2++ flashed with Lesserkuma's L13 firmware (From FlashGBX), as it's much faster to flash carts with than the GBxCart RW. (I have both, and they both work with FlashGBX flawlessly, but the Joey Jr is noticeably faster at flashing GBA carts))
Awesome thanks, I wasn't aware of the < 32 MB GBABF limitation
 
  • Like
Reactions: Jayro

onfy

Active Member
Newcomer
Joined
May 7, 2024
Messages
31
Trophies
0
XP
147
Country
Canada
There's a workaround to flash the cart with gbabf, you need to split the rom into 32MB (33,554,432 bytes) pieces.

Select "List EG0xx-Multicart Games", select the bank at 0MB, select "Flash data" (not flash rom) and flash the first piece. Then "List...", the bank at 32MB, flash data (not rom) with the second piece, etc at every 32MB offset. You can also flash games one at a time as long as you mind the alignment. (using GBAMultiCartMenuV2).

Hope this helps somebody.
 

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
Oh cool I had wondered about that multi kart menu in gbabf I'll check out GBA multi kart menu v2
Post automatically merged:

There's a workaround to flash the cart with gbabf, you need to split the rom into 32MB (33,554,432 bytes) pieces.

Select "List EG0xx-Multicart Games", select the bank at 0MB, select "Flash data" (not flash rom) and flash the first piece. Then "List...", the bank at 32MB, flash data (not rom) with the second piece, etc at every 32MB offset. You can also flash games one at a time as long as you mind the alignment. (using GBAMultiCartMenuV2).

Hope this helps somebody.

Do you have a good tool to split up the mego rom into 32 MB chunks?
 
Last edited by Xyvir,

onfy

Active Member
Newcomer
Joined
May 7, 2024
Messages
31
Trophies
0
XP
147
Country
Canada
Oh cool I had wondered about that multi kart menu in gbabf I'll check out GBA multi kart menu v2
Post automatically merged:



Do you have a good tool to split up the mego rom into 32 MB chunks?
I think it's a feature of lesserkuma's menu builder, or this command works in linux:
split -d -b 32M rom.gba rom_part

(cough) I also forked GBAMultiCartMenuV2 to make it easier to use with these multicarts, though it's not 100% finished yet and I didn't get around to making a thread yet for it like I was gonna https://github.com/Onfy/GBAMultiCartMenuV2-batteryless
 

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
Oh I km
I think it's a feature of lesserkuma's menu builder, or this command works in linux:
split -d -b 32M rom.gba rom_part

(cough) I also forked GBAMultiCartMenuV2 to make it easier to use with these multicarts, though it's not 100% finished yet and I didn't get around to making a thread yet for it like I was gonna https://github.com/Onfy/GBAMultiCartMenuV2-batteryless

Oh yup I completely glossed over the arguments of his menu builder, thanks.

I'll check your menu fork first though sounds neat
 

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
I think it's a feature of lesserkuma's menu builder, or this command works in linux:
split -d -b 32M rom.gba rom_part

(cough) I also forked GBAMultiCartMenuV2 to make it easier to use with these multicarts, though it's not 100% finished yet and I didn't get around to making a thread yet for it like I was gonna https://github.com/Onfy/GBAMultiCartMenuV2-batteryless

Okay so I got up mostly working, except earlier when I was missing on the stuff I tried to erase the flash. Now I can't get anything to go between the offsets of 28 MB and 64 MB for some reason.

I created a .GBA file, that is 32 MB of the same 8 MB ROM 4 times.

I can flash that to 16 MB offset fine, but then if I try to flash it again at the newly created 20, 24, or 28 offset it doesn't create any bank entries 32 or greater until 64.

I also came seem to use the flash file offset to write to anything past 32 MB offset even if I pick a new bank first.

Am I missing something here?
 

Attachments

  • 20240825_122342.jpg
    20240825_122342.jpg
    1.2 MB · Views: 35

onfy

Active Member
Newcomer
Joined
May 7, 2024
Messages
31
Trophies
0
XP
147
Country
Canada
If you accidentally erase a bank you won't be able to use list... to switch to it anymore, because there will be nothing to appear in the list. Fortunately gbabf has a function to let you switch to an arbitrary offset, but it's hidden in a very unintuitive part of the program. I haven't seen this feature discussed anywhere, and I was only able to find it by reading the source code. (By the way, when experimenting early on I tried erasing all banks to see if that would help, but it actually made it difficult for gbabf to detect the cartridge, I was lucky I was able to get it to work, but try to make sure at least one bank always has a rom in it, and especially bank 0.)

Go to ROM viewer, it will show you a hexadecimal representation of the first part of the current bank. (Not exactly sure how that would be useful.) Press SELECT and you will get a tools menu that's only accessible through the rom viewer... I don't know why. Select [EG0xx] Goto offset. Up and down let you move by 32MB, left and right by 4MB. Select 32MB, press A to confirm, and it will show that bank in the rom viewer. Press B to go back to the menu, and then use flash data to flash a rom at 32MB.

(This is also a way to put smaller roms at offsets that aren't currently occupied by a rom. However, you can also concatenate your roms, if you take care to pad them to a multiple of 4MB first and properly align them. Every multiple of 32MB should have a rom, and no rom can cross the x32MB boundaries.)

With these carts, you can think of them being divided into 8 32MB banks (for the 256MB/2gb cart). The banks can optionally be divided into 2 16 MB banks, which can be divided into 2 8MB banks, which can be divided into 2 4MB banks. But between the banks is a barrier which you can't read or write beyond. 8MB roms must be at a multiple of 8. 12 or 16MB roms must be at a multiple of 16. 20, 24, 28, or 32MB roms must be at a multiple of 32MB. They can be combined though, for example, if you have a 16MB rom that gets expanded to 16.5MB by the batteryless patcher, it must occupy 20MB, but you can have a 4MB and an 8MB rom after.

e.g.
32MB: 20MB rom
52MB: 4MB rom
56MB: 8MB rom

(The 8MB rom can't be at 52MB, because it isn't a multiple of 8.)

This is the main advantage of my GBAMultiCartMenuV2 fork. The original version only can have roms at a multiple of 8MB, and lesserkuma's menu will pad your roms to a power of two.
 
  • Like
Reactions: hippy dave

Xyvir

Well-Known Member
Newcomer
Joined
Apr 17, 2023
Messages
57
Trophies
0
Age
36
XP
188
Country
United States
If you accidentally erase a bank you won't be able to use list... to switch to it anymore, because there will be nothing to appear in the list. Fortunately gbabf has a function to let you switch to an arbitrary offset, but it's hidden in a very unintuitive part of the program. I haven't seen this feature discussed anywhere, and I was only able to find it by reading the source code. (By the way, when experimenting early on I tried erasing all banks to see if that would help, but it actually made it difficult for gbabf to detect the cartridge, I was lucky I was able to get it to work, but try to make sure at least one bank always has a rom in it, and especially bank 0.)

Go to ROM viewer, it will show you a hexadecimal representation of the first part of the current bank. (Not exactly sure how that would be useful.) Press SELECT and you will get a tools menu that's only accessible through the rom viewer... I don't know why. Select [EG0xx] Goto offset. Up and down let you move by 32MB, left and right by 4MB. Select 32MB, press A to confirm, and it will show that bank in the rom viewer. Press B to go back to the menu, and then use flash data to flash a rom at 32MB.

(This is also a way to put smaller roms at offsets that aren't currently occupied by a rom. However, you can also concatenate your roms, if you take care to pad them to a multiple of 4MB first and properly align them. Every multiple of 32MB should have a rom, and no rom can cross the x32MB boundaries.)

With these carts, you can think of them being divided into 8 32MB banks (for the 256MB/2gb cart). The banks can optionally be divided into 2 16 MB banks, which can be divided into 2 8MB banks, which can be divided into 2 4MB banks. But between the banks is a barrier which you can't read or write beyond. 8MB roms must be at a multiple of 8. 12 or 16MB roms must be at a multiple of 16. 20, 24, 28, or 32MB roms must be at a multiple of 32MB. They can be combined though, for example, if you have a 16MB rom that gets expanded to 16.5MB by the batteryless patcher, it must occupy 20MB, but you can have a 4MB and an 8MB rom after.

e.g.
32MB: 20MB rom
52MB: 4MB rom
56MB: 8MB rom

(The 8MB rom can't be at 52MB, because it isn't a multiple of 8.)

This is the main advantage of my GBAMultiCartMenuV2 fork. The original version only can have roms at a multiple of 8MB, and lesserkuma's menu will pad your roms to a power of two.
Thanks for the explanation, that helps a lot.

Man I wish there was a feature to write 'dummy roms' (just enough to be detected) to all 'slots' in increments of 4 MB
 

onfy

Active Member
Newcomer
Joined
May 7, 2024
Messages
31
Trophies
0
XP
147
Country
Canada
Thanks for the explanation, that helps a lot.

Man I wish there was a feature to write 'dummy roms' (just enough to be detected) to all 'slots' in increments of 4 MB
You'll just use up the flash's write cycles for nothing. Just map out what you want on the cartridge and write them. If you aren't satisfied with one of them, at least GBAMultiCartMenuV2 lets you change them easily.
 
  • Like
Reactions: Xyvir

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Delta984 @ Delta984: lol