Wii軟改觀念解析(四) Homebrew Channel/BootMii/DVDX - 改機

Table of Contents

前面介紹完了一些基本觀念,接下來就要實際進入Wii軟改錯綜複雜的世界
一直在思考要怎樣編排會比較流暢,總之還是照著原先的脈絡慢慢走下來吧

Team Twiizers(簡稱TT)

飲水思源,先來講到Wii軟改界中不可不提的一個團體
TT是曙光公主Twilight Hack的原創者
同時也是有名的HackMii Installer的作者
(包含Homebrew Channel, BootMii, DVDX三套軟體)

1. Homebrew Channel(HBC) - 軟改必裝的頻道

前一篇介紹了使用各種buffer overflow漏洞,可以執行自製程式
不過每次都要重跑一次漏洞,實在不是很方便

就算有比較方便的Bannerbomb,也要每次把要執行的程式
放的SD卡的根目錄再跑Bannerbomb

所以,就有了Homebrew Channel的誕生

HBC大大了簡化了初期Wii自製軟程執行的流程
只要將你寫好的程式目錄放在SD卡上的apps目錄下
程式目錄中包含三個固定檔案
icon.png(圖片)meta.xml(說明檔)boot.dol(主程式)
(這三個之中boot.dol為必要檔案,其它兩者可有可無,不影響執行)
HBC就能將SD上的程式找到並列表供使用者選擇

(所以,下次拿到只有一個dol的程式,就會用了吧?
改名成boot.dol,並搭配一個icon.png及meta.xml,就可以用了)

HBC,可以說為Homebrew軟體做了一個完整的基本示範
他不但破解了Wii的頻道格式,可以使用WiiMote,甚至還有上網自動更新的功能

HBC目前由HackMii Installer安裝
安裝的時候會決定HBC所需要用到的IOS

一般來說,HBC會傾向用最新、未修改,但不是系統選單用的IOS
(因為系統選單用的IOS,隨時會因為系統升級而成為stub IOS,見第二篇)
以獲得系統最新的支援

以目前來說,只要有安裝IOS61,那麼HBC會優先選擇IOS61做為HBC使用的IOS
(IOS61是Shopping Channel v18/v19使用的IOS)

HBC顛倒問題:
HBC寫得很好,幾乎沒有什麼問題(所以也沒什麼競爭軟體)
一般新手最常遇到的問題只有一個,就是HBC顛倒的問題
沒接觸過Wii軟改的人,一開始可能會以為是HBC或Wii軟改的bug

事實上,這是並不是bug,而是TT故意這樣寫的
由於TT不希望大家更動系統IOS(理由之後講IOS再說明)
所以如果他偵測到HBC是用修改過的IOS執行,就會顛倒

解法有二,一是看HBC使用哪一個IOS,並還原成官方版
另一個方法就是單純重裝一次HBC據說就可以解決

基本上,綜合前述我說的,只要安裝官方版本的IOS61
再重新安裝HBC,就可以保證HBC一定是用官方版的IOS61
那麼,就一定不會出現顛倒的問題了

2. BootMii - 救磚的終極利器

這邊先來複習一下第二篇中,Wii的正常開機流程

boot0 ---> boot1 ---> boot2 ---> SYSMENU IOS -> SYSMENU(系統選單)

其中boot0唯讀,boot1因為檢查碼放在boot0,也無法改
boot2以後才是我們可以變更的部份

BootMii所做的是,修改原本的boot2
讓你可以在執行系統選單之前,有機會做一些別的事


安裝了BootMii之後,系統的開機流程

無SD卡或卡上沒BootMii
boot0 ---> boot1 ---> boot2(hacked) ----------------> 繼續正常開機
|
--------> BootMii -------> 系統選單,或直接到HBC
有SD卡 跳出

BootMii其實最重要的功能,只有一個,就是備份和還原整個Wii的資料(NAND Flash)
類似像我們在一般電腦上ghost的功能

由於他是在系統選單之前就執行,所以無謂系統出了什麼問題
只要boot2沒有被蓋掉,你都還是可以進入BootMii進行還原系統的動作

也由於這個特性,我建議在軟改一開始,裝好bootmii之後
馬上先做一次NAND Backup,並將keys.bin和nand.bin兩個檔案收好
另外要注意的是,備份下來的檔案只能在原機上使用
你無法還原到另一台Wii上面

不過,在後期所謂LU64+(後面會再另外解釋)的機器上
由於boot1的trucha bug被修正,所以無法修改boot2

如果BootMii無法安裝在boot2,那救磚的功能也就大為減弱了
(HackMii Installer在安裝的時候會提示)
因為裝在IOS,就必須能開進HBC之後,才能執行BootMii
這時候因為系統選單造成的所謂全磚,也就無法修復了

所以使用新機器的人,務必要對自己的每一個動作都多加留意

3. DVDX - 自製程式讀取DVD片的通路

Wii的設計光碟機有保護機制,所以必須是Wii特殊DVD,程式才能存取
(不討論硬改的問題)所有的iso9660格式的「正常」DVD片
如DVD-ROM, DVD+-R, DVD影片等等,正常的IOS是無法讀取的

