2011年2月24日木曜日

EPM3032ALC44って・・・

何気に調べていて気がついた。

3032ってByteBlasterで対応できるから、もしかするとウチにある環境で簡単にできちゃったりするか?

デバイス自体は1個200円以下だしなぁ。

変に難しく考えてたけど・・・もしかして今の時代なら簡単なのか?

・・・いや、そんなことはないか?

どっちだろう?

週末読めたら読んでみよう。

うん、謎があるって面白い。

・・・つぶやきでした。

【追記:20110225/00.44】

とりあえず発注したけど、取り寄せ品含めて同時発送指定したから、来月中旬ぐらいでないと届かない。

まだFlashも届いてないし、のんびり考えることができるね。

MBM29F800TAをKazzoで直焼き、もう一歩?

PICT5816

昨日MMC5カートリッジ直付け版が完成した。

配線方法はna6koさんに教えて頂いたとおり、アドレスバスA0~A10を順番に、FlashのA-1をCPUのA11へ、以下FlashのA11をCPUA12、FlashのA12をCPUのA13へ、といった感じでずらして配線した。

他の配線は通常通りで。

(今回はCHRに4Mメンドイので256Kでw)

取り付け後にダンプのテストをすると、先に書き込んであったデータがまともに出てきたのでとりあえずOKかな~と書き込み準備をする。

mdc52

mask_getが11との事なので、flashdevice.nutを開き、上画像の最初の赤枠のようにMASKの追加をしてやる。

これを書かないとAnagoでデバイスリストが認識されないので表示されない。

で、デバイスのプロパティも追加する。

さて、できるかな~?

mdc53

