Pseudo Saturn Kai official thread

I don't have the time during the week, but this Sunday I could take some time playing around with this on my Action Replay Cart. I don't have a Gamer's Cartridge though, so I would be very limited in what features I can actually test. Just let me know.

Majority of Pseudo Saturn Kai users are using Action Replay carts, so the more lite firmware will be tested, the better it will be 🙂
I especially would like soft reset patch feature to be tested : I'm a bit curious to see if games not compatible with rmenu's soft reset patch are compatible with Pseudo Saturn Kai's or not.
My version runs directly in ROM while rmenu runs in RAM (because Rhea doesn't provides ROM for SH2), so in theory compatibility should be better.
 
Hey Cafe,

Great job on this! I tried to read through all the posts, to figure out if usb DataLink compatibility with Pseudo Saturn has been tested. I didn't see anything, but I may have missed it. I will test it out soon, and report my findings.
 
Hey Cafe,

Great job on this! I tried to read through all the posts, to figure out if usb DataLink compatibility with Pseudo Saturn has been tested. I didn't see anything, but I may have missed it. I will test it out soon, and report my findings.

As far I remember, Action Replay link via USB Data Link was reported working with previous release last year. I didn't tested USB Data Link support for this release, but it would be surprising it broke in the meantime.
If you can verify and report if link still works, that would be very appreciated 🙂

Just one note about Action Replay link support : if USB is not detected, then Action Replay link is used, as described in the code below :
sc_saturn.c said:
sc->set.link_type = sc_usb_is_port_available() ? SC_LINK_USBDC : SC_LINK_LEGACY;
sc->set.arp_type = SC_ARP_EMS;

But, because it exists two different mappings for link related registers (named "EMS" and "Datel" in Pseudo Saturn Kai), and that I don't know any reliable way to detect which mapping is used (*1), EMS one is arbitrarily used by default.
So if Action Replay cartridge has Datel link mapping, it is necessary to change it from link settings screen, available from boot menu (where to choose boot loader) -> B button -> "Change Link Type" menu. Link change is applied just after applying it with A or C button in link selection menu, and link can be perfomed in everywehere in the firmware, as long as starfield background is animated.

Link setting needs to be changed after power off or system reset. I didn't had a lot of feedback about Action Replay link, so didn't added support further such as persistent link setting, etc.


(*1) old transfer tools check flash ROM chips vendor ID in order to guess link type, but that's not reliable, and retrieving flash ROM vendor or device IDs corrupts read access to flash ROM for a short while, which makes impossible to execute program directly from flash ROM.
Please let me know if you know a reliable trick in order to automatically detect which Action Replay link is used, so that I can update the Pseudo Saturn Kai with it.
 
So, about a year ago or so, I had the opportunity to buy a lot of brand new Saturn GameSharks. Buying in a large quantity, I was able to get a good price, and they had the 25-pin communication port. My thinking was that if anyone was having trouble finding a cartridge compatible with DataLink, I could sell them a GameShark that had been tested to work. So, basically, I have around 30 of these:
http://www.gamingenterprisesinc.com/temp/GameShark.jpg

The firmware loaded on them is Version 1.91. If you click on the CREDITS button, you will see a reference to Datel.

So, I took one and loaded your flasher binary (thanks for that!) using a usb DataLink. I loaded the "lite" version of Pseudo Saturn. The flasher could not determine the flash chip IDs:
http://www.gamingenterprisesinc.com/temp/Flash_ID.jpg

However, I continued anyway, and the flash chips erased and programmed successfully!
http://www.gamingenterprisesinc.com/temp/Write_Success.jpg

After cycling power to the Saturn, the Pseudo Saturn screen was displayed, and I changed the Link Type to Commslink (Datel). After this, I was able to use the DataLink successfully to transfer gamesaves, and load homebrews!

Since all my GameSharks are likely identical, they should all work correctly with Pseudo Saturn. I will probably offer to flash Pseudo Saturn onto the cartridges, free of charge, for those that want it instead of the standard GameShark firmware. Hopefully, this would be ok with you. Since I have a reliable setup to flash the cartridge, and some people will be afraid of bricking the cartridge if they do it on their own, I don't mind doing it for them.

Hopefully, some of this information, and screen captures will be helpful to the project.
 
Can anyone tell me what's happening here? I attached a image to my post. Some Backups I make work, some dont. when they dont work, I get this Loading Disc...FFFFFFFF page. I am currently running Pseudo Saturn 0.832 on a 4M Action Replay on a Model 1 Japanese Saturn.
 

Attachments

  • IMG_4992.jpg
    IMG_4992.jpg
    677.8 KB · Views: 171
Can anyone tell me what's happening here? I attached a image to my post. Some Backups I make work, some dont. when they dont work, I get this Loading Disc...FFFFFFFF page. I am currently running Pseudo Saturn 0.832 on a 4M Action Replay on a Model 1 Japanese Saturn.
I get that on my US saturn (chipped) using a flashed AR 4-in-1 cart with certain homebrew programs. But the programs boot just fine with the chip alone. Its gotta be some sort of data clash with the kai loader and the game youre trying to run. Id wait for cafealpha to chime in on this with specifics tho
 
So, I took one and loaded your flasher binary (thanks for that!) using a usb DataLink. I loaded the "lite" version of Pseudo Saturn. The flasher could not determine the flash chip IDs:
http://www.gamingenterprisesinc.com/temp/Flash_ID.jpg

However, I continued anyway, and the flash chips erased and programmed successfully!
http://www.gamingenterprisesinc.com/temp/Write_Success.jpg

5345/4741 "IDs" are ROM first bytes (ASCII codes for letters "SE" and "GA") : theses are returned when ROM is read-only, or doesn't returns any vendor/device ID.
Cartridges such as Action Replay or Game Shark that write to flash ROM (for cheat codes and backup memory) don't check vendor/device IDs of the flash chips and instead require specific flash chips (128 bytes per page, flash accessible for writing after receiving specific commands, etc) in order to work. For theses reasons, even if vendor/device IDs are not correctly detected, flashing the ROM with the legacy settings should work 🙂


The firmware loaded on them is Version 1.91. If you click on the CREDITS button, you will see a reference to Datel.

[...]

After cycling power to the Saturn, the Pseudo Saturn screen was displayed, and I changed the Link Type to Commslink (Datel). After this, I was able to use the DataLink successfully to transfer gamesaves, and load homebrews!

So it seems that naming of link types in Pseudo Saturn Kai matches cartridge maker name, which is great. Thank you for the verification !


I will probably offer to flash Pseudo Saturn onto the cartridges, free of charge, for those that want it instead of the standard GameShark firmware. Hopefully, this would be ok with you. Since I have a reliable setup to flash the cartridge, and some people will be afraid of bricking the cartridge if they do it on their own, I don't mind doing it for them.

Pseudo Saturn Kai is free of use, so it's no problem to flash the carts on your side. And since some people don't like to do such risky things, it's better to have it done by experienced people 🙂

BTW, it's possible to install Pseudo Saturn Kai by executing the flasher.bin file from address 0x06004000 via Data Link. As a consequence, this way of installing doesn't requires to perform swap trick, or even to burn any CD-R.
 
Can anyone tell me what's happening here? I attached a image to my post. Some Backups I make work, some dont. when they dont work, I get this Loading Disc...FFFFFFFF page. I am currently running Pseudo Saturn 0.832 on a 4M Action Replay on a Model 1 Japanese Saturn.

Can you please let me know about the following points ?
- Do you have backups working before that don't work anymore ?
- Did you copied your games with same setup ? For example, same CD drive, same CD copy software, same CD brand, same writing speed, etc. Or does the problematic games are correlated with a specific way of copying the game ?
- Can you sometimes get problematic games working ? Or not working on all tries ?
- Did you tried with latest Pseudo Saturn Kai ? I would be surprised it improves something, so if you didn't tested, it's recommended to keep your cartridge as-is.


It looks like to be a problem regarding Saturn CD drive ? I'm not really sure about this however.
And if possible, please try to read the problematic copies in your PC (or laptop's) CD drive : if you don't see any file in the CDROM, then there was a problem when copying the game.

Please keep me informed about the questions above 🙂
 
5345/4741

BTW, it's possible to install Pseudo Saturn Kai by executing the flasher.bin file from address 0x06004000 via Data Link. As a consequence, this way of installing doesn't requires to perform swap trick, or even to burn any CD-R.
Yes, this is the method that I used for flashing the Game Shark, and it worked great! The flasher.bin is a very convenient way to flash the Pseudo Saturn.
 
Can you please let me know about the following points ?
- Do you have backups working before that don't work anymore ?
- Did you copied your games with same setup ? For example, same CD drive, same CD copy software, same CD brand, same writing speed, etc. Or does the problematic games are correlated with a specific way of copying the game ?
- Can you sometimes get problematic games working ? Or not working on all tries ?
- Did you tried with latest Pseudo Saturn Kai ? I would be surprised it improves something, so if you didn't tested, it's recommended to keep your cartridge as-is.


It looks like to be a problem regarding Saturn CD drive ? I'm not really sure about this however.
And if possible, please try to read the problematic copies in your PC (or laptop's) CD drive : if you don't see any file in the CDROM, then there was a problem when copying the game.

Please keep me informed about the questions above 🙂
My thought is that its some incompatible with certain games for (currently) unknown reasons, as the games i had trouble with boot up perfectly fine without the cart in (just the chip). My guess is for one reason or another certain games are causing some sort of overflow. Look at the hex value, its really high, then the console just hangs and requires a hatd reset. I dont know much about the registers in the saturn (or the one in question), but my knowledge of prigramming leads me to believe, theres some sort of drastic miscalculation somewhere, but only when booting certain games/homebrew, this is causing some sort of overflow scenario. If you could pinpoint why certain games cause this, you should be able to adjust your code to compensate for situations like this.

Now this is just my 2 cents, it may not be right at all, just my take on whats going on basef on observation and what i know about coding in general....
 
Yes, this is the method that I used for flashing the Game Shark, and it worked great! The flasher.bin is a very convenient way to flash the Pseudo Saturn.

I use this way of flashing for my USB dev cart too, and it's also convenient for use with Gamer's Cartridge since it can be executed from SD card.
"Real men use flasher.bin" 😀


My thought is that its some incompatible with certain games for (currently) unknown reasons, as the games i had trouble with boot up perfectly fine without the cart in (just the chip). My guess is for one reason or another certain games are causing some sort of overflow. Look at the hex value, its really high, then the console just hangs and requires a hatd reset. I dont know much about the registers in the saturn (or the one in question), but my knowledge of prigramming leads me to believe, theres some sort of drastic miscalculation somewhere, but only when booting certain games/homebrew, this is causing some sort of overflow scenario. If you could pinpoint why certain games cause this, you should be able to adjust your code to compensate for situations like this.

Now this is just my 2 cents, it may not be right at all, just my take on whats going on basef on observation and what i know about coding in general....

I actually don't remember the meaning of theses numbers displayed on screen, but such kind of problems are usually caused by incompatibility problem between CD-ROM drive and CD-R, or image incorrectly burned. Additional information such as retrieval rate, etc may help in order to find the culprit.
 
I use this way of flashing for my USB dev cart too, and it's also convenient for use with Gamer's Cartridge since it can be executed from SD card.
"Real men use flasher.bin" 😀




I actually don't remember the meaning of theses numbers displayed on screen, but such kind of problems are usually caused by incompatibility problem between CD-ROM drive and CD-R, or image incorrectly burned. Additional information such as retrieval rate, etc may help in order to find the culprit.
Hello
I have this kind of isue on a Sega Saturn model 2 pal with action replay 4mb but i can boot the game the most of the times switching of the console and try again.
Actually i booted all the games i tested but many times i had to try a few times.
So it must be a problem with the cd-r . i am using Verbatin datalife burned at 10x.
I tried SegaAges: Power Drift (JP) Radiant Silvergun(JP) Magaman 8(JP) all worked well when botting and didnt have any crash or cd reading isue. With street fighter zero 3 (jp) the game plays well but the audio plays for less than a second and frezzes like a scrached cd. the fx souns are ok . I have to look if it is cd audio and if it plays in the saturn cd player. Thats discards a bad cd no?

I dont know if it is for the cd or for playing at 50hz since i have X-men vs Street fighter original and has a lot of sound and graphics corruption. The fighters figh in the air, the backgrounds scroll planes dont sync well and you see wieird graphic corruption and all the fx are distorsionated but the music plays well unlike Alpha 3
 
Sorry for the delay.

Hello
I have this kind of isue on a Sega Saturn model 2 pal with action replay 4mb but i can boot the game the most of the times switching of the console and try again.
Actually i booted all the games i tested but many times i had to try a few times.
So it must be a problem with the cd-r . i am using Verbatin datalife burned at 10x.
I tried SegaAges: Power Drift (JP) Radiant Silvergun(JP) Magaman 8(JP) all worked well when botting and didnt have any crash or cd reading isue. With street fighter zero 3 (jp) the game plays well but the audio plays for less than a second and frezzes like a scrached cd. the fx souns are ok . I have to look if it is cd audio and if it plays in the saturn cd player. Thats discards a bad cd no?

That definitely looks like affinity problem between your Saturn and the your CD-Rs. Please try the following :
- Other CD-R brand. I personally use relatively cheap CD-Rs, without major readability problem.
- Other burning speed : maximum recommended speed of your CD drive sometimes paradoxically works better than slower speed.
- (If you have another PC/laptop), please try to burn a game with it.

Do you have similar issues with original games ? If not, then that's definitely a problem on CD-R side.


I dont know if it is for the cd or for playing at 50hz since i have X-men vs Street fighter original and has a lot of sound and graphics corruption. The fighters figh in the air, the backgrounds scroll planes dont sync well and you see wieird graphic corruption and all the fx are distorsionated but the music plays well unlike Alpha 3

Theses symptoms look like 50/60 Hz frequency related issue, hence out of Pseudo Saturn Kai scope.
 
Sorry for the delay.



That definitely looks like affinity problem between your Saturn and the your CD-Rs. Please try the following :
- Other CD-R brand. I personally use relatively cheap CD-Rs, without major readability problem.
- Other burning speed : maximum recommended speed of your CD drive sometimes paradoxically works better than slower speed.
- (If you have another PC/laptop), please try to burn a game with it.

Do you have similar issues with original games ? If not, then that's definitely a problem on CD-R side.

Theses symptoms look like 50/60 Hz frequency related issue, hence out of Pseudo Saturn Kai scope.

thank you for you reply
Yes i had some isues with originals too. I didnt use my saturn for a long time
i cleaned the lens and now all games and backups are ok
i tried Silhouette Mirage and it works fine too.
 
5345/4741
BTW, it's possible to install Pseudo Saturn Kai by executing the flasher.bin file from address 0x06004000 via Data Link. As a consequence, this way of installing doesn't requires to perform swap trick, or even to burn any CD-R.

Hey cafe-alpha, I have kind of a crazy question. The answer is probably no, but would it be possible to load the Pseudo Saturn Kai itself over the DataLink? In other words, instead of flashing the cartridge, just load the Pseudo Saturn executable using DataLink. It would obviously have to be be reloaded any time the Saturn was reset or power cycled. But it might be a convenient way to test new versions, or see if a game you want to play is compatible, without committing to re-flash your cart.

Just wondering.
 
thank you for you reply
Yes i had some isues with originals too. I didnt use my saturn for a long time
i cleaned the lens and now all games and backups are ok
i tried Silhouette Mirage and it works fine too.

Great ! It seems that my diagnosis was wrong, sorry ^^; Anyway, that's cool your Saturn could be fixed !

Some troubleshooting guidelines for people experiencing similar problems :
1. Can't read CD-R files or audio tracks from PC's CDROM drive ?
→ Definitely a problem when burning CD-R, so please try to burn at different speed. The "MAX" default speed usually gives good results, else please try at 4x or 8x.
2. Can't play any Saturn original game (without major scratches on CD-ROM) ?
→ Please clean the lens of your Saturn's CD-ROM drive.
3. Can play Saturn original games, sometimes not ?
→ Please try to adjust laser intensity with the orange potentiometer located at the rear side of CD drive.
4. Can play original games, but can't play CD-R games ?
→ Please try to read game audio tracks from Saturn multiplayer screen. If you can't even play audio tracks, then please give a try with other CD-R brand.
5. Some games sometimes cause audio/graphics glitches ?
→ That's usually a display frequency related problem, out of the scope of Pseudo Saturn Kai. Countermeasure is to either play game compatible with your Saturn (simplest solution, but not all games have their PAL equivalent), or to frequency mod your Saturn (best solution, but not recommended if you're not at ease with soldering iron).


Hey cafe-alpha, I have kind of a crazy question. The answer is probably no, but would it be possible to load the Pseudo Saturn Kai itself over the DataLink? In other words, instead of flashing the cartridge, just load the Pseudo Saturn executable using DataLink. It would obviously have to be be reloaded any time the Saturn was reset or power cycled. But it might be a convenient way to test new versions, or see if a game you want to play is compatible, without committing to re-flash your cart.

Just wondering.

You guessed right : the answer is no 🙂
Reason is that Pseudo Saturn Kai runs some bits of code directly from cartridge's ROM, for example in order to execute CD unlock exploit (running it in RAM may sometimes cause timing issues), or do the final cleanup of Saturn internals before loading a game.
A "demo" version of Pseudo Saturn Kai exists, but it can't run games for the reasons above. It is mainly used for very specific tasks such as beta test of USB link, etc.
 
  • Like
Reactions: Liv
You guessed right : the answer is no 🙂
Reason is that Pseudo Saturn Kai runs some bits of code directly from cartridge's ROM, for example in order to execute CD unlock exploit (running it in RAM may sometimes cause timing issues), or do the final cleanup of Saturn internals before loading a game.
A "demo" version of Pseudo Saturn Kai exists, but it can't run games for the reasons above. It is mainly used for very specific tasks such as beta test of USB link, etc.

Yeah, I had a feeling that would be the case, but thought I would ask & make sure. Thanks for the explaination!
 
Cheat codes support in progress 🙂 Any volunteers ready to tidy up cheat codes list ?

Cheat codes are stored in a csv file and are currently organized like this :
Code:
THE HORDE - USA,UNL BOXING GLOVES,[36006141 0001],codes=1
-,UNL MONKEYS,[36006142 0001],codes=1
CLOCKWORK KNIGHT 2 -  UK,UNL METAL GLOVES,[36006143 0001],codes=1
-,UNL GREEN BOOTS,[36006144 0001],codes=1
-,UNL BLUE BOOTS,[36006145 0001],codes=1
-,UNL HELMET WITH WINGS,[36006146 0001],codes=1
THE HORDE - USA,Master,[F6000914 C305][B6002800 0000],mc=2 cheats=1 nc=1
-,INFINITE CASH,[D6016E4A 0180][16084D66 26AC][160888E2 26AC],codes=3
CLOCKWORK KNIGHT 2 -  UK,Master,[F6000914 C305][B6002800 0000],mc=2 cheats=1 nc=3
-,INFINITE ENERGY,[1603FD8C 0303],codes=1
-,INFINITE LIVES,[1603FD94 015F],codes=1
-,INFINITE TIME,[16057AA0 015F],codes=1

And I would like one entry per game, with master code defined first, like this :
Code:
CLOCKWORK KNIGHT 2 -  UK,Master,[F6000914 C305][B6002800 0000],mc=2 cheats=1 nc=3
-,INFINITE ENERGY,[1603FD8C 0303],codes=1
-,INFINITE LIVES,[1603FD94 015F],codes=1
-,INFINITE TIME,[16057AA0 015F],codes=1
-,UNL METAL GLOVES,[36006143 0001],codes=1
-,UNL GREEN BOOTS,[36006144 0001],codes=1
-,UNL BLUE BOOTS,[36006145 0001],codes=1
-,UNL HELMET WITH WINGS,[36006146 0001],codes=1
THE HORDE - USA,Master,[F6000914 C305][B6002800 0000],mc=2 cheats=1 nc=1
-,INFINITE CASH,[D6016E4A 0180][16084D66 26AC][160888E2 26AC],codes=3
-,UNL BOXING GLOVES,[36006141 0001],codes=1
-,UNL MONKEYS,[36006142 0001],codes=1

Edit (2017/06/10) : sort of the csv list is 70% done. Special thanks to @cafe-alpha for the help 🙂


Codes list have over 700 codes defined, and there are other codes probably defined on internet that I would like to add too. Volunteers to manually add codes to this csv list are welcome.


It's a bit too early for testing on real hardware, but if someone is OK to test in the future, please contact PM me 🙂
 
Last edited:
Hi guys I just bout a Pseudo Saturn with Kai 6.037 on it. Whenever I put the cartdridge in the system loses controller function. If the controller is plugged in while startup no inputs on the controller will not work. If no AR cart is installed the system uses the controller properly. I tried to plug in after system start and the controller is going haywire. If anyone can help or point in the right direction.

My system is a white Saturn.
I have tried 3 different controllers. 1 sega arcade stick for SS. 1 Model 1 USA and a ST PROPAD and none input when started up and go crazy if plugged in while system is already in game.
 
Back
Top