Hacking TempGBA: NDSGBA revival

Do GBA games make your nono parts happy?


  • Total voters
    429

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
As I am comparing the game_config files I found there are quite a bit of differences between the current TempGBA (beta 13) and the one on filetrip (v1.3).
The differences are:
  • translation gates commented out in the TempGBA file, and one idle loop eliminate too.
  • Super Mario Advance (U) has a different game code in TempGBA. AMZE in TempGBA and AMAE in v1.3.
  • Pokemon: Fushigi no Dungeon Aka no Kyuujotai (J) has a different flash_rom_type and the game is commented out as a whole.
    • Mario and Luigi Superstars (U),
    • Ougon no Taiyo - Ushinawareshi Toki (J),
    • Nishihara Rieko no Dendou Mahjong (J),
    • Hudson Best Collection Vol.1 - Bomberman Collection (J),
    • Hudson Best Collection Vol.2 - Lode Runner Collection (J),
    • Hudson Best Collection Vol.3 - Action Collection (J),
    • Hudson Best Collection Vol.4 - Nazotoki Collection (J),
    • Hudson Best Collection Vol.5 - Shooting Collection (J),
    • Hudson Best Collection Vol.6 - Bouken Jima Collection (J),
    • Mario Tennis Advance (J),
    • Digi Communication 2 - Datou! Black Gemagema Dan (J),
    • Dragon Ball Z - The Legacy of Goku II International (J) are included in TempGBA and not in v1.3.
    • Open Season (U),
    • Robopon 2 Cross Version (U),
    • Robopon 2 Ring Version (U),
    • Disney's Aladdin (E),
    • Disney's Aladdin (U) are included in v1.3 and not in TempGBA.
I do not know which games are still necessary in game_config and which are not and what changes should stay and which shouldn't.
If you or anyone else who knows this could tel me what to keep and what to lose, I'll start merging these two files first, before merging them with the new game_config of Am-rA.
  • Translation gates should be gone, because they're unneeded in TempGBA as of beta 10.
  • AMZE and AMAE appear to be different versions of the same game, but I'm not sure.
  • The (J) games may need feedback from a Japanese user, but in general the one in TempGBA should take precedence and be merged into v 1.3 because it's derived from the Kai game_config.txt, which has presumably received feedback for those games.
  • Merge (E) and (U) from v 1.3 into TempGBA.
 

Aeter

A walking contradiction
Member
Joined
Apr 1, 2009
Messages
942
Trophies
1
Age
36
Location
The lands of nether
XP
485
Country
Netherlands
  • Translation gates should be gone, because they're unneeded in TempGBA as of beta 10.
  • AMZE and AMAE appear to be different versions of the same game, but I'm not sure.
  • The (J) games may need feedback from a Japanese user, but in general the one in TempGBA should take precedence and be merged into v 1.3 because it's derived from the Kai game_config.txt, which has presumably received feedback for those games.
  • Merge (E) and (U) from v 1.3 into TempGBA.
Figured out the problem of Super Mario Advanced. AMAE is the EU version and AMZE is the US version.
Now I do wonder if both games could use the same fix though.
I've added both since SMA4 uses the exact same fix on US and EU version and they are bound the have the same issues, so it'll fix the same issues too I hope.

I've merged all the games now.
I found out that the new game_config doesn't have any similarities between my newly merged game_config and seems have a lot fixes for EU and specific EU country games like (S) for Spanish games and such, so I've added those to the current list as none of the games seem to occur in my merged one.

Here's the all new and shiny game_config.
I'll post it in the game_config thread too and ask if I can update it to filetrip as being v1.4.
 

Attachments

  • game_config_merged.txt
    36.1 KB · Views: 268

Am-rA

Member
Newcomer
Joined
Mar 27, 2013
Messages
6
Trophies
1
Age
123
XP
171
Country
Figured out the problem of Super Mario Advanced. AMAE is the EU version and AMZE is the US version.
Now I do wonder if both games could use the same fix though.
I've added both since SMA4 uses the exact same fix on US and EU version and they are bound the have the same issues, so it'll fix the same issues too I hope.

I've merged all the games now.
I found out that the new game_config doesn't have any similarities between my newly merged game_config and seems have a lot fixes for EU and specific EU country games like (S) for Spanish games and such, so I've added those to the current list as none of the games seem to occur in my merged one.

Here's the all new and shiny game_config.
I'll post it in the game_config thread too and ask if I can update it to filetrip as being v1.4.


Thanks for your work and bring mine bit to this wonderful emulator
Nebuleon're a crack
 

nl255

Well-Known Member
Member
Joined
Apr 9, 2004
Messages
2,999
Trophies
2
XP
2,783
Country
I have noticed that the emulator often corrupts itself and the only way to fix it is to delete the system directory and recopy the emulator over which means losing all of my custom configuration options (otherwise it will just hang at LOADING...). Also, this happened as well.