左側の画像が書き込みモードですが、eraseは出来て書き込みを開始するも、compareエラーになってしまう(^-^;

compareのチェック外しておけば当然最後まで「書き込み動作」はするんだけど、残念ながら正常には書き込めていない。

確認のために右側の画像のようにダンプすると、全て0xffで埋まっているらしい・・・ってことはeraseは成功してるのかなぁ・・・

そんなわけで、一歩前進したけどまだ直接書き込めず(笑

ちょっと疑問なのが、今回使ったETROM基板はリビジョン02使ったんだけど、問題なかったんだっけかな?(^-^;

何となく手に取ったカートリッジが02だったから使ったんだけど、そもそもここで間違ってる可能性があったら01で作り直さなきゃねw

もう一つ、そういえばUnagi&AnagoってMASK10&14だけ対応だったような気が・・・flashdevice.nutに一行付け足すだけで対応できるのかな?

na6koさんのアドバイスを期待しつつ・・・もう一度配線見直そ~っと。

2011年2月20日日曜日

MBM29F800TAはKazzoで・・・

先日改造してTOP2049(or上位互換ライタ)で焼けるようになったパチスロ基板に載ってたMBM29F800TAですが、Kazz0+AnagoGUIで焼けるか試してみようと・・・昨日から作業してたのですが、結構な時間が掛ってしまった(^-^;

ファミコンで8Mbitのデバイスが使えるカートリッジはMMC5のカセットのみ(だよね?)なので、折角なのでMDC5カートリッジでも作ってみるかと作業開始。

で、どうせならばくてんさんが作ったのと同じようにCHRに4MbitのSRAM載せちゃえ~、ってやってたら超メンドかった。

PICT5809

W-RAMは256Kbit×2、CHRに使ってるSRAMは日立製のHM628511HJP-12というもので、1年ぐらい前に大須のタケイムセンで特価で300円で買ったもの。

今頃になってはじめて使った(笑

SOJタイプだから全ての足を延ばさなきゃいけないし、ピン配列はDIP32ピンのものとは異なるため、はっきり言って面倒。

実際一番時間が掛ってたりw

んで、とりあえずテストなのでソケット化して、今日なんとか完成した。

PICT5810

↑一応、W-RAMに使ったSRAMのテスト。

取り付け前にROMライタでテストしてるから問題ないとは思ってたけど。

スーファミカセットから取り外したSRAMは、テストすると稀に書き込みが不安定でベリファイエラーが出るものもあるので、SRAM取り付ける前にチェックしておいたほうがいいかもしれませんね。

で、Kazzo+AnagoGUIで直接書き込みですが、flashdevice.nutに追加して試したけど、とりあえずできませんでした(^-^;

ROMライタでも8bitデバイスモードでの書き込みは対応してないから、もしかすると根本的にダメかも?

データシート眺めてみてもそこら辺は良く理解できず(ぉ

RY/BYにLED付けて動作見てたんだけど、プログラム時に点滅しないので書き込みモードにすら移行できてない様子。

/WEも一応確認したけど問題なし・・・

う~ん・・・Q15/A-1ラインがあやしい気がしないでもないが、ちょっと勉強不足で何とも言えない。

mdc51

仕方がないので、とりあえずLinkerでBIN出力して、TOP2049で焼くということに。

8bitモードで書き込むことができればMMC5カートリッジをROMライタとして使えたのにね~。

ちょっと残念。

そんなわけで、現状8bit/16bit両対応のデバイスはKazzoで書き込み未定です(^-^;

8bitデバイスで容量が16MbitのTSOP(40ピン)なら入手簡単なので、いっそのことバンク切り替えて使うってのがいいのかも。

ま、とりあえずMMC5カートリッジで無事使えて満足です(^-^)

2011年2月18日金曜日

パチスロ基板搭載のFlashROMをTOP2049で焼く

以前、パチスロ基板のジャンクをEP-ROM目的で50枚以上ゲットしたのですが、その基板にはFlashROMも載っていた。

PICT5795

当時は16bitのデータが焼けるROMライタは持っておらず使い方もイマイチわからなかったので放置しておいたのですが、先日、ふとaitendoを覗いてみると、同じFlashROMが販売されていた

【追記:20110221/23.54】既に売り切れてしまったようです(汗

説明を見ても特別な記載は無く、pdfはTSOPのみのデータだけ・・・

焼けないと思ってたけど、もしかして普通に流通してるタイプで、TOP2049で普通に焼けるのか?と。

tsop0

で、クライアントを見ると確かに記載がある。

なんだ、焼けるのかぁ~、と焼いてみると・・・焼けないっ!

って、ダメじゃん(^-^;

読み込みは一応してるっぽいんだけど、書き込めない。

そもそもTOPシリーズ用のTSOP48ピン用のアダプタはaitendoでも他でも見たことがないし、おそらくこのPDIP変換基板付きは違うメーカーのROMライター用なのだろうね。

(因みに、SUPERPROシリーズ用のTSOP変換アダプタはaitendoで16,950円(!)します(^-^; デバイス取り外せるタイプだけど)

と、ここで諦めたのではFlashメモリマニア(いつから?)の端くれとしてダメでしょう、ってことで、折角なのでコイツをTOPシリーズで焼けるように改造してみました(笑

改造といってもそんなに難しくありません、3箇所ピン配列を変えるだけです。

tsop1

表側はパターンカット一箇所、TSOPの11ピン(/WE)を基板左上から4番目のピンへ配線、TSOPの15ピン(RY/BY)を基板左下から3番目のピンへ配線、基板右上から11ピンを基板裏のパターンへ。

tsop2

裏のパターンカットも1箇所、表からの配線をパターンカットした一方(/BYTE)へ配線。

基本はコレで完成で、以下のSOP44ピンの配列と同じになる。

tsop3

要するに、TSOP48ピン→PDIP(SOP)44ピンへ変換しただけ(笑

TSOPにはNCが4つ増えてるだけで、信号線は全く同じ。

RY/BYは配線しなくてもいいけど、データを焼く際に線が未接続になるので、確認の窓が出てくる。

ちょっと注意点というか、手抜きの部分を(ぉぃ

・基板左上から2番目のピンにもRY/BYが出力されてるけど使わないからパターンカットしていないが支障はない。

・基板左上から4番目のピンはTSOPの9ピン(NC)と繋がっているが支障はないのでパターンカットはしていない。

・/RESETはVccと接続されてるが動作には支障はない。

分離させようとするとTSOPを一度外さなきゃいけないので、慣れてないと無理かも。

上の処理をすると以下の感じに。

tsop4

最低限のことしかしてないけど、これで書き込み出来るようになる。

tsop5

あとは普通にTOP2049(or上位互換機)に取り付け、クライアントで44ピンデバイスを選択する。

tsop6

で、ちゃんと使えるようになる、と。

このMBM29F800TAは16bitでも8bitでも使えるので、ファミコンでもスーファミでもメガドラでも十分対応できる。

aitendoから賄賂貰ってるわけでもないし、よいしょするつもりは全く無いんだけど、実際変換基板付いてて200円なら安いよね。

別々で買ったら幾ら掛かることやらw

けど、aitendoは使用上の注意点とか書いといたほうがいいんじゃ(^-^;

ってここで書いても意味無いか。

この変換基板だけ取ってみても、単純に64MbitのTSOPデバイスが普通に載せられるから結構便利なんじゃないかなぁ。

いずれにしてもウチに放置してあったデバイスが普通に使えるようになってよかった(^-^)

これがKazzo+Anagoで使えるかはまだ試して無いから、そのうちMDC5カートリッジで試してみないとね。

プロテクト以外にブロックされた(笑

先日作ったネオジオポケットのフラッシュカートリッジ、無事にプロテクトを回避できて一件落着・・・と思ったのですが。

PICT5788

この方法だと、セーブ関連が全て無効になります(^-^;

ネオポケはFlashROMに直接セーブする(知らなかったw)為、デバイスを切り替えるとデバイスの書き込みプロセスが違うためにセーブできないってことだったのでした。

セーブ以外でもゲーム中に設定変更とか、何らかのFlashROMへの書き込み動作をした場合、正常にゲームに戻れるもの(カードファイター)もあればフリーズするもの(アルゼのパチスロ)もあります。

ベース(オリジナル)では当然問題なくセーブできるのですが、ゲーム中に/CEを切り替えると確定で電源が落ちるので、今回のデバイス切り替えでの対処方法は難しいかもしれません。

ま、とりあえずVii基板を使って動かせたのと、書き込みプロセス除けば全く問題なくゲームができるということで(^-^;

でまぁ、考えなくてもいいのにまた考えちゃって、完全に動作させる方法はあと2つある。

①オリジナルのFlashROMに何とか書き込んでみる。

ネオポケに使われているROMは市販のFlashROMと変わらないそうで、問題はセクタプロテクトが突破できるか?ということ。

セクタプロテクトはネオポケのみならず、中古物だと市販のFlashROMでも同じように掛けられてる場合があるんだけど、/RESETに12V入れてやると一時的に内容を書き換えられる、という機能が存在する。

これはFlavorさんが既に調査済みだけど、ま、やってみる価値はあるかな?

先回取った大花火のROMが残ってるので、それ使ってみようかね。

②PocketLinkerのカートリッジのクローンを作る。

PICT5793

私が所持しているFlashカートリッジに載ってるデバイスは全て型番などが消されてて全くわからない(笑

が、ここに載ってる写真から、FlashROMはSST39VF016-70-4C-EIと判明。

このデバイスのマニュファクチャーIDは0xBFなので、Toshiba製(0x98)とは違うから普通ではネオポケで認識されないはずだけど、右のCPLDでその辺を制御しているのでしょう。

残念ながらこのCPLDは上のリンク先でも不明だし、他にも見当たらなくて正確にはわからないんだけれども、テスターでピンアサインを調べた限りでは、ある程度的が絞れた。

んが、このメーカーのJTAGケーブル持ってないし知識も疎いので、この辺りはもう少し調べないといけない。

このCPLDのデータが抜けさえすれば、同じように作れるハズだ。

PocketLinkerの書き込み機にはカスタムチップ(GBX)が使われているので、データの書き込みはROMライタなりで書くことになるかな。

私は持ってるから使えるけど、汎用性を考え、あえて使わない方向で。

因みに、現在ではSST39VF016-70-4C-EIの入手は不可能に近い状態なのですが、幸いにも48pin仕様の姉妹品が入手可能だったので、とりあえず手配しておいた(w

とまぁ、そんなわけで・・・なんでネオポケにココまで真剣になってるんだろう?

う~ん、自分でもよくわからん(爆

直ぐには解決しないと思うけど、後はボチボチやります。

私がやる前に外国のプロジェクトのが先に公開されちゃったりするかもねw

推測だけど、多分外国方面のやり方は②だと思う。(←聞いてないから知らない

さて、違うことやるか。

2011年2月15日火曜日

うごうご~! NeogeoPocket FlashCartridge

ルーガじゃないよ(懐

成せば成る、成しても成らぬ時あれど、偶に成りえる時もある。

プロトタイプの完成~まんせ~

ネオジオポケットフラッシュカートリッジ作成プロジェクト(なのか?)クリア~

う~ん、素晴らしきカナ自己満足

まだネオポケです、とりあえず9割移植

2個前の記事で一旦終了しようかと思ったけどなかなか煮え切らず、ずるずるとしてるうちにネオポケに詳しい外国のFlavorさんにコメントいただき、まだ弄ってる自分がいるのでした。

Flavorさんがどんな人かはコメのリンク辿ったりすればわかるでしょう。

先人の方は既に何らかの打開策を見出しておられ、後はデザインのみとのこと。

最近SMS Power!見てた人はわかると思いますが、ゲームギアのFlashカートリッジ作った人とプロジェクトを進めているようです。

おかげさまでネオポケのプロテクトについていろいろとわかってきまして、あとは打開策のみ、というところまでは来ているのかな?

私がやろうとしてることはコメ見ていただくとして、とりあえず移植作業は9割ほどできた。

PICT5785

・・・いつもと同じような画像ですが(^-^;

あとは/CEの切り替え部分を作ればハード的にはとりあえず完成。

現状でVii基板の/CEをVccに入れておけば正常にオリジナルのゲームを起動できる事は確認した。

(オープンだと切れるかNGPのメニューが出る)

う~ん・・・一度でもうまく切り替えることができるのなら何とかなるかもしれないけど・・・

この方法で問題になるのは、データを焼く際に固有のゲームIDとサブIDをベースとなるゲームのIDに書き変えないといけないのが難点かな。

っても3バイト書きかえるだけだけど。

ゲームIDとサブIDを変えてもゲームが動くことはPocketLinkerのFlashで確認済み。

後は、果たして最初のチェックだけでゲーム中にチェックはされていないのか?という疑問点は残る。

それがあったら完全にアウト。

頭の中ではシミュレートできてるんだけど、現実はそんなに甘くないよね。

でも、この動くかどうかの瞬間がドキドキで止められません(ぇ?

ネオポケ序に。

PocketLinkerのFlashカートリッジは製造元もセクタプロテクトもちゃんとクリアしてるから動いて当たり前なのでした(笑

詳しくは調べてないし能力&環境的に調べられないので、書き込みプロセスがどうなってるかは知らないw

1個しかなくてFlash取り外すの勿体ないから下手に弄れないしぃ~

ゲームボーイやスーファミやメガドラとか、結構なFlashカートリッジがいろいろと作られてるのに対して、ネオポケのが作られないのはやっぱ難しい証拠なのかな。

え?需要が無いだけ?・・・いやいや、そんなことは(^-^;

ワンダースワンは詳しくは知らないけど、難しいのかなぁ・・・

あ、それと、電車でGo!2を入手したので、32Mbitカートリッジの仕様は何となく理解できた。

FlavorさんがRetrodeのとこでバンク切り替えは無い、と書いておられますが、まぁ、そうですね、バンク切り替えではなかったです。

正しくはチップ切り替えが正解か(笑

違うのは/CEのピンの配線と、Q1(D1)とQ3(D3)が入れ替わってるだけだと思われるので、Retrodeやホンコンでは・・・ソフトで対応できなければハード的にスイッチ切り替えてチップ1、チップ2と2回吸い出して結合すればいけるような気がしないでもない。

けど、まだ試してないので実際にどうなるかは定かではない。

とまぁ、そんなとこで、結局Flashはできそうでできなさそうだけどなんとかならないかなぁ、と1%でも期待しつつ・・・

次のテストは・・・オリジナルと同じゲーム焼いて、オリジナルで起動して、タイトルメニューで止まってる時にデバイス切り替えて、果たして動き続けるか?

これができれば脈はあるかも~??

さぁどっちだ!?

2011年2月11日金曜日

コメントが度々反映されない件について

今年に入ってから数件コメントが反映されないケースがありますが、コメントの設定のトコ見に行ったところ、どうもblogger.comがスパムと判断した単語が入っていた場合に、一度管理人が見て判別しないといけないらしい・・・
今日までは届いたメールから引用したのですが、今後はスパムフォルダに入れられたところから解除するようにします。
・・・とすれば多分反映されると思う(^-^;
ってことで、反映されなくてもちゃんとコメは届きますのでご承知くださいませ~

NGP 動作の変化を見てみる・・一旦終了じゃなかった

SNKデバイスのマニュファクチャーコードを見るのに、違うデバイスに成りすましてROMライタで読ませようと思ってたんだけども、配線がメンドイ&違う方向から攻めてみよう、と作戦(?)変更。

PICT5783

テストしたのは上のブツさんたちで、電源投入後のカセットの抜き差しなどでの変化をみてみた。

(壊れる原因になるので通常は止めましょう)

まず、アルゼのe-cup、これは最初の起動時にはNGPのオープニングが始まってから起動、その後電源を切り再度立ち上げると、NGPのオープニング無しでゲームが起動する。

(一度違うゲームを起動した後はNGPのオープニングから始まる)

カードファイターズ(以下CF)、キングオブファイターズR2(以下KOFR2)は常にNGPのオープニング後の起動。

e-cup、CF、KOFR2のどれでも同じだが、電源投入後、NGPのオープニング中にカートリッジを挿すと、メニュー画面になってゲームは起動しない。

e-cup、CF、KOFR2のどれでも同じだが、電源投入前にカートリッジを挿して電源ON、NGPのオープニング中に一度抜いて同じゲームを挿しなおすと、正常にゲームが起動する。

以上の事から、最低でも電源ONの直後に何らかのデータが本体で識別されていることがわかる。

e-cup、CF、KOFR2のどれでも同じだが、電源投入前にカートリッジを挿して電源ON、オープニング中に一度抜いて、違うゲームを挿すと、電源が切れてしまう。

(違うゲームとはフラッシュカートリッジ含む全てのカートリッジ)

③の結果を元に、KOFR2を起動し、NGPのオープニング中にVii基板(KOFR2焼き済み)を付けたフラッシュカートリッジに差し替えると、電源が落ちてしまう。

③の結果を元に、KOFR2を起動し、NGPのオープニング中にPocketLinker(KOFR2焼き済み)のフラッシュカートリッジに差し替えると、正常にゲームが起動する。

(CFでも同じく起動した)

⑥の結果を元に、PocketLinker(KOFR2焼き済み)のフラッシュカートリッジで起動し、NGPのオープニング中にKOFR2のカートリッジに差し替えると、正常にゲームが起動する。

PocketLinker(KOFR2焼き済み)のフラッシュカートリッジで起動し、NGPのオープニング中にVii基板(KOFR2焼き済み)を付けたフラッシュカートリッジに差し替えると、当然だが電源が落ちてしまう。

以上の事から、NGPのオープニング後にも何らかのチェックがされていることがわかる。

さらにライセンス物の異なるゲームが起動できないということは、個別のデータで識別されているということもわかる。

.

とまぁ、故障を承知でいろいろと試したわけですが、上のテストをした私の結論としては、デバイスのマニュファクチャーコードは関係ないのかな、と。

マニュファクチャーコードを見てたとしても、少なくともそれだけではない、と。

【訂正:20110212/12.39】

仕事中に何となく調べてて(ぉぃ)わかった。

マニュファクチャーコード読んでるのは確定で、プラスしてデバイスコードも読んでるそうだ。

(TC58FVT160AFT-70はデバイスコードが異なる)

それプラス、ゲームコードか何か、これはまだ不確定だけど
・・・ってまだ調べてるし(^-^;

【さらに訂正の変更:20110212/23.05】
最低限絶対必要なのはマニュファクチャーコードの0x98(←現在確定しているコード)で、デバイスコードはゲームによって異なる場合があるが、カートリッジの抜き差しで変更がない限りは動作する。

他にはゲームのIDコード(&h20、&h21を反転した数値)と、サブIDコード(&h22)で識別されている。

この2つのコードもカートの抜き差しで変更されない限り動作する。(数値そのものを改変しても動作可能)

結果、4つのコードをパスできればゲームを起動させることができる。

電源ON時のチェックとNGPのオープニング後のチェック、の2段チェックをクリアできなければならない。

これで決まり。

・・・問題はやっぱデバイスだなぁ・・・

あ、そうそう、先回のTC58FVT160ですが・・・通常はマニュファクチャーコードが0x98なのでパスできるハズなのですが、どうもNGPではコードが0x43で出力されるみたいで、結果起動しないぞ、という状態です(^-^;

/BYTEの仕業かとも思って配線変えてみたものの、結果は同じ・・・DCでは0x98で認識してるのにねぇ・・・なぜなのか、とりあえず未定。

【さらにさらに変更:20110213/16.22】

Flavorさんの情報から、市販のToshiba製チップを購入したとしても、セクタープロテクトが一致しない&マニュファクチャーコードが正常に認識しなくなる為、市販されているものではまず動かないでしょう。

どっか見えないところに個別IDとか記録されてるのかなぁ・・・

ま、ここまで動作がハッキリすると、単にデータを焼いただけでは絶対に動かないぞ、と諦めがつくというものだ(笑

このような識別などの解析にはやはりロジックアナライザーとかが必要なのでしょうね。

でもってPocketLinkerみたくCPLDとか使って制御するしかないのかな?

そんなものは持ってないし・・・知識も無いし・・・買うか?

いやいや、それはちょっと無謀すぎるw

そんなわけで、現在の私の能力値を超えたので、一旦ここらでネオジオポケットのフラッシュカートリッジ関連は終わりということで(^-^;

【訂正:20110212/21.50】

一旦終了のつもりがまだ終わらなかったのでもう少しだけ続く(爆

あ、通常未使用の3ピンだけれども、もしかすると、32Mbitの最上位アドレスがココかもしれない。

少なくともゲーム起動には一切関係の無いピンということは判明してる。

32Mbitのゲームを入手したら3ピンに配線でもして試してみようかな。

.

あと、関係ないけど序に今日のオフで買ったもの。

PICT5784

このMDのコントローラはメカニカルスティックじゃないからちょっと手触り悪いけど、持ってなかったから良しということでw

ポケミニのそだてやさんが綺麗な状態で105円はちょっと嬉しかったかも。

.

もういっちょ序。

PICT5781 PICT5782

クラニンのプラチナ特典のバッチセット。

昨日には届いてた。

これはこのまま棚に飾るのがベストなんだろうなぁ・・・裏で(ぇ?

2011年2月9日水曜日

TC58FVT160AFT-70届いた

ネオジオポケット、まだあれこれ考えてます。

先日コメ頂いて、興味本位でToshiba製のチップを購入してましたw

早々と今日届いててちょっとビックリ。

PICT5770

左のがそれで、容量は16Mbit、DCのBIOS1個分と同じ。

8bit/16bit切り替えられるタイプで、Viiに載ってるMXのチップと交換するだけですぐ使えるデバイスです。

A20とA21はNCになるからスイッチは無効になるから関係ない。

ngp1

マニュファクチャーコードは0098hで探していたものと一致。

で、早々チェ~ンジ!

PICT5772

さて、どうなるかな?

PICT5773

ドリームキャストで焼けるか不安だったけど、Fujitsu製と同じくマニュファクチャーUnknownだけで、問題なく書き込めた。

デバイスコードは関係ないみたいね(^-^;

・・・DC結構使えますぜw いやマジで。

Vii基板は別にして、市販のTSOP変換基板使って焼くようにすればかなり汎用性はあるよね、TSOPの3.3Vデバイス多いし。

って話が反れた。

さて、ネオポケの動作は?

・・・残念ながら動きませんでした(笑

ってことでメーカーコードも関係ないのかなぁ?

それとも違うメーカーか・・・

ま、このチップは他で十分利用価値はあるだろうから、これはこれでOKだけどね。

PICT5780

とりあえずSNKのチップのメーカーコード出してみたい。

と思ったりしてるけど、さて、どうやって配線しようか・・・

デバイス自体にハードプロテクト掛かってるとおそらくFFか00しか出てこないけど、他のFlashと同じプロテクトタイプなら/RESETをVccに入れるだけで出てくる・・・ハズだ。

ってことで、まだネオポケですw

2011年2月7日月曜日

番外編 DreamCastでViiのゲームを吸い出す

【追記:20110305/13.25】変態ですいません

↑ ついった~&mem*から来た人へ

初っ端から言い切りますが、吸い出しても屁の肥やしにもなりません(笑

全く使い道がないのでw

でも、一応ゲームのROMには変わりはないので、どんなデータなのか吸い出ししてみる。

ま、書き込みができるぐらいだから読み込みなんて簡単です。

最低限必要なものはコッチで作ったフラッシュROMリーダ&ライタ兼用のドリームキャストと、JJ1ODMさんのトコにあるDreamcast SD Rip ver1.0です。

BIOSの読み込みはバイトモードで読み込むので、Viiのカートリッジ基板も/BYTE出力の変更をしておく。

PICT5758

まずはオリジナルのBIOSから立ち上げ、メニューが出たらスイッチをフラッシュROM側へ切り替える。

DCでは16Mbitデータしか読み込めないので、バンクを切り替えて計4回BIOSを吸い出すことになる。

いちいち電源切らなくてもフラッシュROMのGNDとVccの切り替えを強引にやっても一応吸い出すことは可能だけど、電源切ったほうが間違いはない。

PICT5759 PICT5761

BIOS吸い出し選択すると表示がバグりますが無視してAボタンを押して進めればOK(笑

vii9

ウチにはVC-2とVC-3のカートリッジがあるので2つ分のデータを吸い出した。

vii10

ヘッダの部分を見てみると、ちゃっかりチェックサムは取っているらしい。

vii11

キャラクタは圧縮無しで作られてるようで。

Vii持ってる人は書き換えでもして遊べるかもね(笑

本体も無い、エミュも無いでは、私には全く必要の無いものなのでした。

以上、番外編でした。

2011年2月6日日曜日

NGPのフラッシュカートリッジを作成・・・結果は?

さて、先回のドリームキャストマルチBIOS化に引き続きDCのネタを・・・

ではありませんw

タイトル見てバレバレですが、ドリキャスのBIOS焼くフリしてNGPのゲームを書き込んだら動くのか?が気になって気になってマルチよりコッチが楽しみだったりしたのでした(笑

DreamCastのBIOSが書き込める、ということは、つまりはデータが書き込めるということ。

まず1つ目の問題となるのは、DreamShellで焼く際にBIOSの整合性をチェックしていたらアウトだったのですが、ありがたいことにどんなデータでも焼くことができることがわかった。

ということは、NGPのROMを焼けば、NGPの実機で動くんじゃね?と(^-^;

PICT5708

そんなわけで、使うのはDCマルチBIOS化と同じくViiのカートリッジ。

基板の加工はマルチBIOS化の時と同じようにしておく。

ここで2つ目の問題、DCはデータバスを16本フルに使いますが、ネオジオポケットのデータバスはファミコンと同じく8本です。

幸いにも使われているMX29LV640は/BYTEをHかLにすることで16bit⇔8bitの切り替えができるようになるから問題ない。

8bitで使用する際の配線のポイントだけ書くと、

・Vii基板の/BYTEをGNDに固定する

・Vii基板のQ15/A1ピンをNGPのA0へ入れる

・Vii基板のA0をNGPのA1に入れて、Vii基板のA1をNGPのA2へ入れて・・・以下のアドレスバスも同じようにずらして配線する

・Vii基板のQ8~Q14は使用しないがGNDへ接続する

といった具合に、アドレスバスを1ビットずらして接続していきます。

最上位アドレスから2本、A20とA21はDCマルチBIOS化と同じくスイッチでVccかGNDへ入れてやります。

WP/APPとRY/BYは未接続でOK。

ってことをやると、論理的には16Mbitまでのゲームを書き込んで読み込めるはずです。

あ、この配線はNGPフラッシュカートリッジ側の配線です。

DC側はそのままで、弄っちゃダメです。

・・・と、伸ばしても仕方が無いので答えを書いちゃうと、

動きませんでした...orz

【訂正:20110216/19.10】

その後に動かすことができました~

その動画はこっち

以下の内容は古いので適当に見ちゃってください(^-^;

いや~、まいったまいった・・・

ん~・・・動かなかったけど、折角作ったので書いておきます。

まず、ROMファイルの名前を、拡張子が「BIOS」になるようにします。

NGP_KOF_R2.BINだったらNGP_KOF_R2.BIOSといった具合にして、SDカードに適当にコピーする。

PICT5754

で、DreamShellのファイルマネージャから、作ったNGPのデータをDCBIOSと同じように焼く。

これでROMカートリッジとしては完成。

次はベースとなる土台作り。

PICT5723

複数持ってる大花火をベースで使う。

PICT5725

チップは要らないけど、一応ちゃんと取り外し、基板を切る。

PICT5731

上で書いた8bit用の配線をする。

PICT5733

ケースも加工して何とか収まるように仕上げる。

PICT5734 PICT5737

挿すと上のような感じで、なかなかにいい感じに仕上がったと思っている。

PICT5735

で、動かすと、メニューが出てきてゲーム起動しないのね~(;_;)

となって、かなり力が抜けてガックリとなった・・・orz

PICT5747

もしかしてデータの書き込みおかしいんじゃ?

と思ってRetrodeで吸い出してみる。

vii8

・・・全く同じだから、配線のミスでは無いだろう・・・

(因みにFCの時の教訓で/WEをVccに入れたけどダメだった)

むむぅ~・・・お手上げです(-_-;

NGPはプロテクト無いものとばかり思ってたから動くと確信してカートリッジそれなりに綺麗に加工して作ったんだよネェ・・・

もう、どっと疲れがorz

なのに動かないって事は・・・マニュファクチャラーコードでも読んでいたりするのかしらん。

はたまた他にトリックが?

PICT5756

そうなるとコイツはその辺解析されて作られてるのかなぁ・・・

気になるのは通常使用しない3ピンが使われているのは使われているが・・・

海外にも情報が無いので、とりあえず諦めで。

ま、結局、論理的には動くけど物理的には動かなかったぞ、と(^-^;

でも、今回コレを作ったおかげで収穫はあった。

通常、ROMライターでTSOPデバイスを焼く場合、専用の変換アダプタ買わないといけないんだけど、TSOP用は安くても1万円近く、下手をすると2、3万円ぐらいするので、ドリームキャストを使って64Mbitまでのデータを焼ける(4分割でね)のは非常に安上がりで便利。

16bit、8bit、両方の使い方(配線方法など)を理解できたので、今後対応するデバイスを焼く際には簡単に応用できる。

これが理解できただけで十分だぁ~!!

・・・と自分に言い聞かせて締めます。

【追記】

よくよく考えたらNGPって16bitマシンだよな・・・

・・・なんでデータバスが8本なんだ?

と頭に浮かんだけど、そんなマシンは他にもあるし、関係ないか。

DC 意外なブツ(?)でマルチBIOS化

え~、メインでやりたかった結果が出たのでドリームキャストのマルチBIOS化の事を書こうと思います。

まず、私は今回のDC弄る際に、全てあやすけさんのところで知識を入れてます。

詳しく書いていただいて感謝しますm(_ _)m

今回のマルチBIOS化についても基本はあやすけさんのところを見ていただいて、応用として参考にしていただけたら、と。

ま、実際マルチ化しても私にとってDCとしてのメリットが全然無い(笑)ので、改造を楽しむ&別のことがやりたかったって事でマルチ化しちゃいましたw

このマルチBIOS化するのに必要なデバイスとして、MX29LV160(16Mbit)のSOP版or互換品が必要になるのですが、如何せん古いデバイスなので既に生産していない=国内では入手が難しいため、なかなか手を出しにくいのが現状です。

そこで私が思いついたブツの登場になるのですが・・・スイマセン・・・このブツも古くて今では入手が難しいかもしれません(ぉぃ!

本体に関してはヤバイ(?)感じのものかも(ぇ?

そのブツとはっ!

PICT5746

Wii似のViiのカートリッジです!

意外で・・・・意外でしょ?

因みに私はVii本体持ってません

何でカートリッジだけあるかっていうと・・・昔パチがジャンク扱いで放出した際に安かったから何となく買っていたんですねぇ。

その頃はFC弄ってる時で、メモリに関して興味があったからかな。

vii3

カートリッジを開けてみると、VC-2の方にはMX29LV640が使われていた。

ニンテンとか大手は書き込みできないマスクROMが使われているけど、中華なブツには得てして普通のフラッシュが使われていたりします。

黒ツブシされてたり刻印消されててわからない場合が多いけどね(^-^;

型番からわかるようにこのデバイスは64MbitのフラッシュROMで、動作電圧も3.3V仕様です。

ということは、単純にDCのBIOSが4個入れられる計算になります。

SOP版みたいに小亀取り付けは無理だけど、コネクタ付ければいけるんではないか、と。

が、Viiのカートリッジのピンアサインのデータなんてどこ探しても出てくるわけが無く・・・仕方が無いのでトレースして調べることからはじめました。

PICT5715

メンドかったけど、確実にトレースするために実装部品を取り外してチェックする。

vii5 vii4

↑オリジナル状態の表裏のピンアサイン↑

Viiのカートリッジのピンアサインは全て上のようになってると思います。

残念ながらオリジナルの状態ではDCで使えないので、少し手を加えます。

vii6

↑部品面のピンアサインはオリジナルと同じ

vii7

部品面の処理により、Vccと接続されていた/BYTEを分離して未使用ピンへ出力させる。

抵抗を取るのは読み書きを安定させるため。

一応、/BYTEを分離する理由ですが、Vccと接続されてるとワードモードでしか動かないから。

DCの読み書きにはどうもバイトモードで動いているらしいので分離させる必要がある。

それと、WP/APPRY/BYは通常未接続でOK。

RY/BYにLEDを繋げれば視覚的に動作しているか確認できるけどね。

肝心の64Mbitデバイスを16Mbitデバイスとして認識させる方法ですが、以前ファミコンのトコでも書いた概念をそのまま適用します。

dc_multibios

64Mbitデバイスはアドレスバスが16Mbitデバイスより2本多いので、スイッチ2個を使い書き込むバンクを切り替えるようにする。

以上を踏まえた上で配線したウチのドリームキャストさん↓

PICT5738

A20、A21、WP/APP、RY/BY以外はMX29LV160の配線と全く同じなので、あやすけさんのところに載ってる配線通りでOK。

注意することは、必要以上に配線を長くしないほうがよい、ってことかな。

誤動作の原因になるので。

コネクタはジャンクPCのマザボからPCIコネクタ取って再利用です。

PICT5750 PICT5749

あとはオリジナルBIOSからDreamShellを立ち上げ、インストールして正常に書き込めれば完了です(^-^)

因みに、上の写真で使ってるのは7in1のカートリッジに入ってるデバイスですが、10in1のカートリッジには富士通製のチップが使われています。

PICT5744

左の基板が10in1に入ってる富士通製64Mbitフラッシュメモリー

PICT5739

マニュファクチャラーコードが識別できてないのでエラー吐いてますが、デバイスコードがMXと同じなので正常に消去&書き込むことができる。

そんなわけで、Viiのカートリッジを使うことで無事マルチBIOS化することができました。

ってことで、記念に動画です↓

↑書き込み途中、ちょっと時間が掛かるので早送りしてます(笑

MXのメモリはアクセススピード90ns、富士通のメモリは70ns、これが直接関係してるのかわからないけど、富士通のほうが書き込み速度が早かった。

オリジナルBIOS+4BIOS使えるので・・・って使うのか??

っていう疑問が沸いてきますよね~?

そこなんですよ、大事なところは。

初めのほうにもチラっと書いたけど、私はDCのマルチBIOSが目的でコレやったわけではありませんw

ま、ここ見て感の鋭い方はどんな使い方ができるのか直ぐ想像できると思います。

でもってメインで考えてたことを実践してみたわけですが、果たして結果は??

次回をお楽しみに~、って、動画最後まで見るとわかっちゃうけどねw

あ、そうだ、DCのマルチBIOSかのみの目的であれば、カートリッジのピンに直接はんだ付けして内蔵しちゃったほうがスッキリできますので、無理してコネクタ付けなくても構わないです~

【追記】

TSOPデバイスなら今でも入手できるところはそれなりにありますから、市販の変換基板買って作ることは可能だね。