Super Mario Advance 4 - All Unreleased e-Reader Cards Translated!!

Discussion in 'GBA - Game Development, ROM Hacks and Translations' started by Renegade_X135, Jan 18, 2019.

  1. Renegade_X135
    OP

    Renegade_X135 Newbie

    Newcomer
    1
    Jan 1, 2019
    United States
    It took me a couple of months of research, programming, trial and error. But just recently, I have finished work on translating ALL of the unreleased Super Mario Advance 4 e-Reader cards into English as digital binary files for use in emulator programs such as No$GBA, which feature e-reader/link cable functionality.

    Needless to say, the resulting SAV files can then be converted and loaded and then loaded into an actual GBA cartridge. Alternately, the binary data files can be converted into raw dot code images that a person can print out and use with an actual e-Reader.

    Now, some of you might be asking why this is even necessary? The Wii-U re-release of SMA4 already includes all of the e-Reader levels, and with officially translated titles. I did this for people that want to experience these levels/power-ups/demo-playthroughs to their fullest translation on the original ROM and/or cartridge of Super Mario Advance 4 - as Nintendo had originally planned for the American market.

    When SMA4 first came out in 2003, there were 105 e-Reader cards released in Japan (actually, 106, where one of them was a promo version of the Super Leaf card), but only 43 of them came to America, with the other 62 never released or translated. So, in order to accomplish this feat, what first I did was gather information on how Nintendo's binary data and header checksums worked for these files. (Most of this info came from CaithSith2's website on e-Reader hacking/development).

    I then started by using No-Intro's dumps of the Japanese SMA4 e-Reader cards, and using his dumps of the English SMA4 e-Reader cards as a cross-comparison at points.

    I also used the Checksum that Bangaio created a few months ago. This program was ESSENTIAL in converting all of the JP binary e-Reader files for US usage. To ensure that their program worked, I first used it to convert the demo and power-up cards that WERE released in America with their officially released American counterparts.

    Every single binary file was a perfect match, with the exception of the first 10 item cards (Mushroom, Fire Flower, Super Leaf, etc.) - For whatever bizarre reason, their unique identifiers had 10 subtracted from them. (Example: JP Fire Flower was 12, while US Fire Flower was 2) Remember how I mentioned that Promo Super Leaf Card earlier? Well, the JP Super Leaf identifier was 13, the Promo JP Super Leaf identifier was 3, and the US Super Leaf identifier was also 3.

    At this point, I then ran the program to convert the demo and power-up cards that WEREN'T released in America. (No identifiers were changed along the way whatsoever.) The Level Cards, however, had another problem: their names. The Japanese titles showed up as garbage text on US SMA4 games. For this, I decided to use the OFFICIAL translated level titles from the 2016 Wii-U virtual console re-release of SMA4, which has ALL 38 e-Reader levels pre-loaded into its ROM file. So, upon extracting the level data from the level cards, changing the bytes in the titles, and then re-compressing and re-encoding the e-Reader files, they were complete.

    There was one level in particular that took quite some extra work: No Time to Dawdle (also known in Japanese as B-Dash de Kakenukero!) This particular card was not included with the No-Intro dumps. I managed to acquire it by finding an SMA4 save file that contained the level saved into it. From here, I extracted the level out of the save and into it's own binary file. Using Bangaio's program, I was able to re-create the e-Reader BIN file of the long lost B-Dash de Kakenukero! card! All of the header/binary data matches up with Nintendo's syntax on e-Reader cards 100% perfectly.

    (To ensure that this level file was genuine, I made sure to cross-compare it to the fan re-creation of the level from 2013. The binary data was completely different between both files, so I knew that this binary data was the real deal.)

    The next obstacle was figuring out which "official" title to give this level when converting it to English. In the Wii-U version of the game, this particular level shows up as "No Time to Dawdle" when entering world-e for the first time in a play through. However, when re-playing the level on a subsequent try, the title changes to "No Time To Dawdle!" with an exclamation mark added. This bug occurs because the title in the save record data not being the same as the title in the embedded level data. However, it gets even deeper than that!! Within the Wii-U version of the SMA4 ROM, the bytes representing the name within the record data include a junk byte (1B) at the end of the string. This may have very well been a typo on behalf of the translation team, as the bytes representing the name within the level data include the exclamation mark byte at this same position.

    At this point, I decided to make an executive decision on what to name the level, and decided to go forward with "No Time to Dawdle" with the invisible junk byte 1B at the end of the string. I feel that this title fits the level most appropriately, as all 37 other level titles do not have an exclamation mark or question mark at the end of them. This also matches the title as it is found in the Wii-U re-release's ROM file.

    Other than changing the e-reader level titles from Japanese to English, no other changes were made to any of the data in any of the binary files! Before finishing up, I decided to take the opportunity to compare these converted BIN card files with CaitSith2's own converted BIN card files. There were some MAJOR revelations discovered!!

    For starters, his conversion of the power-up "5 P-Wings" was corrupt and did not work properly. He improperly converted the identifier for the "100-up Mushroom". But most importantly, his colored switch cards were missing vital data. As such, the official versions of the unreleased switch cards include the following:

    Yellow Switch - Luigi's Gravity cut in half - only usable in the SMA4 main game
    Green Switch - Timer twice as slow for first 50 counts - only usable in the SMA4 e-World
    Cyan Switch - P-meter only requires half the running - only usable in the SMA4 e-World

    CaitSith2's version of these cards had them usable in both the main game and the e-World, which were causing game-crashing bugs in SMA4 when more than 5 switches were active in game. What this means is that the main game is intended to have 5 switches maximum enabled: Blue, Orange, Blue Green, Yellow and Red. And that the e-World is intended to have its own 5 switches maximum enabled: Blue, Orange, Green, Cyan and Red.

    So now comes the BIGGEST discovery of all: the Red Switch!

    This switch works in both the main game and e-World. But CaitSith2's version of the card enables two effects: Harder versions of enemies and doubled score awards. Well... It turns out that the official version of the Red Switch actually has FOUR EFFECTS!

    Harder versions of enemies spawn, doubled score awards, non-lethal collisions turn Mario/Luigi into their small form (even if they had a Raccoon suit or Fire Flower), and bosses have twice their usual health.

    All of the converted binary card files that I have created include all of these official effects, and can be compared to their Japanese counterparts for verification.

    I have nothing but respect for CaitSith2, as he is the one who helped paved the way for these e-Reader conversions to become a reality. However, his conversions of the e-reader cards were incorrect, whereas these ones are correct.

    So without any further ado, here are the three downloads included with this post:

    1) The long-lost holy grail of Super Mario Advance 4: The Japanese "Mad Dash" level e-Reader file. (SMA4-J_07-A052_PR_B_Dash_de_Kakenukero!.rar)
    2) All of the unreleased Super Mario Advance 4 e-Reader Cards Translated. (SMA4_Unreleased_e-Reader_Cards_Translated.rar)
    3) All of the source files of the programs/scripts I used, along with helpful text files explaining all of the conversion data in more detail. (SMA4_e-Reader_Project.rar)

    Before I end, I just wanted to give credit to Bangaio, LuigiBlood, purplebridge001, CaitSith2 - without their help and programs, none of this would have been possible.

    I hope that these files help people experience ALL of the e-Reader functionality from Super Mario Advance 4 to the full extent, as it was meant to be enjoyed 15 years ago in 2003.
     

    Attached Files:

    twocows, ZipMartin, cracker and 23 others like this.
  2. Pablitox

    Pablitox GBAtemp Advanced Fan

    Member
    6
    Oct 18, 2011
    Argentina
    wow, amazing job! thank so much, can't wait to try it out!
     
  3. FAST6191

    FAST6191 Techromancer

    pip Reporter
    22
    Nov 21, 2005
    United Kingdom
  4. ShadowOne333

    ShadowOne333 GBAtemp Guru

    Member
    18
    Jan 17, 2013
    Mexico
    Nice work!
    Finally each level is now their proper .bin file for an eReader card :)

    I also wanted to ask, would this help to like create a ROM of Super Mario Advance 4 with all of the eReader levels? In like injecting them somehow without the limit of the 32 levels that the original SMA4 had?
    So that we can have a ROM with all of the eReader levels without having to rely on the legally dubious patch floating around.
     
    lordelan likes this.
  5. bluedart

    bluedart GBAtemp Regular

    Member
    4
    Nov 13, 2016
    United States
    This is amazing. I've been waiting for this for so long. It's too bad I have no idea how to use it and the included documentation only states how difficult it was to achieve many times. I'm so confused at how to use this. If you'd like to include some sort of tutorial for people who haven't worked with this kind of stuff for years I'd be very grateful. It'd be a shame for this to just fall into obscurity since I've been wanting it for years.
     
    RoniPunk likes this.
  6. RagnarokSam

    RagnarokSam Advanced Member

    Newcomer
    2
    Jul 19, 2009
    United States
    Chesapeake, VA
    Very nice!

    I think it might be time to dig my e-Reader out of the closet and give these a try!
     
  7. Meepers55

    Meepers55 GBAtemp Regular

    Member
    3
    Aug 7, 2018
    United States
    Is this the same version Vinny streamed?
     
  8. Jayro

    Jayro MediCat USB and Mini Windows 10 Developer

    Member
    14
    GBAtemp Patron
    Jayro is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 23, 2012
    United States
    Octo Canyon
    Yeah, we just need one single .bin patch that unlocks everything please.
     
    RoniPunk likes this.
  9. Wanderer0891

    Wanderer0891 Advanced Member

    Newcomer
    3
    Dec 18, 2008
    United States
    I admit learning that the Cyan Switch only works in World-e in the proper e-card is disappointing but oh well. I've attached some save files in a zip to this post with a bunch of items and the e-Switches scanned in for people who don't want to mess around with getting the e-Reader to work. One save has the Red Switch scanned in while the other does not, the save with the Red Switch is "SMA4-SMB3(RS).SAV". These saves are intended to be used on the Wii U version of SMA4 as they don't have level cards scanned in but I could try to make more save files with the level cards if requested. I made a tutorial for injecting SMA4 saves on the Wii U using Saviine here:
    Super Mario Advance 4 VC Save File Injection | GBAtemp.net - The Independent Video Game Community
     

    Attached Files:

    BobTheOompaLoompa and RoniPunk like this.
  10. Plstic

    Plstic Guru Meditation Error

    Member
    6
    Apr 21, 2010
    United States
    Milwaukee WI
    Does anyone know how to print these? I have never found a concise way that actually works.
     
    gudenau likes this.
  11. gudenau

    gudenau Largely ignored

    Member
    9
    GBAtemp Patron
    gudenau is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 7, 2010
    United States
    /dev/random
    I second this. It would be great fun to be able to print these out!
     
  12. Jayro

    Jayro MediCat USB and Mini Windows 10 Developer

    Member
    14
    GBAtemp Patron
    Jayro is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 23, 2012
    United States
    Octo Canyon
    Get ultra high quality scans of the cards and print them out at a printing shop. Then you can actually scan them.
     
  13. RoniPunk

    RoniPunk Advanced Member

    Newcomer
    2
    Sep 5, 2009
    United States
    Yes, Please do!

    How do you use this? Where do we place items the were NOT included? Where are the files once "convert_all_unreleased_card_files.bat" is used?
     
    Last edited by RoniPunk, Jan 19, 2019
  14. Trash_Bandatcoot

    Trash_Bandatcoot Your average GBAtemp fanboy

    Member
    6
    Jul 14, 2018
    Netherlands
    Great! I'll definetly check this out today, and then I can inject the save file into a SMA4 cart.
     
  15. GamingAori

    GamingAori GBAtemp Advanced Fan

    Member
    4
    Mar 16, 2014
    Germany
    Would it be able to make create a rom hack which includes everything?
     
  16. Coto

    Coto -

    Member
    7
    Jun 4, 2010
    Chile
    hmm I had no idea there was e-reader emulation and source code was added to VBA ...

    good work.
     
    Last edited by Coto, Jan 19, 2019
  17. bluedart

    bluedart GBAtemp Regular

    Member
    4
    Nov 13, 2016
    United States
    Okay, I guess I just hadn't looked hard enough. After Vinny's aformentioned stream of the e-reader levels very recently I just had to figure this out. Turns out this has been available since last year. If you go to a specific github, you can download an ips patch which works on RetroArch and puts the 38 e-reader levels into the game. From what I can tell "No Time to Dawdle" does not save properly, likely due to the name mismatch in the save data you mentioned. Apart from that, is everything else present, or should I somehow figure out how to turn your work into a usable rom to get extra content?
     
  18. Lumstar

    Lumstar Princess

    Member
    4
    Mar 6, 2006
    United States
    Darling
    Nintendo embedded and translated the levels for the Virtual Console rom. If you do use it, you'll only have to deal with the non-level cards.

    The reason for the e-reader level patch being "legally dubious" as pointed out above is that the VC content is officially issued and sold by Nintendo.
    Of course, the same thing applies to a save file with the e-reader levels scanned into the game. The save will contain data that originated from the cards.
     
    Last edited by Lumstar, Jan 19, 2019
  19. Coto

    Coto -

    Member
    7
    Jun 4, 2010
    Chile
    can confirm the save files do work on USA mario advance 4: mario 3 on gbaemu4ds.
     
  20. shamzie

    shamzie Oh David de Gea <3

    Member
    5
    Mar 19, 2014
    Manchester
    is there anyway to play these on 3ds?
     
Loading...