2040年01月01日

目次

 元々はPC-6001をFPGAで実現しよう、のページだったのですが、P6のハード関連全般を扱っています。

 当ブログ内の解析記事、製作記事、改造記事などに関しては、素人によるものです。記事が誤っている可能性もありますので、使用する際には使用する方の責任でお願いします(当方では責任を持ちません)。


 PC-6001F(FPGA版P6)関連
 Ver.0235-0053
 Ver.0234-0052

 SD6031/SD6031WIF/SD6031Air関連
 SD6031Air用ファーム変更(2)
 イメージファイル選択プログラムver2.0
 マルチディスク対応
 マルチディスク対応追記
 SD6031コマンド一覧

 88→P6変換ソフト関連
 PALADIN
 MELT DOWN  /  MELT DOWN(PC-6001mk2/PC-6601用)
 魔法使いの妹子  /  魔法使いの妹子U
 ザナドゥ  /  ザナドゥユーザデータコピー
 ファンタジー
 ウィザードリィ1/2/3
 マイトアンドマジック
 ファンタジー2
 イシターの復活
 ポッキー
 イントルーダー
 ランス
 リトルバンパイア
 D.P.S.
 あぶない天狗伝説
 OLION80
 ログイン版ドラゴンスレイヤー
 表参道アドベンチャー

 P6ソフト関連
 CARRYGAME改造
 CARRYGAME でばぐ
 OLION 2トリガ化
 QUEST ディスク起動
 66用ロードランナーの外付けドライブ起動
 66用コロニーオデッセイをmk2などで動かす
 XOR でばぐ
 HEARTMONS でばぐ
 アステロイドチューブ でばぐ
 南青山アドベンチャー カラー化

 その他の記事は、カテゴリーから検索して下さい。

posted by えすび at 00:00| Comment(0) | カテゴリ無し | このブログの読者になる | 更新情報をチェックする

2017年01月16日

MeltDown(6)

  MELT DOWN for P6SR/P6mk2


  今更ですがMELT DOWNの実行画面をアップします。
  上の4つは、mk2SR/66SR用、下の2つはmk2/66用です。

  シューティングは、スクリーンショットを取るのが難しい...


170116_01_MeltDown実行画面1.png

170116_01_MeltDown実行画面2.png

170116_01_MeltDown実行画面3.png

170116_01_MeltDown実行画面4.png

170116_01_MeltDown実行画面5.png

170116_01_MeltDown実行画面6.png

2016年11月23日

RGBコンバータ(6)

  RGBコンバータの件

  動作しないモニタがありました。

 ・DELL E197FP
 ・SHARP AQUOS LC-22K5

  AQUOSの方は、映るんですが画面が小刻みに上下します。
  理由も大体分かっていて(VSYNCをたまに間引いているから)、直せるかもしれません。


  問題はDELLのモニタの方で、31KHz×60Hzと認識してくれません。
  原因は全くわかっていません。対処しないかも...


  上記の結果なので、他のモニタでも同様の症状が出る可能性があります。




posted by えすび at 23:38| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

RGBコンバータ(5)(リリースc1)

  RGBコンバータの件

  DesignWare 2003年10月号付録Cycloneボード版をリリースします。

ver4_c1.zip

  多分、マルツで売られているボードでも動作すると思います。


  付録のボードの場合、コンフィグ用ROMが付いていないので、入手する必要があります。
  EPCS1 が必要なんですが、EPCS4以上でも代用が効きます。
  さらに、EPCSシリーズの代わりに、STマイクロのM25Pシリーズが使えます。

http://www.hdl.co.jp/altera/epcs_m25p/index.html

  EPCS4相当が、M25P40になります。


  アマゾンで売っていましたので購入しました。5個セットでしたが...

https://www.amazon.co.jp/MICRON-M25P40-VMN6TPB-5%E5%80%8B%E3%82%BB%E3%83%83%E3%83%88/dp/B01B1E1C1O/ref=sr_1_1?

ie=UTF8&qid=1479903193&sr=8-1&keywords=M25P40

  円高のせいか、一ヶ月前は972円だったのが、今日は1125円です。


