2015年11月07日

マイトアンドマジックforP6(1)(リリース)

  マイトアンドマジック for P6


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

mm1p6.zip


  説明などは、同梱のドキュメントを参照して下さい。
  エミュレータでは、PC-6001VW ver309a、PC-6001V ver123 で動作を確認しています。


  ある程度しか遊べてないのでバグがあるかも知れません(特に画面周り)。
  知らせて頂けると幸いです。



  ちなみに実行画面は、↓こんな感じです。


151107_02_マイトアンドマジック実行画面1.jpg

151107_02_マイトアンドマジック実行画面2.jpg

151107_02_マイトアンドマジック実行画面3.jpg

151107_02_マイトアンドマジック実行画面4.jpg


ファンタジー2forP6(1)(リリース)

  ファンタジー2 for P6


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

ph2_p6.zip


  説明などは、同梱のドキュメントを参照して下さい。
  エミュレータでは、PC-6001VW ver309a、PC-6001V ver123 で動作を確認しています。

  あまり遊べてないのでバグがあるかも知れません(特に画面周り)。
  知らせて頂けると幸いです。



  ちなみに実行画面は、↓こんな感じです。88版と比べて、オープニングの妖精さんがちょっと老けた?

151107_01_ファンタジー2実行画面.jpg

2015年09月18日

ウィザードリィforP6(6)

  不定期うぃず通信


  あれ?何か誤解されてる...と思ったら、ファイルをダウンロードしないと何も分からないからですね...


○ウィザードリィ for P6

想定動作可能環境一覧
○実機環境

・PC-6001mk2
 外付1DDドライブ(SD6031)+拡張RAM
 外付1DDドライブ(PC-6031SR)+拡張RAM
 外付2Dドライブ(PC-80S31)+拡張RAM
 外付1Dドライブ×2(PC-6031+PC-6032)+拡張RAM

・PC-6601
 内蔵1Dドライブ×2+拡張RAM
 外付1DDドライブ(SD6031WIF)

・PC-6001mk2SR
 外付1DDドライブ(SD6031)+拡張RAM
 外付1DDドライブ(PC-6031SR)+拡張RAM
 外付2Dドライブ(PC-80S31)+拡張RAM
 外付1Dドライブ×2(PC-6031+PC-6032)+拡張RAM

・PC-6601SR
 内蔵1DDドライブ+拡張RAM
 外付1DDドライブ(SD6031WIF)


 拡張RAMは、PC-6006(16K)、SD6031WIF(16K/64K)、PC-6006SR(64K)、PC-6007SR(64K)、新ベルーガカートリッジ(128K)などです。


 エミュレータでも基本的に動作しますが、PC-6001mk2/PC-6001mk2SRでは今の所動作しません(エミュレータ側の問題)。

ウィザードリィforP6(5)

  不定期うぃず通信


  とりあえずリリースしました。

  シナリオの最後までプレイしたというワケではないので、何らかのバグがあるかも知れません。


  また、プレイする時の注意です。

 ・エミュレータの場合
  PC-6001V ver1.23、PC-6001VW ver309b で動作の確認をしています。ただし...

  両方のエミュレータとも、現在のバージョンは外付けドライブの書き込み時にバグがあるようです。
  そのため、PC-6601 または PC-6601SR でプレイして下さい。

  mk2SRのROMイメージは、そのまま66SRで使用できます。
  mk2のROMイメージしかない場合は...今の所、ちゃんと動作しません。


 ・実機の場合
  ドライブにSD6031を使用した場合は、快適に動作します(ディスクキャッシュと同程度の動作速度)。

  通常のドライブを使用する場合は、64Kバイト以上の外付けRAMを使用して、ディスクキャッシュが有効になるようにする事をお勧めします。



  また、実機、エミュレータとも、SR系の方が速く動作します(バスリクエストOFFで使用しているため)。
  大体2倍程度の速度になるのですが、体感ではもっと違うようです。

  mk2SR+SD6031+拡張64KRAM、がお勧めの動作環境です。



ウィザードリィforP6(4)(リリース)

  ウィザードリィ for P6


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

wiz1_p6.zip

wiz2_p6.zip

wiz3_p6.zip



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


  シナリオ#1、#2、#3用です。



