PC-98エミュを語ろう18

■ このスレッドは過去ログ倉庫に格納されています
1名無しさん@お腹いっぱい。
垢版 |
2018/09/02(日) 14:33:42.42ID:nqUzIUYg0
NEC PC-98シリーズは過去のものとなりましたが、
その膨大な遺産を活用できるPC-98エミュレータは非常に便利な存在です。
そんなPC-98エミュレータについて語りましょう。

■Windows用PC-98エミュレータ
Anex86
ttp://homepage2.nifty.com/ans/
T98-Next
ttp://www.geocities.jp/t98next/
Neko Project II
ttp://www.yui.ne.jp/np2/
ttp://retropc.net/yui/

■前スレ
PC-98エミュを語ろう17
http://egg.5ch.net/test/read.cgi/software/1500009461/
2名無しさん@お腹いっぱい。
垢版 |
2018/09/02(日) 21:32:12.28ID:nqUzIUYg0
念の為2
2018/09/03(月) 01:57:15.07ID:SkOKrgNX0
おつー
2018/09/06(木) 01:27:51.31ID:4rPwRnCV0
■プロジェクト概要
PC9801で作成されたEXEファイル2本の解析(リバース)を実施したいと考えており、
PC9801経験・リバースエンジニアリング経験豊富なシステムエンジニアの方々を募集します。

※解析対象のプログラムは20年以上前に自社開発したものであり、解析するにあたっての
法的問題等はございません。

■お仕事の詳細:
▽解析依頼の目的・概要
ソースコード、仕様書等が一切存在せず、保守が不可能となってしまっているため、
現行で動作している2本のEXEを解析し、既存プログラムの動作仕様を明らかにすることが目的です。

開発言語等も不明ですが、プログラム自体はCUIベースで単純なロジックのものと
推測しております。

※対象プログラムの詳細については応募頂いた方に別途ご説明させて頂きます。

▽現行の環境等
・PC9801実機(型番はBX02)+ ドットインパクトプリンター(型番不明)
・Anex86(Windows10上のエミュレータとして利用)
※お渡しするのは上記エミュレータ環境と対象プログラムファイル一式となります。

▽重要視する点・経験
・EXEからのリバースエンジニアリング経験
・PC9801に関する知識
・レスポンスが速い方
・秘密保持契約を結べる方

https://crowdworks.jp/public/jobs/1559652
2018/09/06(木) 11:36:40.94ID:KQHWSEdh0
あれ?それ終わってなかったっけ?
6名無しさん@お腹いっぱい。
垢版 |
2018/09/08(土) 18:45:43.21ID:QjjReuZx0
NECOPL.DRVをパッチする方法も試そうと思ったが、最適化され過ぎていて
難読で無理でした
2018/09/10(月) 11:53:13.59ID:y39kERo20
NP21/Wで118音源かMATE-X PCMを選択した場合。Windows3.1でPCMは正常に鳴りますね。
86音源+MATE-X PCM(B460)だと鳴らないです
2018/09/10(月) 12:07:41.87ID:y39kERo20
●表2 サウンドボードID
0 ・・・ サウンドボード無し
1 ・・・ PC-9801-14
2 ・・・ PC-9801-26K
4 ・・・ PC-9801-86
6 ・・・ PC-9801-86 + 26K
8 ・・・ PC-9801-118
20 ・・・ PC-9801-86 with ADPCM(ちびおと)
32 ・・・ Speak board
50 ・・・ SOUND ORCHESTRA
64 ・・・ Spark board
65 ・・・ Sound Blaster 16
96 ・・・ Mate-X PCM
100 ・・・ PC-9801-86 + Mate-X PCM(B460)
104 ・・・ PC-9801-86 + PC-9801-118(B460)
128 ・・・ AMD-98
130 ・・・ SOUND ORCHESTRA-V
2018/09/10(月) 13:25:36.38ID:y39kERo20
26K音源をWin98/95で使おう
http://www.vector.co.jp/soft/dl/win95/art/se129389.html
10名無しさん@お腹いっぱい。
垢版 |
2018/09/11(火) 03:01:36.24ID:uvmGnncz0
猫にPCIが載れば神です
2018/09/11(火) 12:45:17.00ID:uvmGnncz0
Sound ID対応表