posted by えすび at 21:25| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

FPGAボードとUSB Blasterの話(3)

  怪しいボードの追記。

  CycloneIIボード
https://www.amazon.co.jp/gp/product/B016K4XE3E/ref=pd_sim_sbs_23_1?ie=UTF8&psc=1&refRID=7EAYPVFEJ0QA1E201SZA

  安い方が売り切れてるようです。


  会社が中国ですが、ほぼ同じボードがあります。

https://www.amazon.co.jp/LILLY%E3%82%A8%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AD%E3%83%8B%E3%82%AF%E3%82%B9-ALTERA-FPGA-Cyclone-II%E3%81%AEEP2C5T144%E6%9C%80%E5%B0%8F%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E9%96%8B%E7%99%BA%E3%83%9C%E3%83%BC%E3%83%89/dp/B01A8B0Q2W/ref=pd_sim_sbs_147_2?_encoding=UTF8&psc=1&refRID=BFSVHF7DH79TCTANP52M



  ほぼ、同じというのは、写真を見る限り、どうも73ピンの動作が違いそうです。

  PWRONRSTN(73ピン):パワーオンリセット。電源投入時に、L→H のようです。

  回路図と同じようですし、私が購入した売り切れている方が、コピー品じゃないかと思います。



posted by えすび at 20:48| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

2016年11月22日

RGBコンバータ(4)(リリース)

  RGBコンバータの件

  やっと完成しましたので、リリースします。

  DE0版:ver4_DE0.zip

  怪しいCycloneIIボード版:ver4_c2.zip


  回路図も同梱していますので、そちらを参考にして下さい。

  DE0版では、2種類(74LCX245を使っているのと、使っていないの)あります。
  多分、両方動作すると思うんですが、74LCX245を使っていないバージョンは試してません(^^;)

  74LCX245ですが、5V→3.3Vへの変換用なので、トレランス機能を持っているものなら何でもいいかと思います(ex.74VHC245)


 ・使い方
  ボードに電源を供給して、mk2/66/mk2SR/66SRを起動すると、普通に表示されます。
  mk2SR/66SR使用時は、クロック出力を3.58MHzの方にして下さい(普通はこちらになっています)。


 ・怪しいCycloneIIボード版
  ボード上のプッシュスイッチを押すと、にじみが出せます。
  プッシュスイッチを押す毎に、にじみなし→赤青→青赤→桃緑→緑桃→にじみなし、となります。

  ボード上の3つのLEDは、以下を示しています。
  D2:にじみ処理時、点灯
  D4:mk2SR/66SR時、点灯
  D5:データ同期時、点灯


 ・DE0版
  ボード上のBUTTON2を押すと、にじみが出せます。
  BUTTON2を押す毎に、にじみなし→赤青→青赤→桃緑→緑桃→にじみなし、となります。
  BUTTON0を押すと、リセットします。

  ボード上のLEDは、以下を示しています。
  LED0:にじみ処理時、点灯
  LED1:mk2SR/66SR時、点灯
  LED2:PLLロック時、点灯(普通は常時点灯)
  LED3:P6からのクロック入力時、点灯
  LED4:P6からのデータ入力時、点灯
  LED5:データ同期時、点灯(320x200同期)
  LED6:データ同期時、点灯(256x192同期)

  ボード上の7SEGは、以下を示します。
  左2桁:クロックに対するデータの遅延値
  右2桁:クロックに対するHSYNCNの遅延値

  下位桁は、1〜7です。単位は10nsです。

posted by えすび at 01:06| Comment(8) | HW:その他 | このブログの読者になる | 更新情報をチェックする

2016年11月15日

