tpunix / SAROO

SAROO is a SEGA Saturn HDloader
356 stars 41 forks source link

Please explain Release files purpose #190

Open cystbear opened 3 months ago

cystbear commented 3 months ago

According the doc I have:

SD card file placement

/SAROO/update/ ;Store firmware for upgrade. 
                   ; FPGA: SSMaster.rbf 
                   ; MCU: ssmaster.bin

I have downloaded all releases 0.1 -- 0.6 and have next files (tree)

./
├── firm_v0.1
│   ├── SSMaster.rbf
│   ├── ramimage.bin
│   ├── saroocfg.txt
│   └── ssmaster.bin
├── firm_v0.2
│   ├── SSMaster.rbf
│   ├── ramimage.bin
│   ├── saroocfg.txt
│   └── ssmaster.bin
├── firm_v0.3
│   └── SAROO
│       ├── BIN
│       ├── ISO
│       │   ├── ULTRAMAN.BIN
│       │   ├── kof95.bin
│       │   └── readme.txt
│       ├── mcuapp.bin
│       ├── saroocfg.txt
│       ├── ssfirm.bin
│       └── update
│           ├── mcuboot.bin
│           └── ssmaster.bin
├── firm_v0.4
│   └── SAROO
│       ├── mcuapp.bin
│       ├── saroocfg.txt
│       └── ssfirm.bin
├── firm_v0.5
│   └── SAROO
│       ├── mcuapp.bin
│       ├── saroocfg.txt
│       └── ssfirm.bin
└── firm_v0.6
    └── SAROO
        ├── mcuapp.bin
        ├── saroocfg.txt
        └── ssfirm.bin

What I can see:

Latest update (0.6) contains only three files one of themssfirm.bin. What it stands for? Also as soon as I can understand mcuapp.bin it's SAROO application which MCU runs and its config saroocfg.txt.

So my questions are:

My board is V1.37C from KK DIY BoardBack BoardFace

yzbss commented 2 months ago

我不会英文,为避免翻译软件翻译错误,所以只写了中文

ramimage.bin firm_v0.3之前的SS端固件版本名为ramimage.bin,位于TF/SD卡根目录 自 firm_v0.3起所有 SS 固件版本均重命名为 ssfirm.bin 并放置在 SAROO 文件夹中 这两个文件其实是一样的,一个是早期版本使用的(firm_v0.2),一个是后来更新的版本使用的 (firm_v0.3-firm_v0.6)

FPGA bitstream/hardware 是在卡上单独的一块芯片,它依靠SSMaster.rbf文件更新,并且是永久的把SSMaster.rbf文件刷写到卡带芯片上。 当前最新的FPGA 版本是firm_v0.2中的SSMaster.rbf文件,也就是v0.5版本。

MCU firmware 从firm_v0.3开始,为防止刷写mcu端固件导致卡带芯片变砖,而把mcu端的加载方式分成了2个部分。

第一个部分是引导部分,也就是firm_v0.3压缩包中文件夹update里的mcuboot.bin文件和ssmaster.bin文件,其实这2个文件是相同的。 (ssmaster.bin文件是第一次从mcu v0.2版本升级到mcu v0.3版本所需要更新的文件,而mcuboot.bin文件是从mcu v0.3版本开始以后如果mcu端引导部分需要更新时才需要使用的文件) 需要注意的是这里引导部分是永久的刷写到卡带芯片上的,只有当后续有此引导部分的更新才需要重新刷写。

第二部分为mcu的实际运行程序,也就是mcuapp.bin文件 当更新到mcu v0.3版本以后,每次开机,saroo都会从TF/SD里加载mcuapp.bin文件并运行,注意这个文件是动态加载的,并不会永久的刷写到卡带芯片上

回到你的问题,

你只需要把firm_v0.2中的SSMaster.rbf文件更新一次到卡带中(升级fpga到0.5),把firm_v0.3中的ssmaster.bin或者mcuboot.bin升级一次(为了以防万一,最好这2个文件都放进去),当你这样操作完成升级以后,在下载firm_v0.6压缩包,解压覆盖到TF/SD里即可(注意firm_v0.3中kof95.bin和ULTRAMAN.BIN文件需要放置到iso文件夹目录中,不然这2个游戏将缺少资料不能玩)

如何知道自己刷写成功

当你开机进入到saroo主菜单,在saroo的主菜单的最下面fpua显示为0.5,mcu显示为240627(或者更新的时间),ss显示芯片240627(或者更新的时间) 这样就表示已经更新到当前最新版本了