Hacking EZ-Flat IV 2.05 - A skin for your EZ-Flash IV card (Kernel 2.05)

Localhorst86

Robert'); DROP TABLE members;--
OP
Member
Joined
Jul 17, 2014
Messages
2,488
Trophies
1
Location
Nintendo works for my dad
XP
3,423
Country
Germany
Hello everyone,

since the EZ-Flash team decided to update their EZ-Flash IV Firmware to 2.02+ bringing a few interesting features changing the way the system is to be used I decided to create a new thread for the 2.02+ version of this skin. The old releases can be found here.
This is a skin i just made for the Ezflash IV microSD. It is mostly a flattened Clearlooks skin with new icons and a new splash screen, see the attached screenshots. The current release of the skin is EZ-Flat IV 2.05 based on the official 2.05 kernel. The Skin will work on the miniSD and microSD models of the EZ-Flash IV card. Version 2.04+ has been reported working on the new E-Flash Reform models as well.
------------------------
Screenshots:
------------------------

splash.png
Menu1.png
browser.png
Menu2.png
options.png



------------------------
Features:
------------------------
  • Clean, Flat UI based on modern UI visuals
  • Maximum displayable files per folder: 334
  • Automatic savegame patching (credits to EZ-Flash Team)
  • Automatic Anti-Piracy patches applied to games. Games like NES Classics, Dragon Ball Z Legacy of Goku and Top Gun - Combat Zones should work fine now (credits to EZ-Flash Team)
  • Optional Global Soft Reset and Sleep Patches (See "Usage" section for more information)
  • Made multiple improvements to the Kernel text and help content
  • Renamed the "Save Mode" options to make them easier to understand (see "Save Mode" below, also available in the Release Notes section of the kernel, thanks Gyron)
  • Used improved font from the Clearlooks Skin (Thanks Libertyernie)
  • Used various texts from BlueNight/Firewatch Skin (Thanks Gyron)
  • Fixed 8KB save files from displaying as "8,192" (Thanks Draxoon)
  • Optional Hardreset on every launch as per the KEYSET.CFG. Needed for some games, for example Yoshi's Island or the Boktai games (credits EZ-Flash Team)
  • Option to disable GSS completely or on a per-game basis via KEYSET.CFG
------------------------
Usage:
------------------------
Copy 'ezfla_up.bin' and KEYSET.CFG to the root of your SD card. Hold the 'R' trigger while powering on your GBA and keep holding until you see the black/yellow update screen. Wait until the process has completed and you should see the newly flashed skin. Another power cycle is recommended.
The KEYSET.CFG provided comes with the option for Sleep and Softreset disabled by default on version 2.04 (2.02 and 2.03 have this enabled but with compatibility issues) due too a lot of games not being compatible with it and the hard reset on boot being always enabled (to maximize compatibility out of the box). Feel free to enable or disable the GSS patching or auto-hardreset in the .cfg file to your liking if you wish or modify the button combinations.

The KEYSET.CFG file contains a modified In-Game-Reset Button combination if you decide to enable it. To return to the EZ-Flash IV menu press L+A+B+Select. You can revert to the default button combination or create your own by editing KEYSET.CFG.

------------------------
Save Mode:
------------------------
Optional - Saving is optional. The save file from the last played game is written to the memory card during boot (if the SRAM contents were altered ie. you saved or changed the options during a game), but you can skip this process by holding 'L' on bootup.
Note: Save skipping is only temporary, the EZ IV will continue to try and write the save on every boot until you load another game.
Note 2: If you accidentally hold 'L' on bootup (or from an in-game reset), inadvertently skipping the saving process, just switch off, then back on again to write the save.

Always - Will always write the save from the last played game (if there is a difference from the save file (.sav) already on the memory card, this is checked during boot). This setting is basically the same as "Optional" but without the ability to skip the save writing process.