リリース(21)について

  久しぶりにPC-6001Fをアップデートしました。

  というのは、タイニーゼビウスmk2 が特定のジョイスティック(ジョイパッド)で動作しないという問題があったからです。
  3.3V/5V変換回路がうまく行っていないのかとも思いましたが、どうも原因がはっきりしていません。


  何となく原因らしきものは分かっています。

 1)ジョイスティックのGNDとして、8ピンを使用している。
 2)プログラム内部で、AY-3-8910のポートBを出力固定にするのではなく、使用する時のみ出力にしている。


  AY-3-8910のポートBは、回路上、入力にしても、外から信号が入らないので、出力にするしかありません。しかし、なぜかBASICの内部ルーチンでは、使用する時のみ出力にしていて、それ以外は入力にしています。

  そのために、外部からジョイスティックの情報を入力する時には、

ポートBを出力にする
↓ 
8ピンに"L"を出力する

ジョイスティックのGNDが"L"になる

入力情報に従い、"L""H"が入力される

P6に入力される


  の手順が踏まれます。

  これにさらに3,3V/5V変換回路の遅延が加わるために、タイミングが間に合っていないんじゃないかと思います。
 (波形を見たわけではないので憶測です)


  今回のアップデートでは、ポートBを出力状態ではない場合には、8ピンに"L"を出力するようにしました。
  改定方法としては、完全に対処療法です...


posted by えすび at 16:27| Comment(0) | FPGA化:リリース | このブログの読者になる | 更新情報をチェックする

リリース(21)

 Ver.0236-0053のROMをアップします。

ROM_fpga0236_farm0053.zip


src_fpga0236_farm0053.zip


 Ver.0235-0053 から、以下の箇所を変更しています(ほとんど変わってません)。

・ジョイスティックポートの制御回路の修正
・添付の5V変換回路の修正



 !!注意!!

 ファイルをsave する際など、プログラムの不具合などでSDカードの内容が
破壊される可能性がありますので、必ずバックアップを取っておいて下さい。

 SDカードにアクセス中(LED0が点灯中)は、リセットやSDカードを抜き挿ししないで下さい。


 また、音声合成は未対応です。


 質問、動作報告など、コメント頂けるとありがたいです。



posted by えすび at 16:09| Comment(0) | FPGA化:リリース | このブログの読者になる | 更新情報をチェックする

2015年09月06日

ウィザードリィforP6(3)

  不定期うぃず通信


  現在、プログラム変更中&デバッグ中です。

  いろいろと出来るように対応しているのですが、結構面倒で...


  ドライブ:内蔵/外付
  メディア:1DD(2D)/1D
  拡張RAM :16K/64K/128K
  シナリオ:1/2/3


  プログラム自体はいいんですが、実機の検証を2×2×3×3の36通り分のテストをする必要があります。


  リリースはもうちょっと後になりそうです。


2015年08月20日

ウィザードリィforP6(2)

  不定期うぃず通信


  ちょっと改定しました。


  前回との違いはどこでしょう?

150820_01_wiz2実行画面1.png


  モンスターキャラクタの表示がしょぼいのはまだ改定中なので...

  答え:mk2で動作している。Wiz2 が動作している。


  Wiz1 と Wiz2 のメインプログラムは、全く同じでした。
  この上で走っているシナリオだけを変更して動作するようにしているです。



  前に公開した時のコメントに書いた通りにしてみました。

  今の所の必要スペックは、

  mk2 +16K拡張RAM + 2Dドライブ or 1DDドライブ
  66 +16K拡張RAM + 外付け2Dドライブ or 1DDドライブ
  mk2SR+16K拡張RAM + 2Dドライブ or 1DDドライブ
  66SR +16K拡張RAM

  です。

  mk2の場合は、SD6031+16K拡張RAM
  66 の場合は、SD6031WIF

  だけで動作します(実機で実際に動作する事を確かめました)。



  66の内蔵1Dドライブや、1D外付けドライブは使用できないのかなのですが、1Dにすると2ドライブが必須になります。しかもプログラムを一部変更する必要があります。


  サポートするかどうかは微妙な所です。要求がなさそうなら、特にサポートしないつもりです。



  ちなみに、SR以降の場合、パレットで色を変更できるので、もうちょっと見やすくなります。