Sound ID = I/O port A460hの値
 
上4bit
0 PC-98DO/DO+(PC8801のサウンドボード2)
1 PC-98GS
2 PC-9801-73(FMのI/O portが0188h時)
3 PC-9801-73(FMのI/O portが0288h時)
4 PC-9801-86(FMのI/O portが0188h時) / PC-9821A / PC-9821C(98Multi)
5 PC-9801-86(FMのI/O portが0288h時)
6 PC-9821Ne/Np
7 PC-9821XシリーズのWSS
8 PC-9821C(Canbe) / PC-9821Na / PC-9801-118

下4bit
0 OPNモード
1 OPNAモード
F なし

Sound Board for PC-9800 Database
http://www.hi-ho.ne.jp/~y-exp/dustman/sound.htm
2018/09/12(水) 02:32:10.32ID:/jqwl1dm0
PCIはPCI BIOSがあるから実機のBIOS必要だったりするから厄介ね。
あとはDOSBOX-XのPCIを無理やり移植するとか。(まだDOSBOX-Xの
PC98モードにPCIは無いが)
2018/09/12(水) 04:06:58.17ID:/jqwl1dm0
Windows3.1でPC-9801-86 + mate-X PCM(B460)設定のMATE-X PCMを鳴らす
方法が分かりました。実はスタンダードモードだとこの設定でMATE-X PCMが
鳴りました。エンハンVPCMD.386をパッチしてみました。
66 BA 60 A4 → 66 BA 60 B4
これでエンハンスドモードで鳴るようになります。
なお見て分かるようにB460専用になります。
(※通常はA460です)
2018/09/12(水) 04:07:41.48ID:/jqwl1dm0
Windows3.1でPC-9801-86 + mate-X PCM(B460)設定のMATE-X PCMを鳴らす
方法が分かりました。実はスタンダードモードだとこの設定でMATE-X PCMが
鳴りました。エンハンスドモードで鳴らないのは仮想デバイスドライバが原因だと思った
のでVPCMD.386をパッチしてみました。
66 BA 60 A4 → 66 BA 60 B4
これでエンハンスドモードで鳴るようになります。
なお見て分かるようにB460専用になります。
(※通常はA460です)
2018/09/12(水) 04:38:06.24ID:/jqwl1dm0
Windows3.1でもWindows95みたいに2ch再生できますね

https://i.imgur.com/0Uz6oDd.jpg
2018/09/12(水) 05:48:03.90ID:/jqwl1dm0
np21でMP3を鳴らそうと思うとホスト側のCPUが5GHzぐらいで
やっとまともに再生されるかどうかだな
2018/09/12(水) 11:35:50.03ID:wfZVyq7z0
mp3は元々重いからなぁ
大昔Win95 Pen2 266MHzのPCでも軽くなかった
18名無しさん@お腹いっぱい。
垢版 |
2018/09/12(水) 16:23:50.00ID:AFX5vEDc0
エミュでMP3って
結局、Windows環境の方がいいよ。

Windows7 環境にエミュで

Windows xp を乗せて、さらにエミュでWindows 2000 を乗せて

さらにエミュでWindows 98seかWindows me を乗せて

さらにエミュでWindows 3.1 を乗せて

MS-DOSをプロンプトで、一太郎Ver3 を動かしているようなものでしょ?
19名無しさん@お腹いっぱい。
垢版 |
2018/09/13(木) 00:55:45.12ID:v5YIfjbK0
>>14
NT3.51/NT4.0の場合はsnd4231.sysを
以下のようにパッチします。

6860A40000 → 6860B40000

たぶん4箇所パッチが必要です。
2018/09/13(木) 03:34:08.69ID:v5YIfjbK0
>>19
重要なこと忘れてた。ドライバのPEチェックサムを合わせないとWindowsが起動しなくなります。