------------------------
Known issues:
------------------------
Initial ROM Loading is a lot slower as the system will create a patch on the initial launch of a ROM and save that, making subsequent launches faster.
Depending on the writing speed of your SD card, the system might seem stuck at 100% for a few seconds. Do not turn your system off, the system is writing the patch file to the SD Card.
Sometimes when loading a ROM the system might report percentages higher than 100% (103% was the highest I received).
Sometimes the Global Softreset and Sleep Patch is incompatible with a game and cause it to freeze or crash. If so, Launch the game with the button combination "L+B" or disable the feature entirely using the KEYSET.CFG file, it will then skip the GSS Patch.

------------------------
FAQ/Troubleshooting:
------------------------
Q: My game crashes/behaves oddly when I launch it from PSRAM (example: Banjo-Kazooie - Grunty's Revenge)
A: The GSS Patch is not 100% compatible with all games, some games simply wont work with the patch running. The EZ-Flash Team has provided us with a way of launching the games without the GSS Patch enabled. Simply launch the Game with the button combination "L+B" from the file selection menu.

Q: My game crashes/behaves oddly when I launch it from NOR even though I am launching it with "L+B" (again, example: Banjo-Kazooie - Grunty's Revenge)
A: When writing the game to the NOR Flash, the GSS Patch is applied and active. Launching the game with L+B doesn't affect it (the patched ROM is already on the NOR). Again, the EZ-Flash Team has given us a way to prevent the patched ROM to be written to NOR though (but they forgot to document it - I just found this by simply trying). Instead of pressing "Select" to write the ROM to the NOR, press "L+Select". This will disable the GSS Patch from being applied to the ROM in NOR.

Q: When I Flash a game to NOR, it's size on the NOR has increased by 256Kb (Third time's the charm, Banjo-Kazooie - Grunty's Revenge increases from 8,192Kb to 8,448Kb)
A: Again, this is caused by the GSS Patch. Wether you write the game to NOR with the GSS Patch enabled (Select) or disabled (L+Select), the additional patch data is added into the ROM. (Fixed by the EZ-Flash Team with release 2.03). The GSS Patching routine has to place it's own code somewhere in the ROM. Quite often game ROMs contain "padding" at the end of the ROM (tons of bytes being either filled with 00s or FFs, basically garbage data) that the Patching engine can overwrite. However, if the game does not contain padding (or if the padding is random data - which it cannot detect as padding) the patching engine will simply append the information after the ROM, increasing it's size. You can write it to NOR without the GSS Patch by pressing L+Selector disabling GSS globaly or on a per-game level for the game in question.

draxoon for the skin toolkit including text patches
Gyron for some of his text changes
Libertyernie for the base clearlooks skin
Tony Thomas (http://medialoot.com/item/free-mini-vector-app-icons/) for most of the icons used

12.07.2017 - updated to kernel 2.02, autoreset patch removed (official version implemented by the EZ-Flash Team)
17.07.2017 - updated to kernel 2.03, allows for disabling GSS completely or on a per-game basis via KEYSET.CFG
31.10.2017 - updated to kernel 2.04
08.01.2018 - updated to kernel 2.05
 

Attachments

  • EZ-Flat_IV_2.02.zip
    275.5 KB · Views: 587
  • EZ-Flat_IV_2.03.zip
    276.4 KB · Views: 1,081
  • EZ-Flat_IV_2.04.zip
    276.3 KB · Views: 806
  • EZ-Flat_IV_2.05.zip
    276.8 KB · Views: 2,733
Last edited by Localhorst86,

tiduscrying

that butt...
Member
Joined
Jun 12, 2012
Messages
508
Trophies
0
Location
HELL
Website
tiduscrying.wordpress.com
XP
1,931
Country
United States
Awesome dude! I am super glad 2.02 includes all the features we've been waiting for. This makes the EZFlash IV a real competitor to the Everdrive imho. Glad to see the theme updated for the new firmware! Fingers crossed that the NOR issues get ironed out asap!

I was wondering if you'd mind compiling the Cobalt theme again for me please? Sorry to ask you to do it, but I have tried all morning with the EZ Skinner (unofficial v9 version) and I keep getting ezfla_up.bin files that are 0KB in size, so I must be doing something wrong here. Attached is the Cobalt skin bmps, I edited some to reflect that the "text saver" feature is bunk (I just removed some of the text from the graphics that said it would load a game save). Whenever you get the chance though! Danke in advance!
 

Attachments

  • Cobalt_bmp.zip
    264.2 KB · Views: 472

Localhorst86

Robert'); DROP TABLE members;--
OP
Member
Joined
Jul 17, 2014
Messages
2,488
Trophies
1
Location
Nintendo works for my dad
XP
3,423
Country
Germany
Awesome dude! I am super glad 2.02 includes all the features we've been waiting for. This makes the EZFlash IV a real competitor to the Everdrive imho. Glad to see the theme updated for the new firmware! Fingers crossed that the NOR issues get ironed out asap!

I was wondering if you'd mind compiling the Cobalt theme again for me please? Sorry to ask you to do it, but I have tried all morning with the EZ Skinner (unofficial v9 version) and I keep getting ezfla_up.bin files that are 0KB in size, so I must be doing something wrong here. Attached is the Cobalt skin bmps, I edited some to reflect that the "text saver" feature is bunk (I just removed some of the text from the graphics that said it would load a game save). Whenever you get the chance though! Danke in advance!

I was able to figure out the NOR issue, it's not caused by my skin but the GSS Patch Engine by EZ-Flash and is also found on the official kernel. I have added a FAQ/Troubleshooting section to the OP explaining the issue. My skinned version has been made available again on the basis that it's the official behaviour by the kernel and not caused by my modifications.

I might look into creating your Cobalt theme, even though I am contemplating releasing the skin toolkit I am using including the kernel files i extracted and my patches to the public. I don't see why I should keep them a secret and this would allow everyone to create their own skins. I have already shared my packaged base files privately with someone (keep your eyes peeled for a pretty nice skin by @Dnilo ;)), I am probably just going to need to clean all the files up before I go ahead and make it public. But now it's 00:13am and I need to get some sleep.
 

droople

Well-Known Member
Member
Joined
May 20, 2006
Messages
165
Trophies
0
XP
453
Country
Australia
Great work.
I'm just wondering that can I use your skin file to update to 2.02 directly, or I need to use official file first, and than use your skin file.

Sorry, because it's called skin file, or it's actually the kernel file.
 

tiduscrying

that butt...
Member
Joined
Jun 12, 2012
Messages
508
Trophies
0
Location
HELL
Website
tiduscrying.wordpress.com
XP
1,931
Country
United States
Great work.
I'm just wondering that can I use your skin file to update to 2.02 directly, or I need to use official file first, and than use your skin file.

Sorry, because it's called skin file, or it's actually the kernel file.
You can use the skin file to update to 2.02, yes. The skin and the kernel are bundled into the same update file, which is why it essentially why skins have to be rebuilt every time a new official update comes out.

I was able to figure out the NOR issue, it's not caused by my skin but the GSS Patch Engine by EZ-Flash and is also found on the official kernel. I have added a FAQ/Troubleshooting section to the OP explaining the issue. My skinned version has been made available again on the basis that it's the official behaviour by the kernel and not caused by my modifications.

I might look into creating your Cobalt theme, even though I am contemplating releasing the skin toolkit I am using including the kernel files i extracted and my patches to the public. I don't see why I should keep them a secret and this would allow everyone to create their own skins. I have already shared my packaged base files privately with someone (keep your eyes peeled for a pretty nice skin by @Dnilo ;)), I am probably just going to need to clean all the files up before I go ahead and make it public. But now it's 00:13am and I need to get some sleep.

By all means, share your tools, great theming master! I'd imagine it kinda sucks getting request after request for a bunch of themes each time a significant EZFlash update happens, so releasing your modified toolkit files would probably be the easiest way for others to compile skins on their own. I usually can manage making my skins by myself, I just haven't been able to for the more recent updates because I am probably lacking some essential files or knowledge to get the latest kernel files working with the old theming toolkit by Draxoon. Either way, I am going to use this nice skin for now until I get the tools to rebuilt cobalt. I'll keep my eyes peeled for Dnilo's theme as well! It's always nice seeing new stuff made for a cart this old!
 
  • Like
Reactions: droople

Localhorst86

Robert'); DROP TABLE members;--
OP
Member
Joined
Jul 17, 2014
Messages
2,488
Trophies
1
Location
Nintendo works for my dad
XP
3,423
Country
Germany
Sleep mode and reset to menu work fine. If you're using the KEYSET.CFG i provided, sleep mode is "L+R+Start", reset-to-menu was changed to L+A+B+Select. The Keyset contains the following games which have the patch disabled because it causes issues:

AFTE = 1 #F-14 Tomcat(UE)
APLP = 1 #Pinball Challenge Deluxe(EU)
BKZX = 1 #Banjo-Kazooie (EU)
 

Toastbrot

Active Member
Newcomer
Joined
Apr 9, 2010
Messages
34
Trophies
0
XP
166
Country
Germany
Just to be clear, by disabling GSS via KEYSET.CFG (since i dont need this feature), the EZ-flash will just act like before, with all games working like before, right?
 

regnad

Button Masher
Member
Joined
May 19, 2008
Messages
2,386
Trophies
0
Age
50
XP
2,546
Country
I see the problem. The games on my card were all previously patched using the PC based patcher, and the new kernel I guess ignores any games that have already been patched. I suppose if I want this feature I have to replace everything on the SD with unpatched games.

Do games that have been pre-patched using the PC tool load faster than those patched by the 2.0 kernel? Does the 2.0 kernel patch the ROM each time, or just the first time?

edit: I tested it myself. First time unpatched it takes about three times as long, but the second time it takes just as long as the pre-patched one.

edit 2: Sleep patch works fine, but soft reset L A B select doesn't work with any game I've tried.
 
Last edited by regnad,

Okaris

New Member
Newbie
Joined
Jul 10, 2015
Messages
4
Trophies
0
Age
28
XP
67
Country
Senegal
Reset-to-menu can be changed to L+R+Start+Select as long as you remove the ezfla_up.bin file after updating the flashcart. As for the Soft Reset, it works for all the games I tried except for the NES Classics.
 

vree

Well-Known Member
Member
Joined
Sep 12, 2005
Messages
588
Trophies
0
XP
1,091
Country
United Kingdom
"I have provided a modified KEYSET.CFG file with a modified In-Game-Reset Button combination. To return to the EZ-Flash IV menu press L+A+B+Select. You can revert to the default button combination or create your own by editing KEYSET.CFG."

Do you need to flash it to the new firmware with the keyset already on the sd? Because it just doesn't work in any game...
 

Localhorst86

Robert'); DROP TABLE members;--
OP
Member
Joined
Jul 17, 2014
Messages
2,488
Trophies
1
Location
Nintendo works for my dad
XP
3,423
Country
Germany
"I have provided a modified KEYSET.CFG file with a modified In-Game-Reset Button combination. To return to the EZ-Flash IV menu press L+A+B+Select. You can revert to the default button combination or create your own by editing KEYSET.CFG."

Do you need to flash it to the new firmware with the keyset already on the sd? Because it just doesn't work in any game...
No, the file does not need to be flashed, it only needs to be on the root of the SD card.

For GSS to work you obviously need clean ROMs. Make sure they are not patched in any way.
 

Localhorst86

Robert'); DROP TABLE members;--
OP
Member
Joined
Jul 17, 2014
Messages
2,488
Trophies
1
Location
Nintendo works for my dad
XP
3,423
Country
Germany
Nope they aren't patched just dropped on the SD.
Have you checked if the game in question is in the list of games with GSS disabled? Open the Keyset.cfg file from the root of your SD card and check if GSS is disabled globaly or the game is in the list of games to skip GSS. Maybe also tell us which game it is and the checksum of the ROM.
 

vree

Well-Known Member
Member
Joined
Sep 12, 2005
Messages
588
Trophies
0
XP
1,091
Country
United Kingdom
Have you checked if the game in question is in the list of games with GSS disabled? Open the Keyset.cfg file from the root of your SD card and check if GSS is disabled globaly or the game is in the list of games to skip GSS. Maybe also tell us which game it is and the checksum of the ROM.

It's every single game on the cart...

--------------------- MERGED ---------------------------

Check the setting USE_KEYSET = 0
To enable your settings, you need to set "1"

Will check later but if it's the one posted it should already be set to 1.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    Veho @ Veho: There's even a TV series.