150820_01_wiz2実行画面2.png

2015年08月17日

ウィザードリィforP6(1)

  Wiz for P6


  今度は多分有名な、ウィザードリィです。

  例によって、P6SR+2ドライブ+外部64K拡張RAM、というスペックが必要です。


150817_01_wiz1_実行画面1.jpg

150817_01_wiz1_実行画面2.jpg

150817_01_wiz1_実行画面3.jpg

150817_01_wiz1_実行画面4.jpg


  一応動作したー、というだけで、まだ修正が必要です。

  とりあえず、

 ・キャラクタ変換をちゃんとする(今のは手抜きバージョン)。
 ・描画が遅いのを修正する。
 ・実際にゲームをしてデバッグする。

  ぐらいの修正箇所があります。


  リリースはもうちょっと先ですね。

2015年08月09日

ファンタジーforP6(3)

  ファンタジー for P6


  実機での動作条件を間違えていました。
  外部64Kではなく、外部32K以上で動作します(当然、64Kあっても動作します)。


  また、フロッピーにアクセスする回数が多いので、フロッピーが速い環境で実行する事をお勧めします。

ファンタジーforP6(2)(リリース)

  ファンタジー for P6

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

ph1p6.zip


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

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

ファンタジーforP6(1)

  ファンタジー(PHANTASIE) for P6

  PHANTASIE というRPGがありました。有名かどうか分かりませんが、個人的に好きなRPGでした。
  PHANTASIE は、1〜4まで発売されていましたが、全部クリアしたような気がします(うろ覚え)。

  というわけで、P6 に移植しました。

  例によって、P6SR+2ドライブ+外部64K拡張RAM、というスペックが必要です。

150809_01_ファンタジー実行画面1.jpg

150809_01_ファンタジー実行画面2.jpg

150809_01_ファンタジー実行画面3.jpg

150809_01_ファンタジー実行画面4.jpg

150809_01_ファンタジー実行画面5.jpg

2015年05月21日

イシターの復活forP6(11)(Ver2リリース)

  イシターの復活 for P6


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

ishtarp6_v2.zip


 ○Ver.1 → Ver.2 変更箇所
  呪文リストで、選択するものがない状態の時に、画面が乱れる問題を対処。

  キャラクタの描画速度を速くした。
  (ただし、実機のみ。今のPC-6001VW ver309a では、逆に遅くなります)


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


  実機では速くなりますが、今の PC-6001VW Ver309a では、すごーく遅くなります。
  エミュレータの問題が修正されれば、問題ないかと思います。

イシターの復活forP6(10)(Ver1.1リリース)

  イシターの復活 for P6


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

ishtarp6_v1_1.zip


 ○Ver 1 → Ver 1,1 変更箇所
  呪文リストで、選択するものがない状態の時に、画面が乱れる問題を対処


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


  ゲームをプレイするのには支障はないバグですが、気になるので修正しました。


2015年05月19日

イシターの復活forP6(8)

  前の話の続き。


  ふと思いついて、キャラクタ消去用描画の高速化をしてみました。

  とりあえずバグがいっぱいある状態ですが、速度を測るのには支障がないので測定してみる事にしました。


  場所は、いつものDEAD END 。

 ・PC88版:24.3秒(エミュレータ)

  修正前
 ・フル機能版:46.7秒(実機)
 ・BGMなし:39.1秒(実機)
 ・BGMなし+敵キャラクタ描画なし:25.3秒(実機)

  修正後
 ・フル機能版:34.7秒(実機)
 ・BGMなし:29.2秒(実機)
 ・BGMなし+敵キャラクタ描画なし:15.3秒(実機)


  大体、3/4ぐらいになっている感じです。この修正を進めていくのでよさそうです。


  ただ一つ問題が...エミュレータ(PC-6001VW)では、動作が非常に遅くなります。

  エンディングロールなどで問題がある機能を使っているためです。

  やっている事は単純で、ポート0xC8のビット3をON/OFFしているだけです。

  ビットマップのON/OFFなんですが、同じポートにBASICモードの選択があるために、頻繁にON/OFFをすると遅くなるようです。