あとWindows NTではどちらもWindows Sound Systemと出てどちらのボードを
使っているか分からない素敵仕様ですw
21名無しさん@お腹いっぱい。
垢版 |
2018/09/13(木) 04:57:21.91ID:v5YIfjbK0
Pentium M ィイイィィ *・゜゚・*:.。..。.:*・゜(n‘∀‘)η゚・*:.。. .。.:*・゜゚・* ィイィィィィイ !!!!!☆
2018/09/13(木) 05:13:50.44ID:v5YIfjbK0
現状NP21/WのWindowsでの118音源のFM音源部の作動状況は
Windows 3.1 ×
Windows 95/98 ×
Windows NT3.51/NT4.0 ○ (OPN互換モードでの再生?)
Windows 2000 × (NT4.0のドライバー突っ込めば鳴るかも)

こんな感じかな。

YMF701/715系の設定もあるといいと思いました。
2018/09/13(木) 06:04:32.33ID:v5YIfjbK0
windows2000での118ボードの使い方
http://weblabo.griffonworks.net/dorlog/2nddorcom/pc-98/38636.html

NT4.0の118ドライバはWin2000で動くようです
2018/09/13(木) 06:16:10.72ID:v5YIfjbK0
NT4.0のドライバは頑固で、NT3.51のドライバの方が柔軟性があるようです
2018/09/13(木) 11:42:42.76ID:Isfr1yvW0
dosboxの話はここでしてもええんか?
2018/09/13(木) 12:20:00.65ID:3IQFScY20
だめでつ☆
27名無しさん@お腹いっぱい。
垢版 |
2018/09/13(木) 17:49:28.25ID:v5YIfjbK0
QEMU/9821改良版キタワァ*:.。..。.:*・゚(n‘∀‘)η゚・*:.。..。.:* ミ ☆
28名無しさん@お腹いっぱい。
垢版 |
2018/09/14(金) 03:39:32.59ID:UwXwoL8Z0
>>19-20
画像
https://i.imgur.com/m8s261f.jpg
https://i.imgur.com/1jsFcZR.jpg

実機でやろうとするなら、IPLWAREとIPL-DOSとSOUND IDを設定するツールが
必要だな
2018/09/15(土) 04:53:42.75ID:8CEpjlWQ0
(n‘∀‘)η ← 後継氏が出てきて うれしぃ ・・・ ので カキコ キコ

【NT4.0の118ドライバはWin2000で動く】 について、機種依存?らしいけど 動くゾ。

Win2K(実機9821-V200+118板+118のMIDI娘)の実機環境にて、
118のFM音源 と 118MIDI娘 は動いてくれた。
(テキトウなMIDIファイルを再生)

Win2kにおける 118-PCM再生はできなかった。
(V200の内臓音源≒118相当? と ケンカしまくり?)

FM音源だけならば >>23氏のリンクで イケる・・・はず。
(他にも色々手順や設定があったかも)

MIDI娘を Win2Kで使用する場合、かなり めんどくなるゾ。
(MPU.SYS について、Win4.0-SP4以降のでは 音がでない)
(Win4.0-SP1のMPU.SYSに差し替える など、色々あったような)

実機を Xa200 だったか、Xc16だったかに変えれば・・・
Win2K上での 118-PCM再生もできたような・・・ (記憶も メモももも ない)
2018/09/15(土) 21:26:37.73ID:cUcky5Fj0
本体内蔵の音源は結構種類があるみたいだな

