ChaseHQは、↓の42秒付近みたいな感じですね。左カーブと右カーブが重ね合わさったような感じというか。
https://www.youtube.com/watch?v=RFtJer0GKgg
YSSCSCCD.SYSを使ってパッチを当てて実機MXで外付けSCSIドライブから起動したのですが、SCSIから起動した影響は無いと思うのですが。
2020-08-25 08:40:05
>58
実機でも同じように偶数ラインと奇数ラインで左右に分かれて表示されます。
そうです、VINGがあのグラフィックのままリリースしたのです。(他に良い方法が見つからなかったのでしょう)
エミュレーションとしては正常ですのでご安心ください。
アーケードは↓の1分39秒辺りですが、「TOWNSで実現できるかと言われると無理なのかなぁ」と思われる処理ですがHSYNCタイミングでCRTCのパラメータを書き換えてもTOWNSではVSYNCタイミングでしか適用されないような書込を過去にどこかで見た覚えが有りますので、その辺りの制限上不可能なのでしょう。
https://www.youtube.com/watch?v=-nCKUE-1pvM
2020-08-25 09:52:44
なるほど!安心しました。16色モードなのにパレットを途中で切り替えて48色表示にしてる時点でマジックだと思ったのでひょっとしたら分岐も似たようなトリックを使っているのかと思ってました。
なお、動作確認にあるXak IIの問題をなんとかしようとしたのですが、これまでのところ、データディスク作成後に一度BIOSがDrive Not Readyを検出しないとディレクトリキャッシュを更新しないらしい、というところで詰まってますね。どうやらTowns OS V1.1のDisk BIOSのようで、Disk Changedフラグが無いものと思っているらしくタイマー割り込みで定期的にDrive Not Readyをチェックしてるバージョンです。どうも、Disk BIOS INT 93H AH=0EHは前回呼び出し時以降ディスクの入れ替えがあった場合DL=1を返すようなのですが、DL=0が返っていて、多分DOSはこのDLを見てビット0が立っていたらディレクトリキャッシュを更新するみたいな処理をしているっぽいです。一応、FDCはMB8876Aのデータシートは見つかったのですが、Towns 2F以降はMB89312と773ページで言ってますね。これ、Intelか何かの互換チップなのではないかと見ているのですが、データシートのありかなど知ってる人がいたら情報をいただけるとありがたいです。
Super大戦略は、一定時間Drive Not Readyになったことでディスクの入れ替えを検出していて、FD0LOADコマンドで一瞬でディスクを入れ替えるとデータディスクを読み込まないという問題があったので、たしか入れ替えた直後は一度必ずDrive Not Readyを出すんだかなんだかという修正で対応したことがありましたが、Xak IIの場合は入れ替えてないので現在謎ですね。
2020-08-25 11:00:11
>山川機長さん
MB89312はれっきとした富士通製のFDC(VFO内蔵型)です。残念ながらネット上にはデータシートは上がっていないようなのですが、挙動についてはCSPのソースがある程度参考になりそうですし、実はXM7ページからリンクを辿っていくとデータシートの表紙の画像がアップロードされているサイトもあったりします(^^;)。
2020-08-25 11:16:19
はりせんさんのTwitterによると、「トランジスタ技術 スペシャル No.11」に詳しく書かれているそうです。
https://twitter.com/haserin09/status/1228604723344789504
2020-08-25 15:14:53
>62
大変失礼しました、はせりんさんの間違いです
2020-08-25 15:17:27
>60
MB89312=MB89311+VFOとの事で、MB89311について調べました。
INTERNET ARCHIVEに該当のデータブックが1件あります。
2020-08-26 17:03:12
SUPER REAL MAHJONG PII&PIIIの動作報告です。
うんづ(Version 0.5 L30),津軽(v20200819)共にメニュー画面,ゲーム画面共に画面の右側1/5~1/6程度がはみ出して表示されずです
メニュー画面でのCRTCレジスタの設定値は以下の通り
HSW1:0090 VST1:0000 HDS0:00A0 HDE0:0380 VDS0:0046 VDE0:0406 FA0:0000 HAJ0:00A0 FO0:0000 LO0:0100
HSW2:02F0 VST2:0004 HDS1:00A0 HDE1:0380 VDS1:0046 VDE1:0406 FA1:0000 HAJ1:00A0 FO1:0000 LO1:0080
HST :037F EET :0000 VST :0419 EHAJ:0064 EVAJ:0001 ZOOM:1111 CR0:800D CR1 :000C CR2:0192 FR :0003
2020-08-26 23:43:30
テストありがとうございます!Super Real Mahjongは、720ピクセル画面モードを使ってると思います。多分Microcosmのタイトルの右が切れるのと同じ原因です。現在使ってるウィンドウライブラリ (fssimplewindow: もともとYS FLIGHT SIMULATOR用に作ったライブラリなので、Flight Simulator Window Library。)が、ウィンドウを開いた後でリサイズする関数が無い(手抜き)影響で、横方向640ピクセル固定になってます。考えてみるとこれは直し方がわかってる項目なので、直しましょう。
あと、いくつかBがついてるタイトルでマウスが変な理由は多分MOS_setposでTBIOSがカーソルを固定位置に動かしているが、津軽はカーソルをWindowsのカーソル位置に移動させようとして、取り合いになってるからではないか、と見ているのですが、MOS_setposを迎撃してマウス座標を移動してしまう機能を実装すると、Alt+Tabでウィンドウ切り替える人はいいのですが、ときどきマウスでウィンドウをクリックする以外のウィンドウ切り替え方を知らないユーザがパニックになるのではないかという危惧があって保留してます。画面下のステータスバーに余裕があるので、 MOS_setposを検出したら"Middle Button to Capture/Uncapture Mouse"みたいなメッセージを表示してもいいんですけどね。
2020-08-27 01:45:52
うんづと合わせるとホイールの回転でマウスのCputure/Uncaptureですが、センターボタンのクリックでのCputure/Uncaptureのトグル動作とホイールの回転でのCputure/Uncaptureにしてしまっても良いような気がします。
Townsにはセンターボタンもホイールも無いので問題ないし、マウスから手を離さずに切り替えれるのでうんづ方式ほ個人的にお気に入りなのです。
2020-08-27 09:52:35
そういえば、FM/PCMのボリューム問題は、結局どっちも音が小さすぎるんですかね?どっちもElectric Volumeは通ってないはずだし。デフォルトの音量と最大音量を少し上げてみようかな?
2020-08-28 22:26:43
>>68
v20200826で確認しましたが、PCMに関しては問題ないと思います。ちょっと大き過ぎるのかな?(CD-DAと比べて) トゲトゲしてる印象があります。
あとスパ2のノイズの件ですが、残念ながら変化無しでした。耳で聴いた限りではノイズの鳴り方も変わってないような気がしました。
2020-08-29 10:21:45
了解しました!動作確認の方を見た感じだとFM音源の音が小さいようなので、PCMは据え置きでFM音源のおボリュームを上げてみようと思います。
Super Street Fighter IIのノイズの件了解しました。改善してなかったですか。残念。先読みさせるという手はあるのですが、パフォーマンスの問題がありますね。あるいは、当初やってたみたいにPCM 1chにつきホストの1chを使うという方法もあるにはあるものの、今度は定期的にモニターするチャンネルが増えてやっぱりパフォーマンスに問題が出ますね。うーん、アプリケーションを識別して特別な処理をするしかないかもしれないですね。もう少し考えます。
2020-08-29 11:37:34
FM音源もなんとかせんで何をやってるのだ、と言われそうですが、Wing Commander IのVEGA星域キャンペーン、最初から最後まで通してクリアできることを確認しました!
二日半でクリアできるもんですね。寝る間を惜しんだわけでもぜんぜんなくて、プレイ時間は合計6時間ぐらいだったでしょうか。ジョイスティックインテグレーションを考えてたのですが、Wing Commander Iに関してはキーボードで余裕で操縦できますね。あとは、Towns版豪華声優のボイスをEnableするキーがわからなくて最初焦ったのですが、Sキーでした。銀河英雄伝説の世界になりますね。
2020-08-31 07:43:17
なお、富士通が最初に発売したWing Commander 1には、Secret Missionsのデータファイルも含まれてます。ただ、普通に起動すると、ファイルがありませんと言われてSecret Missions 1,2を開始することができません。
そこで、Aドライブのディスクにセーブしている場合は、Q:\GAMEDAT下のcamp.000,camp.001,camp.002の3本のファイルをセーブディスクにコピーすると、Secret Missionsが起動できます。
あるいは、Q:\WC.EXP と Q:\GAMEDAT をハードディスクにファイルをコピーして、パラメータを
kanji +m savepath=a:
としてWC.EXPをアイコン登録するとハードディスクから起動できるようになりますが、savepath=D:\GAMEDAT のようにコピー先に振ってやると、セーブパスにcamp.00?を見つけることができるので、Secret Missionsを起動できます。
なんで富士通がEnableしなかったのかは、やってみると明らかで、日本語化が全部済んでなかったり、ときどきクラッシュしたりします。だったら起動時のボタンも削除しておけばよかったと思うんですがね。でも、僕は両方ともこの方法でクリアしたので、最後までプレイ可能なはずです。僕はTownsを現役で主力機として使ってた時にこれを解明したはずなんですが、どうやって解明したんだったかよく覚えてません。386DEBUG使ったのかも。Towns Forumにもやりかた書いたんじゃなかったかなあ。今日は津軽のデバッガで見つけましたけどね。(自分で言うのもなんだけど、BRKON INT 21 AH=3Dは強力だった)
2020-08-31 09:55:46
>71
SecretMissionの動作確認をしようとしたのですがインストール中にCD-ROMを入れ換えろと言われて、「CUIから起動せねば」と思ったままです。
近いうちにSecretMissionI&IIも動作を確認しておきます。
また、SplatterHouseに関してはエンディングまで正常動作を確認しました。HI-RESO,LO-RESO共に問題は有りませんでしたが、背景グラフィックが縦にズレている(1~2ドット程度)現象が確認できましたが、支障は無いので気にはしていません。(飛翔鮫や達人王でも左へスクロールさせるとズレている箇所がありますが、原因は同じかもしれません)
2020-08-31 10:03:18
Splatter Houseクリアされたんですね!あのゲーム、難しくないですか?(^_^;)1ピクセルずれる現象確認したのですが、謎ですよね。実は、オープニングで洋館に走っていくシーンでも画面のその辺がプルプルしてるんですよ。
考えてみるとGUIにCD-ROM交換機能あった方がいいですね。追加しておきます。CD-ROMの入れ替えが必要ということは、Secret MissionsはWing Commander 1のアドオン(というかバグフィックス)になってるんですかね?だとするとCDDAとボイスはあるのかな。
2020-08-31 10:26:59
1ピクセルずれる現象は色々動かして見たのですが、VINGの物だけだったような気がします。飛翔鮫や達人王では殆ど気にもなりませんがSplatterHouseに関しては仰る通り、ピクピクとするので見つけやすいですよね。(気にはなりませんが)
ちなみに達人王に関してはステージ4位までは正常を確認しています。途中で心が折れたのですが、もう一度トライします。
CD-ROMの入替は通常はそれほど起こる事では無く、その都度津軽を立ち上げ直せば良いのですがLast Armageddonでは必須となりますので有れば助かります。
SecretMissionがWingCommanderに入っていた(中途半端では有るが)事は初めて気づきました。
どおりでSecretMissionのCD-ROMの容量が非常に小さいわけだわ。(8MB位だったと思います)
CDDAとボイスは確認しておきますが、上記の通りSecretMission自体のデータ量が少ないので期待は出来ないかも知れません。
2020-08-31 10:42:44
CD-ROMの入れ替えですが、まだその機能作ってなかったんだったっけ、と、思ったら、すでにメニューのCD-ROMからできるように作ってました。[CD-ROM]->[Select CD Image]です。Towns OS V2.1 L51のCDで起動してからAfterburner IIに入れ替えて起動できたので、多分機能していると思います。
心が折れるゲームの完走確認のためには、ぼちぼちステートセーブ機能が欲しくなってきましたね。頑張って書こうかな。
2020-08-31 12:25:47
>76
申し訳ありません、既に有ったのですね。確認が足りませんでした。
ステートセーブ機能に関してはあくまで補助的な機能と思われますので、個人的には最終段階でも構わないと思っています。
有ったら有ったでデバッグの際にも便利かもしれませんが。
2020-08-31 12:50:11
WingCommander SecretMissionですが、1も2も数回の出撃をしましたが問題はありません。CD-DAもボイスも有りです。(^o^)
久しぶりに猫に煽られてカチンと来ました。危うく最後までやるところでした。
2020-08-31 23:58:18
おおそうですか!確認ありがとうございます!ということは、パッチだったのか。僕はWing Commander Iが出てすぐ買っちゃったもんだから、Secret Missions 1,2無し版だったんですよ。たしかSecret Missions 1/2だけ単独って売ってくれなかったんじゃないかな。売ってくれたら買ったと思うのですが。
今Wing Commander IIのマウスインテグレーションをやってます。マウス座標が書いてある場所までは特定したのですが、あとは、起動時にマウスの両法のボタンを押してないとマウスを認識してくれない現象が起きているのですが、多分、今TRIGGER OUT (4D6H)を無視してるからじゃないかと思うんですよね。真面目に実装して変化を見てみます。あれは、本体からのTrigger Out(4D6H)が0のときは、ボタン押し状態にかかわらず04D0H, 04D2HのTriggerビットは0になるので多分合ってますよね。
2020-09-01 09:17:52
>79
SecretMissionとWingCommanderは別パッケージですよ。
記憶は定かでは有りませんが、CDはSecretMissionだけの物ですし。
↓を見る限りソフトコレクション海外編で番号も違うので間違いないでしょう。
https://page.auctions.yahoo.co.jp/jp/auction/x530302289
https://www.suruga-ya.jp/product/detail/127010527
マウスインテグレーションは非常に楽しみにしています。動作確認でSecretMissionを久しぶりにやったらなんだか通しでやりたくなりました。
TRIG出力の使い方は、それであっているはずです。(04D6Hのbit0-3をONさせて、04D0H,04D2HのTRIG1,TRIG2bitを読む必要が有る)
2020-09-01 09:58:40
なんと。僕はWing Commander 1を発売した後に、Wing Commander 1 + Secret Missions というパッケージが出たもんだとばかり思ってました。
なお、Wing Commander 2 のマウスインテグレーション成功して、間も無くソースをPUSHします。起動時のマウスチェックの間はマウスのデルタに0を返す必要があったので、仕方ないので CRTC設定が変わってからCDDAを開始するまでの間はデルタに0を返すようにしてます。Nav画面のみカーソルがずれますが、こればっかりはNav画面表示中かどうかは検出できなかったもんで、放置してあります。ただ、キーでも操作できるので問題ないと思います。
Wing Commander 2は1よりもしんどかった記憶があります。敵光学式ステルス機には散々苦労しました。僕は確か1995年の後半(前半だったか記憶が曖昧)にMicrosoftに降伏して主力機をDOS/Windowsを切り替えたので2はDOS用英語版でプレイしましたね。Wing Commander 3まで日本にいるうちにプレイして、4はピッツバーグに引っ越してからやったんだったかな?ネタバレになりますが4では最後に主人公に散々パワハラを続けてきたトルウィン提督に恨みを晴らすことができたので良かったのですが、最初のシリーズから続いた一大サーガの終わりとしてはやや寂しい幕切れだった感じがしました。でも、老後にもう一度一通りプレイするためにGood Old GamesからWing Commander 3, 4買ってあります。
2020-09-02 06:26:21
久しぶりにSecretMission1を3話程やっただけで結構厳しかったので、この腕のままIIは地獄かもしれません。(汗)
私はTOWNSで1,II,SecretMissionをやったけど、それ以降は出来てないのです。英語は聞き取れないだろうけど買ってみようかなぁ。
3か4あたりでマークハミルが出演していましたが、指を加えてました。(PCへの以降はGATAWAY G6-300からのなで1997~98年位)
Origin Systems社が(と言うよりギャリオット兄弟です)が好きで、Originと付くと必ず買っていました。
Origin Systems絡みで、Space Rogueの動作確認をしていましたがマニュアルが無い(実家)のでストーリーが進められず互換リストには未記載ですが
動作に問題は無いようです。(この位のポリゴンだったら当時の山川機長さんだったら出来たかもって気がします)
2020-09-02 11:03:09
このスレの展開からはだいぶ外れますが、Unzと津軽でのSCSI ID-0のハードディスクイメージ共有に成功しました…単に津軽のソースをこちらでいじって新CRTCのI/Oアクセスを無効にしただけなんですが。これでSSDの使用量が1GiB削減できましたw
2020-09-02 12:15:43
Wing Commander 3は、移動するたびにエレベーターに乗るアニメを毎回見なくてはならないのが苦痛だった記憶があります(^_^;)空中戦シーンは感動ものでしたね。今見ても通用するグラフィックだと思います。当時だと僕も渡米前で英語の聞き取りが大変だったので、アメリカに住んで22年の今ならもう少し何言ってるかわかるのではないか、と思ってるのですが。マークハミルは3と4通して出演でした。
なお、すでにさっきリリースをPUSHしてしまったのですが、Wing Commanderの中立位置発見しました。2も書いてあったので、そこから読むようにしました。それが、デバッガで見つけようとしたけどなかなか見つからず、BRKON MEMWじゃなくMONITOR MEMWみたいなのを追加してZキーを押した後で中立位置を書き込んでる場所を探さないとだめかなあ、と、思いながらZを押した後でマウス座標が何に変わってるか見たら、その直後に同じ値が書いてあって、なんとそれが中立位置でした。Wing Commander 1の方は何をやってるんだかわからないですが、ジョイスティックをぐらぐらっと動かした後でZキーを押すと以後安定するようです。明日の夕方のソースにはこれが入る予定です。なんかいい感じなのでGUIにもまもなく出します。
機関砲がおもしろいように当たるので、これだったらこの間1を通したとき唯一勝利できなかった鹵獲した敵艦の護衛ミッションも勝てるかな。2もテストがてらちょっと飛んでみましたが、2だと撃墜した敵機が完全に飛散するまで当たり判定があるんですね。空中衝突しまくってかなりのダメージを受けてしまいましたが。(Strike CommanderのテストしたときもMig-21と空中衝突した。なんか今日は空中衝突する日だった。)
2020-09-03 11:59:47
りうさん、
なるほど!それは、津軽がハイレゾモードを正式にサポートすればOKという感じでしょうか?りうさんに上げていただいたソースが非常に強力な情報源になりそうなので、Linuxのソースと合わせて参考にして対応を目指してみます。
2020-09-04 01:06:14
飛翔鮫ですが、v20200902よりCD-DAによるBGMが鳴らなくなっています。
他にも確認できた物としては達人王は1面BGMがループしなくなり、それ以降はボス面や次のステージになってもBGMは鳴らなくなります。
(つまり、開始時のBGMがループせずに終わるとそれ以降は鳴らない)
他にも何か有るかもしれませんが、原因は共通している可能性が高いので確認及びWikiの更新は行っていません。
2020-09-06 08:52:48
おおそうでしたか。CDDAで何を変えたっけかな?確認してみます。
2020-09-06 09:45:41
ああ、多分原因わかりました。ものすごく小さな音で鳴ってませんか?Electric Volumeを見るようにしたのですが、都合上再生開始時のボリュームがそのまま残ってしまうもんで、フェードインしているのではないかと思います。うーん、どうしよう。とりあえず、直近の修正としていったんElectric Volumeを無視します(^_^;)と、思ったらSetVolumeって関数すでにYsSimpleSoundに書いてあるし。いったんElevol無効にしてから、近いうちにそっちで対応するように修正しますね。多分それで直ると思います。(自分で書いた関数ぐらいおぼえておけ、と言っても趣味と仕事で書いてる分量が多すぎてどこに何を書いたか覚えきれない。)あ、初期のころのコメントにあったナディアの左右問題はこれでは直らない。うーん、なんか考えよう。
2020-09-06 09:59:39
>88
本当ですね、ホント小さな音で鳴っていました。
飛翔鮫で確認をしましたが、恐らく達人王でも同じでしょう。
2020-09-06 16:00:47
ふふふ、Strike Commanderクリア確認しましたよ!まだGUIに出してないですが、-STCMTHR joystickID axisID とすることによって、スロットルレバーの位置をフルキーの数字に割り当てるようにしました。さっきPUShしたソースでは使えるようになってます。これによってCH Pro Throttle USBでスロットルのコントロールができるようになり、-VIRTKEY key gameDevID button オプションによってゲームパッドやジョイスティックのボタンをキーボードに割り当てられるようになりました。GUIにどうやって出してやろうかと考えてるんですがね。Strike Commanderはこの拡張で無線の指示を出す時ぐらいしかキーに触らずに操縦できるようになりました。Thrustmaster Top Gun Joystickが接点不良でボタンの反応が悪くなっていたのですが、Pro Throttleに十分なボタンがあったので、よく使うキーを割り当てることができました。
一番難しかったミッションは中盤のドイツの城のミッションだったな。何度も撃墜されながら、やっとミッション成功して帰ってきたら、燃料タンクに弾食らってて最後燃料切れで自動着陸してくれなくて慌てて手動でおろしたんですが、操縦士免許持っててよかったと思いました。最後のミッションでは、メンデス機を撃墜して「勝った!」と思って帰投してきたら、ジャッカルのボスともう一戦あるのを忘れていて、いきなりミサイルを食ってエンジンがやられたものの、すれ違いざまに機関砲を何発か命中させて、最後に残ったAMRAAMが命中してくれて、あとは目の前の滑走路までなんとか緊急着陸を決められるか!?と、思ったらイベントシーンに切り替わってエンディングというなんともドラマチックな最後でした。
あとこれでフレームレートがあと2割ぐらい速かったらもっと快適だったんだろうな。高速化も考えないとなあ。
2020-09-07 12:26:05
>90
動作確認をしていないフライト物と言うと、後はAir Warriorですか・・・ 物は有りますが、サーバーが・・・
誰かサーバーを立てる猛者が居るのだろうか? 居ないでしょうね。
2020-09-07 23:18:38
Air Warriorですが後半のバージョンでは、COM機相手に飛ぶ自主トレモードが追加されていたと思います。また後半のバージョンではサイバースティック対応してたんですよね。FM音源も改善せずに何をやってるのか、と言われそうですがサイバースティック対応を検討してます(^_^;)
うちの2MXですが、どうもCD-ROMは2xモードにすると読めないようで、電源抜いてCMOSがまた飛んでからは何もなかったかのように(ゆっくり)読んでます。今日はこちらはLabor Dayの祝日なので、今朝は去年実家から回収してきたFDをかたっぱしからTownsOS起動フロッピー化しています。まずピンセットで回しながらカビてないことを確認してからやってますが、成功率は50%ぐらいですね。Aドライブはあいかわらず内側のセクタが読めないようで、CMUのComputer Clubの達人に修理できないか聞いてみようと思ってますが、バーチャル化をトライしてもいいかもしれないですね。
2020-09-07 23:56:56
>92
おお、そうでしたっけ? ではAirWarriorも動作確認を急ごうと思います。
サイバースティックも実は持ってたりするのですが、いつもの事ながら実家に置き去りです。
去年に制作したセガサターンの各種コントローラをUSBに変換する変換器を改造してサイバースティック対応に使用かなと思います。
FDDに関しては先週末にジャンクのFDDを2台ほど確保したので、こいつを実機に搭載する予定です。
そちらでは3モードFDDは入手困難でしょうから今のうちにバーチャル化しておいた方が良さそうですね。
2020-09-08 07:39:29
>93
FDが必要だった・・・ まずはFDDを治さないと駄目ですね。(汗)
因みにCDからの起動は出来て、FDを入れろとのメッセージまでは問題有りませんでした。
2020-09-08 08:01:05
ジャンクで買ってきたYE-DATAのドライブに交換してFDDは復活しました。と言うかひょっとしたら元のFDDは生きているかも。
元々HCはFDDが1台なのを、末期にFMT-FD304を買って2ドライブにしていたのですが、この前電池を外付けに改造した際に使い込んだドライブ0とほぼ使用していないドライブ1を入れ換えて組み立てたのですが、今日になって外したFDDを見ていてドライブセレクトのジャンパピンがDS1側になっているのを発見しました。
DS1に設定したFDDをドライブ0のケーブルにつないでいたのが原因なのではと思っています。
後はどうやってネットにあるイメージ化ソフトを持っていくか・・・・LANか?(色々と面倒くさい)
山川機長さんの発言を思い出して、互換モードでCD-Rを読んでみたら読めたので、CD-R経由で試してみようと思います。
ドライブセレクトの件も有るのでもう一度HCの蓋を開けるので、どのドライブで置き換えたかは確認してこちらとWIKIに情報として挙げておきます。
2020-09-08 23:16:19
うちのMXのAドライブは、FDクリーナーを2回かけたらTownsOS V2.1 L20のディスクから起動できるようになりました。ところで、MXのドライブは電源が矩形コネクタと一緒になっているので普通のDOSのドライブではコンバータを作らないと置き換えられないというようなことを聞いたのですが(確かに開けてみたら電源ケーブルっぽいのが見えない)、ピンアサインメントって解明されてますかね?実はこれがわからないとHxCとか持ってきても置き換えられない気がしてきてます。
2020-09-09 02:26:09
YD-702B-6036B D のピンアサインについてはMSXへの流用があったようで、ぽつぽつと情報が出てきます。
ピンアサイン資料 http://niga2.sytes.net/msx/FDD_READY.html
MSXにポン付けした方 http://usbsecretbase.michikusa.jp/70fd/fdd.html
そのMSXの資料 http://madscient.hatenablog.jp/entry/2016/12/25/153653
2020-09-09 04:16:19
おおなるほど!さすが!
ところで、githubのコメントにReplyしましたが、townsdef.hはできれば近いうちにHigh-Cからもそのまま#includeできるようにしようと思っているので、strongly-typed enumは回避したいところです。物理アドレスなので、High-Cからは使わなくてもいいかもしれないので、そのenumごと #ifdef __cplusplus で括ってしまうという手もあるにはあるんですがね。enumを#defineに切り替えたらなんとかなりませんかね。あと、stdint.hって2004年から存在してたんですね。いろんなライブラリが勝手なint型を定義して収集がつかなくなってるOpen Source Projectを結構見てきたので(見てきたって言ってもせいぜい2~3か)もう津軽はintが32、shortが16、long long intが64ビット決め打ち、ってことで始めたんですが、stdint.hが使えるなら徐々にintXX_tに置き換えていこうと思います。勉強になりました。
2020-09-09 05:54:50
DINOSAURなのですが、僕がやると町出て帰ってこれるのですが、すると町から出られなくなるようです。これ、町に戻れなくなります?
こちらの現象ですが、初期状態だと「扉は固く閉ざされている」というメッセージが出ますが、長老に話すと扉が開くのですが、いったん外に出て帰ってくると、メッセージは出なくて、画面が一瞬暗くなって外に出るかと思うのですが、結局出られないという現象が起きてます。現在どこにフラグがあるのか解明しようとしてます。
2020-09-10 09:55:05
DINOSAURですが、DS:106FHが扉通過回数のカウンタになってるっぽくて、値が1以下になると扉を通れないようです。僕は町から出てすぐ戻ったので入れましたが、再度出ようと思ったら出れなくなりました。ひょっとして、町から出て何かするうちにカウンタが減るイベントが発生している鴨しれません。お時間のあるときに、町に戻れなくなった時点で、試しに、
EMB PHYS:3106F 7F
と、やってみて、戻れるか試してみていただけますか?そうであれば同じ原因ということになりますね。あとは、何の拍子に値が減ってるのか解明すれば、扉が通れない問題は解決するのではないかと思うのですが。あ、違うや。減ってる箇所見つけちゃった。けど、これだと扉を通ると確実に1ずつ減っていくことになるな。。。。じゃあ回復する場所を解明しないと解決しないのか。
それから、長老にいちいち話に行くのが面倒だったら、
EMB PHYS:3EF01 5
これで話したことになります。
2020-09-10 11:18:25
>100
"EMB PHYS:3106F 7F"とやってみた所、再度町の外へ出ることができるようになります。
"DM PHYS:3106F"とやると、町を出たり入ったりするとデクリメントされるようです。
うんづでは同じアドレスはオープニング以降ずっと00Hのままですね、一瞬だと判らないですが少なくとも大きな数値は入っていないようです。
2020-09-10 12:37:04
あー、DINOSAURはコピープロテクトですね。なお、一応再度書いておくと僕はアメリカに住んでるのでDMCA法に基づいてレトロゲーム保存のためのプロテクト解除は明示的に合法とのことです。日本も早くレトロゲーム保存のための法制度が整うといいのですが。
INT 93H AX=0720Hを2度読んで、シリンダ6のサイド0に9,10,11,12,13セクタ(おそらくそれぞれ256バイト)が存在することを確認してます。チェック箇所はBRKON INT 93 AX=0720で簡単に見つかります。確認した範囲では2度に分けて読んでます。Brandishと同じ方式に見えますね。プロテクトに通った場合は、DS:[106EH](物理 3106EH)に10Hが、通らなかった場合はDS:[106EH](物理 3106EH)に01H, DS:[106FH]に03Hを書き込んでいます。これは扉を通るたびにチェックしていて、一度ひっかかってDS:[106EH]に01Hが書かれてしまうと、一度扉を通るたびにDS:[106FH]がDecrementされ、0になったら二度と通れないというものです。おそらくシナリオディスク両方がそうでしょう。
D77イメージを作ればプロテクトごと再現できるはずです。が、現在2HDのD77が作れないので、D77に変換して、シリンダ6のサイド0に256バイトのセクタを追加してみたところ、普通に何度でも出入りできるようになりました。なお、使ったツールは、僕のpublic repositoryのsrc/FM7/utilに入ってるd77analyze.exeです。publicレポジトリのFM系のソースをFMレポジトリに分離しようとしてますが、まだD77ユーティリティはpublic下に残ったままになってます。
存在しないセクタの読み込み要求があったら気にしないで適当なデータを返した方がいいんだろうか。うーん。しかし、コピープロテクトも含めて再現したいと思っているので、ひっかかったときの動作も再現したいから、やっぱとりあえずやめておこう。
2020-09-10 22:33:58
>102
プロテクトか・・・ 動き的に何だかそんな気はしていました。
プロテクトに引っかかるのも正しいエミュレーション結果ですので、方針は支持します。
WIKIの方にも記載しておきます。
2020-09-11 06:51:24
Amaranth3が動くようになりました。-APP AMARANTH3でマウスインテグレーションも対応します。Amaranth3対応のためにFM-R互換モードの表示の扱いを直したので一緒に他のタイトルもいくつか直っててくれるといいのですが。あと、Splatter Houseその他でLOW RESモードで背景の一部が1ピクセル上にずれる問題もやっと原因を究明したので、直しました。これはLOW RESモードが問題ではなくて、HDS-HAJがゼロではない状態で横スクロールしたときレンダリングでVRAMのアドレス計算を間違ってました。例によって今テストを流してるので、全部通ったらソースをPUSHします。
2020-10-17 06:21:01
Invitationですが津軽だとデモが速いということなのですが、これって実機やUNZだとCPUクロックの影響でスピード上がりませんかね?
実機でテストすりゃいいんですが、CDドライブが健全なのが2FだけなのでCPUを高速にできませんでした(^_^;)
ただ、ざっと逆アセンブルしてみた感じだとタイミングはCPUによるBusy Waitで取ってるようなのでCPUが速いと高速動作してしまいそうに見えるのですが。多分000C:00009838がWaitで、
if(DS:[63D40H]!=0)MousePolling
else BusyWait
みたいな感じなので、おそらくDS:[63D40H]が本編フラグで、本編だとマウスのポーリングがI/O 6CHでディレイを入れるのでタイミングが速くならないのではないかと思います。
2020-10-19 06:41:20
>105 山川機長さん
Invitation(オリジナル版)のデモの速度ですが、実機やうんづでもCPUクロックに比例して速度が上がります(これは同時期のMistyも一緒です)。互換モードにさえすれば問題は解決するのですが、現状の津軽にはその実装がないようで…。
あと、本編のマウスポーリングに関してですが、I/O 0x006Cは3代目になってから新設されたポートなので、初代の時点…というかCONTROL.EXEのリボン絵の表示内容からして組み込み版がそもそも古いバージョンのTownsOS(&TBIOS)のInvitationでは考慮されていない可能性が高いです。
2020-10-19 09:55:20
りうさん、
了解しました。とりあえず、何かI/Oが実装できてないとか速く進みすぎているわけではないんですね。安心しました。情報ありがとうございます!
互換モードは、メモリアクセスウェイトなどを加えた場合のパフォーマンスの影響を考えると、当面はVMのCPUクロックの調整で対応する方向で行こうと思っています。所要クロック数が486に合わせてあって、メモリアクセスウェイトも無いので、初代相当ぐらいにしようと思ったら16MHzよりも結構下げないと合わないかもしれないですね。ラストハルマゲドンとか8MHzにすると快適とか動作報告に書いてありましたね。
2020-10-19 12:15:25