2015年05月18日

イシターの復活forP6(7)

  イシターの復活を一応無事リリースできたのですが...

  動かしていると、やっぱりちょっと遅いかなー、と思ってきました。

  スクロールだけだとPC88版と同じぐらいなのですが、敵キャラクタがたくさん出てくると遅くなるのを実感します。


  で、測定してみました。

  場所は、DEAD END 。都合よくローパーが並んでいるだけの直線なので、通路の端から端まで、どれくらい掛かるかを測定してみました。

 ・PC88版:24.3秒(エミュレータ)
 ・P6SR版:43.1秒(エミュレータ)/46.7秒(実機)

  PC88版の倍程度掛かっています...

  どこのルーチンが時間が掛かっているかを調べるために、特定の動作の部分だけを処理しないプログラムで測定してみました。

 ・BGMなし:39.1秒(実機)
 ・BGMなし+敵キャラクタ描画なし:25.3秒(実機)
 ・BGMなし+キャラクタ消去用描画なし:21.0秒(実機)
 ・BGMなし+敵キャラクタ描画なし+キャラクタ消去用描画なし:6.8秒(実機)


  ざっくりと計算すると

 ・BGM:7.6秒
 ・敵キャラクタ描画:13.8秒
 ・キャラクタ消去用描画:18.1秒

  となりました。


  敵キャラクタ描画もキャラクタ消去用描画も、処理が大変なのでかなり工夫していたのですが、今一度見直す事にします。


  BGMは...処理が重すぎですね。

  BGM処理は元のPC88のプログラムをほとんどそのまま使用しているので、改良の余地は十分にあります。
  ただ、それ以前に解析をする、という作業が残っているのですが(^^;)
  (ほぼ解析せずに使用できています)

2015年05月17日

イシターの復活forP6(6)(リリース改)

  イシターの復活 for P6


  先にアップしたツールでは、〜.d88の内容次第で変換時にエラーになることがあるようです。

  その辺りを対応した変換プログラムをアップします。

ishtarp6_2.zip


  先にアップしたもので動いていれば、特にやり直す必要はありません(結果は同じになります)。

イシターの復活forP6(5)(リリース)

  イシターの復活 for P6


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

ishtarp6.zip


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



  Q&Aコーナー

 Q1.PC88版とどこが変わったか?
 A1.
  ・グラフィックが横640ドット→320ドットのため、グラフィックが多少荒くなっています。
  ・動作速度がPC88版よりも同等か遅いです。キャラクタが多い場合は特に目立ちます。
  ・呪文系統を変更するたびにディスクアクセスしていたものを、オンメモリーにしました。
  ・ちょっとしたバグを修正しています。
  ・キーボード+ジョイスティック、あるいはジョイスティック×2、あるいはXPD-1LDが使用できます。
  ・呪文名、Detect MonsterやDetect Magic使用時の表示、ルーム名などが見やすくなりました。
  ・KIが移動する際に、呪文名、残り時間、GILのHPが一時的に消されます。

 Q2.PC88版より速くなったのでは?
 A2.KIを一人だけでスクロールした場合は、PC88版より若干速いです。他のモンスターが出てくると遅くなります...

2015年05月16日

イシターの復活forP6(4)

  イシターの復活(ザ・リターン・オブ・イシター)の、ゲームとしてあまり解析されていない部分について調査した結果です。

  PC-8801版を解析したので、他のバージョンでは違う部分があるかと思います。


  モンスター情報

140516_03_モンスター経験値.jpg


  バイタリティ、リカバーポイントは、All About NAMCO に書かれているのとほぼ同じです(Mirror Knight、Golden Mirror Knight のリカバーポイントがちょっと違う)

  左の#は、Light Violet Vampireからの通し番号です。


  気付いた人がいるかも知れませんが、経験値はモンスター番号+リカバーポイントになります。
  そのため、リカバーポイントが大きいモンスターを倒した方が、経験値がたくさん入ります。


  ウーズやスネークは、倒すのがラクな割りに経験値が多く入ります。
  ローパーやリザードマンは、倒すのに苦労する割りに経験値が入りません。



  経験値でソーティングしたのが次の表です。


140516_03_モンスター経験値2.jpg