More than one SUPER~01.RTS entry in folder \TEMPGBA\SAVES.
Renamed to SUPER~01.RT0.
More than one SUPER~01.RTS entry in folder \TEMPGBA\SAVES.
Renamed to SUPER~01.RT0.

Update: Creating a save state in Super Mario World and then exiting corrupts the emulator.
 

nl255

Well-Known Member
Member
Joined
Apr 9, 2004
Messages
2,999
Trophies
2
XP
2,783
Country
I was having the loading issues and RTS-file stuff issues before. Backed up, formatted with the SD formatter, hasn't happened again.

I am doing that now, too bad it takes over an hour to do as writing 16GB worth of 0x00's (or is it 0xff) over a USB 2.0 connection takes a while. Is it really necessary to do the full overwrite erase format?
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
I am doing that now, too bad it takes over an hour to do as writing 16GB worth of 0x00's (or is it 0xff) over a USB 2.0 connection takes a while.
You don't need to go through the erase process, just the size adjustment. Erasing is more of a security thing, or a bad sector check thing.
 

RupeeClock

Colors 3D Snivy!
Member
Joined
May 15, 2008
Messages
6,497
Trophies
1
Age
34
Website
Visit site
XP
2,946
Country
Metroid Zero Mission seems to freeze when I set the CPU frequency to [5] 396MHz, but is okay on [4] 384MHZ, it seems that the overclock isn't stable.
What processor is inside the Supercard DStwo actually? I think it is a MIPS from what I have gathered, but what frequency is it?
 

nl255

Well-Known Member
Member
Joined
Apr 9, 2004
Messages
2,999
Trophies
2
XP
2,783
Country
Well the format (with size adjustment off) worked but save states are still showing as messed up on chkdsk despite working fine (no more emulator lockups on boot). Though copying them elsewhere in Windows is impossible as the short filenames are all messed up.

Update - Format size adjustment on doesn't help either. Perhaps a 16GB Class 2 card is too slow for tempgba?
 

Coto

-
Member
Joined
Jun 4, 2010
Messages
2,979
Trophies
2
XP
2,564
Country
Chile
I am doing that now, too bad it takes over an hour to do as writing 16GB worth of 0x00's (or is it 0xff) over a USB 2.0 connection takes a while. Is it really necessary to do the full overwrite erase format?

iirc it's 0x00, and writing on chips, requires erasing every block in there, degradation occurs, but if you do it now, you'll fix up a big trouble later.

stored data would be (filesize[on bytes]/clustersize[on bytes]) = n blocks [each one unique]. then every block, say 32KB a piece (32*1024) = 32768 bytes / 16 [bytes, from 0 to F] = 2048 lines of 16 "0x00's" or, 0x800 a piece of 32KB block.

but writing is handled differently on flash than hdd's, more here:

http://www.zdnet.com/blog/storage/five-things-you-never-knew-about-flash-drives/147
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Metroid Zero Mission seems to freeze when I set the CPU frequency to [5] 396MHz, but is okay on [4] 384MHZ, it seems that the overclock isn't stable.
What processor is inside the Supercard DStwo actually? I think it is a MIPS from what I have gathered, but what frequency is it?
It's an Ingenic JZ4740, using the MIPS32 r1 instruction set, whose nominal frequency is 360 MHz.
 

nl255

Well-Known Member
Member
Joined
Apr 9, 2004
Messages
2,999
Trophies
2
XP
2,783
Country
iirc it's 0x00, and writing on chips, requires erasing every block in there, degradation occurs, but if you do it now, you'll fix up a big trouble later.

stored data would be (filesize[on bytes]/clustersize[on bytes]) = n blocks [each one unique]. then every block, say 32KB a piece (32*1024) = 32768 bytes / 16 [bytes, from 0 to F] = 2048 lines of 16 "0x00's" or, 0x800 a piece of 32KB block.

but writing is handled differently on flash than hdd's, more here:

http://www.zdnet.com/blog/storage/five-things-you-never-knew-about-flash-drives/147

Well the only way to know for sure would be to reverse engineer the SD Formatter which is well beyond my skills.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
a) Of pretty interesting note, TempGBA Beta 13 is capable of emulating Stealth's proof of concept Sonic The Hedgehog GBA port VERY well, whilst NDSGBA 1.30 can't manage it at all.



I was impressed with that.

b) I suppose it's worth asking, overclocking can lead to instability, do any of you experience freezes when overclocking to [5] (396mhz) or is there possibly an issue with my DSTwo?
I'm thinking my DSTwo may have some issues with the 32gb card I am using, or possibly just contact issues with the DSi cart slot.

a) I completely glossed over your post for some reason, and that is indeed interesting... but very odd. I don't think I did anything that made that much of a difference in a game, and I doubt that proof-of-concept ROM uses my improvements in any way. What was NDSGBA's problem with this ROM, and how well does TempGBA beta 13 fix it?

