2007年03月18日

バージョンアップボード4

DebugUtilityでバージョンアップボードのROMを読めるように処理を追加。

> そのあと無限ループにはまっている模様。

ROMエリア0のバンク0fhに割り当てるべきメモリを
間違って1fhに割り当てていただけだった・・・(;_;)

修正後、起動直前まで動くが、
Readyの表示が出ない。

ステップ実行して調べたところ、
システムメモリエリアのバンク0fhを選択した状態で、
セグメントB2xxh(xxは忘れた)あたりを読み取って
何かチェックしている。

バンク0fhに最初に切り替える部分を特定して、
周囲の処理を見たところ、
ポートFF3hの下位ニブルに09hを出力したのち、
B2000h-B3FFFhのチェックサムを取っている。
ということで

システムメモリエリアバンクバンク0Fh
 ポートFF3h bit3-0=9 バックアップRAM(B2000h-B3FFFh)

ということと思われる。

この仕様でメモリリードのみ実装。
新たにメモリを設けるのではなく、VA2のバックアップメモリの
B2000h-にマッピングすることにした。

これでPC-Engineは起動するようになった。

メモリライトはまた後日。



拡張スロットに置いたデバイスで、B2000h-B3FFFhに
メモリを配置しているということは、
98用EMSメモリなどをこの領域に設定すると
衝突してダメ、ということなのだろうか・・・



posted by Shinra at 21:13| Comment(1) | TrackBack(0) | EMU | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
順調に進んでいるようで
何よりです。
さすがはShinraさんです。
20年間の謎が次々と明かされていく様子を
興味深く拝見しています。
98用EMS、昔、挑戦して結局断念したのですが、
あれは私の技術不足のせいではなかった
可能性もあるのですね。
驚きです。
Posted by 釜房一号 at 2007年03月18日 23:37
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。