概要
従来のEZ-ARFADEを、EZ-FPGA Rev2.0基板で追加されたコンフィグレーションROMでセルフ起動できるようにしたものです。
セルフ起動とROMデータのロードには、ezfc.exeとxcf_load()モジュールを使用しています。この変更に伴いキーボードからのコントロールは削除して、代わりにプレイステーション用パッドで操作できるデザインを追加しました。
ゲーム用ROMの容量は32KBytes以下の物が多いので、32KBytesまでのROMセットを4つ切り替えて起動できるマルチROM化を行っています。
今回は対応していませんが、FPGAの回路にはまだ余裕があるので、カラー化やサンプリング音のサウンド再生などの機能追加も可能だと思います。
2006.3.2版からVGA出力を追加しました。
インベーダー ルナレスキュー ギャラクシーウォーズ バルーンボンバー
回路構成/制作方法
EZ-FPGAは、コンフィグROMを有効の状態で制作します。
M0,M1=ショート、M2=オープン,SJ2=ショート,SJ6 & SJ7=ENA側ショート
mini EZ-USB無しでセルフ起動させる場合、EZ-FPGA半田面に24MHzのSMTオシレータを実装するか、電源供給基板に24MHz発振器を付けるなどで、24MHzクロックをEZ-FPGAに供給します。
次にPBSRAM基板を加工します。
コンフィグROMからユーザーデータをリードする為にはFPGAのCCLKピンをI/Oピンで制御する必要があるため、PBSRAM基板のCN3-1とCN2-3を、1KΩの抵抗を通して結線します。
カメレオンUSBのCN2-3はNCなので、配線した状態でもPBSRAM基板を兼用することが可能ですが、配線がPBSRAMの信号の上をまたぐため、CN3-1(プローブのEXT3)を使用するとノイズ源になる可能性があります。
また、プレステパッドを使用する場合は、PBSRAM基板の10ピンコネクタにヘッダピンを立てると、コネクタ経由で付加基板に+3.3Vを供給できます。
EZ-ARCADE2回路図に従って、追加回路を制作します。
セルフ起動やプレステパッド対応の理由から、以前のEZARCADEとはコントローラのピン配置が異なっています。
インベーダーに必要な回路は、抵抗2本のNTSCモノクロビデオ出力とコントロール部分だけなので、VGA/HDTV部のビデオDACやオーディオDAC回路は製作しなくてもかまいません。
プレステパッド用コネクタの配線時には、ピン番号の向きに注意してください。
向かって左端が9ピン(ACK)、右端が1ピン(RXD)
基板が完成したら、EZ-FPGAにPBSRAM基板と付加基板を装着し、NTSCビデオ出力からテレビ等のビデオ入力に接続します。
ビデオ出力のみ PACMAN兼用、プレステパッド版
デザインファイルの準備
1.EZ-INVADER2実行ファイルを解凍して下さい
ファイル名 内容 ezfc.exe EZ-FPGAコントロールプログラム ezinv_sw.bit INVADERデザインファイル、ダイレクトスイッチ ezinv_ps.bit INVADERデザインファイル、プレステパッド< ezinv_j.ezf JTAGダウンロードテスト用スクリプト ezinv_x.ezf セルフ起動用XCF02S書き込みスクリプト ezinv_ld.ezf コンフィグROM用データのロードを行うサブスクリプト xerase.ezf XCF02Sイレース用スクリプト
2.ROMイメージファイルを、デザインファイル内の"invader"ディレクトリにコピーします。
他のROMセットやマルチROMセットにする場合は、"ezinv_ld.ezf"を編集し、適切な位置にファイルをおきます。
ファイル名 内容 INVADERS.H i8080コード 0000-07FFH INVADERS.G i8080コード 0800-0FFFH INVADERS.F i8080コード 1000-17FFH INVADERS.E i8080コード 1800-1FFFH
オプション設定
"ezinv_j.ezf"や"ezinv_x.ezf"をテキストエディタで開いて編集します。
"jinit"の行を変更すると、JTAGケーブルをXilinx Paralell CableIII(または互換品)に変更することができます。
"load xxxx.bit,00000"の行を変更で、プレステパッド対応コントローラのデザインに切り換えることが出来ます。
ROM set2〜4の"load"命令のコメントを外すか記述して、異なるROMイメージのファイルを追加するとマルチROM指定となり、リセットする度に最大4種類のROMセットを切り換えられます。
動作確認
まずは、上記で制作したEZ-FPGAをmini EZ-USBと繋ぎ、PCに接続します。
予め、EZ-USBのデバイスドライバのインストールとセットアップは済ませておいて下さい。
ezinv2のアーカイブを解凍したら、invaderのROMイメージファイルを解凍したディレクトリにコピーします。
必要なROMイメージについては、EZARCADEのページを参照して下さい。
すでにコンフィグROMにデザインが書き込まれている場合には、エクスプローラから"xerase.ezf"を"ezfc.exe"にドラッグ&ドロップして、コンフィグROMをイレースしておきます。
準備が出来たらエクスプローラから"ezinv_j.ezf"を"ezfc.exe"にドラッグ&ドロップします。
エラー表示が無く、TVに画面が映ればテストはOKです。
ここで動かない場合は、ROMイメージのファイル名等を確認して下さい。
つぎに、コンフィグROMに書き込みを行います。
エクスプローラから"ezinv_x.ezf"を"ezfc.exe"にドラッグ&ドロップします。
しばらくしてOKがでれば書き込み終了です。
一度USBケーブルを抜き、もう一度差んで電源を再投入します。
DONE-LEDが点灯から消灯に変化すれば、FPGAのコンフィグレーションは成功しています。
DONE-LEDが消灯しない場合は、EZ-FPGAのジャンパ等を再確認します。
DONE-LEDが消灯していて画面が表示されず、JTAG経由で成功している場合は、PBSRAM基板のCCLKの配線を再確認します。
操作方法
操作 ダイレクトスイッチ プレステパッド リセット(ROM切り替え) LEFT+RIGHT+UP+DOWN L1+R1+SELECT+START コイン投入 BTN2 + UP SELECT 1Pスタート BTN2 + LEFT START 2Pスタート BTN2 + RIGHT START 移動 LEFT,RIGHT 十字キー 発射 BTN1 ○ボタン
動作確認済ゲーム一覧
Midway 8080ボード
−Space Invader(invaders)
−Baloon Bomber(ballbomb):モノクロ表示
−GalaxyWars TaitoSet?(galxwart)
−lunar rescue(lrescue):モノクロ表示
ダウンロード
EZ-ARCADE2回路図
EZ-INVADER(060302)実行ファイル
EZ-INVADER(060302)ソースファイル
過去のバージョン
EZ-INVADER(060217)実行ファイル
EZ-INVADER(060217)ソースファイル