RGBコンバータ(3)

  RGBコンバータの件

  P6からクロックを貰えれば簡単かと思いますが、mk2SR/66SRの方は一筋縄では行かなかった...

  RGB出力は特殊かも知れませんが、通常データとクロックを両方出力しているような場合は、その先の回路ではそのクロックでデータを叩けばちゃんと動く回路が出来ます。mk2/66の場合だと、ちゃんとそうなっています。


  問題のmk2SR/66SRですが...

 1)データ出力が14MHzで叩かれたデータなのに、クロック出力が3.58MHzである(14MHzの4分周)。
 2)3.58MHzクロック出力とデータの位相関係が、リセット押下するごとに変わる。
 3)3.58MHzクロック出力とデータの遅延値が、電源投入後から徐々に変化する。


  1)や2)はまだ回避方法があるのですが、最悪なのが3)です。

  具体的には、3.58MHzクロック出力を基準にしたHSYNC遅延値が、電源投入してからずるずると変わっていきます。実測値では、大体30nsほど減少します。14MHzが70ns程度なので結構ひどい数値です。


  画像信号のRGBHはほとんど変化しないので、HSYNCを生成している回路に問題がありそうです。
  回路図を見ると、変なLRCが途中に入っているので、この辺りが悪さをしているんじゃないかと思います。


  mk2SR/66SR は、カスタムLSIや基板設計が、結構お粗末やなー、と思っていたんですが、また一つ悪いものを見つけた感じです。

posted by えすび at 22:35| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

2016年11月14日

RGBコンバータ(2)

  RGBコンバータの件

  HSYNCからクロックを再生していたんですが...

  よく考えたら、P6から直接クロックを入力して、それを100MHzでサンプリングするのが一番簡単な方法だという事に気付きました。


  とりあえずそのバージョンを適当に作って動かしていますが、安定して動作しています。


  ただ、今の回路だと、調整用のDIPSWが必要になる(7PIN程度)のが気に入らないんですねぇ...

  クロックからの遅延値が、P6の個体や、RGBコンバータ側の回路などで異なるため、それを吸収するために調整が必要なのは仕方ないんですが、何とか調整を自動化して、外部からは最小限にしたい所です。


  回路の実装は、DE0版と、怪しいCycloneII版で行っています。デザインウエーブ付録のCyclone版も作るつもりです。


posted by えすび at 22:52| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

FPGAボードとUSB Blasterの話(2)

  怪しいボードと怪しいUSB Blasterの追記です。

  CycloneIIボード
https://www.amazon.co.jp/gp/product/B016K4XE3E/ref=pd_sim_sbs_23_1?ie=UTF8&psc=1&refRID=7EAYPVFEJ0QA1E201SZA

  USB Blaster
https://www.amazon.co.jp/%E6%82%9F%E7%A9%BA-ALTERA-USB-Blaster%E4%BA%92%E6%8F%9BJTag%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB-%E4%B8%A6%E8%A1%8C%E8%BC%B8%E5%85%A5%E5%93%81/dp/B00VUWNN74/ref=sr_1_1?ie=UTF8&qid=1478411751&sr=8-1&keywords=USB+Blaster


  信号説明が一つ抜けていました。

  PWRONRST(73ピン):パワーオンリセット。電源投入時に、H→Lになります。

  前回掲載したテスト用回路では、PWRONRSTN となっていますが、PWRONRST が正解です。

https://www.openimpulse.com/blog/products-page/product-category/ep2c5t144-altera-cyclone-ii-fpga-development-board/

  ここの回路図を参考にしたのですが、この回路図が間違っています。

  73ピンに、抵抗を介して3.3V、コンデンサを介してGNDとなっていますが、実際の基板は抵抗を介してGND、コンデンサを介して3.3Vです。



  USB Blasterの方は、モノ自体は普通に動作するのですが、付属のUSBケーブルがイマイチでした。USB Blasterと繋がる方のUSBコネクタとの接触が悪く、認識しない事がありました。

  DE0-nanoに付属していた、USBケーブルでは全く問題が発生していません。


posted by えすび at 21:56| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

2016年11月12日

RGBコンバータ(1)

  RGBコンバータの件

  ほとんど設計は完了して、実際に使っているのですがどうも不安定です。

  いろいろと作り方はあると思うのですが、今回は以下のように作っています。

1)P6からはクロックを貰わない
2)P6からのHSYNCパルスを元に、14.318MHzクロックを再生する。
 →基板クロックから内部100MHzを作り、デジタルPLLっぽい事をする。
