--- Pseudo Saturn `Kai' --- WWW : https://ppcenter.webou.net/pskai/ WWW : http://ppcenter.free.fr/pskai/ (mirror) Forum: https://segaxtreme.net/threads/pseudo-saturn-kai-official-thread.24037/ By cafe-alpha ( http://ppcenter.free.fr/devblog/ ). 1. About Pseudo Saturn Kai ========================================== Pseudo Saturn Kai is a slightly improved version of Pseudo Saturn firmware, whose main purpose is to play Saturn games or applications copied on CD-R without the need of any hardware modification of the console. Pseudo Saturn firmware page : https://github.com/cyberwarriorx/pseudosaturn Goal of Pseudo Saturn Kai is to add a set of convenient features for playing Saturn games, and to provide built-in support for some extra cartridges or mods. In simple words, that's the application I (cafe-alpha) develop to provide cool features such as cheat codes, and also to interface with my own hardware projects such as Gamer's Cartridge, or external hardware projects I personally like such as Rhea/Phoebe and Fenrir ODEs. Features : - Boot CD-R without the need of hardware mod - Play import games - Data transfer with PC - In-game backup memory support directly to cartridge's SD card - Save Data Manager - Image selection support for Rhea/Phoebe and Fenrir ODEs - Cheat Codes available from built-in list or from user input - Dezaemon 2 Save Game Manager (DZ2SGM), from SD card or CD-ROM Supported cartridges and/or other mods : - Any boot cartridge with at least 256KB flash memory. Example : Action Replay, Gameshark, etc. - USB dev cart : http://ppcenter.free.fr/satcart/#usb - Gamer's Cartridge : http://ppcenter.free.fr/satcart/#gamers - Rhea/Phoebe : https://gdemu.wordpress.com/ - Fenrir : https://www.fenrir-ode.fr/ 2. Archive Contents ========================================== Files in root folder : - readme.txt : This file. - SatCom_src_.7z : sources and other development related stuff. Files in full folder : - flasher_bin_readme.txt : Information about flasher_full.bin. - flasher_full.bin : Full flasher utility, in bin format (*1) - pskai_flasher_full.cue/iso : Full flasher utility, in disc image format. Files in lite folder : - flasher_bin_readme.txt : Information about flasher_full.bin. - flasher_lite.bin : Lite flasher utility, in bin format (*1) - pskai_flasher_lite.cue/iso : Lite flasher utility, in disc image format. Files in ODE -> FenrirLoaderKai folder : - fenrir.kai.iso : Standalone loader utility for Fenrir. - readme.txt : Informations about Fenrir Loader Kai. Files in ODE -> RmenuKai folder : - 0.bin : Alternate executable for RMENU utility. - readme.txt : Informations about RmenuKai. Files in SAVES folder : Many user save data contributed from generous contributors. Files in tools folder : - cdpatch.exe : CD-ROM image patcher utility. - cdpatch_exe_readme.txt : Informations about patcher utility. - pskai_sdm.iso.cue/iso : Save Data Manager & miscellaneous utilities. - SaveRepack.exe : User save data import utility. (*1) About bin format : When using Gamer's Cartridge, it's possible to flash firmware without having to burn the flasher utility on a CD-R : simply copy .bin file to SD card root folder, and execute this file from "Load Homebrew" feature in Pseudo Saturn Kai main menu. It is also possible to flash USB dev cart or Action Replay/Gameshark/etc firmware without having to burn anything on CD-R by executing the following files from 0x0600400 address : - Action Replay / Gameshark and other clones : lite -> flasher_lite.bin - USB dev cart (early PCB revisions) : lite -> flasher_lite.bin - USB dev cart (with 2 x SST39SF040 ROM chips) : full -> flasher_full.bin 3. Should I need to install Pseudo Saturn Kai ? ========================================== This is a major Pseudo Saturn Kai release, so you probably may want to give a try to it. More than only booting CD-Rs, it also features cheat codes so that you may be interested in Pseudo Saturn Kai even if your Saturn is modded. Additionally, as this new version provides extended game and Saturn hardware compatibility, upgrade should be considered if version currently installed is having a hard time to play your favorite games. Please note however that flashing Saturn cartridge may brick it (the risk is small, but not zero), so please upgrade your cartridge after considering the risks and the interests of using latest version : - Please refer to disclaimer section regarding any trouble that may happen when flashing Saturn cartridge. - Please refer to changelog section in order to verify if latest features are worth using or not. (if you're not interested in latest features, then it's probably better to continue using version currently installed) 3a. Pseudo Saturn Kai without the need of a boot cartridge ? ------------------------------------------ Pseudo Saturn Kai can be used without the need of a boot cartridge such as Action Replay, Gameshark or other clones. To do this, a compatible ODE (Rhea/Phoebe or Fenrir) is required and in that case, Pseudo Saturn Kai is used instead of ODE official loader utility. Main advantage of using Pseudo Saturn Kai instead of official loader utility is the availability of built-in cheat codes feature and to provide a Save Data Manager for Fenrir ODE. 4. How to install ========================================== There are many ways to install Pseudo Saturn to your cartridge. The most widely used method is the swap trick one, because it works even when performed on a plain (unmodded) Saturn. Note : there are two Pseudo Saturn Kai versions available : - full : pskai_flasher_full.cue/iso or flasher_full.bin - lite : pskai_flasher_lite.cue/iso or flasher_lite.bin Full version is designed for cartridges with the following requirements : - Compatible SD card interface or USB dev cart availability - At least 1MB boot ROM available If your cartridge is not compatible, please install Pseudo Saturn Kai lite. Examples : - Gamer's Cartridge : Pseudo Saturn Kai full - USB dev cart : Pseudo Saturn Kai full, or lite if not full-compatible. - Action Replay : Pseudo Saturn Kai lite 4a. How to install : upgrade from previous version ------------------------------------------ This section describes how to upgrade firmware from a previous version of Pseudo Saturn. In that case, using swap trick method isn't required since flasher utility can be loaded by using Pseudo Saturn currently installed. Requirements : - A cartridge with old version of Pseudo Saturn installed. - Flasher utility (pskai_flasher_lite.cue/iso) utility burned on CD-R. Installation steps : 1. Turn your Saturn OFF. 2. Plug cartridge into your Saturn. 3. Insert flasher utility CD-R into your Saturn. 4. Turn your Saturn ON. 5. Load flasher utility by using old version of Pseudo Saturn. 6. Select and flash Pseudo Saturn Kai by following instructions displayed on screen. Note 1 : Flash vendor/device IDs are shown at the top of the screen in order to indicate if your cartridge is correctly inserted or not in its slot. Basically, if vendor/device display is green, you have high chances that cartridge erase/flash ends successfully. And if vendor/device display is yellow or red, please slightly move your cartridge in its slot until display becomes green. You can do this "cartridge slightly move" operation when firmware selection menu is displaying. Note : "slighlty" = 1-2mm, nothing more. You don't need to (and shouldn't) remove/insert your cartridge while Saturn is powered on. It's not a NES game cartridge :D Note 2 : Even if the cartridge is displayed as detected, it doesn't guarantee that erase/flash process will end successfully. If erase/write failure happen, please slightly move your cartridge in its slot and retry to flash until "Write Verification Success" is displayed after flashing. 4b. How to install : swap trick method ------------------------------------------ Note : when upgrading from a previous version working of Pseudo Saturn, you don't need to swap your disc : booting Pseudo Saturn Kai Save Data Manager from Pseudo Saturn main menu will do the job. For more informations, please refer to section 4a above. Requirements : - A Saturn cartridge. - One original game, booting correctly on Saturn. - Flasher utility (pskai_flasher_lite.cue/iso) burned on CD-R. First, please try swap trick without cartridge inserted : this is in order to verify your flasher CD-R can be read correctly by your Saturn, and getting some experience about swap trick. In order to learn about swap trick, please watch videos about "sega saturn swap trick" on your favorite video streaming site. After you're OK with swap trick without cartridge, please plug your cartridge, but move it slightly in its connector in order to make Saturn incorrectly detecting it, hence booting from CD-ROM (please try with your original game : if Saturn boots to game, it's OK, if Saturn boots to cartridge boot menu, you need to move the cartridge a little more), and perform the swap trick with your flasher utility CD-R as you did above. From firmware flasher main menu, please slightly move your cartridge in its connector in order to make it correctly recognized by flasher (= vendor/device IDs displayed in green color), then select and flash Pseudo Saturn Kai by following instructions displayed on screen. Notes 1 and 2 in section 4a above applies to this way of flashsing too, so please verify everything is alright regarding theses notes. 4c. How to install : modchip/ODE method ------------------------------------------ 1. Turn your Saturn OFF. 2. Plug your cartridge to your Saturn memory cartridge port. 3. Put flasher utility CDROM (pskai_flasher_lite.cue/iso) in your Saturn. 4. Turn your Saturn ON and boot from CD-ROM. 5. Follow the instructions displayed on Saturn screen. Note : when using ODE, you probably don't need to pskai_flasher_lite.cue/iso to CD-R. Please refer to your ODE user manual about how to execute Saturn iso file from it. 4d. How to install : SD card method ------------------------------------------ This method is designed for Gamer's Cartridge only. It have the advantage of not requiring swap trick method, and also not requiring the usage of any CD-R. 1. Turn your Saturn OFF. 2. Copy full -> flasher_full.bin file to your SD card root folder. 3. Plug your cartridge+SD card to your Saturn memory cartridge port. 4. Turn your Saturn ON. 5. If quick boot menu is displayed, please press B button in order to display main menu. 6. From Pseudo Saturn Kai main menu, select the following options : "Start Homebrew" -> "SD Card" -> "flasher_full.bin" 7. Follow the instructions displayed on Saturn screen. 4e. How to install : USB transfer method ------------------------------------------ 1. Turn your Saturn OFF. 2. Connect your USB dev cart to your PC via USB. 3. Plug your USB dev cart to your Saturn memory cartridge port. 4. Turn your Saturn ON. 5. Execute flasher_full.bin file from PC to Saturn address 0x06004000. 6. Follow the instructions displayed on Saturn screen. 5. Pseudo Saturn Kai features ========================================== 5a. USB dev cart / USB Data Link support ------------------------------------------ Pseudo Saturn Kai enables transfer with PC under the following conditions : A. Full firmware -> Only USB dev cart supported. -> Available almost anytime when Pseudo Saturn Kai is running. -> Available in "USB DMA transfer" option from main menu. -> In-game USB transfer available via cheat codes feature. B. Lite firmware -> Both Comms Link and USB dev cart supported. -> USB dev cart support is limited in comparison with full firmware. -> Only available in "USB DMA transfer" option from main menu. -> Should be compatible with every Comms Link-compatible devices. -> USB Data Link -> Freewing -> Exstand/Yano -> Original Comms Link card There are two variations of the comms link type : EMS and Datel. Pseudo Saturn Kai does its best to automatically detect comms link type without the need to setup anything on user side. This is however an experimental feature so please contact me (cafe-alpha) in the case communication with PC is not working as expected. 5b. In-game USB connectivity ------------------------------------------ In-game connectivity with PC is an extra feature available via cheat codes. Supported link type is limited to USB dev cart with SatLink software only. It is available only in full version of the firmware so USB dev cart without SST39SF040 flash ROM chips are not supported. Main features : - Supports only CWX game loader - Cheat cache location code (`B' code) definition not necessary Depends on USB transfer mode used. See below for details. There are several USB transfer modes available, with their own (dis)advantages : 1. "USB + Cheat Codes" mode Description : ROM-based cheat codes handler + USB connectivity enabled Advantages : can perform cheat codes and connectivity simultaneously Disadvantages : may cause slowdowns and/or missing graphics on some games 2. "USB Only (ROM)" mode Description : ROM-based, called directly from first stage interrupt handler Advantages : doesn't uses cheat codes cache memory set in `B' code Disadvantages : a bit slow, but faster than "USB + Cheat Codes" mode 3. "USB Only (RAM)" mode Description : assembly optimized USB handler, running in RAM Advantages : fastest USB connectivity mode Disadvantages : only basic (read/write) commands implemented Note : In order to enhance in-game USB transfer support, all transfer modes above don't use CRC check, hence aren't compatible with latest official version of SatLink or ftx command-line utilities. Typical selection of mode is to select "USB Only (ROM)" mode when cheat codes cache location is not yet set. In that case, master code (starting with `F') needs to be valid, so if not defined it is recommended to try with usual master codes such as F6000914 C305, etc. After a suitable location for cheat codes cache is set, it is then recommended to use "USB Only (RAM)" mode for better compatibility. There's no warranty USB transfer can work for your favorite game. And, support for development cartridges is no longer active, so if you encounter a problem, have a technical question, or want some specific development feature to be added, then ... just solve things by yourself. 5c. USB dev cart DMA transfer support (aka "The Blinking Screen") ------------------------------------------ If you're nostalgic of the USB dev cart old firmware's blinking transfer screen, it's possible to display it by entering "USB DMA transfer" option from main menu. Note #1 : it requires USB dev cart to be connected and powered by a PC for "USB DMA transfer" option to be displayed in main menu. Note #2 : both full and lite firmware support this feature, so if your USB dev cart is not compatible with full version of Pseudo Saturn Kai then this "USB DMA transfer" feature is the only way to use USB dev cart connectivity in lite firmware. Advantages of using this blinking screen : - DMA is used in USB transfer, hence faster than in firmware main menu. - Blinking screen code and stack fits in 06002000 - 06003FFF address range, hence it is possible to upload data almost everywhere in your Saturn. For example, you can transfer graphics to VDP memory, game level data to low work RAM, and your game executable to high work RAM only by using USB transfer from your dev PC. - It is compatible with old versions of SatLink/ftx transfer utilities. Disadvantages of using this blinking screen : - The only way to return to Pseudo Saturn Kai is to do a system reset. - CD-ROM isn't unlocked, so executing code using CD Block may not work. Screen color codes : - Blinking : Idle (waiting for commands from PC). - Orange : Transferring data. - Purple : Unknown command. - Red : Checksum error / Not connected to PC. Notes : - Colors are blinking in yellow -> green -> blue order. - Unknown command (purple) color is displayed for approximately 2 seconds. - Error (red) color is displayed for approximately 2 seconds. 5d. In-Game Soft Reset ------------------------------------------ This feature performs system reset instead of showing multiplayer screen when A+B+C+Start key combo is pressed. This concerns only the transition to multiplayer screen, so other transitions (for example, to main screen, etc) aren't changed. Example : With soft reset disabled : Game -> A+B+C+Start -> Main Screen -> A+B+C+Start -> Multiplayer Screen With soft reset enabled : Game -> A+B+C+Start -> Main Screen -> A+B+C+Start -> System Reset -> Pseudo Saturn Kai Advantage of this feature is to reset the game without having to push console's reset button. If you need to go to multiplayer screen, it is possible to show it from Pseudo Saturn Main Menu with the following operations : 1. Press B button in order to display exit menu. 2. From exit menu, select "Exit to Multiplayer" and confirm with A button. By default, this feature is enabled, and it is possible to disable it as described below : 1. From Pseudo Saturn Kai main menu, select "Settings" with A button. 2. Select "Soft Reset", and set it to "Multiplayer Screen" with A button. Note #1 : For technical reasons, it is not possible to modify this setting when an Optical Disc Emulator (ODE) is installed. Note #2 : Idea and credits about this feature is from neuroacid, who first implemented it in RMENU utility for Rhea/Phoebe ODEs. 5e. Internal Save Data Autodump ------------------------------------------ This feature is only available in full version of the firmware. This feature allows to dump news saves from Saturn internal backup memory to SD card. Saves are dumped into SAVES -> AUTODUMP folder, in .BUP format. Interest of this feature is to keep save data stored in internal backup memory even after changing Saturn's CR2032 battery. It is possible to restore the autodumped saves with the following operations : 1. From Pseudo Saturn Kai main menu, enter "Save Data Manager" with A button. 2. From Save Data Manager main menu, select "Save Data Import". 3. From file selection browser, select "AUTODUMP" folder, then the first save in this folder. 4. From save data selection menu, select the saves you want to restore and confirm with A button. (Multiple selection can be done with X button and all saves can be selected with Y button) 5. From device selection menu, select "Internal Storage" and confirm with A button. Note : changing CR2032 battery while Saturn is powered on shouldn't damage it, and doesn't wipes save data from internal backup memory. Don't hesitate to use this trick if you're using lite version of the firmware. 5f. Virtual FDD ------------------------------------------ This feature is only available in full version of the firmware. This feature allows to simulate Saturn Floppy Disk Drive (FDD) in the same way Virtual Memory Cartridge features simulates cartridge on SD card. Virtual FDD is enabled automatically when Virtual Memory Cart is enabled. Please let me know if that causes problem. Limitation : up to 10 saves per partition are supported. Please let me know if this is not convenient for a specific game using FDD. RAM usage when virtual memory cart and virtual FDD are running is quite tight (24KB in two non-contiguous buffers) memory, so raising this maximum count to a larger value may not be possible. 5g. Memory Cartridge via USB dev cart ------------------------------------------ This feature is only available in full version of the firmware. It is possible to provide memory cartridge support on PC via USB dev cart. Requirements : - USB dev cart with Pseudo Saturn Kai full version installed This requires at least 1MB flash ROM available on cartridge : - Carts with SST39SF010A flash chips (128KB per chip, total 256KB) aren't supported. This concerns few cartridges assembled just after USB dev cart release around 2012-2013. - Carts with SST39SF040 flash chips (512KB per chip, total 1MB) are supported. - PC running SatLink software How to enable Memory Cartridge via USB dev cart : 1. Plug cartridge, insert game CD-ROM 2. Power on Saturn 3. Run SatLink software, and enable USB dev cart transfer 4. Click "Show Log Output" on SatLink title bar 5. Select "Start Game" It is necessary to keep SatLink showing log output window while game is running. Also, game may show some glitches while accessing virtual memory cartridge files on PC. Reasons about this are unclear, and there are no plans to fix this. There's no warranty USB Memory Cartridge can work for your favorite game. And, support for development cartridges is no longer active, so if you encounter a problem, have a technical question, or want some specific feature to be added, then ... just solve things by yourself. 5h. Exception Handler Screen (aka BSOD) ------------------------------------------ This feature is enabled by default and shows a "Blue Screen Of Death" screen when program encounters an exception. Main features : - Show register dump where exception occured. - Allow system reset from pad's Start button. - Allow USB transfer when USB dev cart is used. 5i. Cheat Codes ------------------------------------------ This feature allows to execute cheat codes. Main features : - In-RAM (fast) cheat codes handler. - Many built-in codes. - Automatic game selection. Features available in debug version only : - In-game USB transfer : only USB dev cart supported. - Custom cheat code input. - Custom cheat codes and settings save to internal backup memory. Features not available : - Cheat code addition to built-in list. This requires full re-compile of firmware, hence won't be added. 5j. Rhea/Phoebe ODE support ------------------------------------------ Rhea and Phoebe ODEs are supported natively in Pseudo Saturn Kai. The main purpose of this feature is to allow image selection and cheat codes selection in respectively two menus, without any system reset, extra setup menu and/or any other magical spell required between them. Main features : - Compatibility with list generated for Rmenu - Images list sorting - Record of last selected image - Cheat codes support not requiring any cartridge - Soft reset combo (A+B+C+Start) returns to disc image selection menu Limitations : - Under some conditions, A+B+C+Start soft reset key combo may allow to load only the same game without showing disc image selection menu. (This works for a majority of games, but doesn't with the games requiring JHL loader to boot) - Cancel of cheat codes setup for a given disc image will load this disc image without cheat codes enabled and hence without the possibility to return to disc image selection menu. 5k. Custom loader feature ------------------------------------------ Pseudo Saturn Kai provides two game loader methods : - CWX loader : most stable, but not compatible with all games - JHL loader : better game compatibility, but isn't compatible with certain features such as cheat codes and Virtual Memory Cartridge. And on the top of theses two loaders, Pseudo Saturn Kai provides an "automatic" loader that ... automatically selects the most suitable loader for the game about to be loaded. This automatic loader works well in the majority of cases, but for some reasons a loader different from the automatic one may have to be used under some specific hardware setup and/or some other exotic conditions such as CD-R brand used, CD block tuning etc. For that reason, and in order to relieve user from remembering loader settings for each games they are playing, manually selected loader and game title informations are remembered and used over automatic loader settings. Because theses informations are stored in Saturn internal backup memory - whose capacity is limited - this feature is limited to 10 games, but that shall be sufficient for a normal usage of Pseudo Saturn Kai. How to use : simply manually select a loader (CWX or JHL), and this setting will be re-used directly from automatic loader after that. How to reset settings : it is possible to clear custom loader settings from "Custom Loader Infos" screen, available from main menu, or extra menu when full version of Pseudo Saturn Kai is used. Manually deleting PSEUDO_XTRA save can also do the job. IMPORTANT : please note that deleting theses settings also deletes custom cheat codes list in the same occasion. 5l. Minimalistic Pseudo Saturn loader ------------------------------------------ Minimalistic Pseudo Saturn loader allows to boot CD-Rs and doesn't supports advanced features (such as cheat codes, JHL loader etc) so that it can be installed in a small and safe region of the cartridge's flash ROM in the case Pseudo Saturn Kai main executable could not be loaded correctly. Main purpose of this minimalistic loader is to allow to boot cartridge flasher utility from CD-R even when Pseudo Saturn Kai ROM is corrupted, thus avoiding for example the usage of swap trick method after cartridge firmware upgrade didn't went as expected. This feature is restricted to full version of the firmware for several reasons : - Lack of flash ROM Legacy cartridges for Saturn (such as Action Replay and Gameshark) have their flash ROM limited to 256KB, and minimalistic loader requires 16KB (6%) of it. On the other hand, it takes less than 2% of flash ROM for full version. As a consequence, making minimalistic loader fitting into lite ROM would require to remove some features, or to lower the count of cheat codes. In my opinion, this is not a smart choice because Pseudo Saturn Kai exists to make everyone enjoying Saturn games and cheat codes. Adding a recovery in the case of corrupted flash ROM is probably good, but not at the price of monopolizing 6% of cartridge's ROM. - It may cause unexpected troubles Minimalistic loader is run when Pseudo Saturn Kai main executable differs from expected data, even if that's just the matter of one byte different. This mechanism is fine for new and genuine flash ROM chips (such as the ones used in Gamer's Cartridge), but may trigger easily when old or counterfeit chips (such as the ones used in Action Replay or other clones) are used. -> In the case of using old or counterfeit chips, it is probably better to hope that any eventual data corruption would concern rarely used part of Pseudo Saturn Kai firmware (for example, cheat codes settings for a specific game) so that the cartridge work correctly 99% of the time. DISCLAIMER : This feature doesn't makes the cartridge 100% safe to any eventual problem that may happen during firmware upgrade operation. Please install Pseudo Saturn Kai at your own risks ! 5x. Minor Tricks / Trivia ------------------------------------------ There are several kinds of minor tricks here and there in Pseudo Saturn Kai and Save Data Manager. Theses were basically added for extra testing and/or debug purpose. For example, did you knew that : - Pushing some keys during Save Data Manager main menu enables an extra menu ? - Pushing one shoulder key and 3 other keys when running full version of the firmware shows some kind of mysterious debug utility ? - An easter egg can be triggered from firmware's main menu ?! - Full version of the firmware provides some pre-recorded save data directly from cartridge ROM ? Theses can be used by selecting "RomFs" media when using "Save Data Manager" -> "Save Data Import" feature. - Pushing a some specific keys during credits page will speed up the display ? - X+Y+Z+Start key shortcut from any menu does a system reset ? - Pink (#FF00FF) can be used as transparent color in custom background images ? 5z. Unfinished features / TODO list ------------------------------------------ The features below are not finished, but may be added in a future release. The list below is basically a memo for future myself. - More debug functionality for developers. -> UBC based step by step assembly debugger. - Test of 1MB expansion RAM at faster access speed than default ones. - Save data export to Yabause format in Save Data Manager. - Virtual Memory Cart support with JHL loader and BIOS memory manager. - Extra information (game release date, region etc) in Fenrir Loader Kai. - Proper integration of Fenrir in Save Data Manager. - Other ODE (Satiator) support ? - This readme. 6. Compatibility Related Notes ========================================== Pseudo Saturn Kai compatibility is not perfect but improving little by little. In short, nearly all games don't cause problems but some few ones require their disc image to be patched before being burned, in order to play correctly. For more details, please refer to Pseudo Saturn Kai compatibility page : http://ppcenter.free.fr/pskai/compat/ Additionally to game-dependant compatiblity, it had been reported some kind of cartridge model dependant compatibility issues. Especially, red "all-in-one" cartridge may not work with some games playing fine with Action Replay carts. In that case of game not working on a specific hardware setup, it's not the fault nor the matter of Pseudo Saturn Kai to fix the problem : instead please ask to the manufacturer of your defective cartridge to about an hardware improvement and eventually a refund of your cartridge. For reference, here is a list of same games being tested on several hardware configurations. This list is just for illustration and won't be updated it with reports for other games. Game | Env. #1 | Env. #2 | Compatibility notes (region) | More compatibility notes ===========================+=========+=========+================================ Astal | O | O | (USA) | | | ---------------------------+---------+---------+-------------------------------- Cyber Troopers Virtual-On | O | O | (USA) | | | ---------------------------+---------+---------+-------------------------------- Dragon Force | O | ~ | Working Designs intro stutters (USA) | and loading times seem to be increased. Some users | have reported that it doesn't work at all. ---------------------------+---------+---------+-------------------------------- Dragon Force II | O | x | Pseudo Saturn Kai refuses (English Patched) | to boot it. ---------------------------+---------+---------+-------------------------------- Grandia | O | x | Most of the time it crashes to (Both original version | a black screen after the SEGA or ADX logos. The and English Patched) | single time that I got it to boot, it crashed when | selecting 'New Game' in the main menu. ---------------------------+---------+---------+-------------------------------- Magic Knight Rayearth | O | x | Most of the time it does not (USA) | boot. If it does boot then it either crashes to a | black screen after the SEGA logo or crashes after | the opening FMV. ---------------------------+---------+---------+-------------------------------- Panzer Dragoon Saga Disc 1 | O | x | Crashes to a black screen after (USA) | the cinematic which plays when selecting 'New Game' | in the main menu. ---------------------------+---------+---------+-------------------------------- Policenauts Discs 1 & 2 | O | O | (English Patched) | ---------------------------+---------+---------+-------------------------------- Pu.Li.Ru.La | O | O | (Japan) | ---------------------------+---------+---------+-------------------------------- Resident Evil | O | x | Crashes to a black screen after (USA) | the introductory text which plays when selecting | Jill or Chris. Can also crash when the Capcom logo | is playing. ---------------------------+---------+---------+-------------------------------- Road Blaster | O | x | If you press Start while the (Japan) | opening movie is playing, the game will freeze for | a while. If you wait long enough the movie will | play again. ---------------------------+---------+---------+-------------------------------- Sakura Wars | O | ~ | Text boxes are glitched, making (English Patched) | them very hard to read. ---------------------------+---------+---------+-------------------------------- Sonic 3D Blast | O | O | (USA) | | | ---------------------------+---------+---------+-------------------------------- Sonic Jam | O | ~ | Games work fine but some (USA) | features in Sonic World will cause the Saturn to | reset (e.g Art Museum). ---------------------------+---------+---------+-------------------------------- Lunacy Disc 1 | O | O | (USA) | | | ---------------------------+---------+---------+-------------------------------- X-Men Children of the Atom | O | O | (USA) | | | ---------------------------+---------+---------+-------------------------------- Details about test environments : Env. #1 : - Action Replay with burned disc on PAL VA5 - Action Replay with burned disc on PAL VA13 - Red cart with burned disc on PAL VA13 - Red cart with Phoebe on NTSC-J VA4 Env. #2 : - Red Cart with burned disc on PAL VA5 Details about test results : O : No issues ~ : Issues x : Unplayable General notes : - All tests were performed using Pseudo Saturn Kai v6.324 - Phoebe tests were performed with Pseudo Saturn Kai's image selection menu. - The red cart used in the tests is the variant with 1MB/4MB RAM but no backup memory. - Even though the all-in-one cart with backup memory hasn't been tested here, there are numerous reports of it suffering from similar issues. - It seems that problems happens only with burned games and consequently usage of original discs or ODEs may work fine. 7. Pseudo Saturn patcher utility ========================================== 7a. Purpose ------------------------------------------ Pseudo Saturn patcher utility makes games working correctly with JHL loader. For the majority of Saturn games, copying original game to CD-R without the need of patching things in the meanwhile will do the job, but for some reasons few games won't work correctly if not patched. 7b. Games Requiring Patching ------------------------------------------ - Alien Trilogy - Assault Rigs - Batman Forever The Arcade Game - Center Ring Boxing - Destruction Derby - Discworld II - DJ Wars - FIFA Rumbo al Mundial 98 - FIFA Soccer 96 - FIFA Soccer 97 - Genso Suikoken - Machine Head - Mechwarrior 2 - Mortal Kombat II - NBA Jam Extreme - NBA Jam Tournament Edition - NBA Live 97 - NBA Live 98 - NHL 98 - NHL Powerplay '96 - Panzer Dragoon Azel/Saga - Panzer Dragoon Zwei - Scud - The Disposable Assassin - Skeleton Warriors - Terry Pratchett's Discworld - Warcraft II - The Dark Saga - WipEout Note : full list of games requiring patching can be found in Pseudo Saturn Kai compatibility page : http://ppcenter.free.fr/pskai/compat/ Only games listed as requiring usage of patcher utility are concerned. Note : patching is not required when an ODE is used : the reason is that ODE "shows" disc image as an original game CD-ROM, and that patching is required to fool Saturn copy protection when using a CD-ROM backup. 7c. Patcher Utility Usage ------------------------------------------ 1. Double-click cdpatch.exe. 2. Click "Browse" button and select disc image file to patch. 3. Click "Patch" button. Note : iso, cue+bin, mdf, img image file formats are supported. Note : patcher utility works on Windows platform only. If you want to port this utility to your favorite platform, please refer to the sources and do the porting job by yourself. Path to the sources : SatCom_src_.7z -> pseudosat_kai -> cdpatch 7d. Patcher Utility Changelog ------------------------------------------ 2019/05/21, Ver 1.0.0.4 : - Extended support to cue sheets starting with CATALOG keyword. (This command was found on some rips such as Destruction Derby) 2018/02/21, Ver 1.0.0.3 : - Fixed incorrect path setting when selecting cue files. Only .bin image files located on same directory as patcher utility could be patched in previous version. 2016/07/14, Ver 1.0.0.2 : - Added region patching feature. (not needed when using Pseudo Saturn Kai) 8. Save Data Manager features ========================================== 8a. How to Run Save Data Manager ------------------------------------------ Lite firmware users : use pskai_sdm_flasher.iso . Full firmware users : select "Save Data Manager" from cartridge main menu. 8b. Base operations : copy, move, delete ------------------------------------------ Basic operations regarding save data are available in Save Data Manager. Theses operations are similar to the ones provided by Saturn BIOS and also support natively Floppy Disk Drive so that its operation CD-ROM is not required. 8c. Save Data Export ------------------------------------------ It is possible to dump save data from Saturn or backup memory devices such as cartridge or Floppy Disk to PC or SD card. Supported output devices : - USB Data Link connected to PC - USB dev cart connected to PC - Gamer's Cartridge - Fenrir - Satiator More than directly copying save data from backup device to output device, it is also possible to temporarily copy a portion of external backup device (cartridge or Floppy Disk) to Saturn internal backup memory and then copy it from Saturn internal memory to PC or SD card. This supports dumping portion of source device as well as data compression when copying to Saturn internal backup memory such as dump of large source data so that whole backup memory cartridge or cartridge ROM can be possible without requiring the usage of invasive dump methods such as ROM chip desolder and then dump with dedicated hardware. 8d. Indirect Dump ------------------------------------------ (1) Introduction to Indirect Dump feature : Indirect Dump allows to dump cartridge boot ROM or backup memory cartridge ROM to Gamer's Cartridge SD card. It can dump saves from backup memory cartridge (such as official ones), or ROM contents of boot cartridge (such as Action Replay, etc). It uses Saturn internal backup memory as a temporary storage for data to dump which is then copied to Gamer's Cartridge SD card, hence the "indirect" naming of this feature. Why using internal backup memory ? Because swpapping Saturn cartridge must be done when Saturn is powered off (hotswapping Saturn cartridge is dangerous : it may damage Saturn, or cartridge, or both, please don't try it), hence temporarily storing data to dump in a non-volatile memory such as internal backup memory is required for dump operation. In comparison to ROM size of cartridge to dump (usually 256KB), internal backup memory is small (32KB), so what's the magic in order to dump a cartridge ? Well, nothing really special : cartridge is dumped into several blocks. When a block is written to internal backup memory then it is required to change cartridge from the one to dump to Gamer's Cartridge, and after the block data is copied from internal backup memory to SD card, then it is possible to continue dump from the end of previous block and so on. Additionally, block data is compressed, so that dump of typical ROM cartridge is usually done in around 5 or 6 passes, vs 9 passes without usage of compression. This may also significantly help the dump of save data : as an example, Sega Rally ghost data stores driver input data without using any kind of compression, which gives very good compression rate during indirect dump. As an option, it is also possible to use Saturn FDD instead of Saturn internal backup memory. In that case, compressed block size is extended to 256KB, so that typical cartridge is dumped in one pass. Advantages of this feature : - It doesn't requires to open nor desolder chips of the cartridge to dump. - It doesn't requires any special electronic equipment such as ROM dumper. Disadvantages of this feature : - It requires to boot Saturn CD-R, hence needs some experience regarding swap trick method when Saturn is not hard-modded. - It may take some long time : typically around 1-2 hours for dumping a backup memory cartridge full of various save data. (2) Requirements : - (A cartridge to dump) - A Gamer's Cartridge and a SD card. - A Saturn able to play CD-Rs, or being able to do CD swap trick. - If required, a new CR2032 battery installed Saturn side. - Pseudo Saturn Kai Save Data Manager utility (pskai_sdm_flasher.iso), burned on CD-R, or copied to your favorite Saturn disk drive emulator. - Optionally, a Saturn Floppy Disk Drive : when detected, floppy disk's second partition is used instead of Saturn internal backup memory. (3) Indirect Dump procedure steps : Before dumping the cartridge ROM, it is recommended to backup the saves stored in Saturn's internal backup memory. This is optional, but since Indirect Dump feature will wipe all data from internal backup memory, you probably want to backup them to continue playing your favorite game(s) after that. Internal backup memory backup steps : 1. Turn off Saturn, plug Gamer's Cartridge 2. From boot menu, select : "Save Data Manager" -> "Save Data Dump" -> "Dump Saturn Backup RAM" -> "SDcard" Saves from internal memory are dumped to the following location : SD card -> SAVES -> today's date (YYYYMMDD) -> BRAM_.BIN Example : /SAVES/20170527/BRAM_001.BIN After indirect dump, it is then possible to restore internal backup memory to original state by using Save Data Manager -> Save Data Import feature. Indirect dump steps : 1. Turn off Saturn, plug the cartridge to dump, and insert Save Data Manager CD-R. 2. Turn on Saturn and run Save Data Manager from CD-R. When dumping a boot cartridge (Action Replay, etc), Saturn should boot from this cartridge. If that's not the case, it is necessary to adjust cartridge's insertion in cartridge slot until Saturn boots from cartridge. 3. From Save Data Manager, select "Save Data Dump" and the appropriate action for the type of cartridge to dump. Examples : - Boot cartridge : "Dump Cartridge Boot ROM". - Official memory cartridge : "Dump Cartridge Backup RAM". 4. From "Dump Size Selection" menu, select "Detected Size". 5. Two confirmation screens should be displayed : first one about confirmation to start indirect dump, and second one about the fact that data on internal backup memory will be erased : please confirm both screens with Start button. 6. After that, Saturn will compress ROM data from cartridge to dump into internal backup memory. Please wait until "Dump data compression success !" is displayed. 7. Turn off your Saturn. 8. Change cartridge from the one to dump to Gamer's Cartridge. 9. Turn on Saturn and run Save Data Manager from CD-R. Note #1 : Since Gamer's Cartridge is used, it is not required to do swap trick, but only to load the CD-R as when loading a game copy. Note #2 : In order to dump the cartridge, it is required to disable Virtual Memory Cartridge when booting Save Data Manager. 10. From Save Data Manager, select "Save Data Dump". 11. Select "Continue" from "Indirect Dump" menu. 12. Select where to store dump data : "SDcard". 13. ROM data will then be decompressed from internal backup memory to SD card : please wait until "Block successfully compressed." or "Cartridge dump completed !" message is displayed. If "Block successfully compressed" is displayed, then some data to dump is remaining, hence please return to step 1 in order to dump remaining data. If "Cartridge dump completed !" is displayed, then all data from cartridge is succesfully dumped to SD card. Dump data is located at the following location : SD card -> SAVES -> today's date (YYYYMMDD) + ID -> CARTDUMP.BIN Example : /SAVES/20170527_001/CARTDUMP.BIN Additionally, dump report is stored into CARTDUMP.TXT file. It contains dump related informations such as dump start address, CRC value etc, and should be kept with CARTDUMP.BIN to prove that ROM was correctly dumped. (4) Advanced features : Some extra features are implemented, and may be available only when USB dev cart is used. Theses are typically for my (cafe-alpha) personal use and/or for helping someone to dump their cartridge. - Dump to PC : This saves dump file to PC (PC-link media) instead of SD card. It is enabled when USB dev cart (or when Action Replay and USB Data Link) is connected and SatLink software is used. - Indirect Dump recovery : This reads indirect dump raw file from PC-link, in the case it can't be decompressed on end-user side. It requires USB dev cart (or modified version of yabause) and SatLink software. I officially don't support all of theses tools. Note : it requires dump header and compressed save data located at the root of PC-link media. - Saturn internal backup memory dumps : it writes internal backup memory raw contents to SD card before decompressing dump data from it. Raw dump files are located in same folder as indirect dump one, under the following names : B_BRAM.BIN and B_BRAM.HDR. Additionally, any eventual error code when writing compressed dump data to internal backup memory is logged into indirect dump report. Because it isn't directly mapped in Saturn memory, this feature is disabled when using Saturn Floppy Disk. 8e. Save Data Import ------------------------------------------ It is possible to import pre-recorded save data from file device connected to Saturn to backup device such as Saturn internal memory, cartridge or FDD. Save Data Manager contains many pre-recorded save data, and contribution of your own save data for your favorite games are welcome. Note when using Gamer's Cartridge : it is possible to import save data from data copied on SD card. For more informations, refer to "SD card setup" section. 9. SaveRepack Utility ========================================== 9a. Overview ------------------------------------------ SaveRepack is a PC utility that allows to copy Saturn save data files into Save Data Manager utility. Thanks to this, it's possible to copy save data from PC to Saturn without the need of any exotic cartridge or PC-to-Saturn communication hardware. 9b. Features ------------------------------------------ - Easy to use : select save data files, push button and iso file is generated. - No need to convert save data from a format to another. -> It can for example load save data file generated by emulator, or exported from USB Data Link/ODE/cartridge/etc. - Works on both real Saturn and emulator. - Allows to select which save to import from raw data file. -> Even if whole backup memory (containing many save data) is exported into a single raw file, Save Data Manager allows to select which save(s) to import from this file. - Only requires to launch a Saturn utility in order to work. -> CD swap trick, or inexpensive Pseudo Saturn cartridge is enough to import save data for your favorite game. 9c. Limitations ------------------------------------------ - Only Windows OS supported. -> I don't plan to port to another platform, but as it's open source feel free to port this utility to your favorite OS. - UI/UX is maybe a bit out of fashion. (But it was cutting-edge technology when Saturn was available in stores !) 10. USB dev cart related informations ========================================== 10a. Setup when using Windows ------------------------------------------ USB dev cart was reported working on the following Windows version : - Windows XP - Windows 7 32/64 bits - Windows 10 Please install driver and transfer utility according to setup instructions below: - Power off your Saturn. - Plug your USB dev cart into your Saturn memory cartridge port. - Connect your USB dev cart to your PC via USB. - Turn your Saturn ON. -> Pseudo Saturn Kai main menu appears on Saturn. -> If connected for the first time, Windows is searching for drivers over the internet and installs the USB Serial Port driver. - Execute the libusb filter driver from the following location : -> "USB_dev_cart" folder -> "Driver" folder -> "[REF]" folder -> libusb-win32-devel-filter-1.2.6.0.exe - Click "Next" button. - Read and if OK, accept the software agreement, then click "Next" button. - In "Select Destination Location" window, click "Next" button. - In "Information" window, click "Next" button. - In "Select Start Menu Folder" window, click "Next" button. - In "Ready to Install" window, click "Install" button. - Check "Launch filter install wizard", then click "Finish" button. - Check "Install a device filter", then click "Next" button. - Select USB dev cart's FTDI device, then click "Install" button. -> Vendor ID (vid) : 0403 -> Product ID (pid) : 0601 -> Description : "USB Serial Converter" -> Manufacturer: FTDI - In "Install Device Driver" window, click "OK" button. If USB Serial Converter (FTDI Manufacturer) is not listed in filter installer window anymore, driver installation is completed. - Test the connection with SatLink.exe : -> SatLink.exe - In "Download/Upload" tab, select "usb_dev_cart.ini" as INI file location. - Click "OPEN" button. - Select "Start Address" as 0x06004000. - Check everything in "Exec Parameters" frame. - In "Upload/Execute" frame, select flatcube.bin : -> "USB_dev_cart" folder -> "link_test" folder -> flatcube.bin - Click "Execute" button. If you see a 3D rotating cube on your TV screen, your USB dev cart works correctly. If you prefer setup manual with screenshots, please use the (a little old) manual from the following location : -> "USB_dev_cart folder" -> SEGA_Saturn_USB_devcard_Win7_64.pdf Note #1 : this manual refers to a relatively old version of SatLink. Please use the latest version of SatLink from my homepage : http://ppcenter.free.fr/satcom/ Note #2 : - SEGA_Saturn_USB_devcard_Win7_64.pdf was made by Duranik team. - flatcube.bin was made Mic : http://jiggawatt.org/badc0de/console.htm 10b. Setup when using Linux ------------------------------------------ When using antime's ftx utility, some USB dev cart commands are not compatible with Pseudo Saturn Kai, especially -x (execute) one. Hence, it is recommended to use slightly modified ftx available from the following location : -> "USB_dev_cart" folder -> ftx folder ftx was reported working on at least one Linux configuration. I don't know if it will work on yours. 11. SD card related informations ========================================== 11a. SD card interface(s) support ------------------------------------------ Pseudo Saturn Kai currently supports the following SD card interface(s) : - Gamer's Cartridge More SD card interface(s) may be supported in future releases. 11b. SD card requirements ------------------------------------------ Virtual Memory Cartridge feature doesn't requires large storage capacity, hence large (expensive) SD card is not indispensable. - Capacity : 4GB or more - SD card type : SD or SDHC (SDXC support is not tested) - Supported partition scheme is "Master Boot Record". "GUID Partition Table" or anything else won't work. - File system : FAT32 (not FAT, not exFAT, not NTFS, not anything else) 11c. SD card setup ------------------------------------------ Format SD card by with the following settings : - Partition scheme : Master Boot Record - File system : FAT32 - Allocation size (cluster size) : default allocation size. 11d. SD card file write optimization tricks ------------------------------------------ - Class 10 (or better) SD card. - Clean formatted SD card will give best write performance. - Less files/folders as possible in root folder : If you want to store Pseudo Saturn Kai unrelated files and folders in your SD card, it is recommended to move theses from root folder to a sub folder. This also slightly improves file read performances. - The smaller SD card capacity, the better. There's no need however to use old 2GB non-SDHC card, which are quite expensive. Instead, a cheap SDHC card is usually a better choice. - The larger FAT32 cluster size, the better. 11e. SD card extra setup for Dezaemon 2 and Gamer's Cartridge fanboys ------------------------------------------ (Dezaemon 2 is an application to develop and play SHMUPs on Saturn. If you're allergic to bullet hell or DIY then please skip the paragraphs below) When Gamer's Cartridge is used, it is possible to run Dezaemon 2 Save Game Manager (DZ2SGM) from SD card. Main advantage of this operation is to be able to import Dezaemon 2 user games without the need to swap between Dezaemon 2 and DZ2SGM CDROMs. In fact, this makes unnecessary to burn DZ2SGM on CD-ROM. Two setup methods are available : (A) Copy DZ2SGM files on SD card (B) Copy DZ2SGM iso file on SD card (A) requires to copy many small files on SD card hence setup takes time, but on the other hand DZ2SGM execution speed is optimal. (B) is fast to setup, but because it requires an extra layer of software to access DZ2SGM files, DZ2SGM execution speed is slow. As a consequence, method (A) is recommended when a Gamer's Cartridge is used, and method (B) shall be considered when a cartridge with faster access to SD card will be available. (A) setup instructions : Copy all files in DEZA2 and SAVES folders from Dezaemon Save Game Manager iso to SD card under the folder organisation described below : [SD card] |-DEZA2 (folder) | |-DZ2SGM.LZF | |-SGM_THB.RAW | |-DATA (folder) | | ... | |-SGM1 (folder) | | ... | |-SGM2 (folder) | | ... | |-SGM3 (folder) | | ... | |-SGM4 (folder) | | ... |-SAVES (folder) | |-(many sub folders) | | |-(save data files) (B) setup instructions : Copy pskai_sdm_flasher.iso to Gamer's Cartridge SD card root folder. 12. Cheat codes related informations ========================================== 12a. How to enable cheat codes ------------------------------------------ Cheat codes can be enabled from loader selection menu : - Select loader with X button : use cheat codes - Select loader with A/C/Start button : don't use cheat codes Additionally, cheat codes can be enabled from "Select Cheats" option in Pseudo Saturn Kai main menu. Note : cheat codes can't be used with JHL loader. When using cheat codes, CD-ROM is loaded, and according to game title the following menus are shown : - Game selection menu : game in CD lid is likely not being supported. Please manually look for game in list in the case association for automatic search is incorrect. - Cheats selection menu : game is automatically selected, and the last step before loading game is to choose which cheat(s) to enable. Note : it is possible to select multiple cheats with X button. 12b. Custom cheat codes : supported hardware ------------------------------------------ Custom cheat codes allows to enter or edit cheat codes parameters directly from Pseudo Saturn Kai so that it is handy to develop or try new cheat codes. This feature is available without consideration of the hardware used, but with the slight limitations described below : Hardware Setup | Availability | Save Count | Remark ==================+==============+============+========= Action Replay | Yes | 16 | (*1) or clones | | | ------------------+--------------+------------+--------- Rhea/Phoebe | Yes | 16 | (*1) ------------------+--------------+------------+--------- Gamer's Cartridge | Yes | 16 | (*2) ------------------+--------------+------------+--------- USB dev cart | Yes | 16 | (*3) (*1) Codes list is stored in Saturn internal backup memory. Additionally, stored list is common for all games : saving list will overwrite previous one, even if it was set for a different game. Usage of an Action Replay cartridge is not necessary, so it's possible to enter custom cheat codes with only RmenuKai. (*2) Cheat codes list is stored on SD card and is managed on a game basis, so that saving cheat codes list for ABC game will overwrite list previously set (if any) but will keep intact lists for other games. It is also possible to store the list on internal backup memory, with same limitations as described in (*1). (*3) Limitation similar to Gamer's Cartridge, but cheat codes list is stored on PC and consequently requires SatLink software (not publicly available) to work correctly. The main reason to restrict the count of cheat codes that can be saved to Saturn internal memory is to try not to hog too much data from it : Pseudo Saturn Kai is designed to use less than 1% of internal backup memory capacity so that it shouldn't cause troubles with games requiring backup memory. 12c. Custom cheat codes : how to use ------------------------------------------ Custom cheat codes input feature is available from built-in cheat codes selection menu, hence pre-requires to push X button from loader selection menu (or disc image selection menu if Rhea/Phoebe ODE is installed), and then select a game in the case Pseudo Saturn Kai doesn't automatically selects it. From there, push Z button to access custom cheat codes selection menu, which prompts where cheat codes shall be read from : - Load codes fom SD card : read list from Gamer's Cartridge SD card - Load codes fom PC : read list from PC via SatLink - Load codes fom BRAM : read list Saturn internal backup memory - Load built-in Codes : use code(s) enabled in cheat codes selection menu Cheat codes parameters are then displayed and can then be edited with the following keys : - Arrows : select digit to edit - L/R : decrement/increment currently selected digit - B : cancel and return to cheat codes selection menu - A/B/C/Start : start game with custom cheat codes Before starting game, Pseudo Saturn Kai prompts where to store custom cheat codes list, in a similar manner of list read process before entering custom cheat codes input screen. In the case of saving cheat codes to BRAM, please note that previously saved list will be overwritten, even if it concerns another game. 12x. Some technical information ------------------------------------------ This is technical information not necessary for normal usage. Basically, this is just a memo when I (cafe-alpha) want to verify something about cheat codes but don't have enough time to dig into source code to find the information. There are two types of cheat codes handler : - ROM based handler : cartridge ROM is used for both cheat codes handler and address/value pairs for each cheat codes enabled. RAM is used for only for cheat codes interrupt handler and to specify which codes are enabled so that this type is convenient for games where unused RAM areas are scarce and/or little. An other advantage of this cheat handler type is that it allows in-game connectivity with PC via USB dev cart. On the other hand, execution is quite slow, so graphical glitches may happen on some games. - In-RAM handler : cheat codes handler, settings and address/value pairs are put in RAM. This have the advantage of being fast so that most games are compatible with this type of handler. Finding enough unused RAM for this type of handler may sometimes not be possible, and additionally it doesn't allows usage of USB connectivity. If both fast execution and USB connectivity are required, then using "USB only RAM handler" is recommended. As the name suggests, it doesn't allows usage of cheat codes, so this is just for development purpose. About memory organisation regarding cheat codes : 1. Cheat codes cache : it contains few cheat codes setting and first stage bootloader. It redirects to cheat codes handler which can be located either in cartridge ROM or RAM according to handler type in use. 2. Cheat codes handler : small executable which applies user-enabled cheat codes. Additionally it also may support in-game connectivity with USB dev cart. 3. Codes cache : table in ROM indicating all address/value pairs for each cheats. ROM based handler directly uses this table while in-RAM handler uses address/value pairs copied from this table to RAM. About memory usage regarding cheat codes : - First stage bootloader : 0x40 bytes Contains interrupt handler, opcode for master code and few settings. - In-RAM handler : 0x60 bytes That's the space for maximum 48 SH2 instructions. - Codes cache : 8 bytes per code Address : 4 bytes, value : 2 bytes, command : 1 byte. Remaining byte is unused. 12y. Notes about cheat code setup ------------------------------------------ Features in this section are available in Pseudo Saturn Kai debug version only. When setting up new cheat code, it is necessary to setup master code first, which is composed with : - Patch code, starting with `F' - Location code, starting with `B' First, it is recommended to look for appropriate location code. Simplest way to setup location code is to try default locations below : - 0x060FF000 : cheat codes cache is located at the end of high work RAM. 0x1000 (4096) bytes available for handler and codes cache, which allows a maximum of 492 codes with in-RAM handler. - 0x06002800 : cheat codes cache is located on IP header's SEGA logo bitmap. Using this locations breaks Sega logo display on game startup, but except that point game should boot normally. 1352 bytes available for handler and codes cache, which allows a maximum of 157 codes in-RAM handler. Even more maniac tricks : - Look for unused RAM with "0xA5 HRAM fill" feature and then "BSOD on soft reset" feature. So far, this trick didn't worked correctly however ... - Use buffer from backup library : a part of it seems not used by BUP library. This is a last chance solution, since area there is small, and also because there's no waranty that the game doesn't uses this buffer for other things when not using backup library. 13. Rhea, Phoebe and Fenrir ODE support ========================================== 13a. Overview ------------------------------------------ Rhea, Phoebe and Fenrir are Optical Disc Emulators (ODE, a modern replacement for CD-ROM drive), which uses SD card to store CD image to show to Saturn. More informations about these devices is available at the following pages : Rhea/Phoebe : https://gdemu.wordpress.com/about Fenrir : https://www.fenrir-ode.fr/ Rhea/Phoebe SD card can contain several disc images, and selection of which one to show to Saturn is done via a Saturn application called Rmenu. In order to make the usage of Pseudo Saturn Kai features user-friendly, the configuration job normally done on Rmenu is available on Pseudo Saturn Kai side, thus allowing image selection and cheat codes setting in a couple of menus. Similarly with Fenrir, Pseudo Saturn Kai allows access and configuration of the ODE so that it is possible to select a disc image and enable cheat codes for it in an user-friendly way. 13b. Requirements for Rhea/Phoebe ODEs ------------------------------------------ Correct installation and configuration of Rhea or Phoebe ODE is required. Installation steps for Rhea : -> https://gdemu.wordpress.com/installation/rhea-installation/ Installation steps for Phoebe : -> https://gdemu.wordpress.com/installation/phoebe-installation/ This requires some screws to remove, few wires to connect, and eventually some few basic soldering skills. In case of technical question, please refer to the place where you bought your ODE from. Then, Rhea or Phoebe require at least firmware version 3.5.0 (for Rhea) or 3.2.0 (for Phoebe) in order to get image selection menu being supported. If not already done, please retrieve latest firmware from the following link : -> https://gdemu.wordpress.com/firmware/ And then follow the update steps detailed on the page to update your ODE to latest firmware version. Both lite and full versions of Pseudo Saturn Kai firmware supports ODE image selection, so a regular Action Replay cartridge is enough to enjoy both cheat codes and Rhea/Phoebe ODE. Additionally, using RmenuKai instead of Rmenu allows to select disc image and to enable cheat codes without the need of any cartridge hence is a recommended solution for those wanting to toy with cheat codes but not wanting to purchase or flash a Saturn cartridge. If you want to use both cheat codes and save data not fitting into Saturn internal backup memory, please note that hotswapping between Action Replay and official memory cartridge is dangerous : it may damage Saturn, or cartridge, or both, so please don't try it. In that case, using a Gamer's Cartridge or an official memory cartridge with RmenuKai is recommended. This concerns very specific games such as racing games (for race ghost data), Dezaemon 2 (DIY shooting game) or RPGs. So using an Action Replay cartridge or RmenuKai without any cartridge should be enough for typical gaming requirements. 13c. Image selection menu limitations ------------------------------------------ Image selection menu is designed with the following limitations, which shouldn't cause major problems, but listed here for reference : - LIST.INI file maximum size : 800 KB - Maximum disc image count : 2500 - Maximum length per image title : 128 characters 13d. Setup for Rhea/Phoebe ODEs ------------------------------------------ Image selection menu requires Rmenu iso to be set in folder 01 of the SD card used by Rhea/Phoebe. This iso file contains a list of disc images available in the SD card and is generated with a PC application called RMENU.exe. For more details, please refer to the Rmenu readme, and follow the setup steps detailed there. After setting up Rmenu, it is necessary to indicate to Pseudo Saturn Kai that Rhea/Phoebe ODE is available. This can be done in Settings menu, reachable by pushing B button from Pseudo Saturn Kai loader selection menu, and then by setting "Optical Disc" value to "Rhea/Phoebe". 13e. About RmenuKai and FenrirLoaderKai ------------------------------------------ RmenuKai is a replacement for Rmenu utility : it have more or less the same features as Pseudo Saturn Kai but can be set up as Rmenu, without the need of any cartridge. And FenrirLoaderKai is similar to the RmenuKai described above, but specialized for Fenrir ODE. Main interest of RmenuKai and FenrirLoaderKai is to provide a visually enhanced menu and cheat codes support without having to use any kind of cartridge. It have some limitations in comparison with official loader utility, so care must be taken when considering to update utility to its Kai variation or not. For more informations please refer to the following readme.txt files : - ODE -> RmenuKai -> readme.txt : for Rhea/Phoebe ODE - ODE -> FenrirLoaderKai -> readme.txt : for Fenrir ODE 13f. How to Use ------------------------------------------ After setting up optical disc setting to appropriate value, the game start menu is changed into disc image selection menu, with the following keys mapping : - X : enable cheat codes - Y : change list sort settings - Z : game loader manual settings - L/R : show settings menu - Arrows : select disc image - A/C/Start : load selected disc image 13g. Image Selection Setting Menu ------------------------------------------ Settings menu is available by pushing L or R button from image selection menu. From there, it is possible to verify ODE firmware version and tune the some miscellaneous settings such as image sorting, - Game Info : when enabled, show game game region, release date etc at the bottom of the screen. When disabled, disc image selection menu is a bit taller. - Name Prettify : force lowercase of letters inside a word. This is useful for displaying list containing titles directly from image header, since theses are written only with CAPS letters. If your images list was hand-modifed during rmenu iso generation, then this setting should be set to OFF. - Image Sort : select how to sort disc image list. List can be sorted by folder ID, or release date, or disc title. - List Order : select to display list in ascending or descending order. - Display Type : select "monospace" or "proportional" type to show disc image selection menu. Monospace type displays disc image list with 8x8 pixels fixed font while "proportional" type uses variable width font, hence allowing more information to be displayed on screen. If you want all characters to be vertically aligned, then "monospace" is the recommended choice, else "proportional" may be preferred. - Text Justify : select to display image titles left-justfied or centered. - Color Theme : select the color theme to display image selection menu. - Load Rmenu : load rmenu utility. This loads the image stored in the first folder of SD card for Rhea/Phoebe. - Compatibility Report : enable compatibility reporter and load previously selected image. Note : this is available only when a cartridge with supported SD card interface (example : Gamer's Cartridge) is detected. Note : it is also possible to enable compatibility reporter from image selection menu by to pushing Z button (manual setting) and then Y button (enable compatibility report). 14. F.A.Q. ========================================== Q1. I want XYZ feature for ABC hardware implemented right now !!! A1. No problem : sources are available in SRC folder of flasher utility CDROM, so please get the things done by yourself. You may prefer Pseudo Saturn sources as a simple starting point since theses can be compiled easily with CMake. Pseudo Saturn Repository : https://github.com/cyberwarriorx/pseudosaturn Q2. I would like to report a bug/improvement/feature request/whatever ... what should I do ? A2. Please send me (cafe-alpha) *DETAILED* informations about what you would like to be improved/modified/etc. Pictures explaining what you want to do are welcome. Please note that Pseudo Saturn Kai is a homebrew application made on my (cafe-alpha) free time and good mood, so I don't guarantee anything about past and future bug fixes, feature requests, releases, etc. Q3. Can you fix a non-working cheat code and/or adding a specific cheat code for my favorite game ? A3. This depends on my free time and motivation, and because of limited flash ROM size, there is a limitation regarding quantity of cheat codes that can be added to Pseudo Saturn Kai too. Whatever it may be, please report bugs or requests on Segaxtreme forums, which is more convenient than directly contacting me. -> https://segaxtreme.net/threads/pseudo-saturn-kai-official-thread.24037/ Q4. Are there online resources about Pseudo Saturn Kai ? A4. Yes. Please check there for latest version from official page : - http://ppcenter.free.fr/pskai/ Game compatibility list : - http://ppcenter.free.fr/pskai/compat/ Thread on Segaxtreme forums. Please use it for feature requests, bug reports, or game incompatibility reports. - https://segaxtreme.net/threads/pseudo-saturn-kai-official-thread.24037/ I prefer thread rather than email when dealing about requests, bugs or reports, since it sometimes requires everybody's point of view in order to be solved. I also use this thread in order to write latest informations about development and F.A.Q., instructions, etc. Q5. I made some changes to the firmware sources. Do you have some github, SVN, or anything else collaborative thing so that I can contribute to your sources ? A5. I don't have plans to do collaborative development regarding Pseudo Saturn Kai, because this won't longer be a funny project when several people would be deciding about deadlines, development goals, etc. So if you want to push your changes into my sources, please contact me from the link below, and I may gladly update my sources with your changes. Contact page : http://ppcenter.free.fr/contact/ Please however note that it doesn't guarantee your changes will be merged : I may decide to discard them (if not relevant, or not working, etc), or simply won't do it because of being busy with other things. Q6. "Firmware verification error" is displayed when trying to install Pseudo Saturn Kai ! What should I do ? A6. First, please take a deep breath, and *DON'T* reset your Saturn, because at that time cartridge is potentially bricked, hence may not boot correctly after that. Instead, it is better to push Start button, and then select "Restart Flasher" menu item. Then, adjusting cartridge position in its slot (for example, lifting it by less than 1mm while verifying that cartridge IDs displayed on screen are correct) and retrying flashing operation will give a second chance to your cartridge. There's no guarantee it can fix installation on your cartridge : if problems comes from dying flash chips, then reflashing them won't help a lot. And please install Pseudo Saturn Kai at your own risks ! Q7. Flasher utility froze in the middle of operation ! What should I do ? Alternate version : there was a power blackout (or the cat felt on my Saturn etc) just at the moment I tried to flash Pseudo Saturn Kai ! A7. Even if flash ROM is corrupted, there are some (limited) chance of Pseudo Saturn Kai to boot anyway. So if you're lucky then it's possible to use your cartridge as-is to boot flasher utility and properly re-flash it with Pseudo Saturn Kai. In the case Pseudo Saturn Kai doesn't shows up, it is then required to boot Pseudo Saturn Kai flasher utility by using swap trick (or any other way to run Saturn application from CD-R, such as modchip or ODE) and then re-flash the cartridge. Additionally, full version of Pseudo Saturn Kai features a minimalistic Pseudo Saturn loader that is run when flash ROM appears to be corrupted, which allows to run flasher utility without having to use swap trick. DISCLAIMER : I'm doing my best to prevent cartridge from being bricked and to reduce usage of swap trick in the case a problem happens. That however doesn't means that flashing a cartridge is a 100% safe operation, so please install Pseudo Saturn Kai at your own risks ! Q8. Can I install Pseudo Saturn Kai on official memory cartridge ? A8. No : only boot cartridges (Action Replay, Memory Card Plus, Game Shark, and their clones) are compatible with Pseudo Saturn. Official memory cartridges have their ROM located at a different location, and consequently don't allow to boot any firmware. 15. Flasher utility testing status ========================================== Following users could successfully upgrade their Action Replay cartridges with specified vendor/device IDs. Thanks to them for the help in testing ! - cafe-alpha : BFBF/0707 SST29EE010 (Flasher v3.745) - TabajaraLabs : 0101/2020 AM29F010 (Flasher v3.745) - A Murder of Crows : 53BF/4707 counterfeit+SST29EE010 chips ? (Flasher v3.746) - nastyvandal : 5345/4741 SST29EE010 counterfeit ? (Flasher v3.746) - SaturnAR : BFBF/1010 SST29EE020 (Flasher v3.751) - Zorlon : BFBF/1010 SST29EE020 (Flasher v3.751) - A Murder of Crows : 0101/2020 AM29F010 (Flasher v3.747) - A Murder of Crows : 1F1F/D5D5 AT29C010 (3.751) - cafe-alpha : BFBF/0808 SST29LE010 (GameShark) (Flasher v3.750) - Sonic Dreamcaster : 1F1F/D5D5 AT29C010 (Flasher v3.751) - SaturnAR : 53BF/4707 SST29EE010 (Flasher v3.751) Please note that it doesn't guarantee firmware upgrade will work without problem on your cartridge. PLEASE FLASH YOUR CARTRIDGE AT YOUR OWN RISKS ! 16. Special Thanks ========================================== Note : the complete credits are available in Pseudo Saturn Kai and Save Data Manager applications : the list below is just an excerpt from there. In alphabetical order : - antime - azerty83 - Charles MacDonald - CyberWarriorX - Darius-sensei - ExCyber - hitomi2500 - Mic - Piratero - privateye - Rockin'-B - SaturnAR - Shazz - Stac - TabajaraLabs - TyRaNiD - vbt And extra special thanks to : - Pseudo Saturn Team - Yabause Team - SegaXtreme Forums - SEGA 17. Disclaimer ========================================== I'm not responsible to the damages that may occur to your PC, your Saturn, your data, your SD card(s), your CD-Rs, your dog, and whatever else. Please do everything at your own risks ! If you don't know how it works, please read the documentation. And if the documentation ins't detailled enough, then read the sources ! Pseudo Saturn Kai currently supports a wide variety of cartridges or other mods for Saturn, but there's NO WARRANTY support will be added for any kind of cartridges or other mods not listed in this document. So please refer to supported devices list at the top of document and verify that your cartridges or other mods is(are) supported before considering installation of Pseudo Saturn Kai. Also, there's NO WARRANTY of compatibility with cartridges or other mods after updating their firmwares : if something broke compatibility, then it may be fixed in a future release ... or not. 18. Changelog ========================================== Remark about version number : it is not related with original Pseudo Saturn version number. Pseudo Saturn Kai version number was initially incremented by 0.001 on each successful build, and after version 6.000, it was decided to increment only when rebuilding whole firmware (hence keeping same version number after partial recompilation) in order to keep version number fitting into 4 digits. 18a. Digest changelog - for busy people ------------------------------------------ Pseudo Saturn Kai 6.483 - November 2021 : - Added support for latest Fenrir API. (Recommended firmware version for Fenrir ODE is 2021/07/02) - More stable game loading for Fenrir ODE. - Added nested folders support in disc image selection menu for Fenrir ODE. - More display settings in disc image selection menu. - Added support for Satiator ODE in Save Data Manager. - Fixed JHL loader to work correctly with grey Japanese Saturn on BIOS v1.00. Special thanks to jhl (Prof. Abrasive) for investigating about it ! - Fixed software reset to make working games relying on uninitialized VDP1 RAM. -> Major graphical issues fixed in Croc (JPN and bug-fixed USA versions) and Slam 'n Jam '96. -> Minor graphical issues fixed in MechWarrior 2, Need for Speed, and Space Hulk. - Added and tested Commslink I/O check in Pseudo Saturn Kai, Save Data Manager and RmenuKai/Fenrir Loader Kai utilities. -> No need to flash cartridge to get link between Saturn and PC : Save Data Manager is enough for that. -> No longer need to manually set EMS/Datel link type : it is now automatically detected. - Many minor fixes and improvements in Save Data Manager. - Added ability to erase cartridge ROM in Firmware Flasher utility. Pseudo Saturn Kai 6.437 - May 2021 : - Added Fenrir ODE support into Save Data Manager. -> Can now easily export or import saves without the need of other device. - Added SaveRepack utility, which eases distribution of save data files. -> Minimal requirement is a modchip or Pseudo Saturn cartridge : no need of extra hardware like USB Data Link or ODE to import save data files ! - Several new pre-recorded saves added into Save Data Manager. Pseudo Saturn Kai 6.411a - March 2021 : - Minor change to support firmware 20210207 for Fenrir ODE. Pseudo Saturn Kai 6.408 - November 2020 : - Fenrir ODE support, featuring in-game reset and cheat codes integration etc. - Several updates around cheat codes and automatic loader lists. - Allow input of custom cheat codes from user. - Cosmetic improvements in several menus. - Added Balanced theme for Rhea/Phoebe and Fenrir disc image selection menus - Finally added proper soft reset support for RmenuKai. - Added an "Enable Cheats" option in main menu. - Fixed backup time stamp handling in Gamer's Cartridge. - Fixed backup date display in Save Data Manager. Pseudo Saturn Kai 6.324 - December 2019 : - Minor (but many) improvements around cheat codes support. - Minor (but many) improvements around automatic game loader selection. - Official release of Dezaemon 2 Save Game Manager 4, featuring 11 new opus. Pseudo Saturn Kai 6.314 - May 2019 : - Show error message when SD card is not inserted into Rhea/Phoebe ODE. - Added RmenuKai : enjoy cheat codes on Rhea/Phoebe even without cartridge ! - Improved compatibility of JHL loader-only games with Rhea/Phoebe ODEs. (Panzer Dragoon Saga can now be correctly loaded from Rhea ODE) - Improvements in automatic selection of game in cheats codes feature. - Improvements regarding Virtual Memory Cartridge automatic settings. - Fixed support for some third party pads. Pseudo Saturn Kai 6.274 - December 2018 : - Added automatic game loader. - Added cheat codes feature. - Added disc images menu for Rhea/Phoebe ODEs. - Added Dezaemon 2 Save Game Manager 3. - Added a stylish logo for Pseudo Saturn Kai. - Added in-game connectivity for USB dev cart. - Added Virtual Memory Cartridge support via USB dev cart. - Fixed support for 3D pad. Pseudo Saturn Kai 6.074 - April 2017 : - Added soft reset patch feature. - Fixed Virtual Memory Cartridge support for saves on Saturn internal backup memory. This concerns few games with specific save data size. - Added FDD support to Virtual Memory Cartridge. Pseudo Saturn Kai 6.037 - June 2016 : - Merged both loader from version 0.831 and 0.832 into a single firmware. - Virtual Memory Cartridge support (first public version) Pseudo Saturn 0.832 - November 2014 : - Improvements in game loader, making games not incompatible with version 0.831 playing correctly. IMPORTANT : don't work *at all* on some Saturn hardware revision. don't install unless you know what you're doing ! Pseudo Saturn 0.831 - August 2014 : - Additional exploit removing the need of pseudo patch. Some few games don't play correctly. Pseudo Saturn 0.830 - July 2014 : - First public version. All games require to be pseudo pached. 18b. Full changelog - for curious people ------------------------------------------ 2021/11/13 (Pseudo Saturn Kai, v6.483, RC8) : - In Save Data Manager, show full name of device where to export when display range allows it. - Fixed a bug of Fenrir firmware information not being displayed correctly. (This was caused by a terminating null character incorrectly set and as a consequence the bug was happening randomly from a build to another) - In Save Data Manager, show progress of individual save export according to ratio of processed file count rather than ratio of data written. Purpose is to improve fidelity of displayed progress with actual progress. - Convert save comment to UTF-8 encoding when reporting description of a save being written by Gamer's Cartridge. - In Fenrir initialization failure error screen, show detected firmware version so that it can be checked even if it not supported by Pseudo Saturn Kai. - In anticipation of an eventual fix in Fenrir firmware regarding reading of files whose size is not a multiple of 2KB, restricted workaround (which pads files to make their size being a multiple of 2KB) only in the case version of Fenrir firmware is 2021/07/02. 2021/11/06 (Pseudo Saturn Kai, v6.482, RC7) : - More fix of menu help message font selection. Note : help message supports only monospace display, so if menu is displayed with condensed or balanced setting then menu items and help message will look different. 2021/11/05 (Pseudo Saturn Kai, v6.481, RC6) : - Fixed a typo in Pseudo Saturn Kai credits page. - Fixed menu help message not being displayed with the same font as elsewhere. 2021/11/05 (Pseudo Saturn Kai, v6.480, RC5) : - Added output of date and time stamp into save data dump report file. Two time stamps are recorded in report file : 1. The time when save was copied to Gamer's Cartridge/Satiator/Fenrir/etc. 2. The time when save was recorded to backup memory device. (1) uses Saturn internal clock, hence (assuming that CR2032 battery is in good condition and that time is correctly set) should always indicate a cohenrent time. (2) uses time stamp set by the game when it recorded its save state, and because some games don't set that correctly, or use this field to store unrelated information it may indicate a nonsense date information. - Small changes and update in credits page. - Automatically load folder with Fenrir ODE when it contains only iso and cue files sharing the same base name. 2021/10/31 (Pseudo Saturn Kai, v6.479, RC4) : - More write access speed adjustment for Satiator. Save Data export may crash when old and slow SD card is used (example : 4GB class 4 card) but it should work correctly in all other "normal" cases. - Avoid to do Commslink I/O check when presence of USB dev cart is detected. - More fix around crash to black screen when Gamer's Cartridge and JHL loader are used from fenrir.kai.iso. (Previous attempt didn't worked, so ... I just reverted to an older state) - Extra tuning of wait timing after selecting a disc image with Fenrir ODE. (One second wasn't enough in some cases, so it is extended to two seconds) - Added hardware check bypass feature for Super Prologue 21 Games Vol.1 game. Special thanks to Knight0fDragon for finding the code patch to bypass this Prologue 21 hardware check ! - Fixed wrong save name being displayed when importing from a folder containing file(s) with BIN extension and other files BUP/CMS/PWB or other individual save data file extension. - Added writing of dump report near files written in SAVES -> LATEST folder. - Added copy to SAVES -> LATEST folder when exporting in raw dump format. -> "Select saves to export" : copy BUP files to LATEST folder. -> "Export Saturn Backup RAM" : extract each saves and copy them in BUP format into LATEST folder. -> "Export Cartridge Backup RAM" : extract each saves and copy them in BUP format into LATEST folder. - Improved characters width table to avoid glyphs having vertical edge (for example 1, M, W etc) to not stick with the next character. This works only with right edge of the glyph and won't effect if the edge is not completely vertical, so maybe some "edge case" (pun inside) may happen but rendering is indeed quite well now for something done pixel by pixel on a vintage video game console. - Prevent from importing saves in BIN/CMS/PWB/RAW/SSF formats from Fenrir when their size is not a multiple of 2KB. (This is to prevent a data corruption caused by Fenrir firmware) 2021/10/29 (Pseudo Saturn Kai, v6.478, RC3) : - Extra write access speed adjustment for Satiator. - From Fenrir ODE, prevent from reading files having unsupported size. (This is needed because when file size meet some conditions, Fenrir firmware incorrectly reads file contents and consequently corrupts the save about to import into Saturn internal memory or other backup device) (This limitation will be removed when Fenrir firmware will be fixed) - Fixed dump report files padded with null characters when dumped to Fenrir. - Fixed a (very basic) bug in SDM Commslink transfer screen. - In SDM, additional fix to prevent to mistake BIOS dump as a save data file. - Addition of USB dev cart I/O check in lite firmware. (This feature is temporary because it will be disabled in order to save room for save data storage in a future release) 2021/10/27 (Pseudo Saturn Kai, v6.477, RC2) : - Added Commslink I/O check in full version of Pseudo Saturn Kai. (This is required because ODE menu utilities for Rhea/Phoebe and Fenrir are using full version of the firmware) - In Save Data Manager copy/move/import features, fixed save data integrity check that was performed even after refusing to overwrite existing save data. - In Save Data Manager allow individual save data export to SAVES -> LATEST folder, in addition of existing SAVES folder : -> Saves written in SAVES folder are stored in an unique folder so that previous versions are kept. -> Saves written in SAVES -> LATEST folder are overwritten so that most recent version can be easily imported back. Because of write speed limitation, this feature is enabled only when exporting to Satiator ODE. - In Save Data Manager, prevent to mistake BIOS dump file as a save data file. - Extra trick to correctly recognize Congo Zinj save data in Save Data Manager. (Trivia : save data name of this particular game uses lowercase characters, which doesn't complies with SEGA naming standards) - Fixed a C beginner bug that was scambling file names from Gamer's Cartridge SD card when some obscure conditions were met. - In ODE settings menu, allow to select color theme in alphabetical order. - Fixed inconsistent display of some (well, many) glyphs in proportional fonts. - In Fenrir configuration menu, show full name of region instead of few letters or abbreviation codes. - Blind attempt to fix a crash to black screen when Gamer's Cartridge and JHL loader are used from fenrir.kai.iso. - Fixed flickering of title in ODE configuration menu. - Disabled quick boot when Fenrir ODE is used. (This will be enabled back when it will be possible again to pre-select last loaded disc image) 2021/10/24 (Pseudo Saturn Kai, v6.476, RC1) : - Reverted back BIOS dump feature from "stress test" to normal behavior. - In Save Data Manager, fixed naming of Commslink type. - In Save Data Manager, added Commslink I/O check from all menus. - Show progress during the small wait after selecting a disc image with Fenrir. - Added an hidden key combo to extend wait time after disc image selection with Fenrir ODE. (Spoiler : it is X+Y+Z. Use only if you know what you are doing) 2021/10/24 (Pseudo Saturn Kai, v6.475) : - Adjusted wait timing after selecting a disc image with Fenrir ODE. - Display selected items in lime color and same background color as other ones. - Re-arranged the order of settings in disc image selection configuration menu. - Consecutively dump BIOS 100 times to Satiator SD card. (Stress test to be sure that write access there is safe now) - Experimental fix regarding automatic detection of Commslink type. - In SDM Commslink transfer screen, display (EMS or Datel) detected link type. Note : this is displayed after first successful transfer is done. - Experimental (and ugly) fix to make Fenrir correctly exporting backup files. 2021/10/17 (Pseudo Saturn Kai, v6.474) : - Fixed typo in Save Data Manager flasher utility. - Added back Commslink transfer feature in Save Data Manager. (untested) - Extra tweak to avoid Satiator to make Saturn freezing when writing many files consecutively, for example during individual save data export. 2021/10/15 (Pseudo Saturn Kai, v6.473) : - Added option to select font for use in disc image selection menu. - Use same font and color theme as in menu to display its help message. - Apply disc image selection menu color theme to cheat code selection menus. - Another attempt to make VDP1 memory restore playing Croc, Slam'n Jam etc. - Minor cosmetic changes in Dezaemon 2 SGM menus. - Extra tweaks to make Fenrir working correctly with Pseudo Saturn Kai. - Disabled automatic folder loading for Fenrir ODE. (This is temporary in order to investigate about a compatibility issue) - Another attempt to avoid display flickering when loading a Fenrir disc image. - Fenrir-compliant reset timing adjusted to 60 frames. 2021/10/10 (Pseudo Saturn Kai, v6.472) : - Q&D workaround to reduce the occurence of Satiator sometimes making Saturn freezing during file access on SD card. (This will be removed when a proper fix will be available on Satiator FW) - Convert save comment to UTF-8 encoding when writing to dump report. - Fix of lite firmware sometimes not wanting to load CD-Rs. (Forgot to disable Satiator access there, which was making the CD Block noticing that CD-ROM was not an autenticate one) - Improved (fixed) screen transition when loading a disc image. -> If it's a folder then menu display is kept so that it won't flicker. -> If it's a file then background logo is displayed. -> If it's a folder whose contents will be automatically loaded, then menu display is kept ... it would be better to clear it but it's not possible to decide about that at that moment. - More fix of screen flickering during loading of game main executable. 2021/10/09 (Pseudo Saturn Kai, v6.471) : - Improved SH-2 RAM usage to backup VDP1 RAM in order to fix compatibility of Croc and Slam'n Jam games. Previous build : 256 KB required. Now : 120~160 KB required. - Experimental fix of automatic game selection for Fenrir ODE. - Experimental fix of screen flickering during loading of game main executable. - In Save Data Manager, additional (WIP) fix of save comment display. 2021/10/04 (Pseudo Saturn Kai, v6.470) : - Maybe working and faster folder access in Fenrir disc image selection menu. (Update : Fenrir nested folders feature finally works at decent speed !) 2021/10/03 (Pseudo Saturn Kai, v6.469) : - Fixed freeze on startup when Fenrir ODE is used. (untested) - Experimental addition of automatic selection of disc image when it is alone in a folder. Note : may not work when cue+iso format is used ? - Removed Fenrir Loader Kai iso file from Fenrir disc image selection menu. - Another attempt of proper soft reset for Croc and Slam'n Jam games. 2021/10/02 (Pseudo Saturn Kai, v6.468) : - Refactoring around menu and text display : a bit cleaner and maybe faster. - Use BIOS functions in JHL loader when Fenrir ODE is used without cartridge. (Same way of doing as the case of Rhea/Phoebe ODEs) - Removed Fenrir SD card refresh feature, because no longer required. - Removed display of disc images count in Fenrir ODE, because it is the number of files and folders in current directory and also because retrieving total count may take a long time to complete. - Fixed display glitch when changing sort type in Rhea/Phoebe disc image selection menu. - Another try of improved soft reset which this time restores VDP1 RAM. - Faster loading when entering a folder in disc image selection for Fenrir. - Extra debug feature to dump VDP1 and VDP2 status to SD card on startup. (Implemented but currently disabled in order to focus on other features) - In Save Data Manager, fixed display of irregular characters in save comment. Happened with Bomberman and Metal Slug. This was already fixed in save data import and menu itself, but not in the save description under copy/etc menus. 2021/09/28 (Pseudo Saturn Kai, v6.467) : - Experimental addition of nested folders browse feature in Fenrir disc image selection menu. - From Dezaemon 2 SGM main menu, show credits screen when both L and R shoulder buttons are pushed. - In Dezaemon 2 SGM, fixed incorrect screenshots display after leaving credits page. This happened with screenshots -> credits -> screenshots sequence. - Don't automatically show Dezaemon 2 SGM on startup when CD-ROM is accessed via SD card. - Fixed save data dump file name on Fenrir when Saturn system clock is set between 1994 and 1999. Tip : if your Saturn is time-travelling to 90's, it's time to change its CRC2032 battery, reachable behind the small door on its rear side. Protip : If you want to keep your save data, please change the battery while Saturn is powered on. It's safe as long as it's replaced according to common sense, so please keep in mind that Saturn Ingress Protection Code is something like IP21. - Text scrolling in menus tuned to be a bit smoother. - Go to multiplayer screen in the case CD-ROM emulated by Fenrir is audio. - Before loading a game, restore VDP1 and VDP2 registers backed up on startup. Special thanks to Ced2911 for the reference source code ! 2021/09/22 (Pseudo Saturn Kai, v6.466) : - In save Data Manager, made Fenrir file read access compliant with latest API. - Source code refactoring around Fenrir disc image selection and file I/O. - Removed a trick to guess file size when Fenrir was returning it as zero. This was a workaround to make Fenrir firmware 2021/04/05 more or less working with save Data Manager, but as file API in this firmware is incompatible with latest one, support for it is dropped. - Use back BIOS functions in JHL loader when Rhea/Phoebe ODE is used. (Don't ask me why but under some conditions JHL loader doesn't seems to work correctly with these ODEs) - Fixed ability to read Dezaemon 2 SGM from iso file copied in SD card. -> Allow double call of file I/O (emulated CD-ROM -> SD card) even if global memory is used internally to handle both of them. -> Allow usage of emulated CD-ROM even if it was initially indicated to not be accessed, in the case of booting from cartridge ROM. 2021/09/19 (Pseudo Saturn Kai, v6.465) : - Use improved JHL loader (instead of loader functions provided by BIOS) when ODE is set up. -> No longer need to configure region on ODE side to play JHL loader-only games. Also, should work on all known Saturn hardware revisions. - Fixed VDP1 RAM usage when setting up starfield internals. Special thanks to fafling for the technical information ! - Removed debug information display in Fenrir information/configuration screen. - Another couple of cosmetic fixes in save data import screen. - Yet another fix to (un)detect properly Satiator. 2021/09/17 (Pseudo Saturn Kai, v6.464) : - Changed "Exit to Satiator" to do system reset instead of loading Satiator menu utility, because it doesn't works well in some conditions. - Extra fix to avoid initializing Satiator when cartridge isn't detected. - Cosmetic fix in save data import error screen. - Cosmetic fix in Save Data Manager main menu. 2021/09/16 (Pseudo Saturn Kai, v6.463) : - Additional fix to Satiator CD-ROM access workaround. -> Ignore region code in IP header when looking for application's iso file. - Improved JHL loader, which should support grey Japanese Saturn. The fix is not from me : special thanks to jhl (Prof. Abrasive) for investigating about it ! - Minor fix when failing to access CD-ROM from file browser. (It probably doesn't happens on real hardware ?) - Added "Exit to Satiator" option in Save Data Manager exit menu. - Added ability to read Dezaemon 2 SGM from iso file copied in Gamer's Cartridge root folder. 2021/09/15 (Pseudo Saturn Kai, v6.462) : - Yet another attempt to fix data access of CD-ROM emulated by Satiator. This one is completely different from the (failed) attempts so far. -> Instead of trying to access CD-ROM (warning, it bites), read data sectors from iso file by using Satiator file API. - Added minimal fix to support Fenrir latest firmware. -> Game loading should work, but nested folders and covers display don't. 2021/09/13 (Pseudo Saturn Kai, v6.461) : - Another attempt to fix data access of CD-ROM emulated by Satiator. 2021/09/13 (Pseudo Saturn Kai, v6.460) : - In Save Data Manager, show both BIOS Dump and Dezaemon2 SGM options in main menu when they are available. - Select by default previously selected device when browsing for a file. - More (untested) fix regarding data access of CD-ROM emulated by Satiator. 2021/09/12 (Pseudo Saturn Kai, v6.459) : - Fix regarding data access of CD-ROM emulated by Satiator. (untested) 2021/09/10 (Pseudo Saturn Kai, v6.458) : - Fixed game name of cheat codes for Sonic 3D Blast. - Fixed Satiator access when booting from a non-root directory. - Added support for Gamer's Cartridge in Save Data Manager's BIOS dump feature. 2021/08/30 (Pseudo Saturn Kai, v6.455) : - Satiator library change #1 : allow to be executed from cartridge ROM. (This will be necessary when implementing vmem for Satiator) - Satiator library change #2 : allow to read length not a multiple of four bytes without corrupting the outside of read buffer. - Satiator library change #3 : reduce executable size by around 3KB (This is important when being installed on a 256KB cartridge ROM) - Added specification of current time stamp before modifying file on Satiator. 2021/08/29 (Pseudo Saturn Kai, v6.454) : - Unsuccessful attempt to access CD-ROM when Satiator is used. - In Save Data Manager, added ability to dump BIOS to Satiator. - Added (but not tested) cheat codes for Japanese version of Sonic 3D Blast. 2021/08/15 (Pseudo Saturn Kai, v6.451) : - Fix access to Satiator when using pointer not aligned on 4 bytes boundary. - More fix regarding creation parameters during Satiator file append. 2021/07/08 (Pseudo Saturn Kai, v6.450) : - Cosmetic fix in dump report file when using Satiator device. - Small fix regarding file append function in satcom library. 2021/07/05 (Pseudo Saturn Kai, v6.450) : - Another experimental build for Satiator support. -> Disabled Satiator diagnostic screen and test directly on main library. -> Simply try to enable Satiator API without trying to detect it beforehand. -> If this solution works, it may require user to indicate that Satiator is plugged. 2021/07/02 (Pseudo Saturn Kai, v6.449) : - Fixed default settings feature not working correctly in lite firmware. (It broke because of a quick refactoring done in previous beta build) - Cosmetic improvement regarding Fenrir version display. (Removed extra/hidden version display) - Display Satiator Diagnostic Menu in Save Data Manager. 2021/06/29 (Pseudo Saturn Kai, v6.448) : - Additional fix regarding Fenrir ODE support. -> Use normal CD-ROM authentication and game booting instead of Pseudo Saturn exploit and manual loading of first executable. As this prevents from using doing tweaks on first executable, this is done only when cheat codes are not enabled. - Improvement of Fenrir version display. -> It now displays firmware build date and hardware (20 or 21 pins) type. - Initial addition of Satiator Diagnostic Menu in Pseudo Saturn Kai full/lite. 2021/06/27 (Pseudo Saturn Kai, v6.446) : - Experimental fix when booting game with Fenrir ODE. -> Use normal CD-ROM authentication instead of Pseudo Saturn exploit. - Size optimization of text display routine. -> Saves around 1.5KB in lite firmware ROM. 2021/06/27 (Pseudo Saturn Kai, v6.445) : - Show Fenrir hardware version (20 or 21 pins) in ODE configuration screen. - Show Satiator debug information during Save Data Manager startup. 2021/06/26 (Pseudo Saturn Kai, v6.444) : - Experimental fix regarding Satiator automatic initialization. (Previous build is causing a black screen on startup) 2021/06/21 (Pseudo Saturn Kai, v6.443) : - Restored Fenrir access back to v6.437, because problem with 21 pins Fenrir could be fixed on firmware side. - Initial addition of Satiator access into Save Data Manager. (Tested on emulator only) - Major visual update in file browser module. -> Used for example in Save Data Import and Load Homebrew features. 2021/05/22 (Pseudo Saturn Kai, v6.441) : - Removed a bit more things during Fenrir initialization sequence. (It probably no longer can boot from cartridge now ...) 2021/05/19 (Pseudo Saturn Kai, v6.440) : - Removed unnecessary debug operations during Fenrir initialization sequence. 2021/05/17 (Pseudo Saturn Kai, v6.439) : - Show a bit more debug information on screen when initializing Fenrir. - Try of an alternate initialization method for Fenrir. 2021/05/16 (Pseudo Saturn Kai, v6.438) : - Cosmetic improvement in SDM regarding display after deleting a save. - Changed file name and extension to make result compatible with save data import feature when doing indirect dump of an individual save. - Added ability to erase cartridge ROM in SDM's flasher utility. - Show debug information on screen when initializing Fenrir. 2021/05/07 (Pseudo Saturn Kai, v6.437, RC4) : - Added ability to return to save selection menu after using "Save Save(s) from Cartridge ROM" feature. (All other export methods were OK in RC3, but I forgot about this one) - Minor corrections in Fenrir Loader Kai and RmenuKai readme files. 2021/05/04 (Pseudo Saturn Kai, v6.435, RC3) : - New saves added into Save Data Manager. Contains unbeatable racing ghosts. Special thanks to vbt for the contribution ! - Return back to save selection menu after exporting save(s). (Until now, it was directly returning to save export menu) -> Extended this behavior to copy/move/delete operations too. - When exporting saves, show progress according to size of data written so far. (Until now it was displayed according to number of file written so far, which wasn't realistic for example in the case several small saves were exported after a large one) - Fixed a couple of bugs regarding indirect data dump : -> Don't allow indirect dump when cartridge is not inserted. -> List saves on backup memory cartridge when doing indirect dump of an individual save. - Experimental fix regarding listing of saves on Memory Cartridge Plus ROM. - In Fenrir Loader Kai readme file, major update about Save Data Manager. 2021/05/01 (Pseudo Saturn Kai, v6.434, RC2) : - Minor display fixes in Save Data Export feature. -> "Save Data Export" was cleared after doing an operation and returning to to parent menu. It is now displayed when doing an operation. - Improved a bit more menu transition in Save Data Export feature. -> Indirect dump feature was returning to main menu. It is now returning to parent menu, as other export operations are behaving. - Fixed display of backup device status when values are larger than expected. -> Unexpected values were returned when Memory Cart Plus firmware is used. - Added a small tweak to show estimation of save data device information when Memory Cart Plus firmware is used. Note : it looks like Memory Cart Plus returns unrelevant device information so that this tweak was added. 2021/04/29 (Pseudo Saturn Kai, v6.433, RC1) : - Cosmetic changes in "export from cartridge boot ROM" feature. -> Operation flow and information display are now similar to regular "Select Save(s) to Export" feature. - Improved menu transition in save data export feature. -> After save data export is done or cancelled, parent menu is displayed instead of directly returning to Save Data Manager main menu. 2021/04/25 (Pseudo Saturn Kai, v6.432) : - In Save Data Manager, added individual save data selection and export from cartridge boot ROM, such as Action Replay or Memory Cart Plus. Note : it was already possible to export whole boot ROM, but as it takes a long time (around 30 minutes) when using Fenrir, this alternate export method is added. 2021/04/25 (Pseudo Saturn Kai, v6.431) : - Improved workaround for Fenrir firmware 20210405 to support save data import for saves in BUP format. Note : as this covers only BUP format and raw dump of Saturn internal backup memory, it is recommended to use more recent Fenrir firmware that shall support import from other kinds of save data file such as cartridge raw dump etc. - Added a batch of pre-recorded saves into Save Data Manager. Special thanks to sonicbot for the contribution !!! - Allow to import save only from selected file without scanning whole folder. This is helpful with Fenrir because it doesn't supports subfolders, and also because folder scan operation may be relatively long to terminate. - A bit more tuning about progress display when writing a file to Fenrir : - First 5% : file open - Middle 90% : file data write - Last 5% : file close - Fixed naming when doing raw export of backup cartridge or boot cartridge. - Allow listing of saves into backup memory cartridge raw dump report. Note : this is limited to cartridges small enough to fit into Saturn RAM. - In SaveRepack, fixed problem of deleted save returning into list after adding it with drag-and-drop. - In SaveRepack, added mention that space character is not allowed in warning message displayed when a folder can't be renamed. 2021/04/22 (Pseudo Saturn Kai, v6.430) : - Improved progress bar display when writing file to Fenrir. - Fixed problem of only first file being correctly written when exporting several save records to Fenrir. It was about file name simplification after writing a file to Fenrir and save data export using file path from previous iteration when exporting to individual save files. 2021/04/19 (Pseudo Saturn Kai, v6.429) : - Fixed file name simplification when generating save data export with Fenrir. (Update : it wasn't fixed) - In SaveRepack, fixed support for save data files larger than 256KB. Example : backup cartridge file from emulator, or dumped from real hardware. - Show fenrir folder raw contents on screen, in order to progress things around testing on real hardware. 2021/04/17 (Pseudo Saturn Kai, v6.428) : - Another experimental fix for problem of only first file being correctly written when exporting several save records to Fenrir. (Update : still buggy) -> When using Fenrir, report for save data export is now correctly written. (Yes, both Fenrir I/O module and report for save data export are working together. Unbelievable but it works, trust me I'm an engineer !) - A bit more source code and memory usage cleanup around Fenrir I/O module. 2021/04/16 (Pseudo Saturn Kai, v6.427) : - Experimental fix for problem of only first file being correctly written when exporting several save records to Fenrir. - Updated display of warning message before dumping BIOS to Fenrir. (Time expected to be 30 minutes-ish, but in fact it takes nearly the double) - Cosmetic improvements when displaying Fenrir write error details. - Prevent from listing BIOS dump file in save data import feature. - In SaveRepack, allow to convert files from BUP format to SSF format. 2021/04/15 (Pseudo Saturn Kai, v6.426) : - Several fixes regarding save data read access from Fenrir. Note #1 : it requires a firmware update on Fenrir side to support files whose size is not equal to 32KB. Note #2 : 4 or 5 beta build were made from previous changelog entry, but because of lack of time, details about them are omitted. - Simplify the naming of files when writing to Fenrir : Full dump : _{BRAM|CART|BOOT}_.BIN Individual saves : _.BUP Reason #1 : Fenrir doesn't supports write access to sub-folder. Reason #2 : Maximum file name length in Save Data Manager is limited. - Output Fenrir-simplified file name in save data export report. - Added support for Mednafen save data (BCR and BKR extension) in Save Data import feature. - Added extra feature to dump Saturn BIOS to Fenrir SD card. (untested) - Added (and then disabled) debug information display about Fenrir file access. - Minor source code cleanup around Fenrir file I/O module. 2021/04/11 (Pseudo Saturn Kai, v6.425) : - Fixed another bug around retrieval of size of file from Fenrir. (untested) - Prevent from saving saves in SSF format when writing via Fenrir. Reason : saving in SSF format doubles write time, for a limited interest because it's equivalent to default (BUP) format. 2021/04/10 (Pseudo Saturn Kai, v6.424) : - Fixed Fenrir save data import and export freeze bug. (untested) - Added CD-ROM file system access library into SaveRepack. -> Dependency with 7-zip no longer required. 2021/04/08 (Pseudo Saturn Kai, v6.423) : - Fixed bug happening when running SaveRepack from path containing spaces. - On startup, show an error message when external modules necessary for SaveRepack to work are not found. - Restrict save data name to 26 characters in SaveRepack. - Experimental fixes regarding save data import from Fenrir SD card. Note : file browsing is restricted to SD card root directory because of a limitation on Fenrir firmware side. 2021/04/04 (Pseudo Saturn Kai, v6.422) : - Prevent from using space character in SaveRepack output folder. - Minor cosmetic changes in SaveRepack. - Added "Return to menu" item in Fenrir configuration menu. - When Fenrir ODE is used, split the display settings for disc image selection menu and ODE configuration in two different menus. 2021/04/03 (Pseudo Saturn Kai, v6.421) : - Updated Fenrir file I/O module according to latest official sources. - Added a debug feature to enable Save Data Manager for Fenrir. - Fixed several bugs in SaveRepack utility : -> Added some file extension to filter listing of files when adding a save. -> Fixed incorrect deletion happening when multiple saves were selected in ascending order. -> Added a button to rename output folder for all saves. -> Show a warning message when trying to output save(s) in a folder incorrectly named. - Cosmetic change in ODE display settings menu. 2021/03/31 (Pseudo Saturn Kai, v6.420) : - Reverted back Fenrir ODE initialization sequence to the same as in v6.408. Reason : sequence in previous beta build was making disc images list not being retrieved after an in-game reset. Note : this revert may cause troubles with some SD card setup (probably when using ExFat file system and/or when using a slow SD card ?) which can be solved by either changing SD card and and using FAT32 file system or by uninstalling Fenrir Loader Kai. - Disable save data import feature for Fenrir. (Shall enable back when Fenrir file I/O will be reliable) - Fixed garbage characters sometimes displayed after date information in Rhea/Phoebe disc image selection menu. - Prevent from reading directories when listing saves to import. - New user save data ready to import from Save Data Manager : special thanks to ReyVGM, slinga and all concerned gamers ! - Major improvements in SaveRepack utility. -> Can now delete several saves in a single action. -> Can now resize the window. -> Can now use right click menu to modify saves data list. -> Can now use drag and drop to add save data. -> Can now specify the folder where to copy save data to repack. - Added extra feature to force SD card access to read-only. - Added settings enable/disable display of game information in disc image selection menu -> when disabled, menu is a bit taller. 2021/03/15 (Pseudo Saturn Kai, v6.411a, aka "RC3") : - Reverted back Fenrir ODE initialization sequence to the same as in v6.408. Reason : sequence in previous beta build was making disc images list not being retrieved after an in-game reset. Note : this revert may cause troubles with some SD card setup (probably when using ExFat file system and/or when using a slow SD card ?) which can be solved by either changing SD card and and using FAT32 file system or by uninstalling Fenrir Loader Kai. - Use latest cheat codes list. Because I wrongly merged them from a slightly older version when preparing RC1. Special thanks to privateye for promptly noticing that :) - Display `a' after version number, to indicate that this version is forked from v6.408. These recent fixes plus some other features will be available after returning back to main codebase. 2021/03/14 (Pseudo Saturn Kai, v6.410, aka "RC2") : - Improved (but not tested) startup and SD card refresh for Fenrir ODE. -> Firmware 20210207 is required to work correctly. 2021/03/14 (Pseudo Saturn Kai, v6.409, aka "RC1") : - Disabled Fenrir SD card refresh feature. (For unknown reasons, it is not working with firmware 20210207) - Fixed garbage characters sometimes displayed after date information in Rhea/Phoebe disc image selection menu. 2021/03/09 (Pseudo Saturn Kai, v6.418) : - A bit more experimentents to get in-game reset working back with Fenrir ODE. 2021/03/07 (Pseudo Saturn Kai, v6.417) : - Experimental fix to get in-game reset working back with Fenrir ODE. - Initial addition of saves repack utility. 2021/02/23 (Pseudo Saturn Kai, v6.415) : - Revert back Fenrir CD Block initialization sequence to work correctly with latest (2021/02/07) firmware. - Modified Fenrir file access module to support firmware that shall be released after 2021/02/07. 2021/02/08 (Pseudo Saturn Kai, v6.414) : - Added test bench regarding backup memory cartridge access. - Modified Fenrir file access module to support latest (2021/02/07) firmware. 2021/01/23 (Pseudo Saturn Kai, v6.413) : - Another experimental test for Fenrir SD card write access. 2021/01/18 (Pseudo Saturn Kai, v6.412) : - Added debug feature to test Fenrir SD card write access. 2020/12/23 (Pseudo Saturn Kai, v6.411) : - Added Fenrir SD card read access from Save Data Manager. (untested) - Show error screen error happened during write to Fenrir SD card. - Allow to dump only relevant data (bytes at odd address) when dumping internal backup memory or from a cartridge. 2020/11/27 (Pseudo Saturn Kai, v6.409) : - Fix regarding save data dump to Fenrir. (untested) 2020/11/15 (Pseudo Saturn Kai, v6.408) : - Minor improvement in cheat codes list. 2020/11/13 (Pseudo Saturn Kai, v6.408) : - Removed some cheat codes working not correctly. 2020/11/11 (Pseudo Saturn Kai, v6.407) : - Disabled Fenrir Save Data Manager. - Improved "Enable Cheats" and hotkey handling in Pseudo Saturn Kai main menu. 2020/11/08 (Pseudo Saturn Kai, v6.406) : - Removed cheat codes not working (because making Saturn crash, or requiring JHL loader etc) from full cheat codes list. 2020/11/08 (Pseudo Saturn Kai, v6.405) : - Disabled cheat codes not working correctly on some games. - Fixed disc image selection menu going to game loading step when Y button (change sort type) is pressed and "enable cheats" mode is set beforehand. (As usual, such kind of intricate bug is fixed with one extra line of code) - One more fix for Swagman save data file support. - More changes and updates in several readme files. - Added disclaimer screen before loading Save Data Manager for Fenrir. - Added extra color themes. (Thank you JayBee !) 2020/11/?? (Pseudo Saturn Kai, v6.404) : - Error : beta build not found :) 2020/11/05 (Pseudo Saturn Kai, v6.403) : - Extended Fenrir-compliant reset to lite version of the firmware. - Show Fenrir diagnostic menu after a system reset when debug mode is enabled. -> Also, added extra test items in Fenrir diagnostic menu. - Reduced a bit the time spent when doing a Fenrir-compliant reset. - Added a option to retry loading of Fenrir Save Data Manager when it failed. - Fixed Fenrir-compliant reset not working on Save Data Manager. - Fixed save data import for Swagman, which uses a dot in its save name. - Minor cosmetic change in Save Data Manager main menu. 2020/11/04 (Pseudo Saturn Kai, v6.402) : - Fixed dumb bug regarding save data dump to Fenrir SD card. 2020/11/04 (Pseudo Saturn Kai, v6.401) : - Added a cute hack to prevent from enabling Fenrir Save Data Manager when trying to load Save Data Manager for full firmware. - Experimental fix regarding Fenrir-compliant reset. - Properly setup Fenrir before loading official loader or Save Data Manager. 2020/11/03 (Pseudo Saturn Kai, v6.400) : - Several fixes regarding Fenrir diagnostic menu. - No longer display Fenrir diagnostic before showing image selection menu. - Extended Fenrir-compliant reset to Save Data Manager. 2020/11/03 (Pseudo Saturn Kai, v6.399) : - Disabled loading of minipseudo from full firmware extra menu. (Reason : it is just a recovery utility, not a full featured loader) - Slight update of this readme ... but still need to terminate here and there. - Initial version of Save Data Manager for Fenrir. (Can only dump saves) - Properly setup Fenrir before doing a system reset. - Show Fenrir diagnostic menu before loading official loader or SDM. 2020/11/01 (Pseudo Saturn Kai, v6.398) : - Added storage of cheat codes capacity in internal backup memory. - Fixed a dumb bug around Fenrir official loader executable file reading. - Show Fenrir diagnostic menu before doing a system reset. 2020/10/31 (Pseudo Saturn Kai, v6.397) : - Experimental fix regarding system reset support when using Fenrir. - Experimental fix regarding reading of Fenrir official loader executable. 2020/10/31 (Pseudo Saturn Kai, v6.396) : - Fixed full executable crashing when trying to use lite version of the ROM. (This bug was happening with lite firmware and fenrir.kai.iso used together, plus some other esotheric conditions regarding cheat codes usage) 2020/10/30 (Pseudo Saturn Kai, v6.395) : - Added error message display and debug data dump before starting Fenrir official loader. - Cosmetic change in loader selection menu. 2020/10/29 (Pseudo Saturn Kai, v6.394) : - Prevent from listing Fenrir external loader (fenrir.kai.iso) in disc image selection menu. 2020/10/27 (Pseudo Saturn Kai, v6.393) : - Changed in depth and fixed "Start Loader Utility" for Fenrir. -> Should now work when booting from cartridge and when using external loader. 2020/10/26 (Pseudo Saturn Kai, v6.392) : - Adapted Fenrir access to next official firmware. - Added back standalone Fenrir Loader Kai. 2020/10/24 (Pseudo Saturn Kai, v6.391) : - Added "balanced" display option for disc image selection menu. - Removed cheats for several games not allowing to execute cheat codes. - Removed Fenrir Diagnostic menu = saves around 3KB of cartridge ROM. 2020/10/24 (Pseudo Saturn Kai, v6.390) : - Another experimental hack to make Fenrir returning back to disc image selection menu after hard reset. 2020/10/22 (Pseudo Saturn Kai, v6.389) : - Experimental support Fenrir list reload after hard reset. - Added blue color theme in disc image selection menu. 2020/10/21 (Pseudo Saturn Kai, v6.388) : - Added a menu to tune colors used in menus. - Restored Fenrir access to latest official firmware = 2020/09/28. 2020/10/13 (Pseudo Saturn Kai, v6.386) : - Temporarily disable logo and starfield in order to investigate about the display glitch mentioned in last build. 2020/10/09 (Pseudo Saturn Kai, v6.385) : - More internal changes regarding Fenrir access. - Temporary change for investigation regarding a display glitch in ODE menu. - Faster disc images sort when using Fenrir ODE. 2020/10/08 (Pseudo Saturn Kai, v6.384) : - Internal changes (WIP) regarding Fenrir access. (This is no longer compatible with previous Fenrir firmwares) 2020/10/05 (Pseudo Saturn Kai, v6.383) : - Another experimental fix regarding IGR support for Fenrir. 2020/10/04 (Pseudo Saturn Kai, v6.382) : - Experimental fix regarding IGR support for Fenrir. 2020/10/03 (Pseudo Saturn Kai, v6.381) : - Small update of autoset list. - Added (another) dump feature in Save Data Manager's extra menu. - Display image selection menu as tall as possible when ODE doesn't provides extended disc image information such as IP header etc. - Correction of Fenrir SD card not found error screen. - Verify if Fenrir firmware is recent enough before loading disc images list. - Show extended ODE version information when a mysterious key combo is entered from ODE settings menu. - Fixed Save Data Manager support regarding reset patch. 2020/09/27 (Pseudo Saturn Kai, v6.380) : - Added several tests regarding SD card status during Fenrir initialization. - Experimental reset patch for Fenrir. - Experimental fix regarding RmenuKai for a bug happening in previous beta. - Disable virtual FDD when information from autoset indicates that the game about to boot is not compatible with Saturn FDD. (This trick can't be used with real FDD, sorry) 2020/09/24 (Pseudo Saturn Kai, v6.379) : - Internal changes to support latest Fenrir firmware. - More dump features in Fenrir Diagnostic Menu. - Allow to select soft reset type (multiplayer or sysres) when Fenrir is used. 2020/09/20 (Pseudo Saturn Kai, v6.377) : - Added floppy disk related informations in autoset list. - Fixed Fenrir region not being kept in menu after a change of other settings. 2020/09/13 (Pseudo Saturn Kai, v6.375) : - Extended automatic reset settings when an ODE is used. - Added an option to start Fenrir Loader Utility. 2020/09/11 (Pseudo Saturn Kai, v6.374) : - Fix in autoset list. - Automatically decide reset type when RmenuKai or FenrirLoaderKai is used. -> RmenuKai : system reset -> FenrirLoaderKai : go to multiplayer - Critical fix regarding cheat codes support in lite firmware. 2020/09/03 (Pseudo Saturn Kai, v6.373) : - Third (and hopefully, the final one ?) fix regarding in-game reset and cheat codes support in lite firmware. 2020/09/02 (Pseudo Saturn Kai, v6.372) : - Extra changes in autoset list. - Fixed soft reset patch for lite firmware. - Use proportional font in lite firmware's main menu. 2020/08/30 (Pseudo Saturn Kai, v6.371) : - Fixed reset patch for RmenuKai. - Extra changes to autoset list. - Cosmetic fix in menu when proportional font is used. - Disable Fenrir Diagnostic menu using RmenuKai. 2020/08/29 (Pseudo Saturn Kai, v6.370) : - Added back logo in lite firmware. (It will be removed one more time when adding Save Data Storage feature) - Many changes in autoset list. -> Some games set as being compatible with CWX loader as set back as "JHL loader only" because they were reported as not booting correctly on some hardware configurations. - Added compatibility with Fenrir legacy firmware (It will be removed when access to IP headers will finally work) 2020/08/25 (Pseudo Saturn Kai, v6.369) : - Save logs from interactive fenrir debug menu to unique files. - Minor cosmetic fix in interactive fenrir debug menu. 2020/08/22 (Pseudo Saturn Kai, v6.367) : - Added interactive debug menu for Fenrir. 2020/08/17 (Pseudo Saturn Kai, v6.366) : - Added extra debug screen and file dump for Fenrir. 2020/08/12 (Pseudo Saturn Kai, v6.363) : - Extra (final ?) fix regarding Fenrir SD card detection. - Fixed pad status polling during debug console display. 2020/08/11 (Pseudo Saturn Kai, v6.362) : - Display error message when SD card is not inserted or detected in Fenrir ODE. - Removed/disabled debug messages for Fenrir SD card detection. 2020/08/09 (Pseudo Saturn Kai, v6.361) : - More log messages to investigate why Fenrir without SD card is freezing. 2020/08/04 (Pseudo Saturn Kai, v6.359) : - More fixes when no SD card is inserted in ODE. (still untested) - Disabled experimental VCD playback feature. (Sorry, I'm lacking of ideas to get it working) - Fixed backup date display in Save Data Manager. 2020/08/01 (Pseudo Saturn Kai, v6.357) : - Fixed error handling when no SD card is inserted in ODE. (untested) 2020/07/31 (Pseudo Saturn Kai, v6.356) : - Added BUP library date conversion routines test bench in Save Data Manager. - Fixed save Virtual Memory Cartridge's data time manipulation functions. -> Save data time stamp and display should be correct now. -> Also, catched the occasion to fix a wrong date (December 32nd) returned by original BIOS functions : regarding time, Gamer's Cartridge is more accurate than other memory cartridges ! - Removed disc image ID display and sort method when Fenrir ODE is used. -> Unlike Rhea/Phoebe ODEs, disc image folder naming for Fenrir is free, hence displaying folder ID doesn't makes sense in that case. - Instead of disc image ID, display CD-ROM product number when Fenrir is used. 2020/07/25 (Pseudo Saturn Kai, v6.355) : - Fixed Fenrir support when Pseudo Saturn Kai is booting from cartridge. - Added error screen when Fenrir ODE could not be detected. - Fixed name prettify when Fenrir is used. -> Folder name is now kept as-is. -> Game title extracted from IP header is now prettified. - Some changes regarding support of more than 300 disc images with Fenrir ODE. - Removed debug text display regarding MPEG card support. - Removed Fenrir configuration buffer dump feature added in previous beta. Instead, it is now dumping IP headers list in preparation of future problems. 2020/07/21 (Pseudo Saturn Kai, v6.354) : - Added back USB dev cart DMA transfer code (aka "The Blinking Screen") to lite firmware. -> Users of USB dev cart with SST39SF010A flash ROM chip still won't be able to do connectivity from Pseudo Saturn Kai startup menu, but at least it will be available from this USB DMA feature. - Fixed flickering of title in some menu. - Added ability to display menu title with proportional font. - Experimental change of few menus display type from monospace to proportional. - Some (untested) fixes around VCD playback. (full firmware only) - Fix of ODE disc image selection menu when type is set to monospace. - Removed Pseudo Saturn Kai "demo" related code. - Added dump of MPEG application to Gamer's Cartridge's SD card. - Added dump of Fenrir configuration buffer to Gamer's Cartridge's SD card. 2020/07/15 (Pseudo Saturn Kai, v6.352) : - Added experimental support for VCD playback. (Should work even if the Saturn if not from the same region of the VCD card) - Added support for "old" Fenrir API before IP header support. (untested) - Added Fenrir region configuration and firmware version display. (untested) - Hide application title when showing disc image selection menu, so that menu height can be extended by two lines. - In main menu, indicate keys mapping regarding manual loader setting. - In lite firmware's disc image selection menu, mapped Z key to manual selection of JHL loader. -> Because loader selection menu is not available in lite firmware, manual selection of CWX loader is not possible. However, as this is not a common operation, it shouldn't cause problem. - Fixed "Cheat Codes Unavailable" menu in lite firmware, which was booting the game without consideration of user input in that menu. - Added Bubble Bobble also featuring Rainbow Islands in autoset list. 2020/07/05 (Pseudo Saturn Kai, v6.349) : - Fenrir support, initial version. -> Read folder names and each IP headers -> Show image selection menu and allow sort or filtering as in RmenuKai -> Allow to select name type in disc image selection menu : 1. Folder name 2. Game title, taken from IP header 3. Folder name + game title - Allow manual selection of loader from main menu, with Y and Z buttons. - Added "Enable Cheats" option from main menu. - Added back (minimalistic) comms link transfer support in lite firmware. Note : EMS/Datel type is automatically detected ... but untested. - Added a way to add (unofficial) USB dev cart support in lite firmware. Note : it requires a custom build of Pseudo Saturn Kai to be enabled. - Small size optimization in RmenuKai and Fenrir Loader Kai boot loader. (Compression routine was embedded whereas it was unnecessary) 2020/06/12 (Pseudo Saturn Kai, v6.345) : - In lite firmware, added automatic boot support when using Rhea/Phoebe ODE. - In lite firmware, fixed soft reset patch. - In lite firmware, removed loader selection option from image selection menu. - In lite firmware, added back "Load Rmenu" option in image selection menu. - In lite firmware, fixed (but didn't tested) JHL loader. 2020/06/09 (Pseudo Saturn Kai, v6.344) : - Fork between full and lite version. (Initial version, so some details are still remaining) -> Removed Action Replay link = only USB dev cart supported on full firmware -> Removed link type selection menu -> Use different cheat codes list for full and lite version -> In full firmware, moved cheat codes ROM code so that room for main executable is a bit larger. -> Because of memory limitations, flasher utility now supports only one type of Pseudo Saturn Kai. (= flasher utility is forked too) -> Minor (display related) fixes in flasher utility. -> Extended count of custom cheat codes to 16 in lite version. - Added an "Enable Cheats" item in Pseudo Saturn Kai lite's main menu. -> Now, you can't say that you didn't know about cheat codes feature ! 2020/05/16 (Pseudo Saturn Kai, v6.334) : - In Save Data Manager, improved menu transition for Save Data Import feature. - Addition and fixes of cheat codes for several games. - Prevent from showing status when doing autodump of PSEUDO_XTRA save. - Addition of Spot Goes To Hollywood to autoset list. - Minor cosmetic fix around cheat codes custom input menu. - Initial version of minimalistic Pseudo Saturn Kai. -> Allows basic loading of CD-ROM when main ROM is corrupted. NOTE: For technical reasons, limited to full version of Pseudo Saturn Kai. - During cartridge flash operation, write minimalistic Pseudo Saturn Kai just after first stage bootloader so that power off during flash operation reduces the risk of bricking the cartridge. - Added previous stable release of Pseudo Saturn Kai (v6.324) into Save Data Manager's flasher utility. - Experimental addition of soft reset patch support for RmenuKai. (Spoiler : it doesn't works) 2020/04/21 (Pseudo Saturn Kai, v6.329) : - Added "Cheat Codes Unavailable" menu when trying to enable cheat codes with JHL loader, because this loader doesn't supports cheat codes. Note #1 : This menu isn't displayed when using Rhea/Phoebe ODE because it's not possible to return to disc image selection menu after selecting a game. Instead, game is loaded without any cheat code enabled. Note #2 : This feature was added a long ago but I forgot to list it in this changelog. Better late than never. - Cosmetic improvements in custom codes setup menus. - Improved (in an user-friendly way ?) transition between custom codes menus. - Extended custom codes usage to all supported hardware setup. - Added a way to run a game with custom codes without having to save them. - Added ability to save custom codes when cancelling their edition. - Fixed custom loader registration when using JHL loader and Rhea/Phoebe ODE. - Added cheat codes for Mega Man 8. 2020/03/19 (Pseudo Saturn Kai, v6.326) : - Initial addition of custom loader feature. - Added ability to store custom cheat codes list in internal backup memory. - Fixed automatic loader settings for Herc's Adventures. 2020/02/16 (Pseudo Saturn Kai, v6.325) : - Extended (unfinished) custom cheat codes usage to Rhea/Phoebe ODEs. - Some experimental changes on cheat codes for Die Hard Arcade and Shinobi-X. 2019/12/21 (Pseudo Saturn Kai, v6.324) : - Removed cheat codes for Tomb Raider until a working master code is set up. 2019/12/17 (Pseudo Saturn Kai, v6.323) : - Extra changes in Command & Conquer cheat codes list. 2019/12/10 (Pseudo Saturn Kai, v6.322) : - Additional fixes forgotten in previous version. 2019/12/09 (Pseudo Saturn Kai, v6.320) : - More fixes in cheat codes and autoset list. 2019/12/02 (Pseudo Saturn Kai, v6.319) : - Fixed typo in firmware selection menu. - Many improvements in cheat codes list. (Special thanks to privateye !) - Removed self test feature, which saves 5KB on ROM side to add new cheat codes in the future. 2019/10/27 (Pseudo Saturn Kai, v6.317) : - Fixed automatic loader settings for Mizubaku Daibouken. - In Save Data Manager, discard folder from scan when importing "single type" (such as SSF, PlanetWeb, etc) backup data. - Experimental fix around current time acquisition. (It is for example used to generate folder name when dumping save data to SD card) - Minor fixes in flasher's old firmwares list. - Fixed cheat codes module version display in custom codes loader menu. - More fixes and improvements in autoset list. 2019/09/23 (Pseudo Saturn Kai, v6.315) : - Fixed automatic loader settings for Pebble Beach Golf Links. 2019/05/30 (Pseudo Saturn Kai, v6.314 -- RC1) : - Extra fixes and improvements in autoset and cheat codes list. 2019/05/26 (Pseudo Saturn Kai, v6.313) : - Improved more autoset list regarding games not requiring JHL loader. 2019/05/24 (Pseudo Saturn Kai, v6.312) : - Removed no longer used code in SMPC interfacing module. 2019/05/16 (Pseudo Saturn Kai, v6.309) : - Another experimental fix regarding glitchy display when scrolling menus. 2019/05/07 (Pseudo Saturn Kai, v6.306) : - Fixed pad acquisition stop after CD-ROM related error happens. - Experimental fix regarding glitchy display when scrolling menus. 2019/05/07 (Pseudo Saturn Kai, v6.305) : - Fixed file browser exit shortcut (Z button) during empty folder listing. - Improved autoset list regarding a couple of games not requiring JHL loader. 2019/05/03 (Pseudo Saturn Kai, v6.304) : - Moved SMPC test screen to Save Data Manager's extra menu. 2019/05/01 (Pseudo Saturn Kai, v6.303) : - Additional change around SMPC handling regarding wireless pad support. (Special thanks to vbt for providing technical help !) - Added easter egg ?! Still not finished however. 2019/04/26 (Pseudo Saturn Kai, v6.301) : - Removed attempt to properly retrieve pad initial status when using interrupt-based acquistion mode. - Removed key shortcuts during Pseudo Saturn Kai and Save Data Manager startup. (Theses were about enabling debug features, hence shouldn't be a great loss) 2019/04/25 (Pseudo Saturn Kai, v6.300) : - Candidate fix for wireless pad support : use interrupt instead of INTBACK polling to retrieve pad status -> reported not working correctly. - Disabled SMPC test screen. 2019/04/23 (Pseudo Saturn Kai, v6.299) : - Minor improvement regarding processing of peripheral data from SMPC. - Extra fixes in cheat codes list. - (SMPC test screen is still enabled in this version) 2019/04/22 (Pseudo Saturn Kai, v6.298) : - Added key shortcuts to enable/disable SMPC test screen : -> L+R+Up : enable test menu -> L+R+Down : disable test menu 2019/04/21 (Pseudo Saturn Kai, v6.297) : - Added test menu for verifying SMPC and Pseudo Saturn internals when using wireless pad. This test menu is displayed on startup and without any way to exit so as a consequence it's not possible to use Pseudo Saturn Kai itself. 2019/04/18 (Pseudo Saturn Kai, v6.296) : - Completed (nearly) all associations between games and cheat codes lists. Special thanks to privateye for this huge contribution ! - Improved autoset list a bit more regarding vmem and Saturn FDD support. - When using Rhea/Phoebe ODE, restrict cancel of cheat codes game selection menu to continue booting game anyway. This is due to a lack of clean CD Block reset on Pseudo Saturn Kai, making impossible to return to images selection menu at that time. When using optical disc drive, cancelling cheat codes game selection still returns back to loader selection menu, thus allowing inserting another disc. 2019/04/12 (Pseudo Saturn Kai, v6.292) : - Removed interrupt masking (added in previous beta version) virtual memory cartridge because it causes more harm than improving game comatibility. - Improved autoset list and fixed cheat codes list. (Thank you privateye !) 2019/03/06 (Pseudo Saturn Kai, v6.289) : - Improved stack memory usage by virtual memory cartridge. - In Save Data Manager, added a debug feature to verify stack memory usage by backup library. - Improved performances regarding log messages formatting. - Minor fixes regarding "save logs to SD card" feature. 2019/01/18 (Pseudo Saturn Kai, v6.280) : - Moved CD Block reset timing from software reset patch to Rhea/Phoebe ODE initialization sequence. - Force patching of software reset to system reset when Rhea/Phoebe is specified as optical disc type. (This is currently the only way for Pseudo Saturn Kai to get ODE's `reset_goto' feature to work) - Prevent from modifying some fields when some conditions are met : - optical disc : fixed to a given value in ROM-less mode. - software reset : fixed to a given value in when using Rhea/Phoebe ODEs. 2019/01/16 (Pseudo Saturn Kai, v6.279) : - Changed JHL loader to use CD-ROM load functions provided by BIOS when Rhea or Phoebe is specified as optical drive. 2019/01/16 (Pseudo Saturn Kai, v6.278) : - Fixed JHL loader support for RmenuKai. - Disable soft reset patch when using RmenuKai. - Improved RmenuKai/Pseudo Saturn Kai detection. (so far it was incorrectly enabling Pseudo Saturn Kai when an old version of the firmware was installed on cartridge) - In software reset patch, added CD Block reset (via SMPC) during software reset patch. (untested) 2019/01/11 (Pseudo Saturn Kai, v6.277) : - RmenuKai initial version. - In flasher utility, added version number display for latest lite and full Pseudo Saturn firmwares. - In Save Data Manager, fixed application title display after exiting from flasher menu. - Fixed CD Block initialization sequence for Rhea/Phoebe to show error message when SD card is not inserted into ODE. 2018/12/28 (Pseudo Saturn Kai, v6.274) : - Directly show DZ2SGM on startup when loaded from CD-ROM. - In DZ2SGM, added shortcut to credits page with L/R shoulder buttons from entries selection menu. 2018/12/27 (Pseudo Saturn Kai, v6.274) : - Removed cartridge expansion RAM initialization and testing. 2018/12/23 (Pseudo Saturn Kai, v6.272) : - Finished credits page for Pseudo Saturn Kai, Save Data Manager and DZ2SGM. - Added simple support for 3D pad analog arrow : so far 3D pad was supported, but only status of digital arrow was considered. Note : debug menus directly embedded in ROM for Virtual Memory Cartridge and cheat codes (example : BSOD screen, etc) are kept as-is so only digital arrow is supported there. Same limitation applies to standalone firmware flasher too. - Added retry access to CD-ROM (up to 5 times) when current access failed. 2018/12/06 (Pseudo Saturn Kai, v6.262) : - In ODE settings menu, fixed update condition regarding settings not requiring to reload disc image list. - In Save Data Manager, added the ability to return to main menu from flasher. - In flasher utilities, added warning message when trying to flash firmware other than Pseudo Saturn Kai full version on SST39SF040 chips used on USB dev cart or Gamer's Cartridge. 2018/12/03 (Pseudo Saturn Kai, v6.261) : - Fixed Japanese character display in menus. This was a regression from v6.257, caused by addition of font cache in menu. - Fixed display of strings larger than display area during "condensed" menu. 2018/11/28 (Pseudo Saturn Kai, v6.260) : - In ODE image selection menu, added images list ascending/descending settings. - In ODE image selection menu, added text justify (left or center) settings. - In ODE image selection menu, added setting for changing color theme. - In ODE settings menu, added option to enable compatibility reporter. 2018/11/26 (Pseudo Saturn Kai, v6.257) : - Added cache support for font used in menu items. Tested on real HW, and it seems to improve a little display performances when "condensed" menu is used. - In Dezaemon 2 SGM3, changed entry selection menu to "condensed" type. - In Dezaemon 2 SGM3, changed initial zoom factor in screenshots gallery from "all" to "1:1". 2018/10/02 (Pseudo Saturn Kai, v6.252) : - Added "condensed" (no border, and using proportional font) menu type. It is currently used in ODE image selection menu as well as in game and cheat code selection menus. - In ODE image settings menu, added a setting to toggle between "monospace" and "proportional" image selection menu type. - In ODE image selection menu, fixed sorting of multi-CD (with same release date) when sorting by release date or folder ID. - In ODE image selection menu, added update of setting to internal backup memory when toggling sort settings with Y button. 2018/08/04 (Pseudo Saturn Kai, v6.247) : - Cosmetic (minor) improvement in in Save Data Manager. - When using compatibility report, don't show cheat codes enable/disable menu when JHL loader (not compatible with vmem and cheat codes) is used. - Improved keys assignment in Pseudo Saturn Kai settings menu. 2018/07/27 (Pseudo Saturn Kai, v6.246) : - Experimental change regarding SD card access. 2018/07/24 (Pseudo Saturn Kai, v6.245) : - Added "autoboot" setting, allowing to enable or disable timeout in loader selection menu. - Cosmetic improvements in settings menu : show settings contents directly into menu, and don't clear display while updating settings, etc. - Rhea/Phoebe related : prevent from loading list after selecting an image. Before fix, this was freezing or crashing Pseudo Saturn Kai because of trying to read a file no longer available. - Rhea/Phoebe related : fixed saving of selected image. So far it was done only when using Virtual Memory Cartridge or compatibility reporter. It is now updated each time image selection menu is exited - In ODE image selection menu, fixed incorrect timing of keypress callback : so far it was called before updating selection, which caused incorrect (not up to date) cheat codes informations display. This was a regression from 20180629, caused by the fix related to intial key holding, and was concerning cheat codes selection menu too. - In ODE image selection menu, finished boot timeout feature : so far, remaining seconds until timeout and image information were mixed up at the bottom of the screen. - Improved SD card compatibility. 2018/07/12 (Pseudo Saturn Kai, v6.239) : - Fixed background image incorrect fading. It was sometimes happening when entering settings or credits from main menu. - Added background image fade transition between several menus. - Fixed incorrect text scroll in menus. This was happening credits or ODE image selection menus, when item length was equal to display width. - Added shortcut (Z button) for manual loader selection from ODE image selection menu. - Moved Rmenu entry from image selection menu to settings menu. It can be reached with L/R shoulder buttons from image selection menu. - Changed loader selection menu from "automatic only" to "CWX/auto/JHL" even when Saturn is indicated as modded in Pseudo Saturn Kai settings. - Added ODE menu configuration page, available with L/R shoulder buttons from image selection menu. - In ODE image selection menu, added several disc image sort types : alphabetical, by release date, by folder ID. - In ODE image selection menu, added name prettify enable/disable setting. - Slight speed improvement when alphabetically sorting ODE disc images. - Append disc image extra information (CD-ROM ID, region, date, version) to title when necessary. This is appended when two images got same title. - In ODE image selection menu, automatically select previously loaded image. It keeps the same image after changing image sort settings, or rmenu iso rebuild, but is reset when title is changed in LIST.INI, or when image with same title is added. - Removed Pseudo Saturn Kai demo. (is there still somebody using it ?) - Updated auto settings list. 2018/07/04 (Pseudo Saturn Kai, v6.231) : - Reworked credits display in Save Data Manager, as recently done in v6.224. - In ODE image selection menu, added status display when loading images list and when selecting an image. - Hide starfield display when it can't be animated. Concerns the following features : self test, CD-ROM loading, ODE initialization and configuration. - Added back "The Blinking Screen" ROM code for USB dev cart. It can be loaded with Z key on startup (won't do anything if USB port is not detected), or with "USB DMA Transfer" item from main menu. - Changed A+B+C+Start key shortcut from "exit to multiplayer" to "system reset" when CD lid is open during CD-ROM boot sequence. Reason : BIOS shows a black screen until lid is closed on my Japanese Grey Saturn when returning to multiplayer screen at that time. - In ODE image selection menu, changed sorting order in image selection menu. Before : ASCII order. Now : numbers, then letters, then special characters. - In ODE image selection menu, changed text justify from center to left in image selection menu. Also, temporarily disabled text prettify too. - Added settings save on Saturn internal backup memory. It currently saves optical disk type and link settings. - Added access to settings screen in lite version of the firmware. Purpose : allow Action Replay cartridge users to setup optical disc type. - Fixed RomFs consideration in Self Test feature : so far it was skipping it when RomFs was initially not correctlty detected. Now, it always tests when ROM is marked as containing Pseudo Saturn Kai full version. 2018/06/30 (Pseudo Saturn Kai, v6.227) : - Added alphabetical sorting support in ODE image selection menu. - Added automatic lowercase conversion in ODE images list. (It's a bit experimental for short words, and abbreviations, etc) - Source code cleanup regarding Indirect Dump feature. - Fixed incorrect display when initially holding key press in list-based menus. (This fix concerns all menus in Pseudo Saturn Kai and Save Data Manager) 2018/06/24 (Pseudo Saturn Kai, v6.224) : - Additional fixes regarding return to multiplayer when loading Save Data Manager. It wasn't correctly working in v6.213 ... - In order to reduce ROM usage, - Moved USB standalone firmware ("The Blinking Screen") to RomFs. This saved around 1KB of ROM for lite firmware. - Moved self test executable (flatcube by Mic) to RomFs. This saved around 5KB of ROM for lite firmware. When self test can't be read from RomFs, dummy test pattern is used and ability to execute self test program is disabled in that case. This happens when incorrectly selecting lite firmware when flashing cartridge, or when main executable could be decompressed, but RomFs CRC test failed. - Removed HexEdit feature, which saved around 3.7KB on ROM side. - In SD card self test feature, added CRC verification of data read back from SD card. So far, only size of data read back from SD card was checked. - Removed normal/fast boot setting. Instead, put fast boot enabled by default except when USB dev cart is connected to PC and ODE menu is not displayed. - Added Rhea/Phoebe ODE image selection support. This is a preliminary version that needs a lot of fixes and improvements. - In cheat codes BSOD screen, changed key processing in order to do system reset when "A+B+C+Start" key combo is pressed. (It was initially set to "Start" button only). Also, fixed few details regarding key processing. - Reworked credits display. Still need to do the same with Save Data Manager. - Added Rmenu log display to screen when Z button is pressed on firmware startup, instead of USB standalone firmware shortcut key. - Always show system status (which kind of cartridge used, etc) at the bottom of the screen : so far, it was displayed on first show of main menu only. It is however still cleared when user pushes a button during main menu. - In Save Data Manager, added debug menu regarding copy settings during cartridge ROM dump. This is for extra testing purpose only. - In Save Data Manager, added extra log output to SD card during indirect dump. Also, log whole internal backup RAM as well as dump header to SD card on every indirect dump pass. - Fixed stupid bug ignoring save data files with wrong case in vmem module. This caused problem when rebuiding saves list, or after manual copy of save files on PC, etc. - Fixed 3D pad support. So far it was causing exit to multiplayer when analog button or pad was moved. - In menu module, added X+Y+Z+Start key shortcut to system reset. - Fixed autodump disable setting. So far it was autodumping even if disabled. - Fixed custom logo (background image) import. So far, it was incorrectly cropping images not at 320x224 dimensions. (Special thanks to privateye for reminding me about theses two last ones : it was done a couple of weeks ago, and I already forgot about them :D) 2018/03/23 (Pseudo Saturn Kai, v6.213) : - Fixed emergency exits to multiplayer that were making a system reset. It is now possible to select between exit to multiplayer or reset the Saturn. Examples : "waiting for CD-ROM" screen, iapetus related error screens, etc. - In firmware flasher utilities, added flash ROM single page write test before actually overwriting whole ROM. - Removed rmenu related items in settings page. 2018/02/18 (Pseudo Saturn Kai, v6.209) : - Fixed incorrect decision between in-RAM and ROM-based cheat codes handlers. (ROM-based was always selected in previous beta) - Fixed cheat codes and cheat codes settings output to compatibility report. This was already implemented, but done after saving compatibility report file to SD card. Catched the occasion to add some minor changes and/or fixes. - Automatically disable cheats that would overlap. Example : "force vitality to 100%" + "force vitality to 75%". - Fixed a couple of goofy bugs happening when selecting a menu item while it was scrolling. (display of all items suddenly turned left justified, etc) 2018/02/09 (Pseudo Saturn Kai, v6.204) : - Added "USB only" cheat codes handler running in RAM. Partially assembly optimized. - Added "link diagnostic" feature in Pseudo Saturn Kai. Supports USB dev cart and legacy "comms" link. - Added Pseudo Saturn Kai logo in both firmware and Save Data Manager. - Allow transparent color (#FF00FF = pink) usage on BMP file when importing background image. Note : when transparent color is used, starfield is not drawn on image. - Added Virtual Memory Cartridge support via USB dev cart to file on PC. For debug purpose only. Requires SatLink running on PC side. - Minor cosmetic fixes on flasher. Both standalone flasher and the one integrated in Save Data Manager were affected. - Fixed save list browse menu emergency exit when showing contents of empty save device in Save Data Manager. Now automatically skip display of empty devices, instead of exiting to parent menu when listing empty backup device. - Added debug feature to read indirect dump data from PC link instead of backup memory or FDD. - Added a couple of legacy firmwares to flasher. Also added missing screenshots for (nearly) all firmwares in flasher menu. - Added save/restore of custom cheat codes from/to PC link. (for debug purpose only, not available when USB dev cart is not detected) - Added Virtual Memory Cart / FDD selection menu when automatically or manually loading Save Data Manager. Games using FDD don't prompt for FDD and directly use Virtual Memory Cart even when FDD is connected. Use manual loader in the case it is needed to use saves from FDD. 2017/12/18 (Pseudo Saturn Kai, v6.184) : - Added autoset feature, untested when JHL loader is required. (CWX loader should work as on previous versions) - Added cheat codes support in compatibility report feature. - CRC[E34703CC]CRC[D253387D] : fixed master code location, and tested on real hardware Unusual location is used, hence may cause troubles in unusual stages such as boss, extra menus, etc. - CRC[264990EF] : fixed "play level xyz" cheats, and tested on real HW. Each cheats now use one code, instead of two before fix, but level number is no longer incremented. 2017/11/13 (Pseudo Saturn Kai, v6.175) : - Added 2KB reserved to cheat codes in vmem workram structure definition. - Added few test cheat codes for use with Save Data Manager. - Added redirection to BSOD from soft reset (A+B+C+Start key combo). Optional debug feature : it usually redirects to system reset. - Major fixes and screen layout improvements in BSOD screen. - Major changes in cheat codes interrupt handler. - Major speed improvement in in-RAM cheat codes handler. Now fits into 34 SH-2 instructions ! - Added "0xA5 fill/detect feature" in order to look for cheat codes handler location (`B' code). - Added custom cheat codes input screen. (Debug purpose only) - Added compatibility reporter support for cheat codes features. Works with Gamer's Cartridge only. - Removed unused UBC and bioshack init modes from vmem. 2017/10/15 (Pseudo Saturn Kai, v6.147) : - Menu items multiple selection fix, regression from version 6.142. - Allow scrolling in menus when text is larger than display width. -> Cheat and game selection menus now scroll large text, but it is currently limited to maximum 44 characters in order to reduce cheat codes memory usage. - More IP header CRCs in cheat codes list. 2017/10/05 (Pseudo Saturn Kai, v6.142) : - In menus allowing multiple selection, select current item with A/C/Start button only when no other item is selected. - IP header CRC related fix in cheat codes list. 2017/09/28 (Pseudo Saturn Kai, v6.141) : - Allow to specify more than one IP header CRC per game in cheat codes list - Added IP header CRCs for around 75% of all the games in list. - Improved cheat codes generation report : report CRC collision, games without CRC, full list of cheat codes list, etc. - Added the ability to specify disabled item (for sub-menu purpose) and item enabled by default in cheat codes list. Currently in use with Sonic Jam, Die Hard Trilogy, etc. 2017/08/28 (Pseudo Saturn Kai, v6.138) : - Added cheat codes for many games. (464 games, 2345 cheats) - Disabled "iso loader" (which didn't supported CD-ROM access, so that's not a critical loss) in order to reduce flash ROM usage. 2017/07/11 (Pseudo Saturn Kai, v6.117) : - Removed two steps cheat codes initialization sequence. - Changed cheat codes interrupt handler architecture from "single function in ROM" to "interrupt boostrap in RAM + cheat codes handler in user-specified area". - Provide cheat codes cache location to cheat codes handler : cheats with unusual "B" code may work better now. - In cheat codes boostrap interrupt, allow to execute op-code patched by master code. - Added "enable code" support. - Added in-RAM cheat codes handler. 2017/06/26 (Pseudo Saturn Kai, v6.110) : - Fixed code selection in cheat codes handler. 2017/06/23 (Pseudo Saturn Kai, v6.109) : - Imported, merged and alphabetically sorted cheat codes list. Imported codes mostly from the_mad_joob's codes base. - Updated credits page regarding cheat codes' special thanks. - Changed Pseudo Saturn Kai compilation flags from -O2 (remain in ROM = 34KB) to -Os (remain in ROM = 48KB). - Removed boot debug mode (Z button when selecting game loader). Before : 42.1 KB free in ROM. After : 43.3 KB free in ROM. - Added exception handler screen (partially unfinished and untested). - Added IP header CRCs from Stac's compatibility reports to codes list. Purpose : skip game selection in cheat codes menus. - Improved behavior of cheat codes interrupt handlers. (provide pointer to context via parameter instead of using global variable) - Changed display timing of cheat codes selection menu Before : loader selection -> Vmem enable/disable -> cheat codes selection. After : loader selection -> cheat codes selection -> Vmem enable/disable. - Translate patch address (according to boostub parameters) when applying cheat startup code. - Added cheat codes options configuration menu. - Display game IP header informations under cheat codes game selection menu. - In cheat codes menus, automatically skip game selection menu when CRC of the game loaded by Pseudo Saturn Kai is found in cheat codes games list. If CRC not found, default select game with title nearest to title of game about to load in cheat codes games selection menu. - Added cartridge ROM-less cheat codes handler. Purpose : slight speed-up of cheat codes interrupt. Demerit : small limit of codes useable simultaneously, USB connectivity not available. - Moved master code information (patch address/code and work RAM location) from codes list (ROM) to games list (RAM, compressed with main executable). This saved around 3KB of ROM usage. - Added two steps cheat codes initialization sequence, in order to keep Sega logo clean when booting a game ... currently not working hence disabled. - In cheat codes options menu, allow to fill unused HRAM with non-zero value (0xA5). Purpose : locate areas not used by game, hence safe for use by cheat codes configuration memory. 2017/06/09 (Pseudo Saturn Kai, v6.079) : - Fixed cheat codes configuration area setup. Tested with Radiant Silvergun ! 2017/06/07 (Pseudo Saturn Kai, v6.078) : - Added cheat codes interrupt handler. - Added USB connectivity during cheat codes handler. Tested with Grandia and NiGHTs. 2017/05/26 (Pseudo Saturn Kai, v6.076) : - Added access to credits page in lite version of the firmware. - Added error message display when file/folder name is larger than 26 characters. 2017/04/23 (Pseudo Saturn Kai, v6.074) : - By default, enable quick boot menu in full version of the firmware. - Save Data Manager : use floppy disk's second partition for storing indirect dump data. 2017/04/06 (Pseudo Saturn Kai, v6.068) : - Save Data Manager : fixed cartridge size detection in dump feature. - Save Data Manager : compression speed improvement when using indirect dump feature with internal backup memory. (no significant improvement when using FDD). - Save Data Manager : After dumping internal backup memory or a cartridge smaller than 1MB, report its save list. 2017/03/24 (Pseudo Saturn Kai, v6.064) : - Added virtual FDD feature. 2017/03/11 (Pseudo Saturn Kai, v6.063) : - Save Data Manager : added support for multiple indirect dumps on same day. - Added in-game soft reset patch. (untested, needs to be enabled from settings menu) - Added autodump feature (untested, needs to be enabled from settings menu) - Save Data Manager : In Save Data Import, fixed save format detection after reading a group dump file, then a single dump file small enough. - When FDD is detected, show "enable FDD" rather than "OFF" in ROM Hacks selection menu. - When FDD is detected, show a menu in order to select FDD or vmem before loading Save Data Manager. - Save Data Manager : in dump main menu, show contents of CS0/CS1 contents. (allows quick visual check of cartridge header) - Save Data Manager : added link selection menu (untested) 2017/02/25 (Pseudo Saturn Kai, v6.061) : - Virtual Memory Cart : fixed incorrect write to internal memory happening on specific size of save data. - Virtual Memory Cart : fixed internal memory format operation. - Save Data Manager : added internal memory test bench, and verified that the fixes above were OK. - Save Data Manager : Fixed final CRC check in indirect dump feature. - Save Data Manager : Minor fixes, source code cleanup (unfinished). - Save Data Manager : Improved progress bar display in save data import and save device info features. 2017/02/15 (Pseudo Saturn Kai, v6.059) : - Save Data Manager : added indirect dump feature (untested). 2017/02/05 (Pseudo Saturn Kai, v6.056) : - Save Data Manager : fixed floppy disk support. - Save Data Manager : fixed backup device access when only FDD is connected. - Save Data Manager : in "select saves to export" function, dump saves in both .BUP and SSF formats. - Save Data Manager : indirect dump feature stub (WIP). - Cheat codes selection menu (WIP). 2016/06/14 (Pseudo Saturn Kai, v6.037) : - Save Data Manager : fixed text display and saves sort in copy/move/delete/hexedit menus. 2016/05/31 (Pseudo Saturn Kai, v6.036) : - Save Data Manager : added an item to import (read, convert, save to SD card) custom logo from BMP file. - Added another item to remove (delete file on SD card) custom logo. - Save Data Manager : display both save data name and comment in selection menu (single import was already done, modified group import and save device browse menu). - Save Data Manager : added simple hex viewer in order to check cartridge ROM area. - other minor fixes. 2016/04/26 (Pseudo Saturn Kai, v6.030) : - In extra menu added an item to import (read, convert, save to SD card) custom logo from BMP file. Add another item to remove (delete file on SD card) custom logo. - In Save Data Manager, added simple hex viewer in order to check cartridge ROM area. - Fixed font color when blue background color is used in compatibility reporter. - Improved save listing in Save Data Manager from "name" to "name:comment". - In Save Data Manager save listing, changed device selection key from left/right to L/R shoulder buttons. 2016/04/15 (Pseudo Saturn Kai, v6.025) : - Added UBC debug screen, showing UBC break context, UBC registers contents, and allowing to dump debug stuff to SD card. - Allow enable UBC debug screen with Z button when selecting ROM hack. - Added "replace" vmem initialization mode. Seems to work better than UBC initialization mode. - Added color (red, gray, yellow, blue, green) display in compatibility reporter feedback menu. - Inlined game loader related functions in a separate stub, in order to avoid unexpected behavior from game loader from a build to another. 2016/04/02 (Pseudo Saturn Kai, v6.000) : - Disable "start game" option in Pseudo Saturn Kai demo version. - In status area, display Saturn informations (BIOS version and display frequency) when SD card / USB aren't available. - Implemented USB dev cart firmware version and "ExecExt" functions (untested). - In lite version of the firmware, moved items from extra menu (system info and Hex Editor) to main menu. - Save Data Manager : display "format ? yes / no" when target device is not formatted during copy/move/import features. - Save Data Manager : display "Device full ! Abort/Continue anyway" menu when "not enough memory" happened during copy/move/import features. - Added jhl_cd_hack related debug display to screen (Thank you CybwerWarriorX !). - From now, increment release ID on each "make clean" command rather than every "make" command, in order to get a "normal" growth of the build ID ... 2016/02/23 (Pseudo Saturn Kai, v5.816) : - Added credits screen stub in Save Data Manager. (Pseudo Saturn Kai credits screen is still as-is). - Improved (?) stability around jhl_cd_hack function. - Added "data dump to SD card" feature (in order to spot bugs). (Can be enabled with Z button from loader selection screen.) - Cosmetic changes in text display, log messages, etc. - Show confirmation screen on firmware startup when logging to SD card is enabled. 2016/02/16 (Pseudo Saturn Kai, v5.775) : - Fixed USB dev cart firmware screen (Z button on startup). - Fixed things around jhl_cd_hack function. 2016/02/14 (Pseudo Saturn Kai, v5.669) : - Fixed a stupid bug that was rebuilding SD save index on each boot. (deleting saves should work now) - Fixed a stupid bug resetting Pseudo Saturn Kai settings on each boot. - Merged firmware flasher utility to Save Data Manager (CD-ROM version only). ("Basic" standalone flasher utility is still available) - Fixed a save filename comparison routine that could bug everything related to saves on SD card. - Write save description in text format when writing save data to SD card. - For each memory devices, update save in block unit as early as possible. (may improve game compatibility) - Changed SD backup device block size from 512 to 256 bytes. (may improve game compatibility) - Finally implemented BUP_Verify function for SD card device. - Don't poll SMPC for current time when writing save data to disc. (may improve game compatibility) - Added Japanese text display in text display routines : Save comment string is now correctly displayed. - Added support for many formats in Save Data Manager's import feature. - Fixed infinite loop when save to read doesn't exist in internal backup RAM module. - Removed malloc/free calls in internal backup RAM module. (Makes sense, because memory usage remains the same) - Small fixes or improvements here and there. 2015/12/30 (Pseudo Saturn Kai, v5.546) : - Added hybrid (Internal save data memory & SD card) device on first memory device. 2015/12/23 (Pseudo Saturn Kai, v5.535) : - Fixed time stamp support when writing/modifying files on SD card. - Increased maximum saves count on SD card from 100 to 400 files. - Keep old save data files on SD card, even after deleting/overwriting them, and show the latest save file(s) on Saturn side. Purpose : keep history of game progression, and allow to revert to a previous save version. Note : Data Structures of save data on SD card have changed, so please delete MEMCART folder on your SD card before installing this version. 2015/12/19 (Pseudo Saturn Kai, v5.507) : - JHL loader : execute bootstub directly from ROM, hence can clear some more RAM before loading game. - CWX loader : call ipprog from bootstub directly in ROM, hence can clear some more RAM before loading game, and games running in Low RAM (Policenauts for example) can now be loaded. - Temporarily hide ROM Hacks selection menu when JHL loader is used. 2015/12/18 (Pseudo Saturn Kai, v5.493) : - Added USB dev mode : unlock CD-ROM and then wait for USB transfer. (Available only when USB cable is connected) - Added Rhea Menu stub (menu only, still need to add Rhea communication stuff). - Minor display improvements. - Hide unused menus in lite version of the firmware. - Allow to change link type in lite version of the firmware. - Added status (USB/SD card/etc infos) display under main menu just after firmware startup. - Minor changes/fixes in JHL bootloader. - Added/Fixed "SD card not found !" and "RomFs mount error !" screens on firmware startup. - Fix in "log to SD card" feature. - Changed "Use vmem ?" dialog to "Select ROM Hacks" dialog. 2015/12/05 (Flasher utility, v5.174) : - Added System Reset option in exit menu. - Added simple check to verify that firmware was correctly decompressed before flashing it. 2015/11/10 (Pseudo Saturn Kai, v4.996) : - Added SD card self test feature. - Fixed SD card SPI transfer module. - Source code cleaning. 2015/10/30 (Pseudo Saturn Kai, v4.929) : - Added SD card debug screen. 2015/10/28 (Pseudo Saturn Kai, v4.914) : - Changed FAT library from thinfat to fat_io_lib. Tested and works with a FAT32 16GB SD card on real HW. (Was OK with a FAT32 2GB micro SD card too). FAT16 file system should be OK too, untested however. - Added System Reset in exit menu. - Set LED state when using SD card : Green LED : exchanging SPI packet data. Red LED : SPI packet data exchange failure. 2015/10/23 (Pseudo Saturn Kai, v4.862) : - (FAT32 library) Allow to create files/directories over deleted entries. - FAT32 library bugfixes, source code cleanup. - Allow to output logs to SD card (can be enabled in Settings page). - Major fixes and improvements in "Systems Informations & Dump" page. 2015/10/15 (Pseudo Saturn Kai, v4.782) : - FAT32 library bugfixes. - Changes in FAT16/32 detection. - Added FAT32 library log display in SD card Reset&Test feature. 2015/10/10 (Pseudo Saturn Kai, v4.776) : - Added root folder file listing in SD card Reset&Test feature. - Added support of MBR when looking for FAT32 partition. 2015/10/09 (Pseudo Saturn Kai, v4.771) : - Added SCU debug menu and SD card sector #0 contents display in SD card Reset&Test feature. 2015/10/08 (Pseudo Saturn Kai, v4.750) : - Major fixes in SD card FAT32 library (WIP, untested). - Changes in SPI related code. - Added file open feature in Hexedit. 2015/09/29 (Pseudo Saturn Kai, v4.724) : - Major changes in SD card FAT32 library (WIP, untested). - Few fixes in SD card SPI related functions. - Added Hexedit feature (memory only, no file access yet). - Cleanup in source code. - Added log display on screen in "SD Card Reset & Info" screen. 2015/09/15 (Pseudo Saturn Kai, v4.629) : - Changes in DRAM init function, Fix when initializing/detecting DRAM. - Changed timeout value in boot selection menu. - Fixed soft reset function. Games should boot correctly now ? - Changes in virtual memory cart data format (.HDR+.BUP -> .BUP) - Allow 3D pad in flasher utility (untested). - In lite version, enable homebrew launch in the case SD card is detected. - Fixed bugs, added bugs. 2015/09/03 (Pseudo Saturn Kai, v4.559) : - Changes in soft reset module. (reset VDP2 regs -> reset VDP1 RAM -> clear HRAM) - In release mode (default), clear LRAM and call bios_loadcd_boot function from ROM. And in debug mode, call bios_loadcd_boot function from HRAM, and display eventual error code. - Enable debug mode when X key is pushed during startup. - Removed "auto" loader. - Automatically close loader selection menu after around 3 seconds of inactivity from user. - Added autoboot feature that display boot selection menu on firmware startup. - In lite version of firmware, use autoboot as default. (Minimal user interaction to boot game : power on Saturn, wait 3 seconds or press A button only is required.) 2015/08/28 (Pseudo Saturn Kai, v4.478) : - Removed non-emulated versions call in JHL loader. - In jhl loader, perform soft reset just before loading game. - Added System Information screen. - Minor fixes, changes, etc. - Minor refactoring in menu module (no visible changes). - Moved USB dev cart ram image from romfs to low work ram, so that it can be used on lite version. - Changes in soft reset routine. - Fixed bugs, added bugs. 2015/08/24 (Pseudo Saturn Kai, v4.353) : - Small change in JHL loader : continue to call bios_loadcd_boot function while return value > 0. - Modified bootloader in order to support exotic (non EUR/US/JPN) Saturns. (not tested) - Removed not useful things from bootloader, so that its size is now less than 10KB. - Improved pad detection (Thank you CyberWarriorX !), so that all existing peripherals (multipad/3D pad/whatever) should be supported now. - Pushing X+Y+Z on startup (before SEGA logo display) should now exit to multiplayer even if non-regular pad is used. (not tested) 2015/08/20 (Flasher utility, v4.338) : - Added Test Report feature. 2015/08/18 (Pseudo Saturn Kai, v4.333) : - Display BIOS and Firmware CRC32 value on startup. Purpose : identify BIOS version, and see if Panzer Dragoon Saga erases/modifies flash memory contents. - Added call to non-emulated BIOS functions in JHL loader. Functions names : bios_loadcd_init, bios_loadcd_read. 2015/08/09 (Pseudo Saturn Kai, v4.318) : - Use CWX/JHL bootloader select menu by default. 2015/08/08 (Pseudo Saturn Kai, v4.314) : - In the case JHL loader fails, try to boot game by using CWX loader. 2015/08/07 (Pseudo Saturn Kai, v4.309) : - Added SD card based virtual memory cart feature. (not tested yet). - Added bootloader selector (CWX/JHL/Auto). - Display disc header information before booting it. - Partially added save data import feature. (can read files from SD card, but save data selection menu is missing). - Fixed SD card related stuff, added SD card information screen. - Added "dump BIOS to SD card" feature. - Added hexedit feature in save data manager. - Disable features when Action Replay is used. - Added cheat codes selection menu. (Cheat codes handler, and many things around are not implemented) - Fixed bugs, added bugs. - Other changes. 2015/04/28 (USB dev cart firmware) : - Rebuild with GCC 5.1. 2015/03/26 (Flasher utility, v3.777) : - Tested on around 30 Action Replay cartridges. It was working fine for all known flash chips. - Ask for confirmation before returning to multiplayer screen. - Return back to initial screen in the case user don't want to go to multiplayer screen. - Retrieve and display chips IDs when firmware selection menu is displaying. - Fixed erase/flash operations for AT29C010 flash chips. - Minor fix about text display. - Fix for BFBF/1010 flash chips. - In the case Action Replay flash chips is supected, display disclaimer before flashing as a typical Action Replay flash device (SST29EE). - Refresh vendor/device IDs display during error/disclaimer message display in the case flash is not recognized. - Major changes in menu related routines. - Added key auto repeat feature : holding Up/Down button should scroll automatically now. - Added erase verification test. - If erase/write verification test failed, display informations about failure. - Use FRT-based delay during flash write/erase. - Changed highlight color in menus. - Change color of vendor/device strings according to chips flashability. - Hopeless : red - Maybe OK : yellow - Recognized : green 2015/03/25 (USB dev cart firmware) : - Fixed bug that made ROM code crashing on startup. 2015/02/xx (Pseudo Saturn Kai) : - Added overwrite check menu in copy/move operations. - Added key auto repeat feature. 2015/02/07 (Pseudo Saturn Kai, v3.722) : - Added "256k" (lite) version of the firmware. - Added item selection related code. - Major refactoring in menu related code. - Added main menu in save data manager utility. 2015/01/17 (Pseudo Saturn Kai first private release !, v3.703) : - Removed Action Replay firmwares from flasher. - Boot CD-R without displaying menu when X button is hold during startup. (Needs to hold X button on SEGA logo screen display timing, and don't release it until game is loaded.) - Added console in the lower half of the screen. - Minor changes of text display, colors, etc. - VDP2 register reset (same state as in SEGA logo screen) before booting CD-R. - Added USB dev cart link support. - Added USB dev cart/Action Replay link selection. Link type is saved in internal backup memory as "SatCom" entry. - Added unfinished save data manager screen ... temporarily removed in order to fit Action Replay flash memory size. 2014/09/24 (USB dev cart firmware) : - Removed MAIN_EXE (keep ROM code only). Consequently, removed flasher utility too. 2014/09/05 (USB dev cart firmware) : - Maintenance menu can be accessed by pushing X+Y+Z buttons on pad1. - Firmware doesn't exits to multiplayer when 3D pad whatever is used. 2014/09/02 (Flasher utility, v3.416) : - Added support for SST29LE010 flash chip. - Added memory verify after flashing. - Fixed erase/write operations AM29F010 flash chip. - On startup, inform user that 3D pad and multitap pad are not supported. 2014/08/24 (Flasher utility, v3.324) : - First public release. 2014/08/22 (Flasher utility) : - Changed title colors. - Various text positions fix. - Added USB dev cart firmware (can't flash on Action Replay). - Added erase progress display for BFBF/1010 flash chips. 2014/08/20 (Flasher utility) : - First beta release. 2014/04/09 (USB dev cart firmware) : - Added yellow and purple colors in order to differentiate each errors. 2013/05/14 (USB dev cart firmware) : - No changes, rebuild for public release. 2012/12/19 (USB dev cart firmware) : - Return to host program when START key is pressed. - When pad1 is not connected and pad2 is connected, use key data from pad2. - On flasher tool, process default/unknown flash chip as SST39SF040 chip. - On startup, display orange screen until user released all pad buttons. - On startup, display red screen in the case no pad is connected. 2012/10/24 (Custom Cartridge test program) : - Fixed ROM code's custom memory alocator and many other things related to it : now works on yabause. 2012/10/20 (Custom Cartridge test program) : - Put all code related to SD card and file system to ROM ... nothing work. Moving code above to ROM allowed to save around 30KB on Saturn application. 2012/09/23 (Custom Cartridge) : - Populate cartridge-based SD card reader (Rev 1a) ... nothing work, even test LED doesn't light up. 2012/07/27 (USB dev cart firmware) : - Minor changes in order to be able to use this firmware with Yabause : -> Limit "exit to multiplayer" keys to A-C, Start and direction keys. - On startup, display red screen until user released all pad buttons. 2012/07/23 (USB dev cart firmware) : - Made idle screen blinking, so that user can know if firmware is still running or just freezed. - Made firmware running from ROM, so that it is safe to overwrite nearly all Saturn RAM data. - Go to multiplayer screen when a key is pressed. 2012/06/10 (USB dev cart firmware) : - Original version by antime. Super interested in this project. -> http://www.iki.fi/Anders.Montonen/sega/usbcart/ 2012/04/02 (Custom Cartridge) : - First idea about cartridge-based SD card reader. However don't know anything about electronics ! 2011/12/09 (SD card Pad2 interface) : - Could dump all my memory carts via second pad to SD card, so suspended the project. 2011/10/14 (SD card Pad2 interface) : - Changed FAT32 library to libfat library. -> http://chishm.drunkencoders.com/libfat/ Writing file to SD card is now possible ! 2011/09/29 (SD card Pad2 interface) : - Changed FAT32 library to thinfat32 library. -> http://code.google.com/p/thinfat32/ 2011/09/14 (SD card Pad2 interface) : - Could read file data on SD card connected to Saturn second pad. 2011/09/12 (SD card Pad2 interface) : - Connected Saturn pad and 1.5V battery x2 and SD card reader by using a breadboard -> can read SD card registers. - Added FAT32 read library : http://www.dharmanitech.com/ 2011/08/27 (SD card Pad2 interface) : - Tried SMPC I/O ... communication with SD card can be performed at around 40KB/s ?