98システム解析スレッド2023年12月 /人'A`;人\ 2023年12月1日(金) 2:28 |
FDloader版SCSI select まりも 2023年12月1日(金) 9:30 |
先月最後のこれ >アダプテック系のPCI-SCSIの設定はFDloaderでは 可能は可能です。FDloaderの段階でPCIリソースは未割り当てですが、それはほぼ全てのデバイスでそうなので、勝手に割り当ててしまっても競合が起こりません。I/Oアドレスのベースが確定すればあとは処理できます。とは言ってもプログラムはアセンブラで何も無いところから開発しないといけないので大変です。
PCIのSCSIボードの場合はリソース競合で起動しなくなることはまず無いし、ターミネーション不良で起動しなくなるのはSCSIからブートしようとするときでしょうから(推測)、FDからの起動になっていれば普通はAdaptecやミイソのユーティリティのFDが使えるはずです。何が原因でしょうね。
開発の容易さと介入タイミングから言うと、やはりブートBIOSに入れるのがベストかと思います。そもそもAT版はそうであるわけです。FDloader版のアプリ開発はなんだかんだで面倒で制約が多いですから。
|
15-16MB空間のCバスROMイメージ まりも 2023年12月1日(金) 23:23 |
15-16MB空間は「システムセットアップメニュー」で「使用する」にした場合、1MB以内の空間の000A0000h 以降と同じものが現れると言われております。それは本当なのか? ということで調べてみました。ごく一般的な機種ということで本体はPC-9821Bsにi486DX4ODP、IDE BIOS出現、サウンドBIOS無理矢理(書き込み禁止RAM)出現、D000:0からPC34のメモリ出現、D600:0に4KBのROMボード(55-SCSIボード改造)を装着の状態で試しています。なおunrealモードでの実行です。
画像1はSCSIボードが100ボードのとき、画像2はSMITボードIFC-NNのときです。オンボードの書き込み禁止RAMのBIOS、およびPC34ボードなどは15-16MB空間にも現れています。しかしSCSIボードは100ボードでは15-16MBには現れないことがわかりました。SMITボードではBIOS ROM自体は現れますが、MMIOの窓のほうは現れませんでした。【後日追記】現れてしまうのは、SCSI_RAMというツールでRAMにしていたためとわかりました。
「15-16MB空間を使用する」の状態にしたからといって1MB以下のシステム/拡張BIOS空間のイメージが完全同一で現れるわけではなく、Cバスボードに依るようです。キャッシュ可否属性などはどうなるのでしょうね。空間を使用しない(本体のメモリ出現)のときにはキャッシュ可でないと遅くてよくありませんが、ちゃんと変わるのでしょうか。今後なんらかの方法で調べてみたいと思います。
それから1つ気がついたこと。LUMB /map および HS umm では 黄色でGRMと表示されるアドレスは、GVRAMが現れていなくてもGRMという表示です。決め打ちのようです。B000:0はミイソ独自EMSメモリを出せるし、E000:0はグラフィック16/8色を8色モードにすると(PCI以前の機種では)GVRAMが現れなくなります。VRAMと通常のRAMの区別は面倒ですが(GDC経由でなんか描いて不一致になるかどうかを見る方法くらい?)、書き込みできるメモリが有るか無接続でFFhを返す状態なのかは判別しておきたいところです。
|
VRAM判別 リウ 2023年12月2日(土) 0:41 |
見えているものがGVRAMかEMS裏か(wildcatなPCI機ならメモリにも)を調べるにはGRCGで4bank同時書き込みをA800hに対して行って b000 b800 e000(256色モードMMIOの場合有り)それぞれに反映されているかで見分けられるかとは思います。 もしくは書き込み速度計測ですかね… 明らかにメインメモリより遅ければVRAM…
9:10追記 int67h ah=41hがEMSのページフレーム取得ですね。こっちの方で手抜きできるかも? 12:55画像追記 前期RAでリアルモードEMSをEMM.SYSで、ページフレームB000のときのHS UMMの結果です。ページフレームでなければVRAMに決め打ち とやってそうです。 (さすがに壁こえSCSIの常駐部がVRAMに存在していても判別はしてくれません)
|
15-16MB空間のROM/RAM/GVRAMの判別結果 まりも 2023年12月2日(土) 14:53 |
>GRCGで4bank同時書き込みをA800hに このほうがGDC描画よりも簡単ですので、プレーンごとに有効無効にしてROM/RAM判定プログラムに実装してみました。本体や環境設定は昨日と同じです。A0000-AFFFFhは調べるまでもないので省略です。 画像1:全てのGVRAMが現れている状態。1MB以下の空間と同じです。 画像2:B0000hがメモリの状態(EMM未使用)。★15-16MB空間には現れないようです(新知見)。 画像3:8色モードの状態。1MB以下の空間と同様、xE0000hには何も現れません。 画像4:15-16MBシステム空間を使用しない=メモリの状態。想定通りです。
|
|
Cバスの仕様は影響ないのでしょうか KAZZEZ 2023年12月2日(土) 16:30 |
> 15-16MB空間 Cバスの上位アドレスを有効にするスイッチバーの状態がちょっと気になりました(切り替えスイッチの無いCバスなら関係ないですが)。286以上に対応した55系のCバスSCSIには基本的にスイッチバーが付いていたと思いますので15-16MB空間に実ROMが現れても不思議ではないと思うのですが、100ボードには元から付いていなかったと思いますので、その辺の関係もあるんでしょうかね? SMITボードの場合もスイッチバーなしで動くようでしたが、IFC-NNには付いていました。15-16MB空間にROMが現れたり現れなかったりというのはPnPの誤動作か何かでしょうかね? ----追記---- そういえばBsはマザボのロットによってはDX4ODPが動作しない(したがって公式には非対応)という話もありましたが…安定動作しているのであればたぶん関係ないのでしょうね。
|
256色モードや4G空間手前やPC34Eの問題など まりも 2023年12月2日(土) 19:11 |
さらにいろいろ調べてみました。9821グラフィクスを使うので本体はPC-9821Xnです。PC34E EMS ボードも入れております。D7000にROMがあるのは内部のSASI BIOSを出してある場合です。CC000にROMがあるのは内部のサウンドBIOSです。
画像1:A5-A7のところにPC34Eメモリを割り当てた場合(追記参照、15-16MB空間無関係だった) 画像2:32bit空間トップも15-16MBと同様。FFFF8000がRAM無しなのでプログラムの誤りはない。 画像3:9821グラフィック256色モード時。 256色モード時にはB8000-以降が無効になります。A8000-B7FFFhの64Kバイトは512KBのVRAMが投影されるウィンドウになりますからRAM属性です。E0000-は特定番地のMMIOへの"鍵"以外のところは書き込んでも値が変わらないようです。とくに先頭はMMIOから外してあるようで、安全な設計です。このプログラムでは先頭の4バイトしかテストしないので、ROM判定になります。256色のpacked pixelモードではGRCGも無効ですからGVRAMかどうかの判別には別の方法をとるしかありません。まあそこまでやらなくてもいいとは思いますが。
>スイッチバー 実はPC34Eや55-SCSIボード流用ROMボードなどはスイッチをつけた場合と外した場合で実行していますが結果は同じで、必ず15-16MB空間および4G手前空間に現れました。SMIT SCSIボードのBIOSが現れるのは、スイッチバーとは無関係のものだと思います。Xnでは現れませんでした。
ともかく15-16MB空間は1MB空間の拡張ROM域のイメージがそのまま出ているというわけではないことだけは今回わかりました。いっぽう4G手前空間は15-16MBそのまんまですかね。Cバスのアドレスが16MBを超えたところに現れるはずがないので、CPU側のアドレスに現れるあくまでもメージ。
【22:40追記】画像4です。CバスのPC34E EMSメモリボードですが、D0000およびA4000 にマッピングし、メインメモリは12288KB(12MB)しか搭載しないでD00000h(13MB)のアドレス読みに行ったところ、なんとDD0000hやDA4000hにも現れていました。つまりPC34[E]はアドレスデコードがいい加減で、20bit以上は適当だということです。1MB毎にxD0000hの全部のアドレスに表れていたのです。内部メモリのほうが優先的にCPUに接続されるので支障を来すことはありませんし、トータル16MB以上メモリを搭載していた場合は気がつきもしません。
なおPC34[R]はそこが改良されており、D0000hにマッピングしてあっても15-16MB空間のFD0000hには現れませんでした。この点ではPnPなSCSIボードと同様です。やはり15-16MB空間には勝手に1MB以内のモノが現れるわけではなく、現れるのは内部の書き込み禁止RAMと、そのようにデコードされた一部のSCSIボードだけと思われます。
|
|
スイッチバーの有無は? かかっくん 2023年12月4日(月) 3:27 |
ターミネーション不良ではデバイススキャン時も問題に成りそーな?>SCSI
> 【22:40追記】画像4です。CバスのPC34E EMSメモリボードですが、D0000およびA4000 にマッピングし、メインメモリは12288KB(12MB)しか搭載しないでD00000h(13MB)のアドレス読みに行ったところ、なんとDD0000hやDA4000hにも現れていました。つまりPC34[E]はアドレスデコードがいい加減で、20bit以上は適当だということです。1MB毎にxD0000hの全部のアドレスに表れていたのです。内部メモリのほうが優先的にCPUに接続されるので支障を来すことはありませんし、トータル16MB以上メモリを搭載していた場合は気がつきもしません。
PC34EのモードはEMS+PM(マルチ又はセパレート)dsk? EMSだけ又はEMS+バンクの場合はスイッチバー無が正しい気がし枡が何方で試し増したか? 正しければ出るのは512K〜1Mと15.5M〜16Mの気がし枡が1M毎に出枡か?
|
EMS専用時PC34EもEMJもバー有りは正しくない まりも 2023年12月4日(月) 12:08 |
ややこしくなるうえに初期化されてしまうEMS+PMやらEMS+BM混合モードは試していません。EMS専用モードです。 いまいちどXn(メモリ12MBまで実装)で試してみました。XnではCバススロットはすべてスイッチバー受けが付いています。今回はFxxxxxhに加えてDxxxxxhのチェックも表示するようにして、1MBサイクルの出現も監視します。EMS専用設定のメモリボードとしてメルコのEMJも使用し、スイッチバーの有無も変えてみました。 画像1: EMJスイッチバー有り、SCSI_RAM を適用 画像2: EMJスイッチバー無し 画像3: PC34Rスイッチバー有りでも無しでも
画像1ではDD4000hのところにEMJボードのRAMが見えています。EMJではスイッチバーありだと1MBサイクルで現れてしまうようです。本来は15MBのところだけしか現れてはいけないはずですけどね。 画像2のようにバー無しのEMJは15-16MB空間にも現れますが、1MBサイクリックは起こしていません。バー無しのほうがまともな動作と言えます。 画像3のようにPC34[R]バー有り/無しとも15-16MB空間に現れません。設計としてはこれが正しいかと思います。
ところで SCSIのDC000hのところが15-16MB空間に現れたりそうでなかったりした理由は、SCSI_RAMの適用の有無にありました。100ボードでは普通SCSI_RAMを使わないので気づくのが遅れました。生ROMでは15-16MB空間に現れませんが、RAM化していると書き込み禁止内蔵RAMですから、IDE BIOS RAMと同じく現れるのです。すっかり忘れておりました。基本は「比較的後期の(PnPにも対応くらいの)SCSIボードのROMは15-16MB空間には出てこない」という結論でいいと思います。いっぽう55/92ボードは現れますが、1MBおきにサイクリックするようなことはありませんでした。
なお共通してD0000h/FD0000hのところにROMがありますが、これはPK98-Mistress9ボードです。このボードは15-16MB空間に現れるタイプのようです。
|
|
EMJはEMSだけではスイッチバー無 かかっくん 2023年12月4日(月) 19:56 |
EMJはマニュアルにもMELWAREにもEMSだけではスイッチバー無と明記されて居ます。スイッチバー無なら出ても 15.6M〜16Mだけでせう
EMS+PMならスイッチバーは当然有に成増が、PC34のセパレートモードでEMS部に設定した空間は初期化されない 気が? ところで13.6M以上で出て12.6M以下では出ないとも考え難いので、RAM容量を確認して其れ以上の空間を チェックしては?
|
PCI機の15-16MB空間 まりも 2023年12月4日(月) 22:37 |
PCI機としてWildcat機の15-16MBシステム空間がどうなるのか・・・。Wildcat機ではチップセットの仕様により1MB空間をぜんぶメインメモリにできるという潜在能力があります。そこでG-VRAMなどをRAMにしたときにどうなるか調べてみました。
結果は画像のとおりですが、1MB空間内がやたらRAMなので説明を要すると思います。 まずG-VRAMは A8000hのプレーンはそのままま B0000h、B8000h、E0000hのプレーンはメインメモリを割り当て そのほかは C0000hからの64KBにメインメモリを出す E8000hからの32KBはもともと書き込み不可RAMのN88 BASICを書き込み可に、 F0000hからの64KBはもともと書き込み不可RAMのSYSTEM BIOSを書き込み可に というようにしてあります。 D0000hからの16KBにはPC34Eの勝手RAM(テキスト画面キャプチャ用)、DC000hからはPCI SCSI BIOSが居るだけで、とくにいじりません。
このとき15-16MBシステム空間をみると、A8000hのG-VRAMにGRCGで描いたものがどうやら反映されて、FB0000h-,FE0000hはG-VRAMであると判断されました。15-16MBのG-VRAM部はメインメモリが現れるのではないわけです。 いっぽうC0000hに出しておいたメインメモリはFC0000hに出ることは無く、DC000hのSCSIもFDC0000hに現れません。SYSTEM BIOSなどは書き込み可にしておいたのに、15-16MB空間のそれはROM属性です。
PCIのメモリコントローラのPAM(Programmable Attribute Map)が割り付ける物理アドレス1MB以内のメモリは、15-16MB空間には絶対現れないということになるかと思います。FE8000hからの96KBに現れているのは物理ROMのBANK5,6,7であり、FD8000hからの8KBに現れているのはROMのBANK3の先頭部です。RAMにコピーされたものは1MB空間にしか現れません。そう考えるとITF/BIOSの物理ROMはCバス接続相当なのでしょう。いっぽうG-VRAMは抜いちゃ駄目ボード上にある機種もあるくらいだからPCIバス接続のはずですが、15-16MB空間に出る特別な仕掛けがあるようです(これはintel chipset機でも確認の必要が出てきた)。
>13.5M以上で出て12.5M以下では出ないとも考え難い メモリの無いところ全部の1MBごとに出ているのは確認済みです。Dxxxxxhはその一例です。
|
改めて考えると かかっくん 2023年12月5日(火) 0:08 |
で、改めて考えると、1M毎に変に出るとCバスでのPM増設が出来なく成って仕舞いますから、本則通りEMSだけでは スイッチバー無しで15.6Mでしか出ないのが正しい遣い方でせう SCSIについても100・1030BやSPC以外はスイッチバー有デスが、其れでも1M毎に出ないのが正しい筈デス # 61SIMMで14.6Mに出来る9801はDAとF*だけ?
|
わかったことの活用:ユニバーサルgetitf98 まりも 2023年12月5日(火) 0:37 |
ITF/BIOSの実ROMを読み出す拙作GetITF98ですが、これまではチップセットを調べ、RAMになっているSYSTEM BIOS部の裏にあるROMを出し、F8000hをITFに切り替える間は長い時間割り込みを禁止し、ROMバンクを切り替えたときにはセカンドキャッシュの中身を捨てるなど、恐ろしく手数のかかることをやっていました。それでも未知のチップセット機では未だ対応が図れていません。
しかし今回、実ROMは15-16MB空間に出ているということが判ったわけですから、最初からそっちを読みにゆくようにすれば、ITFに切り替え中だろうがBIOSのサービスを問題なく使うことができます。割り込み禁止の必要もありません。何よりもチップセットのPAMをいじる必要がなく、機種に依存しないでROMの読み出しができるわけです。わたしが全く持っていないEPSON機(386後期~586機)でも動作することが期待できます。<追記>ですがダメと判明。
というわけで近日中にGetITF98のユニバーサル版(CPUは80386以上に対応)を作ろうと思います。コード量もこれまでの半分くらいで済みそうです。
|
DAは くりすと 2023年12月5日(火) 5:26 |
1.6+12MB=13.6MBまでですね。(残り1MBはCバスのみ)
|
EUD-Hの1MB以内の1次キャッシュの領域 くりすと 2023年12月5日(火) 10:12 |
いまさらですが、しばらく前の掲示板を見て所有しているDA/RA21用のEUD-H(Cx5x86 GP120)の1次キャッシュがRA21の1MB以内のメモリ空間上どこまで有効になっているのかよく分かっていなかった(単なる無知)のでメモリベンチマークで見たところ80000h以降は問答無用でキャッシュディセーブルになっていました。WT1の設定を変えても変化なしです。バンク切り替え可能機種なので決め打ちで無効化しているのではと思います。(CPUBENCHの速度もキャッシュを切った状態と同じでした。) 画像はARA5X86でキャッシュOFFとON(64KiBx100なのでWBしても意味もなく有意差なし)で計測したものです。7FFFFh以前はキャッシュのON/OFFでほぼ6倍差が出ているのを確認できます。恐らく1MB以上をプロテクトメモリでアクセスした場合も同様かと。 80000h以降でもRAMは32ビット接続、ROM,Cバス,VRAM,CGは16ビット接続なのが分かります。 15〜16MB空間の(09 Bank)の速度が16ビット接続のようですがCバスよりやや速いのはよく分かりません。
|
intel機の状況証拠だけですが リウ 2023年12月5日(火) 13:42 |
Xb10(i430FX)でPCI-SCSIがDC000hに存在する状態で PCMCIAのMMIOをFDC000hに出したところコンフリクトせずに動いています。
19:55実験後追記 430MXのNr166/Xで16M空間をメモリにした状態で 256色モードのリニアモードVRAMがFFF00000hからの512kBに現れていました。(FreeBSD/pc98で調べました。文献にはありましたがきちんと調べていませんでした。) windows3.1やwin95では16M空間決め打ちでやっていますので486機で同様かは調べないとわかりません。
|
32bit空間最上位を使う まりも 2023年12月5日(火) 15:29 |
わたしもIntel 430HX機で確認しました。Intelチップセットではメインメモリを出せるのはE0000hのプレーンだけですが、15-16MB空間のFE0000hにはG-VRAMとして描画されていました。<追記画像3>15-16MBシステム空間を「使用しない」=メモリで使う場合で、16MBまでメモリを実装していないときは、何も現れなくなるのではなくて、ROMな部分(およびCバスのメモリ)だけが現れるようです。<リウさんの追記を裏付けるものを画像4に追加>15-16MB空間使用有無を気にせず256色VRAMが使えるのは確かに便利です。
ユニバーサルGetITF98は、32bit最上位空間を使うと15-16MB空間をメモリで使用してあっても動作するので、その方向で作っているところです。80286機はITFが1バンクしかないことはわかっているし、既にGetITF98が対応しているので、今度のは80386以上対象でいいでしょう。いろいろな機種でテストしてみて、GetITF98で読み出したデータと一致していました。難攻不落のH98モデルU105でも何かのROMデータを読み出すことができました。しかしシステムBIOSにあるものが入っていなくて、全てのバンクで同一内容のデータとなっています。H98についてはまだ調べないといけないことがありそうです。
|
|
GetITF98 バージョン3.00 まりも 2023年12月9日(土) 22:25 |
従来版(2.30)と両方アーカイブに入れておこうと思いましたが説明がややこしくなるので、80286機用ルーチンも組み込んで、バージョン3.00としました。仮想86モードで動作しませんのでEMM386,VEM486,LEMMなどを使っている場合はいったん取り外してください。いっぽうHIMEM.SYSは有効でHMAの使用を推奨します。
ttp://hp.vector.co.jp/authors/VA012947/util/getitf98.html 機種依存性が非常に低くなったとはいえ98ノートのRedwoodチップセット機やXfなど430LX機は持っていないので試していません。EPSON機でも試されていません。ぜひお試しください。ただしPC-386以上です。PC-286はこちらでの以前のご報告から、NEC機との重大な相違のためハングアップすることがわかっています。またH98も違いすぎるようですが解析不十分のため対応ではありません。
なおプロテクトモード移行部以外では32bitレジスタを使用していません。(FFF)F8000hからの32KBしか扱わないので、16bitのインデクスレジスタの使用となっています。この場合はUnrealモードと言っていいのかどうか?
|
RE:GetITF98 バージョン3.00 リウ 2023年12月9日(土) 23:19 |
さっそく試してみました。 430LX機のXfでの結果は以前に吸い出していたIDEBIOSとBANK3の前半が一致したこと、それ以外のファイルがBANK3とは違うものが出力されたこと によってきちんと動いていると思います。 bank1の4000hの他機種ではサウンドBIOSが存在している部分に謎のコードがいました。文字列として FIELD overflow4.Bad file number5.File not found3. のようなものが並んでいます。 いつもとは違いbank2の先頭にサウンドBIOSが存在しました。(無意味なはずですがAs内蔵のものと比較すると最後のchecksumの2byte以外一致しました)
残念ながらREDWOODのLtではF8000hの中身入れ替えはいつものIO操作では起きないようでF800:0000の中身がそのままbank0-bank7として出力されてしまいました。
|
REDWOOD まりも 2023年12月10日(日) 0:41 |
Redwood 機では、PCI機にすら残存している下部(Cバス寄り)のNEC固有レイヤ(I/O 43D、43F、53D、63Cなど)がなくて、直接ROMコントロールするみたいですよね。PCIチップセット機でもROMコントローラなるものはありません。 Undoc2に書かれている 900h/906h 2段階 I/Oによる DRAM Configuration Register 5 ,レジスタ番号020Fh bit 0 0: ITFマッピング あたりを操作するのでしょうね。さらに下の、ITFのバンクの切り替えのためにはI/O 043Fhが居るんですかね? とにかく最も98らしからぬ98だというのは本当です。
4GB最上位および16MB最上位空間には、PCI機では直ROMが現れてRAMなものは現れません。オンボードのRAMはCバス接続ではないからです。Redwoodもそうかなと思っています。
|
HAの場合 KAZZEZ 2023年12月10日(日) 14:29 |
> EPSON機で PK-A586/98を載せたままですが486HA2で試したところ、何らかのデータは読み出せているようですが、FC/Bで比べる限り、どのbankもすべて同じデータでした。搭載メモリは約48MBで、16MB以上のメモリを使用する・しないで変化は無いようです。 以前のリウ氏のEPCHKで調べたときにNECの同様のIO 1E8EhでDAセグメントのRAM制御ができそうであることと、IO 0E8Ehでメモリ窓の制御ができないようだという結果が得られていますので、メモリ窓は出せてもバンク切り替えは方法が違うのだろうと思われます。他のEPSON機で試していないので、もしかしたら独自PCIによる干渉とかもあるもかもしれませんが…。
> ターミネーション不良ではデバイススキャン時も問題に成りそーな?>SCSI 多分そんな感じだと思います。 ちなみにNoATbootを適用していました。BIOS内に設定プログラムを組み込むのであれば併用できるようにというか一体化しておく必要もありそうですね。
----15:50追記---- VM21にVX21のCPUボードとIBM486SLCのCPUアクセラレータを載せたVXもどきで試していて気付いたのですが、SCSI接続のHDD上で実行する場合、1030Bボードであれば完了するのですが、IFC-NNだと中断または止まってしまうようでした。上記で報告された15-16MB空間における100ボード(=1030P)とIFC-NNの挙動の違いでしょうかね? なお上記の環境(486換装286機+1030B)で読み出せたデータはなぜか8bankすべて同じものでした。また細かいこととしては、V30モードで実行が中止される時のメッセージが386以上のままでした。
|
VXでは286/10と他のROMは別I/O? かかっくん 2023年12月10日(日) 16:26 |
> bank1の4000hの他機種ではサウンドBIOSが存在している部分に謎のコードがいました。文字列として > FIELD overflow4.Bad file number5.File not found3.
此の文字列はBASICのROMな気が?
> なお上記の環境(486換装286機+1030B)で読み出せたデータはなぜか8bankすべて同じものでした。また細かいこととしては、V30モードで実行が中止される時のメッセージが386以上のままでした。
VXはBIOSとITFの切り替えだけデスから仕様でせう 286/10と他のROMの切り替えは別のI/Oの気が?
|
RXやDXの286機は… くりすと 2023年12月10日(日) 16:56 |
286機はBANK4〜7しかないとのことで、所持していないのでよく分かりませんが35が内蔵できる本体のSASI ROMはRAならBANK 2にありますが、RXやDXは別に存在しているのでしょうか。
|
仕様 KAZZEZ 2023年12月10日(日) 21:49 |
> VXはBIOSとITFの切り替えだけデスから仕様でせう と言いますか、286の場合は別ルーチンになるそうですので、286に戻したらbank4-7すべて別のデータが得られましたから、実CPUが286でないと別ルーチンにならない仕様のようです。 CPU以外のハードウェアの仕様で286機を判別できれば理想的なのですが。例のA20ライン制御ポートで286機か386以上機かは判別できそうですし、ソフトウェアリセットできるか否かでV30機以下か286機以上かを判別できそうに思います。特に後者の場合、VM21(V30機なのにITF/BIOSあり)やV30併載機のV30モードでもITF/BIOSを吸い出せるのではないかと思います。例外となる機種で問題が出るとすれば何でしょうね。
----22:35追記---- > SASI RAのbank2に「DISK ERROR!」という文字列があったので、VM21/VXで得られたROMデータ内を探してみたのですが、とりあえずVM21/VXにはこの文字列は見当たらないようでした。
> IFC-NN 転送モードをIO転送にしたら完走しました(前述の通り486時は全バンク同じですが)。書き忘れましたが非PnP(55互換)モードです。上のほうのご報告では15-16MB空間にMMIOは現れないとのことでしたが、何か影響あったのでしょうかね?
|
01DXの場合 リウ 2023年12月10日(日) 22:12 |
286機でも可能になったという文字を見逃していました。 bank4-7が出力され128kB得られました。 が、IO53Dhの操作でこの機種でCC00hにサウンドBIOS16kB、D700hにSASIBIOS、DC00にSCSIBIOS(表裏切り替え不要な4kBサイズ?でしたっけ?)が出てくることは相当以前に報告したとおりです。 これらの中身が得られませんでした。 ソースを拝見すると286機の場合のルーチンでは4-7決め打ちになっているようです。0-3もあると思いますが、手打ちですら確認をまだやっていません。
ttps://bauxite.sakura.ne.jp/wiki/mypad.cgi?p=PC-98x1%2Fmisc%2FPC-9801DA%A4%CEROM DAのROMを直接読んだ報告がここにあります。SCSIBIOSが存在せずこの機種の場合は表裏切り替え必須のSCSI籠側が使われるのでは?という考察付きです。
|
80286機ではITFの複数バンクは無い まりも 2023年12月10日(日) 22:30 |
まず、 >実CPUが286でないと別ルーチンにならない仕様 その通りです。80286機ではI/O 43Fh によるITFバンク切り替え機能が存在しません。そもそもITFは1組しかありません。このI/Oの機能はUndoc2によれば9821Af以降となっています。しかし実機を調べた限りではRLでも大丈夫ですから、80386以上の機種にはあるとしています。RSとDSはどうなんでしょうかねというところです。80286機はDXしか持っておらず、元のCPU以外で機種を確実に同定する方法がわかりません。Undoc2では80386機以上となっているI/O F6hがDXでは見えてしまうので、判別に使えません。
V30も搭載している機種で現在のCPUがV30のときに、80286/386側だけで使うITFを得るというのは、そもそもイレギュラーですから勘弁してください。V30側でない方にすればいいだけの話です。
>RA-35が内蔵できる本体のSASI ROMは これがですね、9801RXの場合は27C256の4個(合計128KB、4バンク)がITFとシステムのROMなので、SASI BIOSはないのです。実はもう2つの27C256にSASI BIOSが入っています。シールでもHDと書かれているので判別つきます。しかも同じ内容であり、片方は偶数アドレス、もう片方は奇数アドレスに「1バイトずつ飛ばしで」繋がっています。ずいぶんと無駄で変則的なことをしたものですが、どっちみち奇数偶数のバイト内容だけ書いて2個は必要で、それよりは可読性・生産性がいいということなんでしょう。したがってSASI BIOSのデータを得たければ、D7000hから読めば事足ります。
いっぽう9801DXでは27C010が2個で2M bitあるのですが、ITFバンクとしては1バンク、システムBIOS3バンクの1Mbit分しかなく、それ以上のものをI/O操作で読み出すことができません。SASI BIOSは残りのスカスカの1Mbit分に入ってはいます。それがハード的にD7000hに出る仕様ではないかと思います。SASI BIOSを得るだけならこれも直接D7000hから読むことで事足ります。SOUND BIOSもどこにあるかは不明でもCC000hを直に読めば済みます。
各バンクのROM物理番地上の配置がソフト的読み出しではわからないことは、どの機種でも同じです。ソフト的手法の限界です。ROMを外してROMライタなどで直読みしたものが正解情報です。
さてEPSON機については残念でしたというほかありませんが、昔からエプラーは熱意も技量も資金力もスゴイ人たちばかりです。自分で何とかしてしまうでしょうから、ソフト的読み出しなどできなくてもへこたれることはないでしょう。
|
DISK ERROR!はみいそチェック擬き かかっくん 2023年12月11日(月) 6:41 |
> RAのbank2に「DISK ERROR!」という文字列があったので、VM21/VXで得られたROMデータ内を探してみたのですが、とりあえずVM21/VXにはこの文字列は見当たらないようでした。
'DISK ERROR!'はみいそチェック擬きに遣われる文字列のやうデス。 SASI籠のHDC板はみいそ純正でもサードパーティでもコマンド12h(SASIでは未定義、SCSIではINQUIRY)に 'NEC'を返す仕様に成って居枡が、外付けの1台目はみいそ純正でも反応しないやうデス。其の為SASI籠に 27板のBIOS周辺以外の回路を入れてみいそ純正の外付け1台目を接続しても動かないやうデス # M.P.S他に依る実験に由る
|
/人'A`;人\ 2023年12月11日(月) 17:43 |
config.sysもautoexec.batもなしの日電版MS-DOS6.2+GetITF98 3.00
・PC-286VF(CPU換装なし) CPU: intel 80286 と表示されて終了
・PC-386GS(386DX --> Cx486DRx2,キャッシュドライバ組み込まず) CPU: intel 80386 Bank number[00] even SUM=[00] odd SUM=[00] Bank number[07] までeven/odd SUMの値同じ bank0.bin−bank7.binの8個のファイルが生成,サイズはどれも 32768バイト fc /bコマンドによるバイトごとのファイル比較(bank0.bin−bank1.bin,bank1.bin−bank2.bin,・・・bank6.bin−bank7.bin)で「違いは見つかりませんでした」
・PC-586RX(Pentium100 --> Winchip2A-200) CPU: Pentiumまたはその上位互換CPU Bank number[00] even SUM=[B0] odd SUM=[EF] Bank number[07] までeven/odd SUMの値同じ bank0.bin−bank7.binの8個のファイルが生成,サイズはどれも 32768バイト fc /bコマンドによるバイトごとのファイル比較で「違いは見つかりませんでした」
|
EXの想像です くりすと 2023年12月11日(月) 21:02 |
RXがITFとSASI BIOSが別と言うことはEXはそれに加えてSOUND BIOSはSASI ROMに同居なんでしょうね…
マザーボードは検索で見ました。CPU基板上にあるようで構成的にはRXと同じようでした。(27C256が4つとHDとか書いているのが2つ。)
|
PC-9801DXのITF/BIOS ROMの物理配置 まりも 2023年12月11日(月) 22:14 |
GETITF98 3.00で、なぜ80286機でもBANK0-3ではなく4-7というバンク番号のファイル名にしたかというと、後の機種との整合性や物理配置が理由です。PC-9801DXではROM内容と物理アドレスとの対応は画像のようになっています。DXではITFとBIOSを切り替える機構しかなく、それはBANK4がBANK7のアドレスの裏に来るという仕掛けだけのようです。F8000hからBANK0-3に到達できる機構は知られていません。
NIC流用100円ライタなどのROMライタで直にROMを読んでみると、BANK0-3としているところには SOUND BIOS,SASI BIOS,および何かのBIOSのデータが「スカスカの飛び飛びで」入っています。とても無駄な使い方ですが、物理アドレスの基底をCPUのC0000hに対応づけると納得が行きます。SOUND BIOSはBANK1のオフセット+4000hにありますが、基底からCPUアドレスでみるとCC000hであり、実際そこに現れます。同様にSASI BIOSのあるBANK2のオフセット7000hはD7000hに対応しています。さらにはN88BASICとSYSTEM BIOSである BANK5,6,7も、通常現れるCPUアドレスと物理アドレスが対応します。こうしてみると、初代BX/BAで登場したIDE BIOSがなぜBANK3の先頭であるかも理解できます。CPUアドレスのD8000hに出したかったからです。
ここでBANK4のITFが気になるわけですが、そもそもはE0000hに位置しているようです。しかし何らかのアドレス変換回路で、F8000hにシフトするというようになっており、I/O 043Dhを操作したときだけ現れます。
DXから始まったようですが80386〜i486前半の時代の機種では共通してこのようなBANK番号、物理アドレス、CPUアドレスの対応があり、その後の機種にまでバンク番号と内容の関係はどうやら引き継がれたようです。しかし物理アドレス順に関しては8bit幅(で接続)のフラッシュROM採用時からは別物となっています。
>EXはそれに加えてSOUND BIOSはSASI ROMに 【12日削除と追記】EXの画像を検索したところRXと同じCCMHDというROMが2個載っていますね。でDXのBANK2相当部の最初に「謎BIOS」があると図に書きましたが、内容見るとSOUND BIOSではないですか。SASI用 BIOSの前半にもSOUND BIOSがあって、EXではそれが表に出るようです。DXではいったいどっちのSOUND BIOSが出るのかわかりませんが、両方の方式に対応するデータが入っているということになりそうです。
|
元が16bit機かの判別 リウ 2023年12月13日(水) 13:15 |
メモリ窓を開いてout 461h,0Chで8000:0000に有意なものが見えなかったら元々16bit機(512kB切り離しているかも先に調べる) という方法を思いつきましたが、どうでしょうか? PC-98XAはハイレゾ判定で逃げます。
33分追記 CS DS RSがメモリ640kBしか載ってないことになっている32bit機として存在するようで…、これらがシャドーRAMを持っているかの情報がないと無理ですね。
55分さらに追記 ttps://www.vector.co.jp/soft/dos/hardware/se000592.html のドキュメントによるとRS DSには存在するようです。CSが残りますが
|
XAはHR判定には かかっくん 2023年12月13日(水) 18:39 |
> PC-98XAはハイレゾ判定で逃げます。
ゐゑXAはHR判定には該当せず漏れた気が? 確か他の判定法が有った気がし枡
|
1MBより上位のSYSTEM空間に現れるもののまとめ まりも 2023年12月14日(木) 7:02 |
>out 461h,0Chで8000:0000に有意なもの その前にout 53Dh x0h で内部RAMアクセス可にしないといけないわけですが、極力53Dhには触りたくないですよね。上位4bitのxの値を確定させるための環境調査が大変過ぎます。本質的な必要性がないことにプログラムコードの大半を費やすことになってしまうのは避けたいです。I/O 006Fhが無ければ286機、これがある9801DXではCPUアクセラレータを使わないでください、でいいでしょう【追記 そうはいかないことがRLで判明】。DXは色々と32bit機との共通点があり、ShadowRAMも装備すべきだったのにそうしなかった点は、返す返すも残念です。
ところで15-16MB空間や4GB最上位空間に現れる実体についてのまとめです。 ◎PCI機 1MB空間にあるShadow RAMなどの内部メモリは現れない SYSTEM BIOSはROMが現れる CバスのSCSI I/F(動作可能なのはSMITと100ボード)のBIOSは基本的に現れない ◎レガシー機 1MB空間にある内部メモリ(書き込み禁止状態)のイメージが全て現れる SYSTEM BIOSはShadow RAMが現れる★ CバスのSCSIのROMは現れたり現れなかったりボードによる(15-16MB)
となります。レガシー機の場合、これ(★)では上位のシステム空間からITF/BIOSのROMが読み出せないはずでは?と疑問をお持ちになると思います。しかしITF切り替えの043Dhを叩くとそこでFFF80000hから読めるのはROMなのです。どうやらi486のキャッシュのフラッシュも行われるようです。43Dh切り替えの直前に読んだ値と切り替え直後の値は確実に異なりました。
なお1MB空間からアクセスした場合も同じ機構であり、SYSTEM BIOS部を先に本当のROMにしておく必要性はありません。いっぽうPCI機だとこれが必要になり、チップセット依存性が問題になるのです。
|
RedITF98 リウ 2023年12月14日(木) 21:57 |
ttps://drive.google.com/file/d/1_FvCwkA-4q2d5N-k1USJNRv8HRQFHxfi/view?usp=drive_link せっかく作ったので公開しておきます。 REDWOOD機種用のGetITF98もどきです。 手元のLtでは256kB得られました。それ以外の機種では何も調べられていないため実行するには勇気が必要です。
15日1632追記 メモリ目当てで入手したLdが手元にあったので調べようと思いましたが残念ながらぴぽらず、ROM石だけは直接目で確認しました。 IntelのFlashです。PA28F200BX-T80で2Mbitということで256kByteなのは合ってそうですかね。 さらに壊れかけているNfが手元にありました。こちらはHDDパックを挿していると高確率でピポらない状態で非常に危険です。 さらにREDWOODの上PCIチップセットとしてGoldenGateが積まれているという話です。ですが思い切って実行すると256kBが吸えました。 PNPBIOS?PCIBIOS?のようなものが見えます。Ltとは違って256kBぎっちぎちに詰まっているようです。
お返事忘れ14日直後に追記 >io 53dhの操作 完全に失念しておりました。うまくいきそうと思いましたが全くダメですね。 >98XAはハイレゾ? 98XAはシステム領域でも判別できます。HIMEM.SYSが8000:0000に100000hの割り当てからどう変えるかという話題の時に少しでたと思います。
|
ハイレゾとHIMEM.SYSの事はもう考えたくない かかっくん 2023年12月15日(金) 1:48 |
ハイレゾとHIMEM.SYSの事はもう考えたくないデスが、XAの判定は出来そーデスね # 抑々PMの遣い方は最上位から遣って遺り容量を減らすのが流儀の筈が何故ハイレゾは10h,12hを遣うのか? # PMの流儀とハイレゾが10h,12hを遣ったのは何方が先なんでせう? # 真坂XAはメモリカウントをせずPMサイズを知らない(HIMEM.SYSは改めてカウントする)から10h,12hにした? # で、8,0AhにもRAMが有るXL以降も意味も無く続けた? # XAユーザなんて何れだけ居たか不明でしたからXLの時点で仕様を変えても間に合った肝し枡がハイレゾ用の # 窓1.xは直接PMを遣うんでしたっけ?其れとも矢っ張りリアルモードなのでPMは無関係とか?
|
ハイレゾのことは考えるがXAのことは考えない まりも 2023年12月15日(金) 10:23 |
>RedITF98 これはよいネーミングだと思いました。8KB窓から読み出すのでループを回す回数やファイルの個数が多くなってしまいますが、物理アドレス配置はやっぱわかりませんから、わたしも不動のREDWOOD機を一丁仕入れてきてROMを引っ剥がそうかなと思います。
>ハイレゾとHIMEM.SYSの事はもう考えたくない 考えなくてももう結論は出されています。HIMEM.SYSにおいてはXAだけ特別扱いなのです。512-768KB空間(バンク08h,0Ah)に実メモリが本当に存在しないというXAのヘンテコな仕様はその後の機種では実メモリが存在するというように改まったからです。XAでバンク10h,12hを割り当てるという仕様を定めたのが先で、プロテクトモードでの活用はその後だと思います。ひょっとするとXAのメモリチェックはリアルモードでバンク切り替えでやっていた可能性もあります。これを検証するためにXAを手に入れようとは思いませんけどね。アレはデカいし電気食うし漏電するし、オマケにメモリがアドレス8MB以上に増設できないという、ネジじゃなくて線が一本足らない出来損ない(仕様)です。まあハイレゾマイナスイチ世代のXAは無かったことにしてしまって構わない機種でいいとは思います。ハイレゾの始まりはRLということでOK。 (・_・):XL ^2も無視なん?
|
ハイレゾとHIMEM.SYSの事とわ かかっくん 2023年12月16日(土) 1:11 |
ゐゑ『ハイレゾとHIMEM.SYSの事』とわハイレゾの事とHIMEM.SYSの事の2件でわなく『ハイレゾとHIMEM.SYSの 組み合わせ』の事デス XLで8と0AhにDRAMが載ったのデスからITFで10hと12hでわなく8と0Ahにして居たらXAでの特別扱いが 『写す先のバンク』でなく『写す事』に出来た筈デス。XL以降では写す事自体が不要に成りXMMのノーマルとの 兼用がもっと容易に成った筈デス。 で、仕様としてもハイレゾのRAMが256K増える事に成り メモリ 1.1MB/1.2MB (XL)とか1.6MB/1.7MB (XL2/RL) と表記出来マーケティング面でも有利に成ったのでわ?
と云うワケでIPLwareかPBRのIPLコードで8と0Ahにして、XMMはノーマル専用を遣う方が今日では理に適って 居る気がし枡。だからアノ組み合わせはもう考えたくないのデス HSBは10hと12hに戻さないやうパッチして... # 去年や今年6月の検討で写す先をテキトーに採ると使用中の可能性有り、640K〜を10h、512K〜を8にして # 写して次に512K〜を12h、640K〜を0Ahにして写すと実行中の写すコードが640Kの境目に有ったらド〜 # する?とか余計な事まで考える必要が有り面倒なので思考放棄death
|
9801RSのITF/BIOS ROM内容 まりも 2023年12月16日(土) 12:56 |
要するにノーマルモードしか知らないXMMがハイレゾではそのままでは動かなくて困るという話ですよね? 一部のIPLwareアプリ(SCSI_RAM、T-SCSI、LBA_IDEだけ?)がハイレゾのときにメモリウィンドウのバンクを10h,12hにしてしまうのが困るということにも関連しますかね。であればXMMの実行前に10h,12hの内容を08h,0Ahにコピーし、08h,0Ahに切り替えるconfig.sysドライバをXMMの前に書いて置けばいいような気がします。思考放棄したいといえば、そこよりも、シャドウRAMをいじらなきゃならないときのI/O 053Dhのほうです。
さて9801RSと思われるROM、FLM01,FLM02というシールの27C010が手に入ったので調べてみました。BANK0-3に相当する低位1Mbitはほとんど空です。BANK2相当のオフセット7000hにいつものSASI BIOSがあるだけです。高位側BANK4-7にITF/BIOSがあります。SOUND BIOSが削られてしまっている以外は9801DXと同様です。
ITFのコードを読んで見たところ、純正互換SCSIボードの存在チェックやROM-->RAMコピーが書かれていましたので、SCSI BIOSのRAM化が可能な機種であることが判りました。これで9801RSは買わずに済みましたw
GETROM98 V2.3-V3の動作可能性については不明です。9801RSではI/O 043FのExh の機能は全く必要としていませんから、実装もされていない可能性があります。RA/RLにはそれがあるといってもRSに無いのなら、CPUが386以上かどうかで判別するのは適当ではないということになりそうです。ではどこを見れば・・・ (・_・):ほなやっぱ9801RSを買う必要あるんちゃうか?
|
80386SXの16MB以降は… くりすと 2023年12月16日(土) 14:33 |
80386SXは外部アドレス24ビットなので16MBまでしか実空間が無いはずですが、それ以降については0〜16MBのイメージなんでしょうか。 (要は4GB最上位 FFFF0000h〜はどうなっているのかなと…)
|
16MBのサイクリック まりも 2023年12月16日(土) 15:42 |
そうだと思います。FFFFA000h以降は00FFA000h以降と同じモノが出ています(しかし1MB空間内のFA000h以降とは一致しない)。初代A-mate,B-fellow以前の機種ではそもそもメモリですら16MBまたは32MBサイクルで同じモノが見えてしまいます。JEDEC SIMM機以降はメモリに関してはそういうことが無くなりました。
|
微妙に違ゥ かかっくん 2023年12月16日(土) 16:50 |
何か微妙に違ゥんデスけど、写すルーチンの信頼性が疑わιぃので写すルーチンが無いノーマル用のが信頼 出来る、8と0AhにするのはDOS起動直前が望まιぃと云う事デス。 例えばえぷDOS5/6のHIMEM.SYSはI/O 93hに8を出すのでXLでの動作が疑わιぃデスし # ↑の通り512K〜→640K〜の方向に写す。えぷDOSナノでXLは想定外ナノは合点が逝き枡が XL(以降)に対しての愚痴は起動時点で10h/12hでなく8/0Ahが良かったと云う点で。
DOS起動前であれば256K〜(セグメント4000h)が埋まって居るとは考え難いので遣っても構わないでせう。 IPLwareはセグメント6000h(384K〜)で動き枡から512K〜と640K〜は未使用と見做して写さずに替えて0フィル するだけでも良さげな気が? mov AL,8 out 91h,AL mov AL,0Ah out 93h,AL xor AX,AX mov BX,8000h xor DI,DI mov CX,4 loop0: mov ES,BX push CX mov CX,8000h rep stosw pop CX add BH,10h loop loop0
DOSを起動する時点で10hと12hである必要が有るケースはハイレゾ対応XMM以外ではどんな場合でせう? IPLwareを一通り実行後に8と0Ahにすればよろしい気が?
ところでITFのバンク数はシステムセットアップメニューの有無とは無関係dsk? RSに無いならES/LSやRA2/5は如何でせう?
|
RLはI/O F6,F2hの読み出し不可 まりも 2023年12月16日(土) 22:18 |
なるほど問題になるシステムとはEPSON DOSのHIMEMですか。自社のハイレゾしか相手にしないのは当然でしょう。XAやXLを早いとこゴミにして486GRでもお買い求めくださいな訳です。 >DOSを起動する時点で10hと12hである必要が有るケース とくにないはずですがHSBもそれを前提としていますから、08,0AにするとHSBはハングアップになります。
システムセットアップは当初はITF内にありました。なにしろITFは32KBの半分も使用していなかったのです。最終的には、最も遅くまで空きがあったBANK 3に収められることになりました。
ところでしつこくHIMEMとハイレゾ[機]で申し訳ないですが、また新たな疑問が、、、RLではI/O F2hとF6hがoutオンリーだということがわかりました。undoc2の通りではないわけです。危うく、F6hの読み出しができないなら80286機と判断するところでした。RLもそれになってしまいます。HIMEMは、現在A20ラインがどうなっているかをF2hやF6hでは判定していないということになります。XAだけでも特別扱いですがRLでもそうしている可能性が出てきました。まあ0000:0000とFFFF:0010hの比較でも調べられないことはないですが、手間がかかります。
ちなみにGetITF98 V3.00では強制的にA20アクティブにするため、RL(ノーマルモード)は80386機と判定されて8バンク出力します。実行環境としてHIMEM.SYS推奨としているのはそのためでもあります。HIMEMなしの場合にA20マスクに戻りませんが、とくに問題はないと思います。
|
此の運用ではHSBはパッチしてほしい かかっくん 2023年12月16日(土) 23:42 |
>>DOSを起動する時点で10hと12hである必要が有るケース > とくにないはずですがHSBもそれを前提としていますから、08,0AにするとHSBはハングアップになります。
此れは↑の通り、此れでの運用の際はパッチしてほしいと。 で、HSBでの再起動の際はホットキーでは常駐した物が実行され枡がコマンドラインからの場合はファイルの方が 実行されるならパッチした物とパッチ無しのを遣い分ける方法が有りそーデス # オンメモリでのパッチもアリ # ホットキーでは設定したOSで再起動するのでXMMに合った物を常駐させれば問題無いかと
RLがoutのみとの事デスが、借り物XL2が未だ手許に有り枡から試してみ枡。XL2もoutのみならI/O対応は ノーマル386機かH98〜と云う事に成増ね # 真坂とわ念い枡がRL2/5とRL21/51の違いとか同世代のロット(基板)違いとか?
A20のマスク状態はXMSファンクションで判るので、HIMEM.SYSを入れてデバッガでチェックしてみては? XMSのファンクションは www.techhelpmanual.com/700-int_2fh_4310h__get_himem_sys__xmm__entry_address.html の方法で遣うそーデス
|
動いた かかっくん 2023年12月17日(日) 21:27 |
FreeDOS(98)のIPLコードはFD用・HDD用PBR共にファイル名部を変える事でみいそ・えぷDOSを起動出来る事が 判って居ますが、ハイレゾ判定とVRAMアドレスを変える部分に↑のコードを入れた処ウマく動きますた # 窓9xのIPLではみいそ・えぷDOSは起動しない あとはHSBのパッチを書くだけデスか
|
GetITF98 3.10 まりも 2023年12月23日(土) 6:21 |
元80286機近辺の機種判別やRLのハイレゾモードだけを判別するのが困難なので、機種・モードの完全自動判別は諦めました。BANK 0-7の内容が同一になってしまう機種では コマンドラインオプション -4 をつけてくださいという仕様にしました。またEPSON機では実行を回避するようにしました。
|
来年の宿題? まりも 2023年12月30日(土) 8:07 |
ttps://twitter.com/asahara420316/status/1740723823484498115 旧X(Twitter)ネタですが、あまりにも98アーキテクチャなのでこっちに。 残念ながらスレ最後に紹介されているmmdumpでは、9821グラフィックは16色9801グラフィックに戻されてからメモリダンプとなるので、拡張GRAMのチェックには使えません。9821グラフィックと01グラフィックではメモリは同じものを(範囲は異なりますが)使用しています。なのにITFは別々にテストを行うということから、接続が異なる方式に切り替わり、そこも含めてのテストであろうと思います。
9821グラフィック搭載機種では、GVRAMは16bit幅*128Kか256Kのが2個という構成でずっと来ているようです。GD-CL5428/5430と同居の機種でも同様です。ローカルバスまたはPCIバスには32bit接続です。普通に32bit単位でテストして、もしGVRAM不良なら上位か下位の16bitに異常があることを検出するだけでいいような気がします。ITFでも9821グラフィックのテストは32bit幅でプロテクトモードで行っています。これによるエラー表示ってそもそもアドレスとbitパターンが表示されませんでしたっけ? それで範囲が絞られるはずです。9801グラフィックのテストで合格なのはアドレス上位側に問題があるということでしょう。
まあGVRAMの不良よりもパターン腐食が原因であることが486機では多いと想定されるので、GVRAMの素子をいきなり交換するより前にパターンチェックでしょう。
|
|
|