3)出力は、VGAの640x480に対応する。出力クロックは、100MHzの1/4の25MHz。
4)横方向はそのまま出力。縦方向は、P6のデータ1ラインに対して、VGAのデータ2ラインを出力する。
5)4)の実現のため、4ライン分のDPRAMを設ける。
6)P6からの入力の方がVGA出力よりも速いので、VGAへのVSYNC出力を変化させる。通常は524ラインで、たまに523ラインで出力する(規格は525ライン)。


  上記の方式で設計すると、mk2では普通に動くのですが、mk2SRでは画像にノイズが乗りました。
 2)のクロック再生がうまく動作していなくて、データをたまに取りこぼしています。

  調べてみると、mk2SRの場合、内部14.318MHzに対して、HSYNCの出力の遅延値が一定ではなく、20ns以上もずれる事がある事が判明しました(VSYNC=Lを出力する時に大きくずれる)。

  結局、HSYNC×VSYNC の周期、つまり1画面分を元に、デジタルPLLっぽい事をすると、安定して動作するようになりました。


  これでリリースしようとしていたのですが...長時間使用していると、最初に合わせた位置からずれてきます。
  多分、熱などの影響で、遅延値が変わるためだと思われます。


  このままでも使用できなくはないのですが、やはり自動追従した方がよさそうなので、リリースはもうちょっと後になります。


  年内に終わればいいな...

posted by えすび at 18:14| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

PALADIN(2)

  PALADIN for P6

  だいぶ前に完成したのですが、やっとリリースしました。

  640x200×4色の画面がメインなので、実機でテストする場合、綺麗に映る必要があったためです(そのため、RGBコンバータを作成中ですが)。


  PALADIN というゲーム自体がマイナーかも知れません。オークションなどで売っているのを見たことがほとんどありません(私はオークションで見つけてすぐに落としました)。

  ゲームの内容自体は、調べてもらうと分かると思います。エンディングまで実況している動画もあるようです。
  まあまあ面白く、2日ほど掛けてクリアしました。
  何箇所か、分からないと進まない部分があります。画面とか持ち物とか魔術とか、いろいろ注意すると分かるかも。



  P6への移植ですが、以下の修正・変更しています。

 ・キーアサインの変更。
  遊び易くしたり、同時キー入力が出来るキーにするなどです。

 ・魔法弾やドラゴンの炎、イリュージョニストなどの色と表示の変更。
  640x200では4色しか使えないため、無理やり色の調整と重ね合わせをプログラムで実施しています。そのため、動作が遅くなっています(手抜きです)。

 ・メッセージの平仮名化。
  文章が読みやすくなりました。

 ・エンディングのグラフィックの修正。
  これも4色に収めるために、配色などを変更しています。また、PC88版では一部のキャラがバグってよく分からないものが表示されています。一番最後に剣と盾が表示されるのが正解です。


  グラフィックは基本的にはPC88版と同じです。元々、黒/赤/青/白の4色だけで構成されているため、修正が不要なんですね。PC88では余った緑のプレーンを使って、魔法弾などを重ね合わせて表示させています。



PALADIN(1)(ver1リリース)

  PALADIN for P6


  88版→P6SRへの変換ツールをリリースします。

paladnp6.zip


  説明などは、同梱のドキュメントを参照して下さい。


  エミュレータでは、PC-6001VW ver309b、ver310f、PC-6001V ver124 で動作を確認しています。

2016年11月06日

FPGAボードとUSB Blasterの話

  前回紹介した、怪しいボードの話の続きです。


https://www.amazon.co.jp/gp/product/B016K4XE3E/ref=pd_sim_sbs_23_1?ie=UTF8&psc=1&refRID=7EAYPVFEJ0QA1E201SZA

  実際に使ってみました。

  ...その前に、Altera のFPGAに対して、コンフィグする手段がなかった事に気付きました(^^;)


