Homebrew CaVE Database Manager - A SNES, NES, N64, Genesis Switch Online modding App

LuigiBlood

Mage Robot
Member
Joined
Jun 23, 2009
Messages
196
Trophies
1
Website
luigiblood.neocities.org
XP
843
Country
France
Nice. Glad I finally understood that.

The code and UI files tend be the same between region counterparts. Is this UI and feature in the Western app? Or only in the Eastern app for now? Figure I may as well ask, so I don't have to go digging. If not, all the more reason for people to use the eastern app, and with the language replacement feature of CaVE.
Both have it. Even though only the Eastern app uses it, because Fire Emblem has a way to transfer saves between the two games + multiplayer.
However when it comes to save transfer, it also works in Single Player and my understanding after doing a quick reverse engineering is that they bothered to implement a hack to import the save in Single Player without emulating a second GBA, that's what the "transfer_title" is for. This is done with lots of effort, honestly.

1687930500201.png
 
  • Like
Reactions: DarkAkuma

Maxwellp

Well-Known Member
Newcomer
Joined
Aug 5, 2011
Messages
51
Trophies
1
Location
Pennsylvania
XP
692
Country
United States
CaVE v1.4.6 has been updated for Genesis/Mega Drive Online v2.6.0.0!



In case you did not see the post edits after the last update, I corrected some bugs/issues with the exe. Things related to the Japanese (Only?) GBA Multipak Multiplayer with different games feature, some adjustments to accommodate X and Y region types (Used with Multi-Language PAL ROMs), and some minor issues with the Display Version param.

Also, since many did not see it, I am re-posting this here...



FYI, since I have not mentioned it much here. The current public release branch of CaVE is a low priority for me right now. I just try to maintain the up-to-date databases is all. My current focus is on a unreleased Alpha build of a CaVE revamp. Not quite like my old plans for CaVE 2.0, hence why this is CaVE v1.5. I have re-written a lot of the code, and have been making strides to re-design and enhance a lot of the visuals and functionality.

My aim with the revamp project is to eliminate as much of the guide/FAQ and general confusion that I can, while also bringing some of the older code more inline with the newer code. But more than that, I have been trying to incorporate some long desired ideas. Like in app mod management, and save management. While also taking existing feature that are underused and bringing them to the forefront, like language replacement (primarily for making the Japanese apps more usable with English menus or whatever language you use), and the Export Database function.

I just wanted to inform people so they know why I am slacking on v1.4.6 updates and bugs. I don't want to invest a lot of time into v1.4.6 that could be better spent on v1.5, or doing the same fixes and changes twice between the versions.

I have no ETA for when v1.5 will be done, but it is moving along well. Here's a list of changes and screenshot with plenty of changes to notice.

Notable Changes​

  • Enhanced UI. Reorganized, more aesthetically pleasing, and simplified.
  • Designed specifically with exporting (syncing) databases via CaVE in mind.
  • Brought back tracking of what version of the app your database is for.
  • New Mods management system. No manual installation. (Including the Full Unlock!)
  • New Saves management system. Browse/export/delete/add/replace saves directly on your card.
  • Code re-written to be more stable... in the long run...
  • Innate support for using NA/EU/BR/RU/KO languages in the JA/CH app. And vice versa.
  • New tutorial popups for new users, to help get them started.
  • New Easter Egg game to find hidden in the app! =)

View attachment 380526

Just wanted to say thanks for working on this app at all, let alone updating it. It's the sole reason I got a switch lite to work on and it's been crazy fun to use. I can at least buy you a coffee for all your efforts.
 

DarkAkuma

Well-Known Member
OP
Member
Joined
Sep 20, 2008
Messages
412
Trophies
1
XP
2,460
Country
United States
How can I extract/restore a GBA save game? And can I import a save game from retroarch into NSO app?

This is a integrated feature in the CaVE v1.5 revamp. I created a whole UI tab for it!

But for the public release, it's still a bit manual and confusing. This is covered in the FAQ though under How do I import my save to the NSO app?.

I don't believe GBA SRAM's require a conversion... but I could be wrong. I just know I added conversion tools for N64 and GB/GBC, but did so upon request due to it being required. No one has requested such a tool for anything else yet, if its needed.

Anyway. If participating in the alpha/beta testing process is fine with you (I could definitely use more testers! But tesing is not for everybody...), you can access my development page through my Discord channel linked in the OP. This is a picture of the interface I developed for managing saves.

1688344192109.png


Just note that as saves are stored on NAND, this requires a MTP responder app like DBI. Currently, somewhat specifically an older version of DBI, like v506 and before.

With this interface, backing up is easy. Click the green down arrow button to download all the save data for that game to your PC. Uploading/replacing a SRAM/SaveState is done by clicking the disk button. N64/GB/GBC SRAM is automatically converted.
 
Last edited by DarkAkuma,
  • Like
Reactions: zorokenshi

zorokenshi

Well-Known Member
Newcomer
Joined
Oct 23, 2021
Messages
61
Trophies
0
Age
43
XP
626
Country
Cuba
One question is there any way of improve compatibility with GBA games with mods that are actually great games example Fire emblem mods and others that currently are not Even booting after injection or is too problematic to do this
 

