PC-98 CバスSCSIアダプタのBIOS高速化プログラム

SCSI_RAM Version 2.00

Copyright(C)2004,2018-20 まりも(DOSsoft)

[目的]

 Cバスボード上でのROMのアクセス速度は一般に非常に遅く設計されており、拡張ROMのBIOSコードの実行はそれにより遅くなっています。しかしPC-9801RA以降の機種では、ROMの領域にシャドウRAMが存在しており、一部のSCSI専用スロットのアダプタ(PC-9821A-E10)ではシャドウRAMにROMがコピーされているため、動作が通常のものよりかなり速くなっていることが知られています。

 本プログラムは、E10ボードと同様にCバスSCSIアダプタのBIOSをシャドウRAMに移すことで、どのSCSIアダプタでもBIOSの動作を高速化します。2020年9月現在、SCSIボードの上位バンクROMのRAM化の方法が判明したために、バージョン2.00からは完全なRAM化が行えるようになりました。これにより殆どのCバスSCSIボードのBIOSでRAM化が可能です。

 ささらには、NEC製PC-9801-92ボードおよび日本TEXA製 HA-55BSW/BS4の一部のBIOSについては、容量が1GBに切られてしまう問題へのパッチも行い、8GBまで使用できるようにする機能も含んでいます。

 効果についてはこちらの記事も参照してください。 ここをクリックしてダウンロードする

[使い方]

 SCSI_RAM.BIN はIPLwareとして組み込むモジュールです。別途IPLware.exeを入手して、ハードディスクに組み込んで下さい。IPLwareアプリケーションの組み込み方などは、別途IPLwareのドキュメントを参照してください。ここではこれ以上説明しません。

 SCSIアダプタのROMアドレスは、必ずノーマルモードでは DC000h〜、ハイレゾモードではEE000h〜に設定してください(これはデフォルトです)。これ以外のアドレスにすると、本プログラムは動作しません。ROMアドレス以外のリソースは、競合が無い限り任意に設定できます。

[諸注意]

 本プログラムは、PCI搭載機では動作しません。i486アーキテクチャ機専用です(An,Xn,Af,Bfはi486搭載ではないが含まれる)。H98では使用できません。なお、PC-9801-100(AHA-1030)については、BIOSのサイズは通常より大きい12KBくらいありますが、RAM化できるのは先頭の4KBだけとなるので、i486アーキテクチャ機ではあまり高速化は見込めません。

 対応しないSCSIアダプタのBIOSもあると見られます。既知のものとしては、ICM製IF-2769のいずれかのバージョンのBIOSでは動作しないという情報があります。

 本プログラムは、MS-DOSでは動作確認していますが、Windows9xではまったく確認していません。なんらかの不具合が出ることも考えられます。

 本プログラムは、BIOSの動作を高速化するものですから、効果があるのはMS-DOSやN88-DISK BASIC(86)の場合だけです。Windowsでは意味がありませんが、Windows9xの場合、起動の途中まではほんの少し効果があるかもしれません。

 Cバスボードがない状態で本プログラムをIPLwareとして組み込んであっても、とくに問題はありません。専用SCSIスロットにPC-9821A-E10SCSIアダプタがある場合は、既にシャドウRAM上で動作しているはずなので、本プログラムはなにもおこなわず終了します。PCIバス搭載機は対応でありませんが、IPLwareとして実行されてもなにもせずに終了します。

 お試し用としてSCSI_RAM.EXEというファイルもあります。これはMS-DOS実行プログラムですが、リアルモードでしか動作しません。EMM386が組み込まれている状態で実行するとハングアップします。

 2.00追加情報 A-mateでは、SCSIスロットの存在信号をTrueにしておくと、Cバスに入れたSCSIボード、例えばPC-9801-92であってもSCSIスロットの(存在しないはずの)ボードがPC-9821A-E10だと判断されます。このときはSCSI_RAMは動作しません。E10PATのほうをお使いください。

 source.lzhというアーカイブにソースファイルSCSI_RAM.S も添付されています。もしシャドウRAMを操作するプログラムを作ってみたいというかたは参考にしてみてください。ただしそのままでアセンブルから実行ファイル作成ができるようにはなっていません。一部のインクルードファイルがついていません。

[お約束]

 このソフトウェアを、不特定多数のダウンロードできる場所へ「転載」することは、禁止とします。リンク先の紹介についてはなんら制限はありません。

 ソースファイルを改良して同様の作品を作り公開する場合は、それを明記していただくことを希望します。ソースファイルを翻案して何かを創作すること自体はなんら妨げられることはありませんので自由にやっていただいて構いません。

 プログラムは、ある程度のテストを経て公開していますが、動作が完璧に行なわれるということを、作者は保証するものではありません。ユーザがプログラムを組み込んだことによる起動不能などのトラブルの補償には一切応じられません。

 システムが起動しなくなったことや、それに付随した逸失利益、精神的損害について、作者は一切責任は負わないものとします。これらの点を了承できない方には、使用(ソースファイル含む)を認めません。

[改版履歴]

日付    版  内容
2004- 7-28  1.00  新規作成と関連文書公開
2004- 8- 8  1.01  ハイレゾモードにおけるHSBハングアップ問題解消
2018-11-10  1.02 初代A-mateで SOUND BIOS非使用時に出現してしまう問題に対応
2018-12-27  1.03 ハイレゾモードでIDE未接続時にパリティエラーが出る可能性がある点を修正
2019- 1-20  1.04 Xe,Xs,Xp,Xnに対応
2019- 7- 8  1.10 E10ボード、他のSCSIおよびIDE BIOS検出法の変更(対応機種拡大)
2020- 3-20  1.11 H98で不用意に動作しないようにした(1.10でも問題はないが)
2020- 9- 8  2.00 対応SCSIボード大幅増、PC-9801-92などの1GBの壁を解消する機能の追加
←戻る