=====================

  DE0などは、USB経由のコンフィグ手段が、ボード上に実装されているので何も要らないのですが、普通はコンフィグ用にByteBlasterや、USB Blaster などが必要になります。

  基本的にお金を掛けたくないので、自作しようとしていたのですが、Alteraの場合だと結構面倒なようです。


  Xilinxの場合だと、FT2232Dを使う手段があります。

  http://www.hmwr-lsi.co.jp/fpga/fpga_1.htm

  このページを参考に clbsrv を使用すると、iMPACTを使用してFPGAやコンフィグ用ROMに対してコンフィグが可能です。


  Alteraの場合だと、同じように出来そうなのですが、Quartusから書き込めるソフトは存在しないようです。
  そのため、新しいシリーズ(例えば、CycloneII)に対応していなかったり、コンフィグROMに書き込む事ができなかったりします。



  結局、アマゾンでこのUSBブラスターを買いました。パチもんですが。

https://www.amazon.co.jp/%E6%82%9F%E7%A9%BA-ALTERA-USB-Blaster%E4%BA%92%E6%8F%9BJTag%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB-%E4%B8%A6%E8%A1%8C%E8%BC%B8%E5%85%A5%E5%93%81/dp/B00VUWNN74/ref=sr_1_1?ie=UTF8&qid=1478411751&sr=8-1&keywords=USB+Blaster

  実際に使ってみましたが、問題なく使えています。
  箱がちょっと歪んでいました。適当に組み立てた感じです。
  中を開けてみると、PIC18F14K50と、LVC244と、若干のCRのみです。

  多分、ここのページのを実装しているようです。

http://sa89a.net/mp.cgi/ele/ub.htm

  さすがに、5V/3.3V変換には、LVC244が行っています。

  初めから同人ハードだと思うと、全く問題ない範囲ですね(^^;)


=====================

  というわけで、怪しいCycloneIIボードに、怪しいUSB Blasterで書き込みテストを行いました。


  テスト用の回路です→test2.zip

  テスト用の記述と、I/Oポート、タイミングの設定などを行っていますので、展開後、quartusの下の TEST.qpf をダブルクリックして、QuartusIIを起動後、コンパイルして下さい。

  端子名に関しては、VHDL記述の最初の方にコメント文で記載しています(元のpin??では使いにくいので)。


  端子に関しては、注意点がいくつかあります。

 ・LEDGN(2:0) ボード上のLEDと、外部ピンに接続しています。"L"でLEDが点灯します。

 ・PUSHSWN ボード上のプッシュSWに接続しています。押した時に"L"ですが、離した時にオープンになるので、FPGA側でプルアップする必要があります。(TEST.qsf内の set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to PUSHSWN がプルアップ指定です)

 ・CLK50MIN ボード上の50Mの水晶発振器に接続されています。変更はできません。

 ・CLKIN(6:0) 外部ピンに接続されている、入力専用ピンです。FPGA内部のPLLへ入力したい時などに使いますが、通常の入力信号を繋いでも構いません。このピンは入力専用のため、FPGA側でプルアップなどの処理ができません。そのため、ボード外でプルアップなどをするか、常に入力信号が入るようにする必要があります。
  
 ・GPIO0_D(9:0) チップ左側の外部ピンに繋がれている、汎用の入出力ピンです。未使用時はオープンにならないように、プルアップするか、出力信号とするかをする必要があります。(TEST.qsf内の set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to GPIO0_D* がプルアップ指定です)

 ・GPIO1_D(23:0) チップ下側の外部ピンに繋がれている、汎用の入出力ピンです。GPIO0_D と同様です。

 ・GPIO2_D(17:0) チップ右側の外部ピンに繋がれている、汎用の入出力ピンです。GPIO0_D と同様です。

 ・GPIO3_D(21:0) チップ上側の外部ピンに繋がれている、汎用の入出力ピンです。GPIO0_D と同様です。


  入力専用ピンが7本もあり、これをプルアップなどの処理をする必要があるのが、ちょっと面倒ですね。
  テスト時などは、最悪オープンでもいいと思いますが、通常運用時などはちゃんと処理した方がいいと思います。