WSS-PCM (MATE-X PCM [CS4231]
CanBe Sound [YMF288 + CS4232]
CanBe Sound2 [YMF297 + CS4232]
CanBe Sound3 [YMF288 + YMF701]
ValueStar Vxxx [YMF701]
ValueStar Vxxx [YMF715]
PC-9801-118 [YMF297 + CS4232] )
2018/09/16(日) 08:58:19.17ID:Ja/YlV8u0
YMF701(OPL3-SA)とYMF715(OPL3-SA3)はWSS-PCMとOPL3の機能がある。
OPNA互換機能は無い。
他にPC-98で採用されていないがYMF711(OPL3-SA2)というチップもある。
2018/09/16(日) 22:44:48.19ID:Ja/YlV8u0
猫にPCI、無理だと思ったら意外と力技で動いて驚いた
2018/09/17(月) 05:51:10.01ID:X2S4LNsx0
マイクロソフト マウス・ドライバ 7.06
http://www.vector.co.jp/download/file/maker/ms/fh010626.html
2018/09/18(火) 02:15:30.47ID:rLk5jk2x0
猫でIntel 440FXエミュレーションはできますか?
2018/09/18(火) 08:16:15.19ID:+Bgrj3bb0
氏ね
36名無しさん@お腹いっぱい。
垢版 |
2018/09/18(火) 09:22:59.02ID:rLk5jk2x0
>>34
P5機だと430HXか430VXですね
2018/09/18(火) 11:16:22.82ID:rQ5rLnn60
死ね
2018/09/18(火) 14:23:06.10ID:1KyQoKdv0
莚、ゐ`
タマネギ age ♪
兄 、必 死 だ な ( 藁

With98とかで 色々な機種を見てみると、
サウンド:拡張FM音源 だけの場合、OPL系だけ?のようだ

Canbeの一部では 86互換音源 拡張FM音源 両方を備えてるらしい。
(Ct16とか)

Win2Kにおいて 118-PCMが使えたのは・・・
おそらく PCMのみ備えてる機種 だったような。
(機種のPCM板を 引っこ抜いて、うまくいったり、いかんかったり)
2018/09/20(木) 00:07:24.58ID:8y2uGtN00
>>27
PC-9821CE2のROMでは動きませんでした。
PC-9801BX4のROMではメモリーチェックがおかしいですが
起動できるようです。
2018/09/20(木) 01:05:08.90ID:Qe8T0CJf0
>>39
メモリーチェックはシステム空間作ったせいで14.6MBで止まります(跳ばして読んでくれない)
ただXt13のではメモリマネージャ組み込めば512MBまでは確認してます

BX4のBIOSでどうなってるかは気になっています
2018/09/20(木) 02:47:07.60ID:pQKOAgk70
>>39 >>40

>>27 の qemu98pci において、
手元にあったROM(BX4-rev0.03) 2種類(pc98BANK0〜7.bin と pc98bios.binなどの2種類)
起動だけ試してみました。 (起動オプション: qemu98pci -L . -hda test3.img)

BX4-rev0.03 pc98bios.binなど の場合、メモリチェックでフリーズするようです。
【MEMORY 640KB 0000F1FFFCK55555555】 という表示でフリーズ。

BX4-rev0.03 pc98BANK0〜7.bin の場合、
日本語英語表示が全く見えないのですが、起動できるようです。
(ピポった後、メモリチェック表示も何も見えない)
(なぜか残っていた 同級生2 が起動し、ゲームも開始できたが、文字が全く表示されない)

この時の stderr.txt を見てみると、以下のような内容でした。
qemu98pci: pci_add_option_rom: failed to find romfile "vgabios-cirrus.bin"
qemu98pci: pci_add_option_rom: failed to find romfile "gpxe-eepro100-80861209.rom"

文字が全く表示されずに起動できた場合、上記の2行に加え、以下の1行もありました。
pc98vga: 640x400, 4bpp

他機種のROM 、V200など 複数機種ので試してみましたが、全滅のようです。
(Ce2-ROMは SL9821用しかなかったので 未確認)
2018/09/20(木) 03:12:35.10ID:pQKOAgk70
>>41

pc98bios.bin って、何を使って吸い出したか 思い出せない・・・
9821-Ce2のROMでも試してみましたが、起動できませんでした。
(SL9821用に吸い出したROMデータをリネーム)
(pc98BIOS.bin pc98FONT.bin pc98IDE.bin pc98ITF.bin)

【MEMORY 640KB +14336KB OK】
【CACHE ERROR】 ←黄色表示
この表示が20秒ほど続いた後、数秒まっくろになり、qemuが強制終了。
2018/09/20(木) 05:49:25.36ID:Qe8T0CJf0
>>41
文字見えてないのはpc98font.binがないですね
置けば見えるようになると思います
2018/09/20(木) 06:11:43.34ID:JE7T4Dv40
>>43

ありがとうございます、確認できました。

pc98BANK0〜7.bin +pc98font.bin にて、ゲームの起動もできました。
英語日本語も表示されています。
(メモリチェックの表示は 【MEMORY 640KB 0000F1FFFCK55555555】 でした)

pc98bios + pc98font + pc98ide + pc98itf +pc98sound.bin という
構成の場合、やはり メモリチェック(上記のような表示)で フリーズします。

こっちは ドドドド素人なのですが・・・
他に何か確認できることはありますか?
(実機確認についても 物理的に再構築すれば可能です)
(V200用の win95 win98se win2k 、物理システムHDDなどは残してます)
2018/09/20(木) 06:34:47.99ID:Qe8T0CJf0
>>44
メモリチェックでフリーズしてる奴も -M pc98 ならどうでしょうか?
pci使えないと何の面白味もないですがSB16がそれなりに使えてるのは他と違うので

せっかく動いているのでMSD.EXEを動かして8Mhz系になってるかは見てほしいです
2018/09/20(木) 07:45:51.60ID:8y2uGtN00
>>41
そうそうBX4だとメモリーチェックでそうゆうふうになります
2018/09/20(木) 07:49:47.63ID:8y2uGtN00
ちなみに-M PC98にしてもCe2のROMだと起動しませんでした
2018/09/20(木) 08:37:13.23ID:8y2uGtN00
18 :ナイコンさん:2009/04/20(月) 02:39:48
UMBPCI.SYSをRa266で試してみた。
昔試したv3.70は440FX対応外ぽくて使えなかったけど、今拾ってきたv3.79は対応済ぽい。

デフォルトだとE000-E7FFもUMBになって98だとまずいので、
DEVICE=HIMEM.SYS
DEVICE=UMBPCI.SYS /I=C000-D7FF /I=E800-F3FF
こんな感じにしてみた。
DE00-DFFFも加えたいけど指定する範囲は16KB境界じゃないと駄目みたい。
A500-A7FFも指定出来ない。

今初めて使って、98のDMAとか正常動作するのかよくわからんけど、
とりあえずSMARTDRV丸ごとUMBに常駐させてFDをSCANDISKしてみたけどエラー出なかった。
2018/09/20(木) 16:58:42.35ID:8y2uGtN00
X-MATEだとXaかXfじゃないとPCIが付いていないのか
2018/09/20(木) 17:24:17.85ID:8y2uGtN00
↑X-MATE初期の機種ではです
2018/09/20(木) 17:48:33.33ID:8y2uGtN00
Lamdisk!-X v0.46aと常駐VZ1.60k07t4
http://zeranium.bbs.fc2.com/?act=reply&;tid=9970076

NP21/Wでの作動に不具合があるようです。
エミュ側の不具合の可能性有。
これは修正されているのかな
2018/09/20(木) 19:47:07.19ID:8y2uGtN00
\np21w-0.86-rev44beta4でUMBPCI.SYS使ってみたら、
Intel Saturn(420TX)が検出されました。
しかし、Problem programming PCI-chipset!と表示されて
作動しませんでした。

https://i.imgur.com/HsbUZFg.jpg
2018/09/20(木) 20:42:28.24ID:8y2uGtN00
>>52
現状NP21/WではEMUMB.SYSやEMUMBX.SYSで
UMBが使用可能なのでUMBPCIを使う意味はあまりないです

あとUMBPCIに入っているDMACHK.COMはINT 67h呼び出して
不正な割り込みで停まるので、98VHOOK.SYS使えば
回避できる場合があるが、98VHOOK.SYSはVEM486かLEMMも使う必要が
あるがDMACHK.COMはEMM386系を組み込んだ状態では
正しく表示されないのでDMACHK.COMにパッチを当てて回避できました。
"CD 67"→"90 90"

https://i.imgur.com/3WK63Mu.jpg
2018/09/20(木) 21:02:23.50ID:8y2uGtN00
QEMU/9821(武田氏のオリジナルとPCI対応版)でEMUMB.SYSやEMUMBX.SYSを
/EE800-EFFFの設定で組み込めました。
前やったとき(武田氏のオリジナル)はうまく動かなかったのに、設定が悪かったかな?
2018/09/21(金) 02:37:08.04ID:cpo8fN2+0
擬似UMBドライバ(EMUMB.SYS)に入っているSET401.SYSが
16MBシステム空間を空けるRECMEM.SYSの替わりになる事が判明しました。
DEVICE=SET401.SYS /D=70
とすることでRECMEM.SYSと同等の働きをします。
(他にdevice=dxm.sys px98exe.comなどの手段もありますが)
2018/09/21(金) 02:45:22.55ID:G4hFsYWn0
>>45

「メモリチェックでフリーズしてる奴も -M pc98 ならどうでしょうか」
だめでした。同じように メモリチェック後にフリーズしました。
(pc98bank.bin が無いからでしょうか? ←SL9821用に吸い出したbank.romをリネーム)
(今回、pc98bios + pc98font + pc98ide + pc98itf の4つで再確認しました)

↑同じROMデータを使用して、古いqemu9821(2012-0820)で試してみると
メモリチェック後にフリーズしてしまいました。

「MSD.EXEを動かして8Mhz系になってるか」
qemu98pci において、BX4-rev0.03 pc98BANK0〜7.bin+pc98font.bin を使用して
DOS6.2を起動させてみました。その後、msd.exeを実行してみました。

8MHz系ではなく、5MHz系になっているようです
【プロセッサ: 不明】
【クロック: 5MHz系】
【NDP: 内蔵】
【ディップスイッチ#2: 37】
【メモリスイッチ :48-05-0C-00-01-80-00-00】
【BIOSフラグ: D3-12-22-00-00-00-84】

画像キャプチャしようと思いましたが、かなりの枚数になりそうです。
2018/09/21(金) 04:36:03.09ID:tbSI7+HE0
>>56
動かない方はpcibiosが無いからじゃないかと想像します
Xt13でもpciのファイル無しにすると同じ場所でフリーズしますのでなんかコードが走ってるのだと思います

自分の中ではNTを動かすところが次の目的になっているので5MHz系になってるならむしろ歓迎です

自分しか試していないので比較的気持ち悪いのですが2DDフロッピーのブートはどうでしょう
2018/09/21(金) 04:48:14.25ID:cpo8fN2+0
>>46
BX4のROMの場合、-M pc98pciだとMSDが落ちます。
-M pc98だとMSDが動きました。
2018/09/21(金) 04:51:54.63ID:cpo8fN2+0
5MHz系になってました
2018/09/21(金) 05:03:33.83ID:cpo8fN2+0
NP21/Wでパックドピクセル256色モード(9821グラフィック)で
MS-DOSプロンプトを正常表示するようにできないかな。
ウイドウ表示または終了してウインドウズに戻ると画面がぐちゃぐちゃになる。
16色モードと256モードの切り替えがうまくいっていない。
QEMU/9821だとパックドピクセル256モードでも正常にMS-DOSプロンプトが表示される。
2018/09/22(土) 05:07:16.96ID:A8qWQ1TO0
>>57
「動かない方はpcibiosが無いからじゃないかと想像します」
pc98bios+pc98font+pc98ide+pc98itf の4つでは、DOS起動不可でした。

pcibios=pc98bank0.bin? という予想にて、
上記の4つに pc98bank0.bin を加えて試してみたところ、やはりフリーズしました。

よくわからなかったのですが、
pc98ide.bin → pc98bank3.bin に交換すると DOS起動できるようになりました。
(pc98bios+pc98font+pc98itf+pc98bank3.bin の4つ、pc98ide.binは削除)

古いqemu9821のROM環境を見直してみると、pc98ide.bin以外という環境でした。
(pc98bank0〜7.bin+pc98bios+pc98font+pc98itf+pc98sound)
(pc98ide.bin は !_pc98ide.bin と・・・なぜかリネームしていました、記憶にないです)

「2DDフロッピーのブートはどうでしょう」
np21/w_DOS6.2上にて、2枚・2種類でフォーマットして(8、9セクタ)試してみました。
qemu98pci では、両方で DOS起動できました。
(とりあえず、起動したことだけ確認しました)
■ このスレッドは過去ログ倉庫に格納されています
大学生アイラと影の怪物と戦うリョウが、深夜3時3分の静止した世界で交錯する超常スリラーの概要

ニューススポーツなんでも実況