Showing posts with label Misc. Show all posts
Showing posts with label Misc. Show all posts

Dev log: New Full Unlock

Saturday, December 27, 2025

On my blog in the past I have liked to write what are... sort of journals of my development of different projects. Like one I particularly liked, despite an obnoxious encounter... was my Star Ocean canoe compatibility patch. For that I had to learn and grow my related skills, so in the end it felt quite rewarding to achieve a working patch.

Working on CaVE has stalled into just maintenance. It doesn't scratch certain itches for creating new things. DisplayEx has been kind of the same. Occasionally there has been a new feature to add to it, but that's uncommon.

I have been searching for a new mod idea to work on, for quite awhile. Mainly, I would like a new Level 2 mod to replace DisplayEx+, so that I can merge the functionality of that into the normal DisplayEx. I want something special for those who go above and beyond to support the project, but the Theme functionality... just should be part of the main mod.

I finally got around to working on a mod recently. One inspired by cucholix. He created a mod that has functionality similar to the Full Unlock, but does not need to be updated. At least, not often... or yet. He shared it with me, and... in my opinion it has just been luck that it has not needed to be updated yet. For me to release such a thing... I would want to eliminate luck as much as can.

Thoughts on the passing of Akira Toriyama

Friday, March 08, 2024

This will be a bit of a different post for me. But still one that is within the scope for this personal blog/site.

I haven't posted much to indicate it, but I am a huge fan of Dragonball. I would say that... yea. It is my favorite anime. If asked sooner, I may have said Death Note or Re: Zero. But thats just because both are more recent, and when I first learned of DB and watched it... "Anime" meant something different to me. Toriyama's style just made DB feel separate. And as that definition happened early for me, I could never quite shake it despite knowing otherwise.

So with DB being my favorite Anime... moving to talk about my favorite video game of all time... Guess what? It's another Toriyama involved work. Chrono Trigger. Such a over all fantastic game that will never be replicated, despite attempts to do so with underwhelming sequels and fan made "spiritual successors". While I wouldn't rank it among my favorites, even Dragon Warrior is a game I am quite fond of. Though I have only played and beaten 1, 2, and 5 (I think). But overall, I don't have much to say on his gaming work as it was mostly art, while DB saw him work on art and story elements.

Patheon: Still Fallen, No Rise

Sunday, October 29, 2023

This is not my normal type of post. But I guess I do like to post about my MMORPG hobby at times. And specifically to this game... I did post about it almost 10 years ago!

So... How have things gone with this game in the past 10 years? Is it the game I wished for?

Well... I honestly can't say. Despite the typical and expected MMORPG development time before it goes to Release being 5 years, and the fact that I specifically pledged for Alpha access in order to be a part of the development process at the most key stage where everything is being thought of, added and tweaked, thus I should have been able to play the game after 3-4 years... I have not touched a single piece of the game. It's been perpetually in a fabricated phase called "Pre-Alpha". If you have been to my website before... you know that I know about development. CaVE, Unity projects, and all the way back to my start with mIRC scripts. And in all that 25 ish years... I have NEVER heard use of the phase name of "Pre-Alpha" outside of Pantheon. At best, maybe using the term to casually refer to development phases before Alpha as a whole. The only legit common development phases before Alpha are Prototyping, and Proof of Concept.

I Guess I Make Mods Now...

Sunday, September 10, 2023

After diving into the WidescreenEx mod like I did, and liking the result, I found I learned quite a bit. I decided to keep going. The plan was to make some "Fit to Screen" mods for the other system apps. But I quickly got side tracked with something else.

Years ago now, I made some other mods that I never released. Because I never finished them to my satisfaction, and to do so was too involved. That being a mod to allow custom chosen backgrounds to be displayed. This idea was borrowed from the SNES Classic. I even used the background/borders from that device for my work, and it was nice seeing NSO SNES game output perfectly fitting in those borders! But... diving too much into mods always seemed daunting, and improper. That's in large part because, mods were a clunky side thing. Not managed officially. But... of course, that has changed now as with CaVE v1.5, that's a major feature!