=====================

  分かっている人には必要ないかも知れませんが、コンフィグの仕方を、怪しいCycloneIIボードを例にして説明します。


  その1)FPGAのSRAMに書き込む

  コンパイル時に生成されている、test.sof を書き込みます。電源を切ると書き込んだ内容が消えます(コンフィグROMの内容が実行されます)。

  まずセットアップをします。

  1)USB-Blasterを、基板のJTAG端子に挿します。内側の方で、外側のASPの方ではありません。

  2)CycloneIIボードに、DCジャックまたは基板テストポートから、5Vを供給します。基板に逆電圧防止用のダイオードがないので、プラスマイナスを間違えないように注意して下さい。間違えると一発で壊れる可能性もあります。
  電源が供給されると、コンフィグROMの内容が実行されます。初期状態なら、LEDが点滅すると思います。

  3)USB-Blasterを、パソコンのUSB端子と接続します。最初に接続する場合は、何かメッセージが出るかも知れません。

一度もUSB-Blasterを使った事がない場合は、ドライバをインストールする必要があるかも知れません。

  4)QuartusIIのProgrammerを起動します。画面が小さいので広げておきます。USB-Blasterが正常に認識できている場合は、上部に「USB-Blaster [USB-0] 」などと表示されているはずです。表示されていない場合は、左上のHardware Setup を押して、USB-Blasterを選びます。

  5)上部のModeを、JTAG になっている事を確認します。Programmer起動時はJTAGになっていると思います。

  6)左側のSTARTを押します。右上の Progress が進んで、すぐに書き込みが終了します。電源を切ると初期化されるので、このモードは、全部接続したままになります。

161106_01_コンフィグ1.jpg



  その2)コンフィグROMに書き込む1

  1)USB-Blasterを、基板のASP端子に挿します。外側の方です。

  2)〜4)は上記と同様です。

  5)上部のModeを、Active Serial Programming にします。何かメッセージが出ますので、OKを押します。

  6)左側の Add File を押して、TEST.pof を選びます。

  7)Program/Configure、Verify、Blank-Check の下の四角を押して、チェックを付けます。

  8)左側のSTARTを押します。右上の Progress が進んで、書き込みが終了します。FPGAは書き込んだ内容で動作していて、電源を切った後でも、再度電源を入れるとコンフィグROMに書き込んだ内容で動作します。

161106_01_コンフィグ2.jpg



  その3)コンフィグROMに書き込む2

  0)QuartusIIのメニューのFile-ConvertFiles を選んで、ファイル変換プログラムを起動します。
  上から2段目のProgramming File Typeを、JTAG Indirect Configuration File (.jic) を選択します。
  その下のConfiguration decive を、ターゲットのコンフィグROM(今回は、EPCS4)を選びます。
  その下のファイル名は適当に名前を付けます。
  一番下の大きいウインド内の、一番上の行のFlash Loader を選び、その右のAdd Deviceを押して、FPGAを選びます(今回は、CycloneIIのEP2CS5)。
  その下の SOF Data を選び、Add File を選び、TEST.sofを選びます。

  この状態で、一番下の Generate を押すと、〜.jic が生成されます。


  1)USB-Blasterを、基板のJTAG端子に挿します。内側の方で、外側のASPの方ではありません。

  2)〜4)は上記と同様です。

  5)上部のModeを、JTAG になっている事を確認します。Programmer起動時はJTAGになっていると思います。

  6)最初に表示されている、TEST.sof を選び、左側の Delete を押して選択を外します。

  7)左側の Add File を押して、〜.jic を選びます。

  8)Program/Configure、Verify、Blank-Check の下の四角を押して、チェックを付けます。上側はチェック出来ないので、下側のみです。

  9)左側のSTARTを押します。右上の Progress が進んで、書き込みが終了します。書き込んだ直後は、FPGAは動作していないので、一度電源を切ります。再度電源を入れるとコンフィグROMに書き込んだ内容で動作します。

161106_01_JIC変換.jpg

161106_01_コンフィグ3.jpg



  結果は、コンフィグROMに書き込む1と同じなのですが、ASP端子が不要なので基板設計などがラクになります。


posted by えすび at 19:57| Comment(0) | HW:その他 | このブログの読者になる | 更新情報をチェックする

2016年10月31日

