PPCenter :: devblog

PPcenter. Arts and craft for my Sega Saturn. Since 1847 :D

Saturn cartridge firmware flash utility : small update

Written by cafealpha 17 comments
Memory Card Plus restore utility I made few days ago is now obsolete : I added a menu to select the firmware to flash.
Firmware list includes Action Replay Plus/Pro (various versions), latest Pseudo Saturn, Memory Card Plus, USB dev cart.
data/images/20140821_flasher_fwlist.png
Firmware selection menu

As you can see, I added some colors in text display too

The utility doesn't read data from the CDROM, so that it can be uploaded to Saturn via commlinks port (Action Replay) or USB port (USB dev cart).
All the firmwares don't fit as-is in Saturn HRAM (1MB), so I compressed them by using LZF compression, so that everything could fit in a single ~800 KB binary file

Here are some pictures of utility running on real hardware :
data/images/20140821_flasher.tb.jpg
Firmware selection menu from early beta version.
Picture provided by r1cola.

data/images/20140824_flasher_video.png
(click to open video)
Flasher in action : from firmware selection to end of flash operation.
Video provided by zorlon.

You can download this utility here : flasher_20140824.7zflasher_20140902.7zflasher_arp_20150326.7zhttp://ppcenter.webou.net/pskai/
Disclaimer : You will loose your cartridge backup data after reflash. And, I'm not responsible in the case I brick your cartridge and/or damage your Saturn.

Read more Saturn cartridge firmware flash utility : small update

Back home !

Written by cafealpha no comments
Home sweet home !
There's no more hospital staff to prepare food or take care of my scars, shampoo, whatever, but returning back at home after around 6 weeks at hospital is nice

Today, I could get my hands on ICs for USB dev cart and Saturn dev stuff (Saturn, small TV, damaged proto carts, etc) that I put in a small storehouse before entering hospital.
Everything is still in cardboards/bags ... I shall tidy the apartment a little before to do some Saturn things ^^
Oh, and I finally could touch the new PCBs I ordered 3 weeks ago

Read more Back home !

Firmware restore utility for Saturn Memory Card Plus cartridge

Written by cafealpha no comments
First, let's introduce to you memory card plus :
data/images/20140817_memory_cards.tb.jpg
Black cartridge : Memory Card Plus
White cartridge : official memory card

Memory Card Plus looks like regular backup cartridge, but behaves differently : while regular backup cartridge provides memory on CS1 memory area, Memory Cart Plus have flash ROM chip mapped on CS0 memory area, as Action Replay does.
Consequently, Memory Card Plus boot before game on CDROM, and during this this time, it modifies some settings in order to make BIOS detecting this cartridge as a second backup memory device.

As Action Replay cartridges, it is possible to reflash Memory Card Plus, and in the case you would like to restore its firmware to its original state, I prepared a flasher utility containing my Memory Card Plus firmware I dumped 2 years ago (time flies ...).

You can download this utility >here<
(source code is included, please refer to readme.txt for installation instructions)
data/images/20140817_memcartplus_flasher.png
Flasher tool in action ... well reflash don't work under yabause,
but should work on real hardware.

As en extra, I let my old game saves with firmware itself ... please format cartridge from BIOS memory manager if you don't need them.
data/images/20140817_memcartplus_contents.png
Good old times I played Night Xmas and Shining Force 3

Remark 1 :
Flashing your Saturn cartridge will erase all the data on it, including your game backup data,
so use only after saving backup data to Saturn internal memory.

Remark 2 :
Memory Card Plus firmware is designed to work only with specific flash chips, so it
probably won't function correctly on other cartridge (Action Replay, USB dev cart, etc).

Disclaimer :
I'm not responsible of damages that this utility may cause to your game save data, Saturn cartridge or Saturn itself.

Please let me know if reflash worked (or not worked) in this article comments


Extra : I also made a diagnostic utility that displays flash chips ID without modifying flash memory contents. It can be downloaded here.
It can be useful when analyzing exotic cartridge, but not really useful with Memory Card Plus.

Read more Firmware restore utility for Saturn Memory Card Plus cartridge

Treatment report (2014/08/12)

Written by cafealpha no comments
Nothing really special today.
This morning, the roommate in front of me (separated by 2 curtains) left hospital, so I am now the patient with the longest stay in this room.
Previous roommate always spoke to himself while sleeping, so it's great that he finally left hospital


Among the two roommates remaining with me in this hospital room,
 - first one snores loudly ...
 - second one likes to play with room's air conditioner settings ... I don't know why he set temperature room to 28℃ .... maybe a game with me, I don't know.
Anyway, I plan to restore temperature to 26℃ as soon he changes it ... I have no choice, because his favorite temperature feels like hell to me.
And if he really continues to bother me, I will pour extra strong bond on air conditioner remote controller buttons


Doctor now use small syringe to pour sterilized solution in my mouth's scar in order to clean it, which is a sign that everything is going well for it
Also, according to the doctor, there's no longer need to clean this scar twice a day : once a day is now enough, which is another good sign about this scar :]
I hope this scar will close properly this week. After that, I finally will be able to start eating rehabilitation !!


On Saturn dev side (at first, this blog was intended to be a Saturn dev related blog !), I had fun with interrupt C and code executing on ROM ... except constant ones (of course), no global variable is allowed for ROM code ! Ouch.
Still not compiling, less than half of the project is coded, nothing tested, so I will continue tomorrow

Read more Treatment report (2014/08/12)

New compiler for my Saturn stuff !

Written by cafealpha no comments
Today, I just changed all my projects configuration and sources in order to use latest "Saturn SDK" compilers 

Very boring work, but now I feel happy to get all my projects updated !

Motivation hedgehog for today work, and future work too :
data/images/20140805_hedgehog.jpg

Here is a list of problems I fixed to get the new compilers working :
 - Don't call directly ld, instead call gcc -o. Why ? because ld can't find properly path to libgcc.a ...
 - Consequently, some link parameters need to be changed :
    "--script bart.lnk" → "-T bart.lnk"
    "-Map main_elf.map" → "-Wl,-Map=main_elf.map"
 - Some signed/unsigned mess that need to be fixed ... old compiler was quiet about this, which made me not worrying about data signedness ^^;
 - Removed volatile keyword in function declaration ... it actually didn't made sense to use volatile elsewhere than in data declaration !
    /* Exit to multiplayer. */
    //(**(volatile void(**)(void))0x600026C)();
    (**(void(**)(void))0x600026C)();
 - Removed SBL sources that were used to read file from CDROM, because they don't compile properly except in -O0 (non) optimisation mode ... Instead, I use source from great CyberWarriorX library

Read more New compiler for my Saturn stuff !

Rss feed of the category