The N64 Widescreen mod...

Saturday, August 19, 2023

Recently I learned just how bad the N64 Widescreen mod was. This is not a mod I developed. It is simply one I felt forced to maintain and update regularly, in order for there to be less issues and bug reports with CaVE stemming from users using out of date mods.

I heard or issues with it cropping out part of the screen, but the context always sounded like the people were talking about 4x3 games with the mod active. That was an unfortunate side-effect of the hack, it causing 4x3 games to not look right. It was a all or nothing hack. You commit to all your games being 16x9, or not. But low and behold... THIS is what 16x9 games looked like.

 

 

Release: CaVE Database Manager v1.3.7

Wednesday, March 16, 2022

I just released CaVE v1.3.7, to coincide with the NSO GEN/MD v2.0 app.

Nothing about this NSO app warranted a CaVE update instead of just a database update, but I had a few fixes and additions coded and... it didn't look good for anyone wanting to lift a finger and test it as a Discord only release. Thumbs up emotes are the extent of anything anyone there wants to do now.

Changes:

Fixed an issue with the "Add Stock Games" list.
Added a new Update Database option.
  This option simply updates the strings.lng of the current database to the selected version.
Added a .srm 2 cartridge.sram option to the Tools menu for N64.
  This converts a Retroarch .srm that contains save data (not save STATE data) to a save file that NSO can use. It tries to automatically detect what type of save data the game uses, and output that as cartridge.sram.
Added a Help option to the Help menu that displays a setup guide and FAQ.

The Usual Christmas Update

Saturday, December 25, 2021

Merry Christmas!

As I often like to post... something on Christmas, as a sort of present... This year is no exception! Now that CaVE is back, and updated well enough with new features and support, there wouldn't be much to add to it. Nor SFROM Tool. Least not to be worth considering a present. But I have been working on a side project that is now ready...

Back in October, while waiting on the N64/Genesis NSO apps to be released, I killed time with this side project. As some may know, SNES is my favorite console... ever! So it tends to be my focus. There wasn't a lot left to do with it and NSO, but I found something. We all know how to use CaVE at this point, but there is an obvious feature that might be strait up expected by some, but isn't included. It's a feature that takes a lot of work! That feature is what I call a "Preset Database". What that means in this context is, when you add a game in CaVE, there are a ton of values you need to set. Typically images and descriptions. CaVE does what it can to add in placeholder values, but... if you are like me, you would want all the values to look as close to how they would if Nintendo released support for that game themselves. A "Preset Database" in relation to this would automatically set those values with more proper ones. Add say Chrono Trigger? In the split second after adding it CaVE would automatically select the box and title screen art, fill out the meta description, publisher, copyright, etc. Such a feature is convenient, but takes a lot of work to implement.

Release: CaVE Database Manager v1.3.3

Saturday, November 27, 2021

This is a small release, but worth mentioning.

The major part of this update is the meta/config/lua editor. This isnt a huge thing for the average user, but it is for the active community that's trying to increase the roster of compatible games as it makes things so much easier and quicker. But... its not completely useless for average users, as it allows the average user to try settings themselves, and allows others to give them advice on settings to try to help a game work better.

