GBAVCSM 3DS: Difference between revisions

From GameBrew
m (Text replacement - "| licence" to "| license")
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews
{{Infobox 3DS Homebrews
| title       = GBAVCSM
|title=GBAVCSM
| image       = https://dlhb.gamebrew.org/3dshomebrew/GBAVCSM-3DS.png|250px
|image=Gbavcsm2.png
| type        = Other Apps
|description=Game Boy Advance Virtual Console Save Manager.
| version    = v1.3
|author=TurdPooCharger
| lastupdated = 2020/04/09
|lastupdated=2020/04/09
| license     = Mixed
|type=Save Managers and Editors
| author      = TurdPooCharger
|version=1.3
| website     = https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-10#post-8790663
|license=GPL-3.0
| download    = https://dlhb.gamebrew.org/3dshomebrew/GBAVCSMv1.3.7z
|download=https://dlhb.gamebrew.org/3dshomebrews/gbavcsm.7z
| source     = https://github.com/TurdPooCharger/GBAVCSM
|website=https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-10#post-8790663
|source=https://github.com/TurdPooCharger/GBAVCSM
}}
}}
GBAVCSM (Game Boy Advance Virtual Console Save Manager)
GBAVCSM, or Game Boy Advance Virtual Console Save Manager, is a [[GodMode9 3DS|GodMode9]] (gm9) script dedicated to handling GBA VC saves.
 
==Description==
A gm9 script dedicated to handling GBA VC saves.


==Features==
==Features==
*Automatically mass dump all the GBA VC saves in one go. Caching the titles list is not required.
* Automatically mass dump all the GBA VC saves in one go. Caching the titles list is not required.
 