FPGA購入の話

  ザナドゥ、MeltDown、と 解像度が 640x200 のソフトをP6用に移植しました。

  この後のゲームも、偶然にも解像度が 640x200 がベストなソフトでした。
  現在デバッグ中というか実機でプレイ中なんですが、うちの環境ではまともに640x200が表示できていません。

 西田ラジオさんで購入した P6用RGBコンポーネントアダプタで、かろうじて見える程度で、これでもはっきりとは映りません。


  普通のVGAモニタにそのまま表示させたいので、メモリ+制御回路などが必要になるため、FPGAで実現するのが一番簡単だと思います。とりあえずは、ずいぶん前に作成したRGBコンバータをSR用に作り直しています。

http://sbeach.seesaa.net/article/387861423.html


  ただ、DE0をRGBコンバータだけに使うのはもったいないので、他のFPGAボードやFPGA単体をいろいろと調査しています(やっと表題の内容です...)。



 ●FPGAはどこで売っているか?
  なぜか分かりませんが、よく使うパーツショップ店頭や通信販売先(秋月、共立、マルツなど)ではほとんど売っていません。

  DigiKey だと、かなりいろんな種類のFPGAやその他の部品を購入出来ますが、7500円未満なら送料2000円を取られるのがちょっと、という感じです。


  また、アマゾンから購入する事が可能です(調べてちょっと意外だったのですが)。
  ただ、検索エンジンが全く使えない代物なので、型番を全て入れてやる必要があります。

  例えば、デザインウエーブマガジン2003年10月のコンフィグ用ROMのEPCS1だと、EPCS1SI8N と入れる必要があります。
  さらにチップ写真に意味がないので、他で調べる必要があります。

  チップ型番が分からずに探す場合
  1)『産業・研究開発用品』のカテゴリで、ALTERA や XILINX と入力して検索する。
  2)発売メーカがALTERA/XILINXのものを選んで、そのチップのページを表示させる。
  3)チップのページの品名の下の「ALTERA/XILINX」を選ぶと、そのメーカのチップが全部表示される。

  という手順で探せます。



  また、ALTERA限定ですが、日本の代理店から購入する事ができるようです。5000円未満なら送料450円、5000円以上で送料無料のようです。
  マクニカオンラインストア https://store.macnica.co.jp/



 ●FPGAボードについて
  安そうなFPGAボードを探してみました。

  デザインウエーブマガジン2003年10月号(ALTERA)
  デザインウエーブマガジン2005年1月号(XILINX)
  デザインウエーブマガジン2007年7月号(XILINX)

  付録に基板が付いていました。オークションなどで入手が出来れば、ですね。
  また、コンフィグ用ROMが付いてませんので、自分で何とかする必要があります。


  マルツオンライン
http://www.marutsu.co.jp/pc/i/65176/
http://www.marutsu.co.jp/pc/i/65177/

  両方とも5000円です。上の2003年10月号付録、2007年7月号付録のコンパチだと思われます。

  アマゾン経由でも購入できますが、1000円以上高いです。




  アマゾンで見つけた怪しいボード
https://www.amazon.co.jp/gp/product/B016K4XE3E/ref=pd_sim_sbs_23_1?ie=UTF8&psc=1&refRID=7EAYPVFEJ0QA1E201SZA

  表題の価格では、26342円ですが、別業者が 2550円で売っています。怪しいです...

  どうもEbay辺りで売っているようで、$26 みたいです。
  この辺りにイロイロ書かれています。http://www.leonheller.com/FPGA/FPGA.html


  実際に買ってみました。国際郵便でさっき到着しました。
  基板をぱっと見る限り、チープという表現がぴったりです...

  基板裏面が汚く、洗浄がちゃんと出来ていないようです。
  実装後のテストをしているかどうかも怪しく、半田付けも不安があるので、自分で何とかできる人向けですね。

  また基板だけで、データシートなどはありません。
  この辺りにデータがあります。
https://www.openimpulse.com/blog/products-page/product-category/ep2c5t144-altera-cyclone-ii-fpga-development-board/
  回路図もありますが、抵抗などの値は違うようです。また、サンプル回路も付いていますが、入力がオープンのままになっていたりするので、使わない方がいいかも...



  とりあえず使えるかどうか、現在試用中です。