Beyond that, exporting your database is more efficient, SPT support for N64 is fully working (with a couple examples available on the compatibility list, there's some crude support for Super Mario 3D Allstars (for advanced users, and mostly just for testing atm), a couple QoL updates and some fixes.

Of note. Its now been over 1 month since N64 NSO came out and... we now have 125/299 USA games booting, and many of them playing just fine. Its come a long way in a short time, and... while the emu has its issues... its fairing better than people would think. It seems to be struggling with the same games other emus struggle with. In some cases it emulators games better, and in some cases maybe worse.

While most of the games are marked as having minor issues atm, thats just a default I'm using as we give them time to truly be tested. Soon enough the focus will shift to switching those from yellow to green, whether by setting its configuration right, or otherwise.

ChangeLog v1.3.3.0:

Fixed some database issues with N64.
Improved the CPIO code used with dtz's.
Added a new Settings window for N64 .meta/.cfg./.lua editing.
Added a log for changes to your database, for use with the Export feature, enabling it to ONLY export the files it has found to be changed since the last time you exported.
The Machine Country option should now be automatically set for Genesis/Mega Drive.
Added "Disable Handcursor" and "KeyAssign Type" options to N64.
The tools menu is now completely hidden when a N64 database is not loaded.
Changing the code value will now prompt you to change other values that the Code is typically used in.
Added an option to allow you to change the selected ROM for an already imported game.
A few misc bug fixes to SPT support with N64.
Primitive support for working with Super Mario 3D Allstars, available only as an advanced option. "sm3das_enabled": true

Release: SFROM Tool v1.3.0.0

Friday, October 15, 2021

It's long overdue... but I guess considering I thought the last version might be the true last version... maybe not. This release of SFROM Tool brings a major change I... thought I already released.

Change Log v1.3.0.0:

Revamped Game Codes/Preset IDs.

    • GameCodes are now shown in their proper interger format, instead of hex.
    • GameCodes can now be chosen from a drop down selection box, with clear labels for what game that GameCode is intended for.
    • A new Legacy Mode option has been added, to display GameCodes in the old "Preset ID" format purely to help the adoption process.

Added new Key and Manual groups to the Advanced window, based off my continued understanding of the format.

    • Key contains 2 unknown values that were previously even unknown if they were values or not.
    • Manual contains Para and Max Speed.

The ROM Map control has been updated to list the available options in a clearer way, and now has a 3rd... but useless ExHiROM option.

Compatibility Mode 7 is now the default. This may cause issues with some older SNES/SFC Online versions.

Added support for Wii SNES VC ROMs.

    • These ROMs are the ones that come with the .rom extension.
    • With these, .pcm, .var, and .sda files are also checked for, and imported/exported.
    • To import these roms, simply select the File>Open ROM menu option.
    • To export in this format select File>Save as...>as Wii ROM/PCM/VAR.

Updated the internal database to include info/settings from discoveries made since the last release.

The New Future of CavE and the Full Unlock

Saturday, October 02, 2021

I said it, and I'm a man of my word. If I had a reason to be invested in the development of these projects... it would make a difference. I would be willing to un-cancel them. Thanks to the generous donation of ItzSka, I am now able to develop these projects for a device... that I own!

So both projects are back to being public again. But there is a difference. I will not be managing them at the old toxic forum anymore. This will be done purely out of my website, and the Discord (#nintendo-vc-cc-nso). I may make a subreddit or other page too. At the least for now, I have remade the setup guide on my website.

There will be some changes to how I pursue the projects too. I will be making it for myself, and just happening to make it public. I will maintain it for myself and supporters. User appreciation will of course be very welcome, but it wont be required even at a bare minimum like before.

That out of the way... I did make a couple minor updates to the app while it was publicly canceled. The idea was to only do database updates for supporters, but... one update I made just because I wanted it. And the other was to make things easier for the private releases, but helps for public releases too.

Slowing Down

Saturday, September 18, 2021

I realized it has been months now since I posted an update here. In truth, I haven't been working on my projects lately. I split my free time between whatever is fun for me at the moment, and as my last spoof post indicated... I had an issue with WoW. I pushed myself too hard to tough it out through the non-fun things, and it kind of ruined the game for me. I did go play retail, and that's was a band-aid for a little while... but it's just not fun... Even TBC Classic only was fun for like a week or two for me.

I lost interest in my SNES projects, simply because my focus was shifting heavily towards my complete VC/CC Tool, CaVE revamp project. I was building up steam with that... and well, it sucks how this happens but... I was contacted by someone willing to donate a Switch and 3DS. That of course was great! But quickly the Switch got removed from the table, so the hope of bringing back anything of CaVE 1.0 was placed back on the shelf. No matter though. A 3DS is plenty! And just what I needed to get focused and stay motivated on my new project. But... the bad part is... I put my project on complete hold until I got the 3DS... I patiently waited weeks, maybe a month. Even checking for its delivery every day. But I came to find out it wasn't sent. Fine. That's cool. Not everyone is used to mailing stuff, as was the claimed issue, and things are hard for people. I get it. So I waited more... and more... and more... I contacted the person again, and... silence.

So... in the end, I put the project on the shelf for no reason. I was back to square one with several months lost, and... even less motivation to work on the project than when I started my wait.

News: A Legend isnt Born (World of Warcraft)

Saturday, February 20, 2021

[The following is a spoof of a post I made YEARS ago, written to help blow off some steam.]

Last week after a year of effort, a couple long grueling months of trying to find a raid group, and several mental break downs, my raid group "40 Man PUG" and I finally didn't get got me my Legendary item done. The Legendary staff "Atiesh, Greatstaff of the Guardian" for my Priest. It's amazing for me as seeing all I had to go through, and the extraordinary amount of effort I had put in along the way in order to get this all done.

I started my quest for this staff in the winter of last year, when was able to start playing WoW Classic again. Before that, I wasn't even playing WoW Classic past the launch, and didn't even really plan to. Part of me wished it wasn't purely for that staff but it was, and the fact that probably the thing I miss the most from WoW retail was doing my Rogues legendary quest for a great weapon and the experience shared with the amazing people I did it with (or other events shared with people who cared about me). WoW Classic didn't have that for most of the time so far, and even when it did, my main class was excluded. I could talk about the difference of Atiesh and Thunderfury, mostly stating how I put in countless hours helping countless other people farm their Thunderfury. But in the end, no one returns the favor for me!

Continuing my recent SNES work

Thursday, February 04, 2021

Where I last left off was with my discovery of the internal Wii list, and some surface conclusions. I decided to stick with that for a moment and see if I can use it to help fill in anything of the unknown parts of the game code list.

After looking at it from a few angles, I concluded that there might be something to translate from the list. Of the unreleased games in the Wii list there's a certain amount of them that were given Wii Product IDs. That amount seems to fit with the empty space in the 0x1119-0x112D (281-301) area of the list. Whats more, it makes sense for NERD to place these games first on the list over the others since being given a Product ID probably means that support for the game was done. There are not many games on the list that don't have Product IDs but were later supported. Wrecking Crew and Star Ocean are it really. And those seem to have been assigned Game Codes later on the list. I just have to keep stacking logic up like that until a picture emerges!

So I now have a handful of games and slots to fill with them. How do I figure out what goes where? Well, is not easy. In the end, I can only label these as "pure speculation" with little confidence. But I can at least use some info to make educated guesses. The info I have available is order/patterns and the decompiled code.

Moving Forward with my SNES projects

Monday, January 11, 2021

Now that some time has passed, and things have settled after dropping my Switch projects, it's time to think about whats next.

As I look around at my projects and notes, and consider what its the most interesting/fun thing to work on. Well, I'm a bit all over the place for the moment. I immediately dove into past projects I found enjoyment in purely for myself, those being the Game Code list and SFROM Tool. These I enjoyed because the work was useful to others, but there was no demand for them that made me feel pressed. I could work on things at my own pace, and take the time to have fun doing so. I find figuring out the SFROM format details interesting in a similar fashion to solving puzzles like sudokus. Reverse engineering for what I do is a lot of evaluating the data I know to fill in the blanks enough of that which I don't so after the process of elimination, what remains is clear.

There's not a lot left for work on the game code list. But still... I made some new conclusions. In my first days back working on this stuff I deduced that 0x111C belongs to Super Turriacan 2 E-PAL, and 0x1125 belongs to Power Instinct J-NTSC. I can't say I'm 100% certain, thus I cant label them as "verified". But for me the evidence is fairly strong. The short of it is, the de-compiled code suggests these.

As always, with this list seeing further progress, what remains ahead is going to be that much more difficult to solve. While it may look like more, there are about 12 remaining game codes that are valid to the emulators. 4 more that may or may not be valid, and at least 2 or more that are unused but probably reserved. On the other side, there are about 19 known games that should, or may have a spot on the list.

I can make some guesses based on available data. But for the moment I'm unable to work towards verifying anything more. At the most, as mentioned in my christmas post, maybe DQ 1+2 and 3 at some point.

But for now, 2 new ones to this level of confidence is nice to see!

Cheap, Last Minute, Gas Station X-Mas Gift

Friday, December 25, 2020

I was thinking about what time of year it is. Usually I like to have something to post as a Christmas gift on the day. But this year, I had nothing. I haven't been working on a ton this year that would suit such a release. IDK. Maybe I could have delayed the doomed CaVE update if I had thought about it. I might have even been able to work in the proper SP title importable format I would have wanted. But I didn't think about it, and well. we know how that project went anyway...

Speaking of that. I may have just ignored posting a update this year. I often do if I don't have anything worth while. But... I felt bad due to the timing of the cancellation of those projects. It was almost like I was giving a "cancellation" for xmas, even if it was done several days earlier.

So, feeling bad about that, I started thinking "What could I whip up for a xmas day release this year, to help wipe the stink of that away even a little?".

I wasn't coming up with much. Most of my work isn't suited for just "whipping up" last minute. At the most, maybe if I had a update idea for SFROM Tool or something. But all I have for that right now isn't worth a new version.

I tried thinking... IDK, maybe I could pull off a miracle and reverse engineer my way into verifying a new Game Code (Preset ID). Whats big enough for that? Looking over the list, the best candidates are Dragon Quest 1&2, and Dragon Quest 3. But to figure out the IDs for those, and a lot of whats left really, it would take quite a bit of effort and luck. I came up with a plan of attack, but... fell shorter then you might think. Maybe later. But for now, I still need something.

I was thinking, "I'm working on a PCM audio tool. Why not something with that?". The tool itself isn't ready at all. I could maybe compile it so that half of it works, but I'd rather release the full thing. And besides, I'd still need to clean up a lot of it to be release ready.

In comes my big idea! lol

The Future of CaVE and the Full Unlock

Wednesday, December 23, 2020

[If reading this after 10/02/21, ignore this post. CaVE is back. Refer to this post instead.]

Ok. So here I am thinking about the options I have ahead of me to take with CaVE and my Switch related work in general. I just got done grinding away for a few months on a CaVE update, rich with containing features I've seen asked for countless times and cool new features to enable stuff Nintendo hasn't even done yet! I painstakingly rewrote half the code to support a new, smarter database setup that would prove better in the long run. This was big update that I was expecting to be well received!

And... *crickets*...

Yea. Just silence for the most part. Naturally, as this silence continued I begin to wonder "Why the hell am I even doing this stuff?". I don't own a Switch. The only thing I personally get out of these pursuits is what I learn about the sfrom format and Game Code (Preset ID) stuff. Developing the "Full Unlock"? That does nothing for me. CaVE? Nope. Though, it could be argued that in the long run CaVE might work into my personal goals/interests, just not right now. But really, the only reason I work on those is for other people. The "community". All I get out of it is their appreciation for my otherwise selfless work. Its simple, and requires minimal effort, but it feels nice, and its... enough.

So... what if I don't even get that? Then what's the point?

The answer is, there isn't one.

So how did I go wrong and not realize this stuff until now? Well, my conclusion is, I came into this from previously being in the SNES Classic community. That was actually a community. We had people who cared about things like compatibility, quality, custom skins, compiling box/screen art, etc. There was a lot of mutual give and take.

Re: SNES Classic: What's left? What's next?

Saturday, November 28, 2020

Some time last year I wrote a post documenting the things I had still not figured out with the SNESClassic, .sfrom format and Preset ID list. Ever since then, a few things have changed. So I figure why not make an update?

First off, in that last post, I concluded that I had "completed" my work. Whats changed with that?

Well, SNES Online. When I wrote that, SNES Online was not out yet, if it was even on my radar at all. It being released caused me to transfer my knowledge and efforts from SNESC over to that. As a result, I have dug more into it than I had with SNESC. Particularly, I now sift through and document de-compiled code. I do that now with the Switch mostly, but also the SNES and WiiU binaries a little as well. Naturally, having access to such information is going to yield more results.

First up.

SNES Online: Findings

Saturday, November 30, 2019

As you should be easily aware of, I've shifted my research over from SNES Classic to SNES Switch Online. I'm still interested in SNES Classic, there's just more to figure out and work on right now with the Switch.

After I released CaVE I started getting back to work on the Switch .sfrom footer format. I got the basics documented and supported in SFROM Tool. But there's several unused parameters that have not been figured out.

Looking in the code, you can generate a full list of the params by value. And you can figure out which ones use a single byte value, and which use multi bytes. For some params, I had the convenience of there being support for the familiar SNESC sfrom format headers, and I could tell when a value is shared between the 2 and figure out the purpose for the one in the NSO .sfrom format. This is how I figured out how to use param 44, and get SFA2 and Star Ocean supported.

After that though, I had other things to focus on, so progress stopped. Now though I've been back to work! And I've figured out a few more params!

First up, we have...

Release: CaVE Database Manager v1.0

Sunday, November 03, 2019



Today I've released a new tool. In my efforts to translate my SNES Classic work over to supporting the Switch's SNES Online, I saw a empty space that could use filling in that of a tool to help users properly manage their custom databases. Not only for SNES, but nothing really existed like it for NES Online either despite that being out for awhile.

I wanted people to be able to mod their SNES Online installation as easily as possible. I wanted it to be as newbie friendly, and approachable by as many people as possible. Editing text files where one minor typo could render things completely unusable, was not that in the slightest!

SNES Classic & Switch: Update

Monday, September 30, 2019

I was waiting for the Switch's SNES Online app to come out for a while. I new it was going to bring some new answers/verifications based on lists found in the files. Mainly I was waiting to get Stunt Race FX/Wild Trax verified, as I already deduced their ID's and posted them as guesses a while ago. I was right!

We got some new ID's too. Sadly, those ID are unlikely to work any different than 0x0000 on the SNESC. But its still worth documenting.

It took me a bit to get around to trying to solve the Switches new version of the .sfrom format, but it's coming along. Code was found that alluded to SNESC format .sfroms being supported, which would be good because all my current work would translate to the switch. But attempts to use them failed.

Focusing on the switch .sfroms for the time being, we ran into a roadblock of the fact that it just seemed like only the PresetIDs for the games officially released on the switch worked. That would render my PresetID list work completely useless for the switch.


Well, after a couple weeks of trying various things, I finally got my hands dirty and poked around the asm myself. After a few tries... I finally got a hack working to enable all other Preset ID's! And incidently, that same hack also happened to get SNESC .sfrom working!

Now for SNESC type .sfrom's made with my tool, there should only be 2 stipulations. Don't use PCM audio, and make sure the first byte of the Product ID is a capital W in the Advanced window. There's no evidence to suggest that PCM audio is supported anymore. It's been completely dropped from the official ROMs. And there appears to be a new check in the code to check that character of the Product ID. That was not a thing on the SNESC.

Whats more, SFA2 and even my custom Star Ocean patch have already proven to run on the switch app now. Pics courtesy of user RadMcFist of the GBATemp forums.












As for the hack. I've posted the code on a thread there. I'll likely have to be updating it from time to time as the app is updated itself. And I may try to improve upon it, so there no point in posting it here. Maybe I'll figure out a better home page to post it later. Like on my unofficial WIP release page.

I'll likely ad a disclaimer to the sfrom Tool page too for switch users.