LuigiBlood

Mage Robot
Member
Joined
Jun 23, 2009
Messages
196
Trophies
1
Website
luigiblood.neocities.org
XP
843
Country
France
One question is there any way of improve compatibility with GBA games with mods that are actually great games example Fire emblem mods and others that currently are not Even booting after injection or is too problematic to do this
Try changing the game ID inside the ROM file to something different, it should prevent game patching and possibly breaking mods because of that.
 

DarkAkuma

Well-Known Member
OP
Member
Joined
Sep 20, 2008
Messages
412
Trophies
1
XP
2,460
Country
United States
One question is there any way of improve compatibility with GBA games with mods that are actually great games example Fire emblem mods and others that currently are not Even booting after injection or is too problematic to do this

I answered this back several pages. It very well might be the issue you have.

https://gbatemp.net/threads/cave-da...witch-online-modding-app.551466/post-10076813

But in short, some hacks like the Fire Emblem translation mentioned, have junk data on the end. The Sloop emu code seems to have an issue in that its picky about ROM sizes. Well, most do. The size of the ROM has to be rounded down, or probably match the header. I'm not sure. That's as far as I looked into it. I just know removing those junk bytes made the difference of "not booting" and "booting".

I will say that... if you follow LuigiBloods and my advice on this with hack/translated games and get them working, let me know. If I know of enough such patches that cause these issues, I very well could add in code to CaVE to automatically "fix" these issues. The only reason I have not so far is because I do not know if its a widespread enough issue to be worth it to put in the effort on for such a fix.
 
  • Like
Reactions: nWo

zorokenshi

Well-Known Member
Newcomer
Joined
Oct 23, 2021
Messages
61
Trophies
0
Age
43
XP
626
Country
Cuba
I answered this back several pages. It very well might be the issue you have.

https://gbatemp.net/threads/cave-da...witch-online-modding-app.551466/post-10076813

But in short, some hacks like the Fire Emblem translation mentioned, have junk data on the end. The Sloop emu code seems to have an issue in that its picky about ROM sizes. Well, most do. The size of the ROM has to be rounded down, or probably match the header. I'm not sure. That's as far as I looked into it. I just know removing those junk bytes made the difference of "not booting" and "booting".

I will say that... if you follow LuigiBloods and my advice on this with hack/translated games and get them working, let me know. If I know of enough such patches that cause these issues, I very well could add in code to CaVE to automatically "fix" these issues. The only reason I have not so far is because I do not know if its a widespread enough issue to be worth it to put in the effort on for such a fix.
Well actually until the release of gameboy advance NSO app I was playing this titles with Mgba emulator for nintendo switch but I want to play them in the original app from nintendo because of the rewind feature an others but so far I have trouble yo play with patched or modded games I can provide You with a list of games modded or patched that won't boot and another of the ones that does if you want to implement what you were saying
 
  • Like
Reactions: nWo

DarkAkuma

Well-Known Member
OP
Member
Joined
Sep 20, 2008
Messages
412
Trophies
1
XP
2,460
Country
United States
I couldn't get some of my N64 favs to boot, but I did optimize a few buggy games to run better and submitted the dtz's for review. Hopefully I did that right.

Lego Racers - fixed invisable racers and artifacts
Road Rash 64 - Fixed race speed and artifacts

Thanks again, Akuma.

Thanks. DTZ list updated with those now.
 
  • Like
Reactions: nWo and hippy dave

NinjaX1

New Member
Newbie
Joined
Jan 4, 2019
Messages
3
Trophies
0
Age
25
XP
52
Country
Brazil
I don't have the hardware to test it, but I can 100% tell you that wont work. Why? It still comes down to a emulator issue. The NSO N64 emu code still need to know how to read a Transferpack. It being hardware with that test make no difference. Well, it does make a different, just in the wrong direction. It's less likely to access and read the hardware from that setup than the software/data only way it otherwise would normally.

It's been a while since I looked at the relevant decomp, but the Transferpak support was litterally like this. "if (TransferPak == SELECTED) { }". The key part being the { } that is litterally blank. It's not coded to do anything with transferpaks.



Thats basically 100% what I was saying. And its basically how it is with ALL these emu's. Not just GBA. ROM sizes need to be rounded to a valid size. Even 1kb off is not a valid size.

The odd thing is how GBA specifically is ending up with such off size hacks. I'm used to hacks/translations being done more, well... professionally isn't the right term... Just... Not so poorly and half-assed.

This isn't something CaVE should have to account for. I don't with any other system. But... if you can show me proof of this being the issue with SEVERAL hacked games not working, then working when size fixed... Then I'll try to do something.

Well, since you insist... I did as you asked!!! First I would like to apologize, my English comes from google translator and I hope you understand this, I'm a Brazilian and I was excited when the solution presented by Chop1n worked perfectly, that's why I'm here to demonstrate.

So far I have few games on GBA Online but I wanted to play some classics in my language or Hack ROMs. My primary objective was that the translation of Fire Emblem The Sacred Stones worked perfectly, with the XSE tool using the resizer this was possible but I understood your question and that's why I brought these copies for testing.

