The kids are currently on winter holidays, I don't want unexpected and messy task at work before entering new years holidays, so today was spent at movie theater with kids

We went to see
Dragon Ball Super - Broly, and it was cool !! I really appreciated the "フリーザー!「カコク」ってなんだ!?" from Goku just after Freezer used "過酷" word in a dramatic scene

So well, it seems it's the good moment to announce a new public section in my homepage, which is about
Dragon Ball cards 
More than 15 years ago (but it feels like last week ... I'm really getting old !), I spent many afternoons in scanning my collection of Dragon Ball cards, and then put everything on a CD-R ... because internet was paid for each minutes connected, and my maximum transfer speed at that time was around 7KB/s, hence not suitable for uploading hundreds of megabytes of data

All theses limitations are no longer a problem, so please enjoy my digital cards collection

Broly when I was a kid
Oh, I forgot to say that everything in more or less in its original state, including the html, so in advance I'm sorry for any reaction to Comic Sans MS font and flashy image background

Also, the textual contents are left as-is in
omelette du fromage language

But ...
there's currently a bug so I shall re-release it soon 
After everything will be fixed and verified, I shall make a proper announcement in this article, so if you don't want to flash your cartridge twice, please keep tuned for one day or two !
Edit (2018/12/31) : version v6.274
was released a couple of a days ago, and so far I didn't received major claims about it, so let's consider this version a stable one ! Please find below an overview of the changes and additions in this release.
What's new in Pseudo Saturn Kai v6.274
Automatic Game Loader
So far in Pseudo Saturn Kai 6.074, user had to choose which game loader to choose before starting a game, but this is now done automatically on Pseudo Saturn Kai side.
There's no magic around this feature : it just uses a list of games not compatible with CWX loader, and decides accordingly

Pseudo Saturn Kai boot menu
No need to worry about which loader to choose ♪
Cheat Codes
That's a big addition for this release. Its development spans around June 2017 to Spring 2018.
The main features for cheat codes are :
- Built-in : don't need to manually enter the cheat codes
- User friendly : just push X button when booting a game, and then select the cheat(s) to enable.
- Maintained by cafe-alpha (
) : rather than adding an "enter cheat codes by yourself" feature, I plan to continue improving and maintaining the cheat codes list 
Back in 2015, I added a stub of alternate rmenu to Pseudo Saturn Kai, but didn't had the technical information regarding Rhea/Phoebe API so the feature was disabled in its unfinished state.
And this summer, an
enthusiast friend helped a lot to get this technical information, so that I could finally finish this feature

Development of this feature was an occasion to bring usage of proportional font in image selection menu, thus showing more information on a single screen. Base of menu module was developed around 2010 without any consideration for proportional font, so development of this side feature was a nightmare, but I don't regret for having done it now it is finished

Image selection menu for Rhea/Phoebe ODEs
Dezaemon 2 Save Game Manager 3
Dezaemon 2 is a shooting game maker application for Saturn. And Save Game Manager is a collection of user games for Dezaemon 2.
By the past, there were two volumes released by Madroms :
SGM1 in 2007 and
SGM2 in 2008.
And 10 years after that, SGM3 is released and contains some new user games as well as all the games from SGM1 and SGM3 : one SGM to rule them all

Special thanks to
Dezaemon DB for gathering a community around Dezaemon 2, and dumping the user games

A stylish logo for Pseudo Saturn Kai
That's maybe a detail, but that was really missing from a long time !
Special thanks to
Alien^PDX for the logo, and CyberWarriorX for putting me in touch with him

Pseudo Saturn Kai logo, 2017/12/31
Yes, taken one year ago !
In-game connectivity for USB dev cart
This uses cheat codes routine, hence requires at least a valid master code to be set. It can do USB connectivity while doing transfer with PC, but that's a bit slow (because of unoptimized C running from cartridge ROM), and consequently may cause glitches on some games.As a countermeasure, there is another mode who does only USB connectivity (hence no cheat codes) but does it fast since the code for it is written directly in assembly and running in RAM.
That may be cool for game hacking, or looking for new cheat codes ... but I still need to add a proper cheat codes finder feature on SatLink before looking for cheat codes on my favorite games

In-game USB connectivity in action.
Radiant Silvergun was one of the very first games
to work correctly with Pseudo Saturn Kai cheat codes 
Virtual Memory Cartridge support via USB dev cart
This is similar to "Virtual Memory Cartridge" used in Gamer's Cartridge, but access save data files on PC via USB dev cart instead of SD card.That's convenient for save data hacking, or testing several saves, but for normal use then using SD card is (in my opinion) a better choice.
As a consequence, full firmware can now be installed on USB dev cart. But cartridges not using SST39SF040 flash chips are not supported (because there's not enough room in flash ROM) and in that case only lite firmware can be installed.
Virtual Memory Cartridge via USB dev cart
It was convenient for taking screenshots
for Dezaemon 2 Save Game Manager 3 
Fixed support for 3D pad
In previous version, using 3D pad would sometimes cause an emergency exit to multiplayer screen when touching analog buttons. This is now fixed, and additionally supports input from analog buttons.Pseudo Saturn Kai is not a 3D game, so the interest of using analog buttons is a bit questionable, but at least it is supported now

And the most voluminous change is ... :
Fixed many bugs everywhere, added other bugs here and thereEverything should work now ! Trust me, I'm an engineer

Congratulations, you reached the end of this long article

Last but not least, I wish you a Merry Christmas, happy new year 2019 and happy gaming

Read more Pseudo Saturn, Kai, and Dragon Ball too
I was away from keyboard (and fortunately away from shopping malls too) during this
Black Friday, so I am a bit late to celebrate this marvelous commercial event.
But any date isn't late to celebrate something, so let's tweak a little the event name and officially open the ...
The event is open all year, so everyone including latecomers should get their 80% off on first download

Read more Pseudo Saturn Kai - Black Saturday !
Long time no see ! It's a super long while I wanted to write about several kinds of Pseudo Saturn cartridges (other than the usual Action Replay/Gameshark couple) but as a lot of things in this blog, always postponed it.
But recently I discovered a cartridge that breaks all records in term of extra cheap design and appropriation of other people's work that now I really want to terminate this article
(Note : it's already
10 13 14 29 days after the creation of this article, and it is still not published yet ... but I do my best to finish it

)
Disclaimer : I am not affiliated with the designers or developers or sellers of the cartridges below. The reviews below are just my personal opinion and may not reflect the exact contents or behavior of the cartridges. And in case of questions regarding theses cartridges, please contact their sellers instead of me.
Also, please try theses cartridges at your own risks : whatever it may be, I'm not responsible about any damage caused to your Saturn, your cartridges, your dog, your house or anything else !
And let it be clear : the first purpose of this article is to inform users that such kind of not so usual cartridges exist, so that potential users can consider about theses cartridges for their own usage.
But if a cartridge deserves to be flamed, then I don't refrain about that, especially when it concerns the appropriation of other's people work.
Saturn NinjaDrive
From what I could see, that's an Action Replay cartridge with custom label and Pseudo Saturn Kai pre-installed. The "deluxe" edition features a stylish box for the cartridge.
It probably would had been appreciated to indicate that Pseudo Saturn Kai is installed rather to rebrand everything under a different name ...
Pros :
- The price without stylish box is not that bad
- Pseudo Saturn Kai is pre-installed
Con :
- It would had been fair to indicate that cartridge is made from Action Replay cart
- There's no indication about which firmware is installed
Saturn Unlocker

That's in the same range of contents (and price) as NinjaDrive : Action Replay with Pseudo Saturn Kai pre-installed. At least there's no attempt to hide about what is installed.
A description video at the lower half of the cartridge's page shows that Pseudo Saturn 0.832 is installed, which doesn't works at all on some Japanese model 1 Saturn

The video itself is quite old, so let's hope that latest version of Pseudo Saturn Kai is installed on the cartridges now

Pros :
- Classy box and label, a must have on your collection shelf
- Pseudo Saturn Kai is pre-installed
Con :
- It would had been fair to indicate that cartridge is made from Action Replay cart
- Maybe a bit expensive ?
All in One RAM Backup Cartridge
All in one cartridge, front side.
I couldn't find an official homepage for this "all in one" cartridge, but this is paradoxically the most valuable cartridge in this article

This cartridge model features both Action Replay support (boot ROM and 1MB/4MB expansion RAM) and 512KB backup memory storage. In simple words, it is the result of Action Replay and official memory cartridges blended together.
The backup memory is implemented with its own flash ROM chip, in the fashion as official backup memory cartridges, thus shall provide a 99% compatible (I keep the last 1% just in case of any eventual picky game that would cause problem, but this would be surprising such one exist) and in-game support for cartridge backup memory.
Using dedicated flash ROM for backup memory unfortunately means that it will be corrupted and finally no longer accessible after many write cycles, but ... this is how official cartridges worked too

However, since boot ROM and backup memory are stored in physically different flash ROM chips, the cartridge will still boot Pseudo Saturn Kai even if backup memory chip is damaged, which is one point over Action Replay where damage of backup memory ROM means the loss of nearly all other features.
Regarding firmware installed, the ebay pages selling this cartridge model I could see so far clearly mention that latest Pseudo Saturn Kai version (v6.074 at current time) is installed, and even explain the basis regarding cartridge usage such as loading a game, or accessing Save Data Manager, etc, which is quite a fair and remarkable way of doing

A review with only praises may look a bit biased (and no, I didn't received any money nor even any email from seller of this cartridge), so I would like to critic about the electronics parts used in this cartridges : theses are the same as used in Action Replay or official backup memory cartridges.
As a consequence, the technology used is no longer produced, thus probably coming from shady old stock, or counterfeit chips factory, or recycled from vintage devices. In each case, this means that in the long term, quality may not be at the meet.
An interesting related question is "Why releasing such cartridge around 20 years late ? This could exist at the time Action Replay cartridge development was still active !".
My guess about this question is that Action Replay development and/or sales team wanted to put everything (boot ROM and cartridge memory) in a single flash ROM chip, giving birth to the "if a ROM feature breaks, the whole cartridge is bricked" cartridge architecture used in Action Replay carts.
I personally like to write to flash ROM only when upgrading cartridge firmware, so that I dropped backup memory support on Pseudo Saturn Kai lite.
So my second guess is that it motivated someone to finally merge Action Replay and backup memory cartridge in a single one ? If this guess is right, then I'm glad to have indirectly contributed to the development of this cartridge

As an extra note, I could notice that several hardware variation for this cartridge model may exist, so anyone interested in purchasing such "all in one" cartridge should carefully verify it's item description page as well as features list indicated at the back side of the cartridge.
All in one cartridge : list of features available.
And finally, please enjoy a picture of each sides of the cartridge PCB

Theses pictures clearly indicate how the cartridge works, and were a great help when preparing this article.
All in one cartridge font side.
Left half : expansion RAM and glue logic for each chips.
Right half : flash ROM chips for cartridge firmware.
All in one cartridge rear side.
Flash ROM for cartridge backup memory.
Pros :
- Supports basically nearly all the Saturn games library
- Pseudo Saturn Kai is pre-installed
- There's no attempt to hide that Pseudo Saturn Kai is installed

Con :
- Cartridge backup memory may deteriorate after heavy usage.
Edit (2019/01/09) : there is also some kind of "dual boot" cartridge that seems to allow to select among two firmwares which one to boot.
Dual boot cartridge, front side
Thanks to toze3 for informing me about this cartridge 
Dual boot cartridge, rear side
Thanks to toze3 for informing me about this cartridge 
Saturn PASS
You're full of all theses cartridges to digest in a single article ? That's bad for you, because I kept the most greasy dish for the last time

Saturn PASS cartridge
This is a very simple cartridge with only boot ROM, and nothing else : no cartridge shell, and not even decoupling capacitors near the ROM chip ...
The decoupling capacitors protect neighboring components against voltage spikes : as theses apparently don't have any functional purpose, they are sometimes removed by cheap device cloners ...
Additionally, ROM chip used seems to be a
UV EPROM, easily identifiable with the small round window at the center of the chip.
UV EPROM chip detail
Yes, I did hit the snapshot key around 10 times to get
the right moment when UV window is visible 
As a consequence, firmware update requires dedicated device to illuminate the chip with UV light prior writing of the ROM and basically can't be easily done on user side.
Additionally from being technically difficult to upgrade, Saturn PASS users will also have to enjoy the custom firmware pre-installed : apparently it's a stripped version of Pseudo Saturn (or it will be an huge coincidence that log message under "Loading CD" is the same in both firmwares) with only the bare minimum remaining :
- No boot menu
- "Pseudo Saturn" name changed to "Saturn PASS"
- Addition of URL to Saturn PASS homepage
- Removal of Pseudo Saturn credits
Saturn PASS boot screen
For unknown reason they left as-is the
Pseudo Saturn is open source, so anyone with enough skills is free to change things in the firmware to their preferences. But rebranding the whole thing and trashing credits to original development team is not how open source works.
So if someone wants to thank somebody for Saturn PASS to exist, they should refer to credits displayed in Pseudo Saturn :
Copyright 2011-2015 Pseudo Saturn Team
http://github.com/cyberwarriorx/pseudosaturn
At a glance, removal of boot menu and only keeping the Pseudo Saturn exploit sounds a good idea, because that's one step less to do on user side before playing a game.
But except that point, it's complete crap : extra features (to verify if cartridge is working correctly or not, or to verify version of Saturn internals, etc) are no longer available, as well as credits page too.
Personally, I derived
Kai from
Pseudo Saturn specifically for adding features other than Pseudo Saturn exploit :
memory cartridge support in previous releases,
cheat codes in next release(s), and probably
something more in future release(s). So removing all the menus and extra features just to spare the push of one button to play a game is "no, I won't do that"

Pseudo Saturn Kai credits page is probably just a feature to boost my own ego, but I am not the only one listed there, and everybody credited contributed for free : done on their free time and without financial compensation. So muting them is definitely not an option. Also, I made several graphic improvements when displaying credits, so I hope you will enjoy them in next release

To finish on a positive note about Saturn PASS, it should be mentioned that its price is relatively reasonable : 350 Thai Bath = around 10 US Dollars, which makes this cartridge affordable for Thailand users

Pro :
- Affordable for Thailand users.
Cons :
- Can't upgrade firmware.
- No credits to original firmware developers.
PS : I heard about this cartridge from
furrtek. Special thanks to him for the information

Read more Various Pseudo Saturn cartridges
... and all of a sudden, November arrived

It's not like being under a quota of articles to write every months would stop the financing of my Saturn projects and in fact, as described on my "
donate" page or
this blog article, I don't have any interest in crowdfunding, or some kind of third party financing : if I'm not in the mood, or don't have enough free time to update this blog, then I don't update it

But well, moreover not being paid for not writing blog articles, as I actually have to pay to keep this blog alive (web page hosting is cheap but not free, but at least it's my own homepage

), I like to feed this blog from time to time even when being busy with real life things

So don't worry, I didn't stopped this blog : currently, I have one ongoing article that is waiting for its last paragraph and proofreading etc, but as I started more than two weeks ago (yes, that's my usual pace when preparing blog articles), please be patient until I finish it

I do have some ideas for future articles too, but theses are just ideas currently recorded as single lines in my TODO list, so I don't know when I actually start writing them

Regarding Pseudo Saturn Kai project, I ... didn't had a lot of free time to continue it recently

In fact, I think I just turned on my Saturn once last month just to test if -as requested by someone by email- DoDonPachi worked with Pseudo Saturn Kai or not. The game worked fine here, so I turned off my dev Saturn an put it back in my closet for better times when I will be more available

BTW, I'm currently experiencing an unexpected burst of things to do at work, so it may take a while until things return back to normal

But as I can't live without doing my Saturn projects, I promise that things will return back to normal as soon as possible

... Well, the contents in this article are a bit poor, so let's fill remaining space with random facts about my life recently

The "okra" plant
I wrote about in a previous blog article is still going well and I continue to water it regularly.
Okra in all its glory, 2018/10/18
Since summer is now finished, I no longer have to water it everyday, so that I now just do this regularly enough to prevent it from finishing yellow and burned

And yes, the kid who took back that from school completely forgot about its existence

I'm not keen on gardening (as suggested on the picture above, I don't even own a garden), but have a couple of pictures of other green things in reserve ... and I keep theses to fill future small posts

Read more I wanted to publish an article this October ...
"Overlap check" ... yeah, I know that I'm always terrible when finding a name for a new feature or a new project 
So, as its name may suggest, this feature check for cheat codes that would not work correctly together, and automatically unselect some cheat(s) in order to get things working as expected.
One illustration would be level select cheat code : some games may have a list of cheats like "play level 2", "play level 3", "play level 4", and so on. (no, there is usually no cheat code to play level 1
)
Example with Sonic 3D blast cheat codes : it's no longer
possible to simultaneously enable several "Play xyz level" codes
thanks to this overlap check feature 
When trying cheat codes for the first time, the reflex would be "enable them all !", and in that case this would lead to undefined behavior. In typical case, game just work fine and since cheat codes are executed in the order from their list, the last overlapping cheat takes priority.
But, some games are quite picky regarding execution time, so the faster cheat codes handler is executed, the better. In other words, the less codes enabled, the more chances game have to work correctly.
Here is one example in video with NiGHTs into dreams : first half of the video shows cheat codes causing graphic glitches, and second half show updated Pseudo Saturn Kai version fixing theses glitches :

NiGHTs into dreams : graphic glitches caused by
cheat codes slow handler. Video available on youtube.
Left : slow cheat codes handler, causing missing quads on screenRight : game as well as unlimited time cheat code working fine 
Hrm, that's around half a year ago, and I'm still fixing things for the same main feature
Well, that's how software development works : fixing bugs, adding new bugs, and returning back to step zero. Maybe smart people can develop things faster, but ... I'm not smart, so the best solution is to continue the endless development iterations until getting something OK for release 
So well, let's go back to original topic, and let's add that I also felt bad each time I was enabling two incompatible codes. "Play level 2" : enable, "Play level 3" : enable, start game ... what will it do ? Maybe a thermonuclear meltdown because of some divide by zero error
?! Well, it actually plays level 3, but that's unpleasant anyway.
I implemented cheat codes features from (basically) scratch first for fun (yes, I like 6+ months span software development projects ! 
), but also for the freedom of making what I want. Especially, making cheat codes as user-friendly as possible ! So that this "overlap check" feature was added 
Here is another example with cheat codes for Virtua Fighter Kids : this is an interesting example because some cheat codes for this game are using "enable code" (starting with `D') : this kind of code is sometimes used to prevent from executing other codes, typically when game module to cheat is not yet loaded, and that writing something to its location would make the game not working correctly.
As a consequence, "enable code" have a global effect on all enabled cheats, hence multiple "enable code" can't be enabled simultaneously.
Virtua Fighter kids uses "enable code" for a slightly different purpose : setting player health to a given value (50% of maximum, one HP, etc) only when it is set to maximum, ie on fight start time. By using this trick, game can then decrease health value, allowing to set some handicap to a given player.
This behavior is completely different in comparison to "unlimited health" cheat that always forces health value to maximum
Virtua Fighter Kids cheat codes list : "50% healt" and
"1-Hit Death" codes are the ones using enable codes
And, Virtua Fighter Kids is a good example, because it uses "enable code" at two different locations : at player 1 health value (06045974) and player 2 health value (06046A74). As only one "enable code" can be used, it's for example not possible to enable "1-hit death" code for both players.
Left : 1-Hit Death code enabled for P1
Right : P1 1-Hit Death code automatically disabled after
1-Hit Death code for P2 is enabled
Additionally, unlimited health for P2 is also automatically disabled, which is normal because it is in contradiction with 1-hit death code for it. From cheat code point of view, theses two codes write to same address, which doesn't makes sense.
"Hey, but I like "One Punch Man" series, and really want to enable theses two 1-hit death codes when playing Virtua Fighter Kids !" would you say ?
Well, that's not possible as-is, but adding a new cheat code setting both players health to 1 when health of any player is set to max value should do the job ♪
I didn't verified this code for real (in fact, I thought about it when writing this article), but it should be OK : "trust me, I'm an engineer" 
1-Hit Death code for both P1 and P2
This could also be named "Two gentlemen duel" 
I would like to finish this article with the introduction of a bug I fixed recently : I usually don't spend time in speaking about bugs I fix, because this would take too much time
But the behavior of this one is very unexpected :
Text display is suddenly uncentered !?
Never though though such goofy bug
would be possible 
So, this bug is triggered when selecting item in menu with scrolling text, and when text starts to scroll. The two features in relation with this bug (text centering and scrolling) are apparently unrelated, but the menu module used by Pseudo Saturn Kai is so spaghetti-ish that theses two features can collide into a bug 
I'm honestly proud of this menu module
It was initially designed for simple menu without even vertical scrolling, but evolved little by little in order to support each new features added to Pseudo Saturn Kai.
It's a complete spaghetti monster, but it works ! Yes, it works : trust me, I'm an engineer ! 
Read more Cheat codes overlap check feature