2010年10月30日土曜日

NES Anago GUI テスト版、書き込みのお試し

今朝方吸い出し部分だけチラッと書いて寝てしまったので、書き込みも試してみる。

anagogui6 ←普通に書き込み

GUIなのでパッと見で分かると思いますが、programタブへ移動して書き込みたいメモリマッパータイプのスクリプトファイル、ROMイメージ、使用するFlashメモリを選択後にprogramボタンを押すだけ・・・って書くまでもないと思うけど。

上の例だとMMC1のFF2、PRG-ROMだけなのでCHRはemptyでスキップ。

FlashメモリはデフォでAM29F040Bになっている。

スキップは手動でやらなくても通常はAnagoが自動判別する。

CHR-ROM仕様のカートリッジを使う時にPRGは書き換えたくないなぁ、とかいう時以外は気にしなくてもよい。

programボタン横のcompareのチェックを入れておけば16Kbyteごとに書き込みエラーが無いか比較してくれるので、書き込み時間を気にするのでなければチェックを入れておいたほうが安心できるね。

anagogui7 ←半角カナも問題無い

半角英数、全&半角スペース、半角カナ、全角ひらカナのファイルでも問題ない。

上の画像で書き込みエラーが出ているのは、W29C020をリードモードで書き込んだ際に出たエラーで、これはW29C020の特性なので正常な動作だから勘違いしないように。

compareのチェックを入れてると教えてくれて止まるから分かり易い、という例。

anagogui9

上の画像はスーパーマリオ3(MMC3)を書き込んだ際のエラーで、メッセージウィンドウのエラーを見るとaf:1、image:4って出てますが、コレはスクリプトはマッパー1だけどROMイメージはマッパー4だぞ~って教えてくれてる。

mmc3のスクリプト選べば書き込めるって事がすぐにわかるよね。

書き込み中にウィンドウサイズ変えたり他の作業してても大丈夫。

一つバグを上げるとすると、

anagogui10 ←スキップした後に最大化してから戻すと

anagogui11 ←右詰めになってしまう(^-^;

anagogui12 ←書き込みは問題ない

んが、書き込み動作には問題が無いし、書き込み時に再度最大化してからウィンドウサイズ戻してやれば元に戻る。

とまぁ、普通に使う分にはテスト版と言えど全く問題ありません(笑

デバイス(Flashメモリ)の追加もflashdevice.nutに追記すれば反映されるので簡単に環境構築できる。

あ、versionタブの画像はあまり気にしないように・・・いや、一応ジョークだから見るべきか(笑

【追記】

そういえば、SRAM(セーブデータ)の書き換えにはまだ対応していない。

4 件のコメント:

na6ko さんのコメント...

テスト参加ありがとうございます。

コマンドラインでスペースがあるファイル... てのは""で囲めば、cui でも対応できます。

データベースは、NesCartDB さんぐらい信憑性のあるところなら使ってもいいかなと思います。API を作ってくれたらいいんだけどな。
これを実装してないのは、公然の秘密の答え合わせをしてもねぇ... いまさら感があるのと、信憑性の低い DB を使いたくないの2点で後回しになってます。

書き込みモードのリサイズでずれるうんぬんは直しておきます。「↑ドラクエ4の例、忍者らホイ!も問題無し」の画像で 0x000000/0x000001 って出るのはバグなんですが、再現手順が分かるなら教えてください。こっちでは再現できなかった。

続きは今夜の野球が終わってからね。

ぽんRev さんのコメント...

お世話になります~(^-^)
GUI化お疲れ様です~

>""で囲めば、cui でも対応できます。
あ、ホントだ(^-^;
これってDOS標準の機能だったんですね。
今まで全く知りませんでしたw(爆

>0x000000/0x000001 って出るのはバグ
これはウチの環境では常に出ますね。
1台目:WinXP-PRO-SP2-found 5 busses
2台目:WinXP-Home-SP2-found 3 busses
Kazzo1.0&2.0どちらも01が出る。
といった感じで、逆にそれ以外見たことが無い(^-^;
ん~なんだろ。
序にこのテストで一つ気づいたのですが、found 3 bussesのPCでGUI使って吸い出しすると異常に時間が掛かります。(データは正常)
CUIではDQ4の吸い出しに十数秒ですが、GUIだと5,6分掛かりました。
found 5 bussesだとCUIもGUIも大差ないんですが。
ので、Winの環境によって動作結果が異なってくる可能性がありますね。

na6ko さんのコメント...

0x000000/0x000001 の表示のバグ、リサイズ時の skip の表示のバグは原因は突き止めました。そのうち直します。

転送速度に関わる実装は gui/cui ともに共用してるので差は出ないはずです。usb ハブを経由するとなぜか早くなるのでそこらへんかなぁ?

ここらの安定を求めると at90usb162 を使って再設計しないとだめなのかな。とか。難しいところです。

ぽんRev さんのコメント...

バグの原因がわかってよかったです(^-^)

正直、Winで速度が遅くなった原因はハッキリわかりませんね。
もしかしたら試しで使ったVAIOのせいかもしれないし(笑

ところで、flashdevice.nutにAM29F010を追加するとAM29F010がデフォになるんですね(^-^;
AM29F040Bが一番良く使うので、出来たらデバイス追加後も040B固定になると嬉しいかなぁ・・・と個人的なわがままを一応書いてみました(爆

正式版楽しみにしてます~(^-^)