posted by えすび at 20:21| Comment(2) | HW:その他 | このブログの読者になる | 更新情報をチェックする

2016年08月26日

MeltDown(5)

  MELT DOWN for P6mk2


  MELT DOWNの mk2/66への変換バージョンを作りました。

  88版や66SR版と比べるとかなり遅いです(大体、2倍程度?)。ただ、遅くてもちゃんと遊べるのでリリースしました。

  BGMがなかったり、色使いがヘンだったりしますが...


  実は、BGMは SSG部分だけでも鳴らす事は可能だったのですが、メモリの関係で削除しました。



  今回のウリは、6601本体のみで動作が出来る、(拡張メモリの必要なし)ですね。

  さすがに、mk2本体のみ、だけでは動作せず、ディスクドライブが必要になります。


  速度が遅いせいもあって、66SR版では3面クリアも出来なかったのが、mk2版では最後の面をクリアする事が出来ました。いいんだか、悪いんだか。

MeltDown(4)(mk2ver1リリース)

  MELT DOWN for P6mk2


  88SR版→P6mk2/P66への変換ツールをリリースします。


meltp6mk2.zip

  説明などは、同梱のドキュメントを参照して下さい。


  エミュレータでは、PC-6001VW ver310f、PC-6001V ver125 で動作を確認しています。

2016年08月17日

MeltDown(3)

  MELT DOWN for P6

  一つ前に、

>> 実は、320x200x4色にして、mk2以降で動かす事もちょっと考えたのですが、
>> 320x200だとキャラクタが4ドット単位、敵の弾が2ドット単位になってしまうため、
>> mk2などでは動作が遅くなるかと思って止めました。

  と書きましたが、その後試しに一部だけを作ってみました。


  ...やっぱり遅いです。


  描画ルーチンをもっとシェープアップしたら、遊べるレベルになるかなぁ、という所です。
  もうちょっとがんばってみますけど。


  VRAMが素直なので、SRよりは断然組みやすいんですけどねぇ...

2016年08月12日

MeltDown(2)

  やっとリリースできたMELT DOWNです。


  ザナドゥに続く、640x200表示のゲームになります。SRで640x200を表示するソフトは多分ほどんどないかと思います。
  元のPC88のゲーム自体が、高速化のために、敵や自機の表示を2プレーンしか使っていません。そのため、画面枠などを適当にごまかすことで、P6でも640x200で表示が可能になりました。


  実は、320x200x4色にして、mk2以降で動かす事もちょっと考えたのですが、320x200だとキャラクタが4ドット単位、敵の弾が2ドット単位になってしまうため、mk2などでは動作が遅くなるかと思って止めました。
  ただでさえ、CPU速度が倍ほど違いますからねぇ...



  また、ゲームの方ですが、かなり難しいです。まともにプレイしても、3面最後までしか行けませんでした...
  一応無敵化をして、5面最後まで見ましたが、5面目はクリアできると思えません(^^;)


  エミュレータでプレイする際は、出来ればジョイスティックを使った方がいいです。

  SPACE+カーソル上+カーソル左、などのような3つのキーの同時押しを判断できない事があるため、自機がちゃんと移動しないー、という問題があるためです。

  (3つキーの同時押し判断は、キーボード側の問題です)

MeltDown(1)(ver1リリース)

  MELT DOWN for P6


  88SR版→P6SRへの変換ツールをリリースします。

meltp6.zip


  説明などは、同梱のドキュメントを参照して下さい。


  エミュレータでは、PC-6001VW ver309b、ver310f、PC-6001V ver124 で動作を確認しています。

2016年08月07日

ザナドゥforP6(7)

  ザナドゥ for P6


  Ver2の実行している画面をアップします。

160807_01_ザナドぅver2実行1.png
160807_01_ザナドぅver2実行2.png
160807_01_ザナドぅver2実行3.png
160807_01_ザナドぅver2実行4.png
160807_01_ザナドぅver2実行5.png
160807_01_ザナドぅver2実行6.png
160807_01_ザナドぅver2実行7.png


  動画は撮影できる環境がありません(する気もあんまりない)。
  どなたかアップしてくれるといいんですが(^^;)