Games that previously did not start like DBZ Boo's Fury, Fire Emblem The Last Promise and Pokémon Dark Worship after artificially increasing the ROM size work normally, as you said before, translated games that have the right ROM size have no problem starting, only those that were mentioned in which they had to go through these changes.

I hope this has clarified this question as in the responses to date I have not seen any users actually testing this tool further.
 

Attachments

  • Screenshot_8.png
    Screenshot_8.png
    751.9 KB · Views: 32
  • Screenshot_7.png
    Screenshot_7.png
    325.4 KB · Views: 28
  • Screenshot_6.png
    Screenshot_6.png
    1.1 MB · Views: 25
  • Screenshot_5.png
    Screenshot_5.png
    886.3 KB · Views: 25
  • Screenshot_4.png
    Screenshot_4.png
    1.6 MB · Views: 26
  • Screenshot_3.png
    Screenshot_3.png
    492.7 KB · Views: 20
Last edited by NinjaX1,

DarkAkuma

Well-Known Member
OP
Member
Joined
Sep 20, 2008
Messages
412
Trophies
1
XP
2,460
Country
United States
Well, since you insist... I did as you asked!!! First I would like to apologize, my English comes from google translator and I hope you understand this, I'm a Brazilian and I was excited when the solution presented by Chop1n worked perfectly, that's why I'm here to demonstrate.

So far I have few games on GBA Online but I wanted to play some classics in my language or Hack ROMs. My primary objective was that the translation of Fire Emblem The Sacred Stones worked perfectly, with the XSE tool using the resizer this was possible but I understood your question and that's why I brought these copies for testing.

Games that previously did not start like DBZ Boo's Fury, Fire Emblem The Last Promise and Pokémon Dark Worship after artificially increasing the ROM size work normally, as you said before, translated games that have the right ROM size have no problem starting, only those that were mentioned in which they had to go through these changes.

I hope this has clarified this question as in the responses to date I have not seen any users actually testing this tool further.

This has since been discussed and addressed with someone privately, to the result of me adding code to cave 1.5 to trim excess bytes, aswell as providing a option in the tools menu to change the game id in the header. But this is good to hear! Thank you. The tests done by the other person focused on the header id, and did not confirm the size issue with a single other game.
 

Absolute_Vile

Perfect Reploid
Member
Joined
Nov 5, 2015
Messages
338
Trophies
0
Age
37
XP
1,595
Country
Mexico
I apologise if this is a dumb question i dont really have a good grasp on the tool, you see i add gba games lets say pokemon fire red, then in the multiplayer option i choose mltipack, i tought that option was enough but when going to local lan the game wont show up, is there an extra option i have to mark for that? i apreciate any help i can get : )
 

NinjaX1

New Member
Newbie
Joined
Jan 4, 2019
Messages
3
Trophies
0
Age
25
XP
52
Country
Brazil
This has since been discussed and addressed with someone privately, to the result of me adding code to cave 1.5 to trim excess bytes, aswell as providing a option in the tools menu to change the game id in the header. But this is good to hear! Thank you. The tests done by the other person focused on the header id, and did not confirm the size issue with a single other game.

As GBA games have a low size, the tool has artificially increased it to 32MB (or 32,768kb) and the game runs without any problem.
 

DarkAkuma

Well-Known Member
OP
Member
Joined
Sep 20, 2008
Messages
412
Trophies
1
XP
2,460
Country
United States
I apologise if this is a dumb question i dont really have a good grasp on the tool, you see i add gba games lets say pokemon fire red, then in the multiplayer option i choose mltipack, i tought that option was enough but when going to local lan the game wont show up, is there an extra option i have to mark for that? i apreciate any help i can get : )
Nvmnd, i make it work, just needed an easy fix, played a terrible baseball game with my brother

The important setting to make LAN play work for GB and GBA is the Compatible Titles setting. You need to make sure the games own Code value is listed under it. And both people need to make sure they have the same Code value. CaVE should auto-add the code value to compatible titles, and I made sure to generate the Code value for those apps in a way that helps ensure they are consistent and not random to facilitate just this.

As GBA games have a low size, the tool has artificially increased it to 32MB (or 32,768kb) and the game runs without any problem.

I suspect I may need to do that. ATM CaVE v1.5 will trim the ROMs size down. But that was based on the 1 sample ROM I have that was just a few bytes over side with pointless junk data. I'm sure most hacks are expanded for a reason.
 

Maxwellp

Well-Known Member
Newcomer
Joined
Aug 5, 2011
Messages
51
Trophies
1
Location
Pennsylvania
XP
692
Country
United States
I couldn't get some of my N64 favs to boot, but I did optimize a few buggy games to run better and submitted the dtz's for review. Hopefully I did that right.

Lego Racers - fixed invisable racers and artifacts
Road Rash 64 - Fixed race speed and artifacts

Thanks again, Akuma.
2 more stable games are now playable with performance like the originals on n64. Enjoy, everyone.

Wetrix
1080 Snowboarding
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: I did use a bot for Diablo III though but no ban there lol