現: 2020-12-26 (土) 15:07:50 yuji ソース
Line 1: Line 1:
 +#contents
 +*Wiiって [#v84e1f76]
 +Wiiで,Backupされたゲームなんかを動かそうとドライブにDISCを入れてもゲームは動きません。DVDも再生できないし,自作したソフトなんかも動かすことは出来ない。任天堂が基本的にWiiは専用機にしているからなんだけど,Wiiを改造して動かそうと考えた人たちがいます :D ~
 +やり方は,WiiにModチップって呼ばれるICを接続して,Wiiのドライブからデータを読み取るところに細工するようです。~
 +また最近トワイライト・ハックと呼ばれるゼルダのバグを利用してユーザープログラムを動かすことが発見され,利用されるようになって来たようだ。
 +
 +*Modチップ [#kd12d12a]
 +市販されているModチップ(改造用チップ)は,表向きは日本では購入できないし(秋葉原で5000円ぐらいで購入できるらしい。また通販でも購入可能),それを取り付けて楽しむことも違法のようです。自分で自作して取り付けて楽しむぶんには,問題ないようだが・・・
 +
 +Wiiは既にドライブ・コントローラーでModチップ対策が行われているようで,新しいWiiになればなるほど,取り付けが大変になっていってるようだ。見分けるにはWiiを分解して,ドライブ・コントローラーに表記されているラベルで判断できます。DMS,D2A,D2Bなら比較的簡単にModチップを取り付けられるみたいだけど,D2BでICの足を切っているものもあるんで,この場合は切られた足に直接半田付けしないといけないんで,ちょっと大変かな。ラッキーにもおいらのWiiは,「DMS」で初期のタイプのようでした :D (最近は,D2C,D2Dと任天堂も対策してきている)
 +
 +#ref(dms.jpg,20%,around)
 +← おいらのWiiはDMSと初期の物だった。ラッキー :)
 +
 +#img(,clear)
 +
 +**Modチップの自作 [#w94f5880]
 +ということで,Modチップの自作にトライしてみました。自作といってもWiiの解析から始めるのは大変なわけなんで,すでに公開されている情報を元にトライすることにした。
 +
 +***回路 [#l069a429]
 +自作したModチップの回路図
 + ATmega168                      Wii
 + TQFP32          Connector      DVD Driver Chip
 + PC0    23  ======= 5 ======== CLOCK(5)
 + PB5    17  ======= 5((WiiKey互換用))
 + PC1    24  ======= 4 ======== INPUT(4)
 + PB3    15  ======= 4((WiiKey互換用))
 + PC2    25  ======= 6 ======== OUTPUT(6)
 + PB4    16  ======= 6((WiiKey互換用))
 + PB1    13  ======= 3 ======== (3)((WiiKey互換用))
 + GND    3,5  ======= 2 ======== GND
 + VCC      6  ======= 1 ======== VCC
 + PC3    26  (A)LED(K)==R(470)==GND
 +             VCC==C(0.1uF)==GND
 +
 +Wiiとの接続
 + Wii PCBのパターン
 +     GND(2)  VCC(1)
 +     3 4 5
 +       x 6
 +
 +一応[[WiiKey:http://www.wiikey.cn/]]互換にもなるようにしてみたけど,たぶん[[Wiikey:http://www.wiikey.cn/]]のファームは動作しないと思う。(CPUが違うからね)
 +
 +***取り付け [#v8eba49e]
 +#ref(自作チップ.jpg,20%,around)
 +こんなふうに取り付けた。Modチップはいつでもコネクタから外せるようになっています。別のModチップも取り付けられる。
 +
 +#img(,clear)
 +
 +***Firmware [#f73bf626]
 +ModチップのFirmwareとしては,[[OpenWiiプロジェクト:http://www.openwii.org/]]というソース公開されている物がある。~
 +[[OpenWii:http://www.openwii.org/]]のターゲットのCPUには,PIC675/629,MSP430,AVR(AT90S2313,ATmega8)をサポートしているようだが,[[OpenWii:http://www.openwii.org/]]ではサポートしていないけど,手持ちのAVRにATmega168(QFP32)があったんでそれを使うことにした。~
 +公開されているソースはATmega8用なのでそのままでは動作しない。ATmega168で動作するようにソースを適当に変更した。変更した所は,ブートローダー,システムクロック,リンカースクリプト,ヒューズビットぐらいです。~
 +システムクロックは,内臓RC発振で8MHzで使うようにしました。
 +
 +-Memory Map
 + $0000
 +     Application ROM
 +     15360byte=7680word
 + $1E00
 +     Bootloader Program
 +     1024byte=512word
 + $1FFF
 +
 + SRAM
 +     $0100-$04FF
 + 
 +-Fuse Setting
 +     lfuse: 0xe2
 +     hfuse: 0xdf
 +     efuse: 0x03
 +
 +-EEPROM(JAP Mode)
 +     0x00,0x60
 +
 +Firmwareはブートローダーを入れてあるんで,WiiにDiskを挿入して間接的にFirmwareをアップデート出来ます。でもModチップを簡単に外せるようにしたんで,直接書き換える方が簡単だけど・・・ ;)
 +
 +-ATmega168用の変更を含む全ソース &ref(openwii2.4_m168src.zip);
 +
 +-コンパイル~
 +コンパイルするには,
 +--AVR-GCC(WinAVR)~
 +最新のだとコンパイルエラーが出るんで,[[WinAVR-20060421:http://yueno.homeip.net/var/pub/develop/atmel/Development%20Tool/gcc/old/WinAVR-20060421-install.exe]]をとりあえず使った方がいいかも。
 +--MN10200用GCC~
 +Wiiはドライブ・コントローラーにPanasonicのMN10200っていうCPUを使っています。こいつのSoftwareをコンパイルするのに,MN10200用にコンパイルしたGCCが必要です。コンパイル済みのWindows用[[Ruputer向けToolChain:http://yueno.homeip.net/var/pub/develop/mn10200/mn10200gcc_ruputer.zip]]を見つけたんでこれを使います。(GCCをコンパイルして使っても,もちろんOKですが・・・)
 +
 +----
 +#comment
  

  • Game/Wii/ModChip のバックアップ差分(No. All)
    • 現: 2020-12-26 (土) 15:07:50 yuji

トップ   差分 バックアップ 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 1693, today: 2, yesterday: 0