b) It is very possible that your particular Supercard overheats and freezes, or lacks power due to your Supercard's power circuit or your DS's power circuit, at 396 MHz. If that's the case, then your Supercard is rather bad, because 396 MHz is a mere 10% overclock. It was added in an early BAGSFC/CATSFC build because it was relatively stable, but I guess not.

CATSFC uses 396 MHz as its default CPU frequency; can you test some SNES games on it and look for freezing?
 

RupeeClock

Colors 3D Snivy!
Member
Joined
May 15, 2008
Messages
6,497
Trophies
1
Age
34
Website
Visit site
XP
2,946
Country
It's an Ingenic JZ4740, using the MIPS32 r1 instruction set, whose nominal frequency is 360 MHz.
Curious stuff, the GCW Zero sports an Ingenic JZ4770 1GHz processor, and I believe the Dingoo A320 also features an Ingenic processor of the same line.
It must be pretty popular among Hong Kong manufacturers.

a) I completely glossed over your post for some reason, and that is indeed interesting... but very odd. I don't think I did anything that made that much of a difference in a game, and I doubt that proof-of-concept ROM uses my improvements in any way. What was NDSGBA's problem with this ROM, and how well does TempGBA beta 13 fix it?

b) It is very possible that your particular Supercard overheats and freezes, or lacks power due to your Supercard's power circuit or your DS's power circuit, at 396 MHz. If that's the case, then your Supercard is rather bad, because 396 MHz is a mere 10% overclock. It was added in an early BAGSFC/CATSFC build because it was relatively stable, but I guess not.

CATSFC uses 396 MHz as its default CPU frequency; can you test some SNES games on it and look for freezing?

a) The proof of concept rom as I recall was reconstructed by reverse-engineering the Genesis rom itself, so whatever operations it performs may be very unusual compared to other commercial games, but still capable of running perfectly on authentic hardware (I have tested with Slot-2 devices)
The basic problem was that NDSGBA could not run it very fast at all, it may've been around 15fps.
As it happens, gpSP on the GP2X Caanoo actually runs it even worse, even overclocked from 533MHz to 800MHz. The Caanoo is an ARM device though.
All of the slowdown seems to be tied to the audio processing though, if you let the title theme play out, the game runs faster when no audio is processed.
It would be worth testing NDSGBA and TempGBA with audio disabled.

b)To be honest I am having a hard time identifying the fault with my DSTwo, if it is the 32gb microSD I WAS using, 8gb microSD I'm currently using, possibly the DSi slot, if it can tolerate an overclock or not, etc.
I will give CATSFC a shot and see if I experience freezing at 396MHz, to my recollection it doesn't though.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
TempGBA beta 14 is available, incorporating a fix for filesystem corruption by BassAceGold. It should handle Short File Names (SFN) and Long File Names (LFN) more correctly and prevent duplicate aliases (two files named MARIO~01.RTS, for example).

There is only this in beta 14. It is pretty important. Please test it.
 

nl255

Well-Known Member
Member
Joined
Apr 9, 2004
Messages
2,999
Trophies
2
XP
2,783
Country
TempGBA beta 14 is available, incorporating a fix for filesystem corruption by BassAceGold. It should handle Short File Names (SFN) and Long File Names (LFN) more correctly and prevent duplicate aliases (two files named MARIO~01.RTS, for example).

There is only this in beta 14. It is pretty important. Please test it.

It seems to work fine now though I only did a limited test (two save states with mario world). I will test more later.
 

Canadacdn

Well-Known Member
Member
Joined
Jul 20, 2007
Messages
147
Trophies
0
Location
Canada
Website
Visit site
XP
271
Country
Canada
If anyone cares, I re-wrote a bunch of stuff on that emulator compatibility wiki page. Most of the information on there was very outdated and written for NDSGBA which is shitty and obsolete. Make sure you guys update the tables as you play!
 

keine

Well-Known Member
Member
Joined
Aug 29, 2010
Messages
431
Trophies
1
Website
Visit site
XP
1,434
Country
United States
Tested Metroid Fusion and it runs much better than the original supercard GBA Emulator. It gets up close to 60fps I believe. The feel of it is lots lots better when you remove frameskip. Metroid is a very fluid game when played on original hardware. Final Fantasy VI however is only doing about 20fps/60fps which makes movement sluggish. Yet the emulation is spot on. Beta13
 

Rydian

Resident Furvert™
Member
Joined
Feb 4, 2010
Messages
27,880
Trophies
0
Age
36
Location
Cave Entrance, Watching Cyan Write Letters
Website
rydian.net
XP
9,111
Country
United States
If anyone cares, I re-wrote a bunch of stuff on that emulator compatibility wiki page. Most of the information on there was very outdated and written for NDSGBA which is shitty and obsolete. Make sure you guys update the tables as you play!
Er, which one? I made a new page for this one since yeah a lot of the old info didn't apply anymore.
http://wiki.gbatemp.net/wiki/TempGBA_Compatibility
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Xdqwerty @ Xdqwerty: Ohkay