不過由於早期任天堂可能還沒有決定要不要支援DVD影片撥放
所以光碟機都內含一個特殊模式,開啟之後就可以讀取iso9660的DVD

而DVDX,就類似一個驅動程式,驅動光碟機
讓自製程式可以透過它存取一般的DVD片

除了播放DVD影片以外,很多模擬器可以用它來讀取DVD上的ROM檔
DVDX是安裝成一個隱藏的頻道,所以不會修改主機上的任何IOS

不過自從USB儲存被支援後,DVDX的重要性就下降了

而且目前主流的MediaPlayer如WiiMC或MPlayer_CE
則改用了CustomIOS 202去直接讀取DVD片,而不再需要DVDX

(目前有一個問題是在所謂D3-2/D4的新版光碟機上,Wii的特殊模式被拿掉
所以如果用比較新的Wii,只用軟改,是完全無法讀取一般DVD片的)

基本上,有了這些,對一般自製的程式來說,已經很足夠了
不過對於一些非正規的用途,受限於官方IOS的能力,仍然會有所限制
(這後面也會再加以解釋)

順帶一提的是,TT堅守反盜版的立場
所謂Backup/ISO loader這類有可能牽涉盜版的東西
儘管他們絕對有能力辦到,也是絕對不碰的

而所謂的CustomIOS,幾乎可以說都是這類軟體才會用到
而且修改系統原本的IOS對他們來說,不但危險,也是沒必要的
所以TT抱持著反對cIOS的立場就很容易理解了

附錄: 小常識

1. 注意BootMii的SD卡相容性

安裝過BootMii或執行過prepare SD功能的SD上
會有一個bootmii的目錄,這就是BootMii的主程式
其中armboot.bin是BootMii用的IOS,叫做'MINI',只有49kb

其實這對一般人來說,並不是很重要
會提是由於它極其精簡的關係,他不支援(也不打算支援)wiimote
而必須用GC手把或用power/reset鍵來控制選單
而且SD卡的相容性也不如一般的IOS
所以軟改Wii首先要特別注意的就是,最好選擇BootMii可以支援的SD卡

2. 跳過BootMii
一般照著懶人包做完的新手,可能會注意到一個問題,就是一開機就跑到BootMii去了

但是BootMii很少用到,每次都要按機器覺得很麻煩,怎麼辦?
這時候只要刪除或更名sd卡上bootmii的目錄,就不會執行BootMii了

下次要再用,再把它還原即可(可以用HackMii Installer中prepare SD的選項)

或者,可以在bootmii.ini中(建議用ultraedit,不要用notebpad)
將AUTOBOOT=SYSMENU和BOOTDELAY=5兩行前面的#拿掉
這樣開機的時候,BootMii等五秒沒有被操作,就會開進SYSMENU中了
如果要使用BootMii,五秒內按下操作鍵即可

3. 懶人包中的BannerBomb
如果SD卡中沒有要放任何的頻道,可以把BannerBomb放著不管
如果有要放頻道,在軟改後記得把懶人包中的
private\wii\title\aktn\content.bin備份後刪除
以免影響正常的頻道使用

4. HackMii Installer的刪除
HackMii Installer就是根目錄的一個boot.elf檔
如果日後用不到,就刪了它了吧,不會影響機器的使用

--

All Comments

Jessica avatarJessica2010-07-20
推!
Franklin avatarFranklin2010-07-24
好文推
Olga avatarOlga2010-07-29
icon.png, meta.xml 不是必要的, 只要有 boot.dol 就好了
Faithe avatarFaithe2010-07-31
對,我補充一下好了
Irma avatarIrma2010-08-04
膜拜
Adele avatarAdele2010-08-08
機子的還原預設功能 不會還原誤刪的東西 新上手須尤其注意
Tom avatarTom2010-08-11
好棒的文章!
Sierra Rose avatarSierra Rose2010-08-12
有個小問題,如果弄丟了KEYS.BIN可以再弄回來嗎?
William avatarWilliam2010-08-15
如果不是用有bug的bootmii public beta3就可以
Irma avatarIrma2010-08-20
其實nand.bin最後面1k的內容就是keys.bin
Ida avatarIda2010-08-20
只要不是beta3沒有keys.bin應該還是會讓你restore
應該說只要不是用beta3備份的話
beta3備份的nand.bin後面不含這個資訊
Jack avatarJack2010-08-21
如果你又丟掉keys.bin,就無法還原
Heather avatarHeather2010-08-26
推這篇
Edwina avatarEdwina2010-08-26
有看有推
Candice avatarCandice2010-08-27
Regina avatarRegina2010-08-31
推 居然出到四了
Anthony avatarAnthony2010-09-02
推,超專業
James avatarJames2010-09-05
推!
Kristin avatarKristin2010-09-07
推推!
Puput avatarPuput2010-09-09
請問所謂只要是新機器就不能讀一般DVD是否指不能讀備份
Harry avatarHarry2010-09-12
包括備份片、放一般檔案的片、DVD Video..都不行
Gilbert avatarGilbert2010-09-16
了解~看來Wii是越晚買就越麻煩="=
Kyle avatarKyle2010-09-18
希望對您有幫助 http://www.94istudy.com