* Extract the *.gba roms from the individual injections.
'''Carefully read the top screen's ~ INSTRUCTIONS ~.'''
* User customizable script icon, title box art, and save folder's name & directory.
** See further details in the option, About the script.
** Edit the settings with a text editor like Notepad or [https://www.pnotepad.org Programmer's Notepad].
* Supports up to four (4) separate Nintendo 3DS folders. Compatible with:
** [https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-5#post-7809897 Switch_Nin3DS_folders].
** [https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-6#post-7834930 Change_Nin3DS_#_Folders].


*Extract the *.gba roms from the individual injections.
==User guide==
*User customizable script icon, title box art, and save folder's name & directory.
===Box Arts, Banners, Screenshots, Rom Info Lookup===
**See further details in the option, About the script.
* [https://gbatemp.net/threads/cover-collections-for-emulators-with-cover-support.324714 Cover Collections for Emulators With Cover Support.]
**Edit the settings with a text editor like Notepad or [https://www.pnotepad.org/ Programmer's Notepad].
* [http://www.thecoverproject.net/view.php?cat_id=13 The Cover Project - Gameboy Advance Game Covers.]
*Supports up to four (4) separate Nintendo 3DS folders. Compatible with:
* [https://www.mobygames.com/browse/games/gameboy-advance MobyGames - Game Boy Advance - Game List.]
**[https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-5#post-7809897 Switch_Nin3DS_folders]
* [http://www.advanscene.com ADVANsCEne.]
**[https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-6#post-7834930 Change_Nin3DS_#_Folders]


==Box Arts, Banners, Screenshots, Rom Info Lookup==
===Notes===
* [https://gbatemp.net/threads/cover-collections-for-emulators-with-cover-support.324714/ Cover Collections for Emulators With Cover Support]
The [9:] RAMDRIVE was chosen for its availability on both o3DS and n3DS series systems.
* [http://www.thecoverproject.net/view.php?cat_id=13 The Cover Project - Gameboy Advance Game Covers]
* It is close proximity to the [S:] SYSNAND VIRTUAL, and no need for post cleanup as the file erases itself after closing GodMode9.
* [https://www.mobygames.com/browse/games/gameboy-advance/ MobyGames - Game Boy Advance - Game List]
* Update edit 2020/01/17 - For the v1.2 release, this only applies for EEPROM 64k saves when the EEPROM 64k Mode is set to manual.
* http://www.advanscene.com/


==Screenshots==
Unlike [https://3ds.hacks.guide/godmode9-usage.html#restore-gba-vc-saves this method], you can inject saves for multiple titles in a single session.  
https://dlhb.gamebrew.org/3dshomebrew/InjectHBLtogamecart.png
* The process of going back and forth exiting GodMode9, launching the GBA VC title, and going back to GodMode9 is eliminated.
https://dlhb.gamebrew.org/3dshomebrew/OptionA-DescriptionInstructions.png
* A newly installed GBA VC title needs to be launched at least once in order to initialized its save.  
https://dlhb.gamebrew.org/3dshomebrew/OptionB-DescriptionInstructions.png
* If the save isn't initialized, the script will fail to find the title in a cache search.
https://dlhb.gamebrew.org/3dshomebrew/OptionC-DescriptionInstructions.png
https://dlhb.gamebrew.org/3dshomebrew/signs_damaged_database.png
https://dlhb.gamebrew.org/3dshomebrew/H2testw_menu.png
https://dlhb.gamebrew.org/3dshomebrew/Restore_nonlegit_titles_tickets.png
https://dlhb.gamebrew.org/3dshomebrew/H2testw_results.png


==Notes==
About cache setup:
* Rebuild Cache (Auto) - Carefully read the top screen's ~ INSTRUCTIONS ~.
* Update Cache (Manual) - To find newly installed games so that they can be added:
** [A:] SYSNAND SD/title/00040000 > hold (R) and press (A) > Search for titles.
** Use pen(cil) and paper to write down their TitleIDs.


1.This initial v1.0 release does not support direct injection. The user is required to manually select their save file copied to the [9:] RAMDRIVE and then inject it to the agbsave.bin found in [S:] SYSNAND VIRTUAL.
A title's folder name and NAME_* cache are adjustable. However, changing the NAME_* affect its save folder's name.


*Update edit (January-17-2020): The v1.2 release supports direct injection.
To quickly switch from Home Menu/NATIVE_FIRM to GodMode9:
* Press (L)+(DOWN)+(SELECT) to open Rosalina menu.
* Press (UP) twice, reboot, and then quickly press & hold (START) to access Luma3DS chainloader.


2. The [9:] RAMDRIVE was chosen for its availability on both o3DS and n3DS series systems, close proximity to the [S:] SYSNAND VIRTUAL, and no need for post cleanup as the file erases itself after closing GodMode9.
Early in its development, this script was internally known as project TOTO. The code name was adopted in jest to the person who helped out the most, and it stems from this individual's game character. However, the actual meaning or backstory of the name and how it came to be was never divulged; whoever this original TOTO refers to remains a mystery.


*Update edit (January-17-2020): For the v1.2 release, this only applies for EEPROM 64k saves when the EEPROM 64k Mode is set to manual.
==Screenshots==
https://dlhb.gamebrew.org/3dshomebrews/gbavcsm2.png
https://dlhb.gamebrew.org/3dshomebrews/gbavcsm24.png


3. Unlike the method found below, you can inject saves for multiple titles in a single session. The process of going back and forth exiting GodMode9, launching the GBA VC title, and going back to GodMode9 is eliminated.
==Changelog==
'''v1.3'''
* Choosing a game in Titles Selection now checks if it is still installed in the Nintendo 3DS folder. If the game is not found, ask the user if (s)he would like to remove it from the cache. The [removed] game's save files are kept intact and left alone in the saves folder.
* Streamlined some of the code by exchanging the fset command with fill command when generating dummy CIAs. Very minor speed bump when adding new titles to the cache.


*[https://3ds.hacks.guide/godmode9-usage.html#restore-gba-vc-saves GodMode9 Usage - Restore GBA VC Saves]
==Credits==
 
4. A newly installed GBA VC title needs to be launched at least once in order to initialized its save. If the save isn't initialized, the script will fail to find the title in a cache search.
 
5. Rebuild Cache (Auto) - Carefully read the top screen's ~ INSTRUCTIONS ~.
 
6. Update Cache (Manual) - To find newly installed games so that they can be added,
[A:] SYSNAND SD/title/00040000 → hold (R)-shoulder and press (A) → Search for titles.
Use pen(cil) and paper to write down their TitleIDs.
 
7. A title's folder name and NAME_* cache are adjustable. However, changing the NAME_* affect its save folder's name.
 
8. GodMode9 v1.9.1 (or newer) is available [https://github.com/d0k3/GodMode9/releases here].
 
9. To quickly switch from HOME Menu / NATIVE_FIRM to GodMode9, press (L)-shoulder + (DOWN) d-pad + (SELECT) to open Rosalina menu, press (UP) d-pad twice, Reboot, and then quickly press & hold (START) button to access Luma3DS chainloader.
 
10. Early in its development, this script was internally known as project TOTO. The code name was adopted in jest to the person who helped out the most, and it stems from this individual's game character. However, the actual meaning or backstory of the name and how it came to be was never divulged; whoever this original TOTO refers to remains a mystery.​
 
==Credit==
* @Aurora Wright - Research in AGB_FIRM save types and sizes.
* @Aurora Wright - Research in AGB_FIRM save types and sizes.
* @d0k3 - Research in GBA VC *.sav and agbsave.bin CMACs.
* @d0k3 - Research in GBA VC *.sav and agbsave.bin CMACs.
Line 84: Line 73:
* @JK_ - Save manager ideas of a bare minimum user interference appropriate for gm9 script borrowed from JKSM.
* @JK_ - Save manager ideas of a bare minimum user interference appropriate for gm9 script borrowed from JKSM.
* Nintendo - Box icon's simple style inspired from CTR SDK dev tools.
* Nintendo - Box icon's simple style inspired from CTR SDK dev tools.
==External links==
* GitHub - https://github.com/TurdPooCharger/GBAVCSM
* GBAtemp - https://gbatemp.net/threads/release-godmode9-scripts-megathread.482150/page-10#post-8790663


[[Category:3DS homebrew applications]]
[[Category:3DS homebrew applications]]
[[Category:Other 3DS homebrew applications]]
[[Category:Homebrew utility applications on 3DS]]

Latest revision as of 14:38, 3 April 2022

GBAVCSM
Gbavcsm2.png
General
AuthorTurdPooCharger
TypeSave Managers and Editors
Version1.3
LicenseGPL-3.0
Last Updated2020/04/09
Links
Download
Website
Source

GBAVCSM, or Game Boy Advance Virtual Console Save Manager, is a GodMode9 (gm9) script dedicated to handling GBA VC saves.

Features

  • Automatically mass dump all the GBA VC saves in one go. Caching the titles list is not required.
  • Extract the *.gba roms from the individual injections.
  • User customizable script icon, title box art, and save folder's name & directory.
    • See further details in the option, About the script.
    • Edit the settings with a text editor like Notepad or Programmer's Notepad.
  • Supports up to four (4) separate Nintendo 3DS folders. Compatible with:

User guide

Box Arts, Banners, Screenshots, Rom Info Lookup

Notes

The [9:] RAMDRIVE was chosen for its availability on both o3DS and n3DS series systems.

  • It is close proximity to the [S:] SYSNAND VIRTUAL, and no need for post cleanup as the file erases itself after closing GodMode9.
  • Update edit 2020/01/17 - For the v1.2 release, this only applies for EEPROM 64k saves when the EEPROM 64k Mode is set to manual.

Unlike this method, you can inject saves for multiple titles in a single session.

  • The process of going back and forth exiting GodMode9, launching the GBA VC title, and going back to GodMode9 is eliminated.
  • A newly installed GBA VC title needs to be launched at least once in order to initialized its save.
  • If the save isn't initialized, the script will fail to find the title in a cache search.

About cache setup:

  • Rebuild Cache (Auto) - Carefully read the top screen's ~ INSTRUCTIONS ~.
  • Update Cache (Manual) - To find newly installed games so that they can be added:
    • [A:] SYSNAND SD/title/00040000 > hold (R) and press (A) > Search for titles.
    • Use pen(cil) and paper to write down their TitleIDs.

A title's folder name and NAME_* cache are adjustable. However, changing the NAME_* affect its save folder's name.

To quickly switch from Home Menu/NATIVE_FIRM to GodMode9:

  • Press (L)+(DOWN)+(SELECT) to open Rosalina menu.
  • Press (UP) twice, reboot, and then quickly press & hold (START) to access Luma3DS chainloader.

Early in its development, this script was internally known as project TOTO. The code name was adopted in jest to the person who helped out the most, and it stems from this individual's game character. However, the actual meaning or backstory of the name and how it came to be was never divulged; whoever this original TOTO refers to remains a mystery.​

Screenshots

gbavcsm2.pnggbavcsm24.png

Changelog

v1.3

  • Choosing a game in Titles Selection now checks if it is still installed in the Nintendo 3DS folder. If the game is not found, ask the user if (s)he would like to remove it from the cache. The [removed] game's save files are kept intact and left alone in the saves folder.
  • Streamlined some of the code by exchanging the fset command with fill command when generating dummy CIAs. Very minor speed bump when adding new titles to the cache.

Credits

  • @Aurora Wright - Research in AGB_FIRM save types and sizes.
  • @d0k3 - Research in GBA VC *.sav and agbsave.bin CMACs.
  • @Wolfvak - Peer reviewed the initial rough draft code for CMAC handling the GBA VC saves on the SD card.
  • @CheatFreak47 - Research in EEPROM saves 0x8 bytes flipping.
  • @KleinesSinchen - Very thorough safety, critical functions, validation, and stress testings.
  • @EventAssistant (Bernardo Giordano) - Save manager ideas of cache and naming conventions borrowed from Checkpoint.
  • @JK_ - Save manager ideas of a bare minimum user interference appropriate for gm9 script borrowed from JKSM.
  • Nintendo - Box icon's simple style inspired from CTR SDK dev tools.

External links

Advertising: