概要

従来の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.exeEZ-FPGAコントロールプログラム
ezinv_sw.bitINVADERデザインファイル、ダイレクトスイッチ
ezinv_ps.bitINVADERデザインファイル、プレステパッド<
ezinv_j.ezfJTAGダウンロードテスト用スクリプト
ezinv_x.ezfセルフ起動用XCF02S書き込みスクリプト
ezinv_ld.ezfコンフィグROM用データのロードを行うサブスクリプト
xerase.ezfXCF02Sイレース用スクリプト

2.ROMイメージファイルを、デザインファイル内の"invader"ディレクトリにコピーします。
ファイル名内容
INVADERS.Hi8080コード 0000-07FFH
INVADERS.Gi8080コード 0800-0FFFH
INVADERS.Fi8080コード 1000-17FFH
INVADERS.Ei8080コード 1800-1FFFH
他のROMセットやマルチROMセットにする場合は、"ezinv_ld.ezf"を編集し、適切な位置にファイルをおきます。

オプション設定

"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+DOWNL1+R1+SELECT+START
コイン投入BTN2 + UPSELECT
1PスタートBTN2 + LEFTSTART
2PスタートBTN2 + RIGHTSTART
移動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)ソースファイル