HOMEリサイクル掲示板検索
SPAMが大量に届くようになりました。
かかっくんさんに対策&改造をしていただきましたので今後以下の点に注意願います。
〇URLのhttp://は省いてください。省かない場合はエラーになります。
○「(」オープンカッコから始まる行は顔文字と判断し緑色の太文字で表示されます。
かかっくんさん 改造ありがとうございました。

本掲示板の特徴)
○一度に最大4枚の画像をアップロードできます。
 画像は規定のサイズに縮小表示します。
 画像をクリックすれば実サイズで表示します。
 アップロード可能な画像のファイル形式:JPG、GIF、PNG。最大合計で409,600Bまで可能です。
○記事を修正可能です。
○レスをつけると先頭にUPしてきますが、修正はUPしません。
○「名前」「題名」「内容」に禁止語が含まれていると投稿できません。
○英文スパム投稿防止の為、「名前」「題名」「内容」のいずれかに
 ひらがな又は全角カタカナなどの全角文字を1文字以上入れて下さい。
○一部ドメインからの投稿・修正を制限しています。投稿できない場合はVPNの利用をお試し下さい。
名前
題名

内容
画像1
画像2
画像3
画像4
修正キー (英数8文字以内)

 98システム解析スレッド2024年5月  /人'A`;人\  2024年5月1日(水) 5:00 返信修正
こちらもたてておきます。

 Cyrix 486DLC/SLCの再履修  まりも  2024年5月2日(木) 12:38 修正
工作室の記憶→98tips→Cx486SLC/DLC関連の記事を先月ご教示頂き、ありがとうございます。そこにCYRIXのデータシートのリンクがあったので、ソフト側からの使い方がわかりました。ハイレゾ関連では各社のキャッシュユーティリティがどう扱っているのか疑問に思っていました。またCx486SLC/DLC使用のアクセラレータもどこまでハードウェアで行っているのかよくわかりません。そこでとにかくCx486SLC/DLC/DRx2のキャッシュ関連の設定をぜんぶ表示するものを作ってみました。
ttp://hp.vector.co.jp/authors/VA012947/util/cx486d.html

ノーマルモードの9801では VRAMと拡張ROM空間 A0000-DFFFFhはキャッシュしないほうが安全です。SYSTEM BIOSはキャッシュしてもいいし高速化もするでしょうが、速すぎてFDDが動作不良になる可能性や、F8000h-のROMバンク切り替えでおかしなことが起こる可能性もあるので、すくなくともF8000h以上はキャッシュしないほうがいいような気がします。

I/Oバンク切り替えを行うアプリケーションを使うなら 80000h-9FFFFhもキャッシュしないほうがいいのだろうと思います。CPUから見た物理アドレスに作用するはずなので、投影中のメモリの本当のアドレスのほうにはキャッシュ禁止を掛ける必要はないように思います。

ハイレゾモードでは同様に80000h-BFFFFhを禁止にしたほうがいいかもしれません。問題はHMAなのですが、CYRIXのCCR0レジスタには「各1MB領域の最初の64KBをキャッシュする/しない」という機能があります。これってHMAを見据えたものなのでしょうかね。だとするとハイレゾではキャッシュ禁止にしたほうがよいのかもしれませんが、それだとHMAに置いたDOSの実行が遅くなってしょうがありませんよね。初代XAだと最上位からHMAのメモリを切り取ってきますが、CPUから見たアドレスに効くのであれば、これは考慮しなくてよいのでしょう。

ところでCYRIXのレジスタはI/Oで設定しますが、CPUリセットを掛けると飛んでしまう仕様のようです。したがってキャッシュ関連設定をIPLwareで行うことはほとんど無意味ということになります。少なくともEMM386実行時にリセットされますし、ひょっとしてHIMEM.SYSでもありえます。だからいろいろなXMSのマネージャやEMM(仮想86サーバ)プログラム、さらにはリブートツールHSBなどに、Cyrix486オプションがだいたい付属していたわけですね。

つまり基本的にキャッシュ関連設定は各OS上で最初に行わないといけないことになります。メルコ製品ではWin95用ドライバがあったり、FreeBSD(98)でも行っているようです。しかし、ハードウェアでどこまでフラッシュ制御する機構になっているかは、各種アクセラレータによって異なります。それに合致したキャッシュユーティリティの設定が必要なので、他の製品のを勝手に流用するというのは、最適でなかったり危険だったりする可能性があるわけです。FreeBSD(98)でも使用しているアクセラレータのに対する最適化は必要でしょう。

Cx486SLC,DLC系アクセラレータとそれに付属のキャッシュユーティリティ実行後に、拙作cx486d.com を実行して、どのような表示になるかを調べてみてください。ちなみに表示が2桁目からとしていて、左端をあけてあるのは、ハイレゾモードの映像がうまく表示できない環境を考慮してのことです。PC-98RLでアクセラレータを使っているひとは極めて少ないとは思いますけど・・・

 EUD-Hの場合  くりすと  2024年5月2日(木) 13:58 修正
載っているのがCx5x86なのと、この製品自体はRLでは物理干渉するため載せられないのと(まともに動くRLも持っていませんが)486DLC/SLCとは違うとは思いますが、そもそも80000-FFFFFhまではキャッシュが効いていません。
CPUBENCHもWB ONにしてもキャッシュOFF時と同じ速度でした。

GVRAMで実行したらハングを疑う位の速度だった気が…

 486SLC/DLC系は  かかっくん  2024年5月2日(木) 20:10 修正
Cx486SLC/DLC系は、搭載対象は新規開発が念頭のIBM486SLC/486BLと違い元から386SX/DXからの
直接の取り替えを念頭に開発され増したから、設定はDRVでして居る気がし枡
逆にハードウェアでする部分は可也少なそーな?
其れを考えると、286用の486DLCアクセラは余りいじらずに素直に386DX用ゲタと成りそーな希ガス
i486系を載せる386DX用アクセラでわi486に其のやうなレジスタが無い為ハードウェアで制御して居枡
Cx486DXの386DX用アクセラでわド〜でせう?

あとはDMA信号(DREQ?)をFLUSH#に結ぶとDMAの度にフラッシュされ枡がCx486SLC/DLCや其の直系
(SRx2/DRx2等)はキャッシュがWBなんデスよねぇ...単純なフラッシュでなくコPYバックをしなくて良いのか?
其れともWBに設定するとFLUSH#アサートでコPYバックして呉れるの哉?
# 派生品(Ti486SXL/SXLC等)はWT。尚IBM486SLCは無関係
386DX機用i486アクセラでわ、WTだけなら何も考えずに結んでも良さそーな?
仕上げに、I/O 005Fhが無い機種(の内XA/U/VM以降)には後付けするとか?待ち時間は10/8Mのnクロック
とかで良いでせう
# タイムスタンパの後付けは不要でせう
# アクセラに依っては後付けのウェイトが有る鴨

 基板のないタイプも  KAZZEZ  2024年5月2日(木) 20:19 修正
> RLでアクセラレータで使っているひと
RL対応製品でCyrix系のものは専用基板を介さずにCx486DLC/DRx2直載せするものが多いのではないかと思いますので、キャッシュコントロールソフトの中にハイレゾ対応の秘密があるような気がします。

IBM Blue Lightningを用いたものであればアイオーのPK-A486BL75-Lが基板を介すタイプでRLにも正式対応していました。IBM系はデータシートが公開されなかったのか情報が少ないですが、海外のサイトにある程度の解析情報はあるようです。キャッシュ有効無効のアドレスを細かくビットマップ指定したりできます。

 無設定でどういうときにフラッシュ?  まりも  2024年5月2日(木) 23:07 修正
WT/WBも含めて、いろいろ疑問はあるわけですが、
(1) PK-486Dのようにただの486DLCを載せただけのものは、キャッシュ設定のうち HOLDステートでフラッシュする/しないのどちらなのか?
(2) 基板付きの486DLCアクセラレータでFLUSH#ピンを使う設定にするものなんてあるのか?
というあたりです。9801DAを持っていたことはあるのですが、記憶ではCPU benchで倍くらいの速度が出ていました。HOLDステートでフラッシュにすると、非常に遅くなるとされているので、おそらくこの設定は無効なのかと思います。

ではDMAが動作した時にはどうしていたのでしょうね?というのが疑問です。アイオー製のキャッシュソフトを普通に無意識的に使っていましたが、ディスク関係で特に問題が起こったことはありませんでした。Int1Bhフックでinvd/wbinvd命令実行ですかねぇ。当時はBIOSを使わないでディスクのR/Wなんていうのはまずあり得ませんでしたから。DOS以外のOSではそうは行きませんが、ドライバもないなら全域キャッシュ無効で、遅いままだけど問題も出なかったということでしょう。

Cx586系で80000h以上のアドレスでキャッシュを利かせないというのは、やはりバンク切り替えを考えてのことでしょうね。アプリレベルでバンク切り替え(だけでなくメモリウィンドウ操作のプログラムも)は絶対使わないなら、キャッシュ有効でいいように思います。少なくともWTなら問題ないです。以前調べたように、Xe10/BX4では80000h以上のエリアにWBキャッシュすら効いてましたので、バンクメモリなんて使わないという時代になったという判断をミイソは下したのでしょう。Xe10/BX4は起動途中ではITFがこのエリアをメモリウィンドウ操作で使いますが、その期間はキャッシュ禁止にしていると思われます。ITFではout 63Fを頻繁に操作しています。

【3日追記】ざべ特別公開講座 98パワーアップ改造名人 技術評論社 pp.160-163.の記事では、
ttp://98epjunk.shakunage.net/miscel/miscel_pics/ugt1009.gif
のようにCバスのメモリ書き込み信号とHLDAのNAND(実質OR←誤り AND)でFLUSH#を動作させていますが、これだとメモリの書き込み時はキャッシュがフラッシュされるので、常にWTと同等になるのではないでしょうかね。【←この考察は誤り:15日追記】 DMA要求信号に接続するのだとWB戻しをどうするかの問題があるので避けたのでしょうか。

ところで先月のAnおよびAp3/As3のアナログサウンド子基板のピンのピッチですが、61.6mmくらいでピン間隔35個ですから、ピッチは1.776mmかと思います。2mmではないですね。

 ライト且つHLDAでFLUSH  かかっくん  2024年5月3日(金) 19:16 修正
記憶が余り定かでわないのデスが、確か此んな方法だったやうな肝し枡
確かにHLDA(他のデバイスがバスを占有)且つRAMライト(詰まりDMACや
バスマスタがRAMライト)でFLUSHされ枡ね

> ttp://98epjunk.shakunage.net/miscel/miscel_pics/ugt1009.gif

の説明は?な点が有るやうな?

MWC0又はMWE0のアサート(L)、且つHDLAアサート(H)でFLUSH#アサート(L)が正しいなら
FLUSH# = -[ [ -(MWC0) OR -(MWE0) ] AND HLDA ]
FLUSH# = [MWC0 NAND MWE0 ] NAND HLDA

MWC0かMWE0がL(アサート)をH(此処でわレベルの確定だけで論理の定義はしない)とするとNANDに成増
次に此れにHLDA(アサート=H)をANDし全体を反転させる(NAND)とFLUSH#に成増
結局2段共NANDと成増

デモ、他(DMA・バスマスタ他)がRAMにライトする際にフラッシュするのは兎も角CPUがライトする
分にはWBとすると、其れをRAMに書き出す前に他がライトしてフラッシュしたりすると...
抑々WBは何んなタイミングでコPYバックするのでせう?キャッシュが埋まった時と命令で明示的に
書き出す時と、(略)

 CPUリセットを行わないOSはあるのでしょうかね?  KAZZEZ  2024年5月3日(金) 20:42 修正
> cx486d.com
ベクターにあるキャッシュ設定ソフトDCにもCyrix486のCPU状態を表示する簡易ツールは付属していましたが、各ビットの役割はまったく情報が表示されないものでしたから、個人的にはアイオーやメルコの設定ツールで設定した内容を読み出した値をそのままDCに適用するだけでした。設定の意味が表示されるのはありがたいですので、時間が取れたらRAで試してみたいと思います。

> キャッシュ設定関連をIPLwareで行うことはほとんど無意味
以前DCX(DCにCPU判別を加えるだけのパッチ)を作ったときにもCPUリセットで設定が飛ぶことは確認していましたし、仮想EMSを使う場合は各社独自のメモリマネージャを使う必要があることも周知の通りでしたから、確かにDCがIPLDOSでも動いたことは気休めのような感じではありました。
EMM386などによるCPUリセットが行われない環境では使えるかも知れませんが、NT系OSなんかの場合はどうなるのでしょうね。過去ログの通り、以前VXもどき(普段はIBM486SLC2)をCyrix系アクセラレータに変えて2k起動を試したときは(恐らく熱暴走で)アクセラレータが壊れたりしたので、怖くて確認が取れていなかったりします。

> ひょっとしてHIMEM.SYSでも
そういえばアイオーのアクセラレータにはHIMEM.SYSだけを代替するPKXMS.SYSも付属していましたが…286機におけるA20ライン対策のためだと思っていました。もしかしてCPUリセット対策もあったんでしょうかね?
ABM 486GT-Rあたりにはキャッシュ設定ツールだけで独自メモリマネージャは付属していなかったのですが、CPUリセット対策はどうしていたんでしょうね。

 本来A20制御とCPUリセットの要否は不可分  かかっくん  2024年5月4日(土) 1:31 修正
本来HIMEM.SYSに於いてA20制御とCPUリセットの要否は不可分(A20がI/O 00F2hの機種は286ナノで
CPUリセット必須、一方I/O 00F6hの機種はCPUリセット不要)で、此の原則が崩れるのわ一部の例外機種を
除けばアクセラ使用時デスから、みいそDOS6のHIMEM.SYSでのスキップわ若しかするとみいそに由る
アクセラ排除の一環ナノ鴨知れません。えぷDOS6のHIMEM.SYSはド〜でせう?

「A20制御とCPUリセットの要否がド〜関係有るの?」との問いの答え、XMSの内HMAとUMBにわ
無関係でEMBに関係し枡。ノーマルモードでわ後年の機種迄PM窓が設けられなかったのでプロテクト
モードでしかPM(HMAの65520バイトを除く。以下同様)にアクセス出来ませんですた
# 386+のunreal modeに似たモードも286に有ったやうな?リセット直後のFFFFF0hのやうに。ゐゃ
# 此のモードはリセット直後にしか成らなかった鴨
と云うワケでリアルモードとプロテクトモードを往復しながらXMMがPMと1M以内に設けたバッファの
間で写して遣う仕様デス。ソフトウェアEMSの1方式に似て居枡
詰まり286であればEMBを遣うならCPUリセットが一般的ナノで日常的に起こると云う事デス
# 此処で此んな事わ釈迦に説法のやうな

ところで386DX用486DLCアクセラや286用486SLCアクセラに石が載った板が有馬すが386SX用は
486SLCに載せ替えるか486SRx(2)其の物を被せるかばかりで被せる486SLCアクセラは余り無かった
気が?
# アセットコアのViperとUGTばかり。ソースは此処の/kenkyu/386upg.htm

 純正himem.sysがダメなのは  まりも  2024年5月4日(土) 12:19 修正
>此処で此んな事わ釈迦に説法のやうな
ここは釈迦クラス以外の多くの衆生もROMっているので、済度のためにまとめておくことは良いと思います。
(・_・):なんやその雲の上から目線は
各社独自のXMM(himem.sys相当の1M以上メモリマネージャ)が付属する背景は、元が80286な機種で再度のA20マスクできないためです。CPLDと基板付きの上被せアクセラレータなら、I/O F6hをデコードして、A20M#ピンに接続し、ソフト側ではCCR0レジスタのA20M#ビットを立てることで、リセット無しにA20再マスクができると思います。そのような製品なら、himem.sysと自社ドライバを独立に使用できそうです。(ただし元が80286機でないことを見破られないためのhimem.sysパッチは要るかも)

しかし単に被せるか貼り替えた場合は、Cyrix用ドライバとXMMは切り離し難くなります。当時はWindows95がなかったので純正himem.sysでなければいけないということはありませんでした。他社製のデバイスドライバを流用するときは、A20M#接続bitも含めて他の設定が適合してにいるかに注意を払う必要があります。

 アクセラにI/O 00F6hを載せる  かかっくん  2024年5月4日(土) 16:23 修正
286→486アクセラにI/O 00F6hを載せる手は確かに有馬すね

窓9xであっても、純正HIMEM/EMM386でなければならぬと云う事わ無く64M以上に対応したXMM/EMMで
あれば遣えたと憶い枡。IOのVMM386は64M以上に対応のバージョンも有った気がし枡
VEM486は64M迄でしたがLEMMは(略)

 XMM version  まりも  2024年5月4日(土) 19:09 修正
たぶんXMMバージョンが3に上がったことと64MB超えが可能となったことがイコールかと思いますが、VMM386は結局Win9xに対応できないようです。わたしも95以前はVMM386を使っていました。
ttps://weblabo.griffonworks.net/dorlog/2nddorcom/pc-98/26027.html
↑の最後の書き込み、「EMM386があると WC2MSR.EXEが起動しない」とは、MSR操作プログラムが一般的に仮想86ではハングアップするという意味ですかね。しかし逆順の実行だと設定したMSRがリセットされるのでしょう。これも一つのドライバで完結したいところかも。

 主にPK486D.COMの場合  KAZZEZ  2024年5月5日(日) 1:03 修正
ようやくPC-9801RA2とアクセラレータをセッティングできました。調査環境はMS-DOS5.0A-Hのリアルモード(CONFIG.SYS/AUTOEXEC.BATなし)です。Cx486DLC/SLCキャッシュイネーブラとしてはアイオーの
・PK486D.COM(16820バイト、94-08-30 1:08) - Cx486DLC/DRx2用?
・PK486S.COM( 2571バイト、92-12-14 1:01) - Cx486SLC/SRx2用?
を試しましたが、どうもこれらはCPUリセットが起きてもCPUキャッシュ設定が消えず、CPUキャッシュは有効のままでした。しかしオプションスイッチでBIOSを書き換えない設定にすればCPUリセットで設定が消えますから、アイオーのイネーブラはRAMにコピーされたBIOSを書き換えることでCPUリセットに対応しているものと考えられます。ちなみにRAM BIOSを書き換えた場合、ソフトウェアでV30に切り替えようとするとハングします。(TT)

CPUアクセラレータはCx486DLCおよびDRx2直載せのほか、Cx486DLCを基板上で2倍化するPK-A486DWシリーズを使いましたが、どれもcx486dの結果は同じでした。

まずアイオーのキャッシュイネーブラのデフォルト設定では以下のようになりました。
CCR1,CCR0の設定
RPLSET/RPLVAL# ピン 無効
A20MASK# ピン 無効
KEN# ピン 無効
FLUSH# ピン 無効
HOLD ステートでフラッシュしない
キャッシュ方式 2-way associative
基本的に 640KB-1MB キャッシュ有効
1MB空間毎の最初の64KBをキャッシュしない
Non cache regionの設定
NCR1 : 00080000 , size 256KB
NCR2 : 000C0000 , size 128KB
NCR3 : 000E0000 , size 128KB
NCR4 : 00E00000 , size 1MB

さらにオプションスイッチ設定があり、以下のほかCCROとNCR1〜4(とsize)を直接指定することもできます。
/f (キャッシュを無効にする) → NCR1が00000000,4GBに
/b (RAM BIOSを書き換えしない) → HOLDステートでフラッシュする
/i (I・Oバンクメモリエリアをキャッシュする) → NCR1が000A0000,128KBに
/n (ハイレゾモード時RAMウィンドウをキャッシングする) → 変化なし
/r (BIOS ROMエリアをキャッシングする) → NCR3(000E0000)のsizeが32KBに
/h (HMAエリアをキャッシングする) → 1MB空間毎の最初の64KBをキャッシュ無効にしない、NCR4が----に
/d (ディスク以外のDMA転送を使用する) → HOLDステートでフラッシュする

/nで変化が無かったのはノーマルモードのRA上で実行したせいかもしれません。
/bと/dでは、cx486dの結果が全く同じです。しかしCPUリセットで設定が飛ぶか飛ばないかの違いがありますから、/bだと文字通りRAMにコピーされたBIOSを書き換えているのでしょうね。

以上はPK486D.COMのオプションですが、PK486S.COMには/oオプションもあります。
/o (I/O Writeでキャッシュをフラッシュする) → FLUSH#ピン有効(本当に配線されているかは不明)
…でした。このオプションはPK486Dで指定しても誤りになりますので、もしかして286機用でしょうか?
一方でPK486Sに/b/n/dはありません。単にバージョン古いせいかもしれませんが、少なくとも外部16bitのCx486SLCの場合はハイレゾ機(/n)は関係無いということでしょうね。

以上の結果があればキャッシュイネーブラ作成のご参考になるかもしれません。

>> キャッシュ設定関連をIPLwareで行うことはほとんど無意味
> NT系OSなんかの場合は
自己レスですが、IBM486SLC2/BL3系アクセラレータでもCPUリセットで設定が消えるようでした。しかしVXもどきで2kが(Cバスメモリを除けば486相当と思われるパフォーマンスで)動いていたことを考えると、NT系OS用のキャッシュイネーブラとしてはIPLwareで使える可能性がある気がします。さすがに32ビットOSではプロテクトモード以降後にCPUリセットを起こすことも無いということでしょうか?

> 釈迦に説法
おっしゃる通りで、私の発言で不快な思いをされた方がおりましたら、申し訳ありません。

 窓だけならEMMは不要  かかっくん  2024年5月5日(日) 1:07 修正
64M以上のEMB=XMM3で合って居枡
まぁ窓だけ(XMMだけで可)で遣う(DOS環境は別途用意する)ならEMMは
不要デスからXMMさえド〜にかすれば取り敢えず動くやうにわ成りそーデス

>> 釈迦に説法
> おっしゃる通りで、私の発言で不快な思いをされた方がおりましたら、申し訳ありません。

ゐゑゐゑ、皆さんがご存知の事を改めて...と云うのも何だかな?と
まりもさんの通り、大勢がROMって居枡から無意味でわ無さそーと云う事で。

ところで前から疑問デスが、Cx486SLC/DLC系の直系は2ウェイが無くダイレクトマッピングしか
無かった気が?

 釈アイオーデータに説法  まりも  2024年5月5日(日) 7:22 修正
>KAZZEZさん
完璧なまでのテストありがとうございます。疑問のほとんどが氷解しました。それにしてもアイオーデータのドライバもすごいですね。オプションが全て用意されています。お釈迦様はアイオーデータです。我々は衆生。そういえば釈(石川県に多い苗字)由美子はアイオーデータのイメージガールでしたから、釈迦で間違いありませんw

さてオプションとそのときの動作状態を考えてみます。「RAM BIOSを書き換える」がやっている内容ですが、HOLDステートでフラッシュをしなくて済むようになるので、Int 1Bhフックが含まれるのかなという感触です。アイオーデータのドライバは常駐はしないのですよね?常駐するのであればそちらでInt1Bフックにするはずです。いずれにしてもディスク動作時のDMA対策ですので、これをやらない限りは「HOLDステートでフラッシュ」にしないと危険です。

/i はその通りでバンクメモリを使わない限りキャッシュ有効でいいと思います。ただしIPLware段階ではここのメモリウィンドウ操作を行うアプリが多いので、config.sys以降で許されます。
/r はROM BASICエリアをキャッシュするのでやっておいて普通は問題ないでしょう。GVRAMのE0000hの32KBはキャッシュしてはいけない所ですが、上の書き込みで挙げた画像では忘れてます(汗
/d はサウンドボードを入れたときなどでしょうが、Int1Bフックで対処できないので「HOLDステートでフラッシュ」にするのでしょう。

/o はSLC搭載アクセラレータだけにある物で、ザベ記事のようなFLUSH#への配線が基板上にあることを示唆します。が、、、アイオーデータの説明書では“IO write”なんですよね?、MEMORY writeではなくて。ここだけが理解できません。DMA関係ないんじゃない?となります。Int1Bフックはそもそもやっていそうですが元80286機なのでRAM BIOSがありません。コンベンショナルメモリ空間に常駐になりますかね。

それからCPU F0hリセットでCyrixのレジスタ設定が失われていないというのは、「RAM BIOSの書き換えをする」のためですよね。CPUリセットからのすぐ戻りルーチンに、Cyrixのレジスタ内容も復帰するルーチンを付け足しているように思います。すごい大掛かりな書き換えです。それにEPSON機には別対応が必要です。やっぱりお釈迦様は完璧であったという他はないです。IPLwareに書き写す写経修行に励んでみますか。その前にアクセラレータ欲しい、、、

 MELCUTLの場合  KAZZEZ  2024年5月5日(日) 11:55 修正
旧MELCOのイネーブラ(MELCUTL)を発掘しました。これはMELCSET.EXE/DEFで常駐し、CACHESW.COMで設定するもののようです。しかしマニュアルは持っておらず"/?"で表示される情報も少なく、どんな設定を持っているのかよく分かりませんでした。ただCCRxとNCRxを自由に設定できる点は同じようです。とりあえずCx486DLCを直載せで常駐したところ、オプション無しデフォルト設定でアイオーと異なる部分は以下の通りでした。
NCR1:000A0000, size 128KB
NCR2:000C0000, size 256KB
NCR3,NCR4の設定なし

CPUリセットについては、残念ながらCPUキャッシュ(というかNCRの設定)が解除されるようです。この場合、CACHESW.COMではキャッシュが有効のままと誤判定されるようです(アイオーのCPUCHKでは無効と判定)。CACHESWはNCRを直接書き換えられますから、キャッシュONのままでNCRを全域無効に設定した扱いになっているのでしょうか。
なお書き忘れていましたが、CPUリセットのテストには拙作wapicoを使っています(CPUIDの取得にCPUシャットダウンを利用しますので)。

> アイオーデータのドライバは常駐はしないのですよね?
さすがです。MSDで確かめたところ、PK486S.COMのほうは常駐していました。なぜか常駐解除のオプションは無いのですが。
RA前期で試す限りですが、PK486Dに関しては普通に実行しても空きメモリが変化しませんので、常駐しないタイプかもしれません。
MELCOのMELCSETには普通に常駐解除のオプションがありますし、常駐すれば空きメモリも減ります。ただPK486Sと違い、なぜかMSDではTSRやデバイスドライバとして見当たりません。(追記) アイオーのMSTAT.EXEでは表示されました。
ABMのイネーブラは昔手放してしまったので確認できません。

> “IO write”なんですよね?、MEMORY writeではなくて。
"PK486S /?"で表示されるオンラインヘルプでは/oのところでは確かに「I/O write でキャッシュをフラッシュする」と表示されているんですよね。PK-486SRx2であれば箱説ごと持っていたと思うのですが、発掘の難しいところにあって取説は確認できておりません。

----追記----
RA2で0000:0501のハイレゾフラグを有効にしてからPK486D.COM /n を実行したところ、NCR1(00080000)のsizeが「設定されていません」に変わっていました。さすがにcx486dの表示後はそのままハングしましたが。

 RS、DS、USでは  まりも  2024年5月5日(日) 14:00 修正
メル子は釈迦の弟子クラスにも及ばないので、釈由美子様とはソフトウェアの出来が違いますね。CPUリセットに対抗できないということだと、まだ修行が足りません。リセットされてもキャッシュ有効と判定するのは、常駐部のどこかにあるフラグを見ているだけなのでしょう。その他はデフォルトで80000hのバンクメモリウィンドウをキャッシュ可にするところが違うようです。

アイオーデータ製の方は、
PK486D.COM 386DX機用なのでRAM BIOSの書き換え、int1Bhフック
PK486S.COM  286機用でRAM BIOSが使えず常駐によりint1Bhフック、何かしらの抗リセット
これがはっきりしました。と同時に386SX機(US、RS、DS)はどうなんだろうという疑問はあります。シャドウRAMはあるので、機種判別して常駐でなくRAMBIOS書き換えにしているかもしれません。EPSON386機も裏RAMがあるのだか使えるのだか、いろいろありそうなので、RAMBIOS書き換えでの対応は開発側からすると大変ですが、お釈迦様ならたやすいことでしょう。常駐解除オプションがないのは、さらにint1Bhフックをするsmartdrvなどが後に控えているかもしれないことから安全上当然といえます。キャッシュの設定変更ができれば十分です。

ところでいくらハイレゾフラグを騙したとしても
>CX486Dはハングアップ
となる理由が思いつきませんが、GW後に調べてみます。

 PK486Sでは設定が消える。  KAZZEZ  2024年5月5日(日) 14:43 修正
> PK486S.COM  286機用でRAM BIOSが使えず常駐によりint1Bhフック、何かしらの抗リセット
あ、すみません。m(_ _;)m
主にPK486Dのほうで確認していたのでPK486Sのほうだけで確かめたところ、こちらは普通にCPUリセットで設定が初期化されるようでした。おっしゃるように両者は似ているようでも根本的に機能が違うようです。
PK486DのほうはRAM BIOSを書き換えない設定で実行したところで、一度書き換えたものを後から元の内容に戻す機能は無いようですから、PK486Sを試したときにPK486Dの影響が残っていたのかもしれません。
同じ286用のPK486SQ.COM(IBM486SLC2用)でもVX上で試したところCPUリセットで設定は普通に消えます。
今回用いたPK486Sが何の製品に付属していたものかは今となっては分からないのですが、仮にこれが286機専用だった場合、確かに386SX用では異なる可能性もありそうですね。

----追記----
>>CX486Dはハングアップ
>となる理由
とりあえずソース見ながらデバッガで最後のほうを追ったところ、DisplayWait にあるシフトキー投下状態を見るBIOSファンクション(INT 18h)のところでハングしていました。
PK486D実行後でなければ普通に終了しますし、/bを指定してBIOSを書き換えないようにすると不具合が起きないようでしたので、結局、PK486DがRAM BIOS書き換えの際にハイレゾモードのメモリマップと誤認して異なるアドレスを書き換えたことが考えられそうです。

----(24:00追記)----
前述の、基板上でCx486DLCを2倍速にするPK-A486DWですが、検索してもスイッチ設定等の詳細情報が見当たりません。載っているCPUはヒートシンク付きなので詳細は分かりませんが、CPUIDが0421(Cx486DLCには0420が多い?)であるせいか、CLKEPSではCx486DRx2と判定されます。
PK-A486DWにはコプロ付き(QFP直付け)の製品とコプロ別売り(PGAソケット)の製品があるようで、両方とも小さな4連DIPスイッチがありますが、前者は他にもジャンパスイッチが数箇所あります。
両者でベンチマークの値がずいぶん違ったのでちょっと試してみたところ、4連DIPの1番は恐らく、OFF(下側)で2倍、ON(上側)で1倍クロックのようで、大きくパフォーマンスが変わるようでした。また、4番目のスイッチはON(上側)にしたほうがベンチマークのパフォーマンスが多少良くなるようでした。こちらはウェイトか何かでしょうか? 他のスイッチはよく分かりませんでした。

ところで、RA2でIBM486BL3のアイオーPK-A486BL75とメルコHRD-20T(基板上の表記なのでたぶんHDA-C20TJあたり)についても試してみました。
アイオーのPK486BL.COMにはPK486D.COMと同様、CPUリセットで設定が維持されます。しかもソフトウェアでV30に切り替えてもハングしませんでした。オプションスイッチもPK486D.COMと同様のものに加え、倍率設定と/s(RESET.COM使用時に指定)があります。ただし基板上の独自の機能を使うためか、メルコHRD-20T(HDA-C20TJ?)に適用すると正常動作しないようでした。メルコのほうのイネーブラはたぶんBLCACHE.EXEだと思いますが、こちらはCPUリセットで設定が消えました。設定時に「BIOSをフックしました」とは出るのですが、アイオーのようなCPUリセット対策のBIOS書き換えはしていないということでしょうかね。

 たぶんI/O wait  まりも  2024年5月5日(日) 18:28 修正
なるほど元80286機用486SLCドライバの方はCPUリセットに対抗する術は持っていないということでしたか。これはまあそうでしょうね。486SLCをマザーボードにハンダつけしたような人は、CPUと用途決めうちでITF ROMのCPUリセット再起動部を書き換えるといいのでしょうけど。

あと基板付き486SLCアクセラレータで試すとすると、上で書いたようにもしかしての I/O F6hが機能するかどうかですが、まあ期待薄でしょう。

I/O writeでキャッシュをフラッシュする目的は、DMAでは考えられませんが、往々にして起こる周辺デバイスのウェイト不足に作用させる方ですかね。用もないところで遅くなる問題はありますが、FDDやGDCの動作不良は致命的なので。これは元80386機より80286機の方が問題になることは間違いないでしょう。

ところで↓を読むと、Viper Jet type1というのはやたらと強そうですね。
ttps://weblabo.griffonworks.net/dorlog/2nddorcom/pc-98/29805.html
検索して出てくる画像を見ると回路規模が大きそうですし、大概のことがハードウェアDIPスイッチで設定できるようです。さらには純正およびメジャーなXMM、EMMが使えるという点です。ミイソ98の386SX機だとRAM BIOS持ってるので、いろいろ期待できそうです。付属のJET486.EXEの目玉は抗リセットか? 価格は当時でもお高かったのですかね?

 IBM486用キャッシュ制御  リウ  2024年5月6日(月) 15:12 修正
以前書いていたものをここ最近の議論を受けて、安全よりに改訂しました。
drive.google.com/file/d/1-xmFFRUxnzWgnejLTUEbeqMVq30dmVpR/view?usp=drive_link
CPU判別部をFreeBSDからコピーしています。
1000セグメントを非キャッシュにするとDOSのブートだけはできないかな…、と勝手な期待をしています。とはいえ実物を持っていません。面白がって書いてはいます。
しかし486SXなCPUで5555を2で割ったときにcarryが立つのは目にした瞬間嘘かと思うくらい驚きました。
(追記)アップロード後DCX.ASMで勉強しました。CPU判別は奥が深いですね…。

 アクセラレータのDIPSW  まりも  2024年5月6日(月) 20:08 修正
スレッド冒頭のCX486DもCPUチェック周り強化とE0000hのほうのGVRAMキャッシュ禁止を入れ忘れていた点の改訂しました。
ttp://hp.vector.co.jp/authors/VA012947/util/cx486d.html
お試しプログラムCX486IPLはIPLwareでも実行できますが、IPLwareでCyrix486のレジスタを(勝手に)設定するとconfig.sysでHIMEM.SYSのエラーが出るかもしれません。なのでやはりIPLwareでは無理があるような気がしています。

>PK-A486DWですが、検索しても
アクセラレータのDIPSWは他の製品の類推から試すしかないのではないでしょうかね。しかしI/O waitのようなものは何かしらのベンチマークでないと効き目が判らないでしょう。

 確かに実機で確かめないと分からないことは多いですよね。  KAZZEZ  2024年5月6日(月) 22:07 修正
> drive.google.com/file/d/1-xmFFRUxnzWgnejLTUEbeqMVq30dmVpR/view?usp=drive_link
ご苦労さまです。DLC3.comについて拝見させていただきました。画面表示が無くRETで終わっているのでIPLwareに対応したものですよね。IBM486系のCPUキャッシュイネーブラは当時、Cyrix系と違ってIPL起動するFDが存在しなかったので、IPLware対応のものがあればFD-IPLwareでそれが実現できますね。

個人的には数年前に、えらー15氏の情報(ttps://hp.vector.co.jp/authors/VA000363/tech/ibm486.txt)を参考に、CPU判別の強化を加えてIBM486SLC2用のものを作成しており、VXもどきで2k起動の実験に使っています。IBM486BL3(DLC3/SX3などとも呼ばれていてどう呼んだらよいのか良く分かりませんが)についても同じ方法でキャッシュ有効化できていますが、キャッシュ禁止アドレスを設定変更する仕様や、CPUによって倍率を変更する仕様がまだ定まっていないので公開していません(SLC2で3倍設定にするとハングしますので)。

前置きが長くなりましたが、現在のバージョンのDLC3.comについてRA2+PK-486BL75で試したところ、どうも正常動作していないようでした。付属のソースを見ながらデバッガで追ったところ、まず上記の5555を割るルーチンでIntel486と判定されて何もせず終了しているようでした。
判別部分をスキップして「;MSRの使える486なCPUの場合だけここに来る」のところから実行したところ、キャッシュ禁止メモリアドレスとクロック倍率3倍の設定はできていたのですが、MSR 0x1000のところで肝心のCPUキャッシュ有効化が行われていないようでした。
CPUキャッシュの有効化は上記えらー15氏のページでも確認できると思いますが、参考までにPK486BL.COM(アイオー)とBLCACHE.EXE(旧メルコ)でのMSR 0x1000の変化は以下のようでした。
・PK486BL.COM:MSR 0x1000=0x8C92(有効)/ 0x8412(無効)
・BLCACHE.EXE:MSR 0x1000=0x9C92(有効)/ 0x9C12(無効)

それにしてもCPU判別でIntel系486を判別する方法があったのですか。個人的にはDCX.ASMのように判断していたわけですが、持っていないCPUの挙動が分からないのは気になりますよね。MEMSYS.TXTで知ったのですが、Intel純正でも「RapidCad」とかいう386DXソケット互換で486DX相当のCPUなんてのもあるそうで。Intelの486コアならi486と同じ挙動と信じたいところです。
なおBlueLightningのCPUIDはUndoc2のMEMSYS.TXTには載っていませんでしたが、手持ちのPK-A486BL75とHRD-C20T(HDA-C20TJ)のCPUIDはいずれも8439でした。できればCPUリセットや無効例外を使わずに判別できれば理想的だとは思うのですが、一応ご参考まで。

   /人'A`;人\  2024年5月7日(火) 5:02 修正
jet486/potomac.exeのオプションスイッチとその意味。Viper-jet TYPE1付属のjet486.docとViper X TypePだかViper-P28だかに付属(確か共通でFDのラベルにはViper-P28用とあり)のpotomac.docの記述に基づきます.

■JET486.EXE(IBM 486SLC2用)

(1)デバイスドライバ・実行形式共用オプションスイッチ
/S キャッシングの許可/禁止領域を設定.必ず/Sと併用.
/B バンクRAM領域のキャッシングを禁止.
/P プロテクトメモリ領域のキャッシングを禁止.IBM 486SLC2はプロテクトメモリ領域の一部のみキャッシングを禁止するという設定ができないため,禁止するなら丸々禁止しなければならない.
/CX コプロセッサ命令のキャッシングを許可.Cyrix CX83S87使用時.
/OFF キャッシュ無効.倍クロックモードは解除されない.
/F[filename] コマンドラインから一々オプションスイッチを指定する手間を省くためにコンフィグファイルを予め作っておいてそれを使う.

(2)実行形式専用
/IN 486SLC2の状態表示.
・486SLC2 のレジスタ MSR1000H 〜 MSR1002H の値
MSR 1000H = xxxxxxxx,xxxxxxxxH
MSR 1001H = xxxxxxxx,xxxxxxxxH
MSR 1002H = xxxxxxxx,xxxxxxxxH
・クロックモード
Syncronous divide by two mode.
Two to one Syncronous mode.(倍クロックモード)
・キャッシュの状態
Cache Enabled! (キャッシュ有効)
Cache Disabled!(キャッシュ無効)
・キャッシング領域の設定方法
External KEN mode.(ハードウェア制御)
Internal KEN mode.(ソフトウェア制御)
/ON キャッシュ有効.


■POTOMAC.EXE(TI486SXL/SXLC用)

デバイスドライバ・実行形式共通
/X1 CPUクロック1倍クロック.
/X2 2倍クロック.
/H HMAエリア(100000〜10FFFF)のキャッシュOFF.
/R ROM BIOSエリア(E0000〜FFFFF)のキャッシュON.
/B BANK RAMエリア(80000〜9FFFF)のキャッシュOFF.
/D 1MByteごとの先頭の64KbyteをキャッシュOFF.
/K BIOSエリア全てのキャッシュOFF.
/S ホールドステートによりキャッシュをフラッシュ.
/OFF 全てのメモリをキャッシュOFF.
/F[filename] オプションをコンフィグファイルで指定.

/CCR0=20
/NCR1=A0-6
/NCR2=C0-6
/NCR3=E0-5
/NCR4=100-5
/CCR0=xx (xx = 00 - FF in HEX.)
/CCR1=xx (xx = 00 - FF in HEX.)
CPU内部レジスタCCR0・CCR1にダイレクトに値を設定する場合に使用./D /K /Sオプションは無視される.
/NCR1=xxxxx-x (xxxxx = 0 - FFFFF x = 0 - F in HEX.)
/NCR2=xxxxx-x (xxxxx = 0 - FFFFF x = 0 - F in HEX.)
/NCR3=xxxxx-x (xxxxx = 0 - FFFFF x = 0 - F in HEX.)
/NCR4=xxxxx-x (xxxxx = 0 - FFFFF x = 0 - F in HEX.)
キャッシュOFFエリアを独自に設定.xxxxxは4KByte単位で先頭アドレスを指定1桁から5桁までのHEXが有効.xはキャッシュOFFの範囲を指定.0-FのHEXで指定.
0 = DISABLE 1 = 4KByte 2 = 8KByte 3 = 16KByte
4 = 32KByte 5 = 64KByte 6 = 128KByte 7 = 256KByte
8 = 512KByte 9 = 1MByte A = 2MByte B = 4MByte
C = 8MByte D = 16MByte E = 32MByte F = 4GByte
/98
/AT ディスクBIOSを監視し,ディスクアクセスが行われた時にキャッシュをフラッシュ.このオプションのみデバイスドライバ専用(192Byte常駐)./98の行は空欄ですが,以上は/98と/ATの両オプションについての説明でしょうか.
/Vxx[[,xx],xx]... キャッシュフラッシュのために割込みを最大7ベクタまで監視.GPIBやA/DボードなどがDMA転送を行う場合に使用する割込を記述.xxは00からFFまでの2桁のHEXで記述.複数の記述はカンマで区切る.
/WB セカンドキャッシュ搭載のマシンでライトバックをサポートしている機種で問題が発生した時に使用すれば回避できるかもしれない.


jetは出た時6万位したのではなかったかと思います。何かの本かどっかのウェブページに値段が書かれていて、何の真似だこの値段はと魂消た記憶あり。その後価格改訂があったかもしれませんが。大分遅い時期に発売されたものだったような。一倍速キャッシュ1kBの初代毒蛇が4万、アイオーの2倍速キャッシュ1kBが3万でした。で実は1998年か1999年だか忘れましたが、386ー486機用のアクセラレータの売れ残り品(僅少)が資産芯技術社の倉庫から出てきたとか何とかで、突発的に直販の処分セールがありました。ものによって値段が異なり、jetは5000円だったと思います。

ttps://web.archive.org/web/20071024195644/◼️ttp://sandy55.fc2web.com/ps55/Interposer/386_upgrade.html
386AT互換機用のアクセラレータの資料ですが、画像が失われています(私は印刷したものを持っています)。常緑樹社の被せるタイプはいくつか持っています。

   /人'A`;人\  2024年5月7日(火) 5:13 修正
/Sは必ず/Sと併用は/Pは必ず/Sと併用の誤記。インターネットアーカイブのurl中の文字化け箇所は全角黒四角。

 実行ありがとうございます  リウ  2024年5月7日(火) 11:39 修正
不動作報告ありがとうございます。いただいたフィードバックを反映しました。
実際に使われることをほとんど想定していなかったのですが、貴重な機体での実験まことにありがとうございます。IPLWareにしているのは文字表示がめんどうだ、というところもあります。

CPU判別部について
ソースにもコメント残しましたが余りの出る割り算でcarryが立つ(zeroフラグが消える)のはMMXなpentiumですらそうでした。PentiumIIIではcarryが立ちませんでした。間のPentiumProやPentiumIIでどうなのか、K6ではどうなっているのか少し興味の出るところですがここいらのCPUではCPUIDが使えますから古い486のCyrix(TI?)判別には使えるようですけれども、Intel判別は実際にはできない気配です。

MSRの1000hはFPUの制御だけかと思い込んでいました。CyrixのFPUとIntelのFPUで値が違う、というのがFreeBSDのソースにはかかれているのですが、JET486.EXEのオプションでも違いがあるようですね。

連休に出かけなかった日のお遊びでしたが大変勉強になります。

ところでゲーム関連でGDCの石の種類が話題になっていました。
uPD7220の石に比べてuPD72020の石ではアドレス部分が2bit増加しています。(データシートで確認)
マザーボードに7220が確認できるのは超初期機種だけでRAですらLSI化されていましてどっちの石の機能が内包されているのか見た目では判別できません。
ちょっとこれの確認プログラムも書いてみなきゃなあ、と思っています。

(追記)スタックの崩しわすれがありました。DSも0のまま帰るのはよろしくないと思いましたので変更しました。(追)ご指摘のとおり開発版バイナリがそのまま入っていました。言葉もありません。

 皆様修正ありがとうございます。   KAZZEZ  2024年5月7日(火) 20:15 修正
(修正)
修正版を試しましたので大幅書き換え。

> DLC3.com SLC2.com
とりあえずDOS上で無事動作することを確認できました。さすがにIBM486SLC2ではDLC3.comがハングしますが、これは仕方ないですかね。
細かい設定の違いなのか、アイオーやメルコのイネーブラのデフォルト設定と比べると、CPUCHKでのパフォーマンスが、ごくわずかに速かったです。

> cx486d13.zip
とりあえずcx486dを使って調査しなおしてみましたが、結果に変化はありませんでしたのでひと安心です。BIOSファンクションを使わなくなったのか、ハイレゾフラグ有効でもハングアップしませんでした。

 GDCの統合  かかっくん  2024年5月8日(水) 15:56 修正
> マザーボードに7220が確認できるのは超初期機種だけでRAですらLSI化されていましてどっちの石の機能が内包されているのか見た目では判別できません。

98でわVM2迄GDCが2ヶだったのがVM21/UV21/VXでわ片方(多分GRP側)のGDCが統合されて居枡
で、μPD7220(D7220D)わF辺り迄でしか見た事無く、VMでは7220Aですた
np2系エミュでわ3種の切り替えが出来るのでAにも違いが有りそーな?

 続き  KAZZEZ  2024年5月8日(水) 22:43 修正
> MSRの1000hはFPUの制御だけかと思い込んでいました。
まあMSRは文字通り機種依存で、CPUによって機能が全然違っていることがありますからね…。
とりあえず検索するとttp://phg.chat.ru/opcode.txtというページが見付かり、その中でIBM486系の各ビットの解析結果?も簡単に書かれていました。A20マスクのビットなんかもありますね。もっとも英字の略号が多くて、私にはよく理解できていない部分が多いです。
(・_・): 素人丸出しやな。

以下DLC3.com/SLC2.comのドキュメントより。
> CPU判別方法がわからないため
えらー15氏がIBM486SLC2の同定に使っている方法ですと、MSR 0x1001のプロテクトメモリのキャッシュ上限の設定可能範囲を見ているようですね。IBM486BL3(DLC3)の場合は外部32ビットである分だけアドレス空間が多く設定できるみたいですから、試しにMSR 0x1001にFFFFFFFF-FFFFFFFFを書き込んだ後にMSR 0x1001のリード結果を表示させてみたところ、
IBM486SLC2:000000FF-FFFFFFFF
IBM486DLC3:00FFFFFF-FFFFFFFF
という違いが出ましたので、差分の00FFFF00-00000000の部分を見れば、両CPUを一応区別はできるということになりそうです。
ただし、IBM系の386ベースの486互換CPUには2倍設定すら持たないIBM486SLCもありますし、32ビットでも2倍速までしか持たないIBM486BL2もありますから、それらでは不具合が起きることも予想されます。PC-98であるという前提であれば正式対応CPUアクセラレータ製品でIBM系386ベースなCPUはSLC2とBL3の2種類しかありませんから、PC-98チェックを追加するという手もあります。それでも海外のAT互換機のCPUアクセラレータでIBM486SLCやIBM486BL2を使った物があるのか存じませんから、それをPC-98に載せているケースが無いとも言い切れませんが…どうなんでしょうね?

> 286に486命令を足すようなことを例外割り込みで作ることができたりします
例外割り込みは私も過去ログにあるMSRの存在をスキャンするツール(今回IBM486のMSR内容表示に大活躍しました)で使っているわけですが、命令追加なんて応用も実際に実現した方がおられるのですか。Windows上ではOSが介入しそうな気がしますがどうなるのでしょうね。PC-98ではPentiumIIIが限度なのでSSE2命令を使う3Dソフトとかにも使えればうれしいところですが。
一方で、例外割り込みが存在しない8086ではデバッガ用の1ステップ毎の割り込みモードで186命令を追加するなんてソフトを昔ベクターで見ましたが、相当遅かったらしいですね。PC-98ではむしろ(CPUアクセラレータの乏しい)V30機で286/386命令を追加するほうが有用に思えますが、V30は無効命令の割り込みには対応していない世代でしょうかね…。

 CPU固有命令  まりも  2024年5月8日(水) 23:12 修正
>286に486命令を足すようなことを例外割り込みで作る
無効命令の例外06をトラップして、代替コードでリカバーしちゃうわけですか。すごいもんですね。例外違いですがdiv0ROMもそれに近いかもしれません。勝手にリカバーしてDX=0,AX=FFFFhを返してしまいます。でも元の命令コードがなんだったかのトレースまではしていませんね。符号なし16bit割り算決めうちです。

ところで98RLにはout 43Fh,A0h でCPUのキャッシュをフラッシュ(または書き戻しも含む)するという機構はない可能性が大です。CPUが80386でその必要性がないため、ITFにもそれを実行するコードなんてありません。存在しないと思った方がよさそうです。CPUが486になった9801FAから装備でしょうね。
cyrix 486の場合は486一般にあるCR0レジスタで一時的に一次キャッシュを無効にすれば大概のことは済みます。wbinvd/invd命令も使えるようですが、Intel互換の本当の486のときに(間違って実行すると)問題になるのでCX486Dでは使っていません。

 V30で286/386命令をエミュレート  かかっくん  2024年5月9日(木) 2:13 修正
V30に286命令を追加するのは殆どプロテクトモード命令デスから余り有用でないやうな?
286命令を追加と云うより挙動を286に合わせるやうな(後述)?386命令はリアルモードだけデモ66h/67hが
他用途(V30NDP用命令?8087〜387とわ無関係?)で遣われ枡からシングルステップでエミュレートする鹿
(V30NDP併用時は不可?)、元からか
# バスサイクル等はV30が出す(8087/V30NDPはバススレーブ)ので全くのnopでわナイ
尚V30にわ無効命令例外は無く286からの実装デス
あと386命令のエミュレートにわ大量のスタックが必要デスからオーバーフローしないやうにご注意
E**の上位16bitやFS/GSを何で代用するか?とかpushadでダミーのpushをしたり、同じくpopadで空popを
したりとか

他には8086/V30と186+で挙動が異なる命令(シフト時の5bitとかpush SPとか。本来はDIV0も)のエミュ
とか。286/386用アプリは286や386の挙動を前提として居枡からMUSTでせう

out 43Fh,A0hってH98/100 90に有馬すか?

 SYSTEM BIOSのF800:0E80あたり空いてます?  まりも  2024年5月10日(金) 15:38 修正
PC-98RLのノーマルモードで SYSTEM BIOSの空きにパッチを当てて、CPUリセットがかかったときでもcyrix 486のレジスタを再設定するようにしてみました(試作)。これならIPLwareでCyrix486のキャッシュ設定を行う意味はあろうかと思います。

ただし、IPLwareで実行されるときは、バンク/メモリウィンドウ領域の80000h-9FFFFhはキャッシュ禁止にします。いっぽうDOS実行時やCPUリセット復帰時はキャッシュ可能にします。これはメモリウィンドウを操作するプログラムがIPLwareにはいくつか(壁超えSCSI-LBAやSCSI_RAMなど)あるからです。ネイティブな486機ではメモリウィンドウを操作するとそのI/O実行時にFLUSHピンが駆動されますが、元80386機ではそうは行きません。IPLwareアプリ側でメモリウィンドウ操作時にout 430h,A0hを入れてあっても(SCSI_RAMでは念の為入れていた)効かないと思われます。一次キャッシュを切るなどの大ナタを振るわないといけませんが、これまでのIPLwareアプリを全部元80386機向けに改修するのは現実的でないので、IPLware実行中はメモリウィンドウ領域をキャッシュしない方法を選択した方がいいでしょう。

同様にIPLware実行中は1MB空間の最低位64KBをキャッシュしないようにしてXMM組み込みが落ち着くまでそのままとするのがよさそうです。いっぽうCPUリセットからの復帰ルーチンではinvd命令を入れたので、フラッシュされるはずです。HMAにあるDOSのパフォーマンス重視で64KB域はキャッシュ可で抜け出すことにしました。

ところでそのパッチを埋め込むSYSTEM BIOSの場所なのですが、RLではF800:0A00-0EFF hが空いていたので、0E80 hからを使ってみました。他の機種、RA以降FA未満の元80386機種ではこのエリアに空きはあるのでしょうか?ちなみに上記のリセット復帰ルーチンは64バイトあれば足ります。

 F800:0A00  リウ  2024年5月10日(金) 16:16 修正
RA2(一桁)では空いていました。
具体的にはF800:0987hからF800:EFFまでが0埋めされています。
386に486なbswapも埋め込めそうな(と悪いことを考えてしまいますね)

 RAM BIOSパッチ、IPLware +configデバドラ  まりも  2024年5月10日(金) 23:02 修正
空きの開始オフセットは機種により少し違いそうですね。その続きF800:0F00にはBASICのROMの一部があるようなので、後方詰めで格納するのがよさそうです。ということで今後コードが増える余裕を残して、0E80 hからにします。空きの前半分はint 1Bh DISK BIOSフックのために使いますかね。それよりはハードウェアでFLUSHピン操作の方をやってみたいですが。

現在のところ試作品はノーマルモードはもちろん、ハイレゾモードでも、DOS起動後にHMAや続く192KBのEMBをキャッシュ可でうまく行っています。RAM BIOSパッチにより、ハイレゾモード時のHIMEM.SYSが行うリセットからの復帰ができています。リアルモードでしか使わないので個人的にはこれでも満足なレベルです。

ところが難しいのがEMM386です。DOS 5では組み込み時にハングアップします。DOS 7.10ではEMSでメモリ確保した瞬間にリセット再起動になります。いっぽうDOS 6.2およびWin3.1のは問題ないようです。なんか根本的な無知のため見落としていることがありそうな、、、

 キャッシュのフラッシュ  KAZZEZ  2024年5月11日(土) 1:19 修正
> out 43Fh,A0h でCPUのキャッシュをフラッシュ(または書き戻しも含む)するという機構はない
汗;。そうだったのですか。PX98IPLでは0.02でRA/DA上のi486のCPUキャッシュ有効化の際にout 43Fh,A0hを入れていたのですが、無意味だったのですね。一番最初の有効化だけですから、フラッシュしなくてもたまたま平気だったんでしょうか。というかIntel486系のアクセラレータの場合、CyrixやIBMのような386向けの付加機能はありませんから、CPUアクセラレータ基板上でハードウェア的になんとかしてくれていたということでしょうかね?
KSGJ/JBC…だったか?メーカーうろ覚えですがHYPER CPU 486という386DX用CPUアクセラレータのキャッシュイネーブラの場合、キャッシュをオンにするCOMファイルが155バイト、オフにするCOMファイルが162バイトで、そのうちテキストデータが126バイトを占めるという正味30バイト前後…というかジャンプ命令や終了コードを除けば更に短いシンプルなもので、どうもCR0をいじるだけでキャッシュフラッシュを行っていないようでした。そうなるとハード的に何か対処しているのかもしれません。

> I/O F6hが機能するかどうかですが、まあ期待薄でしょう。
とえりあえずVXもどきに載せたPK-X486S-50(IBM486SLC2)では、アイオーのキャッシュイネーブラの有無に関係なくout F6,2では切り替わらないようでした。

> F800:0E80 hから
念のためRA2でアイオーのイネーブラ実行前後でも比べてみましたが、ここはゼロで埋められたまま変化は無さそうでした。

 脳内ハングアップ  まりも  2024年5月11日(土) 16:31 修正
>HYPER CPU 486という386DX用CPUアクセラレータのキャッシュイネーブラ
たぶんですが、常駐部はint 1Bhの入口でキャッシュを切ってから本来の呼び出しを行い、戻ってきたらキャッシュを有効にするのだろうと思います。それだけなら32バイト程度で行けます(pusha/popa使用)。ところがこのキャッシュを切るという手法が特権命令を使うものだと、仮想86モードのとき動作しなくなるので、本当にそれなのかどうか? まさに今それをやろうとしていたところで、疑問になりました。int 1Bhフックできないではないですか。

ところでDOS 7.10とDOS 5では、EMM386が組み込まれるときに発生するCPUリセットルーチンに特権命令があると、戻れずにハングアップするようなのですが、理由がよくわかりません。SYSTEM BIOSにあるコールドリブートルーチンは、out F0hでリセットかかった後なのだから、リアルモードで呼ばれると思うのですよね。そもそもハングアップしているのはEMM386に再び戻ってからなのかも?

【17時追記】そもそも仮想86モード下では、Cyrix486のレジスタに書いても保持されないじゃないですか。仮想86のI/Oモニタがトラップしてますよね。やっぱりEMM386というか仮想86に深入りせずにやるのは無理です。元386/286機の486 CPUキャッシュユーティリティのIPLware化はほぼ無意味という結論でいいでしょう。起動後そのままリアルモードで動作するOS(MS-DOS以外)なんて無いですし、、、あ、N88-DISK BASIC,ROM BASICだけがありますか。

 仮想EMSを使うCONFIG.SYSにキャンセルドライバを作っておくとか…  KAZZEZ  2024年5月11日(土) 18:50 修正
> キャッシュユーティリティのIPLware化はほぼ無意味
HDDでは起動メニューなどでOSを選べるわけですから、DOS+仮想EMSのように、あると不具合のある環境向けに、IPL段階で行った処理を仮想EMSを組み込む前に解除するCONFIG.SYSデバイスドライバがあれば良いのではないかと思います。CPUリセットを起こす機会の無い環境やOSであればそのまま使えますし、DOSで仮想EMSを使うときはVMM386なりMELEMM.386なりの、CPUアクセラレータに対応したメモリマネージャに切り替えられれば良いと思いますので。

----
ところでIBM486SLC2/BL3の場合、動作倍率設定は初回設定時のみ有効となっていて、途中から倍率変更を指定しても繁栄されないことになっています。しかしCPUリセット(WAPICOなど)でいったん設定を飛ばせば、再設定時に新しい倍率で動いてくれるようです。
面白いのはCPUリセットでCPUキャッシュ設定が解除されないアイオーのドライバを使った場合で、普通に倍率を変更しても繁栄されないのは同じですが、倍率再指定後であれば、CPUリセットを行ったタイミングで、CPUキャッシュを切らすことなく倍率を変えることができました(もちろんリアルモードの話ですが…)。

 なんでEMM386だけはCPUリセットが必要なのか  まりも  2024年5月11日(土) 23:32 修正
VMM386 3.55があったので適用してみたところ、Cyrixのキャッシュ関連レジスタにI/O設定をしても仮想86のI/Oモニタに拒否されることなく通りますね。さすがはアイオーデータです。

いっぽうDOS 6のEMM 386ではそれまでの設定はリセットルーチンで再設定され、キャッシュが効きますが、仮想86に入るとI/Oは通らなくなるので再設定はできません。melemm.386も同様です。つまりIPLwareで設定しておくと起動後にも有効ではあります。

ところで試作品ではリセット復帰ルーチンを通ると画面背景を青くするようにしていますが、各種メモリマネージャーではCPUリセットが起こるものと起こらないものがあります。
・CPUリセットが起こるもの
HIMEM.SYS ハイレゾモード、DOS 6のEMM386両モード
・CPUリセットが起こらないもの
HIMEM.SYSノーマルモード、VMM386両モード、melemm.386両モード
この差がよくわからないというか、CPUリセットが必要な理由がわかりません。とにかくEMM386は何か気に入らない点があればリセットしているとしか言いようがありません。HIMEM.SYSが組み込み時にハイレゾの時だけリセットを起こす必要性も理解し難いです。通常動作時にはプロテクトモードからの戻りには80286の作法ではなくちゃんと80386の作法で行なっています。つまりハイレゾの時だけ何か気に入らないことがあってリセットをかけているとしか思えません。

ということで、
>仮想EMSを組み込む前に解除するCONFIG.SYSデバイスドライバ
でIPLware併用というのはありだと思いますが、最大限解除すべきなのはリセットルーチンでのCPU設定ですね。Cyrixで使えないEMMはここから先でハングアップしていますから。CCRやNCRはIPLwareでは控えめに設定しており、そのまま継承されてもいいし、リセットがかかればどうせ消えます。

 互換性の権化の変更点  リウ  2024年5月12日(日) 1:38 修正
drive.google.com/file/d/18bmn4PYTOtsU92bVcw_7bQSHuZ_FB8a6/view?usp=drive_link
GDCの機構変更点が自分の中では結論できました。
こんなものはグラフィックを扱うゲームプログラマーにとっては常識だったのかもしれませんし、np2には切り替えオプションもあったわけで周知の事実だったのかもしれませんが、正直かなり驚いています。
カセットBIOS、5インチ2Dインターフェース、CBUSの286機での変更と初めのころは投げ捨てていた互換性維持もそれ以降はかたくなに守ってきた(と信じていた)ものが突然の変更ですから。

ハイレゾのXMSマネージャは最近こんなものを改造してみました。とはいえこれもIO f6hが使えることを前提にしています。32bitレジスタも使っているので286機ではちょっと無理です。
drive.google.com/file/d/1cDIsT4UQIVwiuVd-PswBM2a1oi-pbaFC/view
これもDOS6のEMMを使うと即暴走です。まさかのCPUSHUTDOWNが入ってるのですね。
で、ハイレゾ機のHIMEM.SYSのCPUSHUTDOWNはInt1FのAH=90hが原因です。こいつで例の80000hのメモリをコピーしていますが、そのInt1FのBIOS中身が286機そのままでしてプロテクトモードへの行き帰りにCPUSHUTDOWNを使ってやがります。非常にやっかいです。そのため仮想86がやるべきInt1FのフックをXMS段階でやってみました。

ITFが設定しないIPLwareでのCPUキャッシュフラグ設定はNTを使う場合にはとても役に立つとは思うのです。それらのOSがCPUに対して適切な初期化をしてくれない可能性はそれなりにあると思います。FreeBSDの初期設定コードを見ると相当頑張っているとは思います。もはや誰もメンテしていないわけですがDMAの見張りもいちいち行っていて大変そうでした。

 リアルモードの儘動くOS  かかっくん  2024年5月12日(日) 2:44 修正
リアルモードの儘動く物と云えばゲームでせう
FDでプロテクトモード(米ゲーの移植モノにDOSエクステンダ使用のが有ったらιぃ)やV86で動くのは
極少数で、殆どがリアルモードでせう

HDDでのIPLwareでわ余り意味無い鴨知れませんがFD-IPLwareで其れ也に有用鴨

 Cyrixの面倒を見てくれるEMM  まりも  2024年5月12日(日) 7:50 修正
>GDCの機構変更点
ゲーム用途にあえて古めの9801を買い求めるのは意味があるということになりますね。高速機を遅くすることはできるのだから、なるべく新しい機種の方がいいではないかと思っていましたが。
>Int1FのAH=90h
原因はこれでしたか。なんで80386機なのに80286相当のまま放置なのか、それこそが互換性の権化なのですかね。では先回りして元のint 1Fh,AH=90hに非リセットなモード遷移を行なうようにパッチを当てるのもありかもしれないです。もっとも大概のメモリマネージャはint 1Fhをフックしてそれをやっていそうです。稼働中は問題なく、インストール時だけの問題です。

さてCyrixにある程度対応するEMMで何が違うのかを比べてみました。
◎VMM386
DISK BIOS int 1Bhをフックしないようです。既知のI/Oはトラップしているからそこでキャッシュをフラッシュするのでしょう。独自に設定されるNCRを見ると、HMAもバンクメモリエリアもキャッシュ可です(画像)。さすがは釈尊。なおハイレゾでもNCRの設定は同じでしたが疑問はあります。

◯MELEMM.386
/CXオプションをつけるとint 1Bhをフックします。I/OモニタがCyrixのI/Oに全く対応しないので、キャッシュ関連レジスタ設定の読み出しすらできません。独自にNCRを設定しているのかもしれませんが不明です。BIOSフックですからDISK関連I/Oも見てないのでしょう。

▲DOS 6/Windows3.1のEMM386  ×他のバージョンのEMM386
Cyrixの面倒は一切見ませんが、キャッシュ関連レジスタの読み出しのみはできます。他のバージョンのNEC/MS製EMM386は先立ってキャッシュ関連のお膳立てをすると正常動作しませんし、事後にもキャッシュ関連の設定はできません。

○LEMM
IPLwareで事前にキャッシュ関連の設置がなされていると暴走して組み込めないことがありました。うまく行った場合は事後に仮想86モード下でキャッシュ関連の設定はできるようです。I/Oは素通しでしょうか。設定の読み出しが効くのは便利です。

となるとconfig.sysで解除を行なうデバドラが必要なのは基本的にDOS 6以外のバージョンのEMM386ということになろうかと思います。HD上のIPLwareの場合は手動で実行キャンセルできるので、解除用configドライバは要らないかもという気がします。ほとんどの用途の場合はFD-IPLwareでしょうかね。アイオーデータのPK-486D付属品にはFDリブート用のプログラムがあったと思いますが、FD-IPLwareと同様メディア差し替えの手間はあります。OSFD-IPLwareならその手間要らずとなります。

ただしIPLwareで期待できるのは既に書いたようにDISK BASICくらいであり、ネイティブなディスクドライバで動作するNTやOS/2では int 1Bhフックで賄う部分が効かなくなります。つまり超安全激遅設定の「HOLDステートごとにフラッシュ」にしないとディスクのデータを壊してしまいます。基本的にOSごとにcyrix 486のキャッシュを考慮したデバイスドライバは必要です。ディスクドライバの実行コードのうちDMA転送かける前後にパッチというのがいいのだろうとは思いますが、ソースレベルでないと難しいでしょう。

【21時追記】というわけで、Cyrix486系キャッシュ設定表示プログラム「CX486D」とIPLware兼DOS版キャッシュ設定ユーティリティ「CX486IPL」を公開します。設定内容は、主に486DLC,DRx2のCPU単体を持っている人向けの最大公約数的なものとなっています。SLC対応機(元80286機)にとってはつまらない設定です(DISK BIOS int 1Bhフックを行わないため)。【追記】SLCでもint1Bhフックを行うようになりました。
ttp://hp.vector.co.jp/authors/VA012947/util/cx486d.html

 FDベースのL1コントローラって  かかっくん  2024年5月13日(月) 0:11 修正
FDベースならVectorに有馬すし、目新ιぃ物デモなさそーな?
勿論細かく設定出来るのは重宝デス

ディスクキャッシュ(L1をフラッシュしないPIO^h^h^h単純なRAMコPY)と併用しFD讀み(DMA)を減らすと
パフォーマンスが挙がりそーデス。ディスクキャッシュがWTであってもDMAでRAMを書き換えるFD讀みが劇的に
減り枡から効果は圧倒的でせう
と云うワケでゲーム用キャッシュFDにL1キャッシュコントローラを組み込むと効果覿面でせう

ところでRLのHR BIOSが286当時の儘放置なのわ純正の環境なら無問題だからでわ?
H98/100+やA-MATEでは改めて居るでせう。SV-H98にはP5ベースのも有馬すし

で、他のOSと云えば
・BASIC
・CP/M
・PC-UX
・OS/2
・BSD/Linux
・他
とか有馬すがBASICとCP/MはHDDベースで現存する環境が余り無いでせうからFDベースと考えても
良さそーな?
PC-UXはバージョンに依り68kベースとV60ベースが有馬す。何方も本体のCPUとわ粗無関係ナノで略
# 286/386用PC-UXは有馬したっけ?
OS/2やBSD/Linuxはプロテクトモードで動き枡からプロテクトモードでのL1有効イヒが必要そーな?

 元80286機でもint 1Bhフックでキャッシュをフラッシュ  まりも  2024年5月13日(月) 10:02 修正
シャドウRAMが無い元80286機では、不可侵なメモリ領域でint 1Bhのフックができないと思い込んでいましたが、0000:41Ehからのシステム共通域の空きが使えることに気がつきました。ここはBranch4670だかが使う38バイトのエリアですが、今更趣味で98をいじる上でB4670を使う人はいないでしょう。21バイト空きがあればいいのでお釣りが来ます。コード実行速度もシャドウRAMより速いはずです。毎回リセット時にはクリアされているのも好都合です。シャドウRAMだとリセットボタン押し再起動時にも残っていて、空き判断で困る場合もあるのですよね。

未使用となっている物理DIPスイッチの2-7を流用して、int 1Bhフック可否選択に使いましたが、Dシリーズからはソフトウェア化されていましたね(汗 これってソフト側からどう操作するのでしょうね? I/Oの841Fhあたりでいいのでしょうか。

 2-7と6連DIP  かかっくん  2024年5月13日(月) 14:36 修正
第三研に由ると2-7をUV11/CVで遣って居るそーデスがV30機ナノで関係無い哉?
www.amy.hi-ho.ne.jp/nakajima-jr/com/appendix/dSwitch.htm

DXは6連DIPを遣ってわ?

 CX486IPLとか  KAZZEZ  2024年5月13日(月) 21:44 修正
とりあえずDOS(モード)上だけのテストですが、CX486IPLでCx486DLC/DRx2のCPUキャッシュ有効化を確認しました。CPUリセットでCPUキャッシュが切れないというのは素晴らしいです。95のDOS7.0上で試したところ、EMM386の後だとおっしゃるようにBIOSパッチだけで、レジスタ設定は効いていないようでした。アイオーのイネーブラはEMM386の後でも機能するようでしたので、PK486S.COMを持っていてPK486D.COMを持っていない人が併用すればEMM386時のBIOSフックを活用できるのかも(?)。
ちなみにCR0をいじってCPUキャッシュを無効化した場合、ふつうのi486搭載機ではCPUリセット後も無効のままでしたが、CX486IPLでは自動的にキャッシュが有効になるようでした。これはアイオーのPK486Dも同じ挙動でした(もちろんPK486D /Fでキャッシュを切った場合はNCRで全域無効に設定されますからCPUリセット後もそのままですが)。

ところで386機ではIntelの486を使ったCPUアクセラレータでもCPUリセットでCPUキャッシュが切れるみたいでした。ただ、(95の)EMM386組み込み後であってもDOS(モード)上ではCR0をいじるだけで簡単にキャッシュ有効・無効化はできるみたいでした(さすがにWindowsのDOS窓では無理でしたが)。CR0を含むMOV命令はシステム命令だと思うんですが、特権命令ではなかったのでしょうか? いずれにしてもCX486IPLと同じ手法を用いればIntel 486でもCPUリセット対策はできそうですね(フラッシュにはINVD/WBINVDを使えばよいのでしょうかね?)。アイオーの386用CPUアクセラレータ製品にはIntel486の採用例が無かったのか、対応したイネーブラも存在しない(486ピン互換のCx486DX2やCx5x86のものならあるようですが、それらの対応イネーブラもCyrixでないと怒られる)みたいですから、Intel486用イネーブラでCPUリセットで飛ばないものがあると良さそうです。

それにしてもIntel 486であってもCPUリセットでキャッシュが切れるとなると、素で486以降を搭載したマシンの場合は、BIOSに元からCPUリセット対策が行われているということでしょうか。そうなるとMendocino以前のキャッシュ有効化ツールは、CPUリセットの影響とか、各OSで固有のドライバが必要とかの事情があったのかどうか…当時ぜんぜん気にしていませんでしたが。

> CPUリセットを起こすOS
Windows3.0のスタンダードモードは286に対応していますから、当然DOSに戻るときはCPUリセットが起こるものかと思っていましたが、NEC版3.1をスタンダードモードで起動して終了した場合、対策なしでもCPUキャッシュは有効のままでした。IBM PC用のオリジナル版(英語版)3.1は286にも対応しているので日本語版でもそのへんは変わっていないかと思ったのですが…あるいは何かの裏技でリアルモードに戻っていたのでしょうか? やはり3.0で試さないと分かりませんね。(ぉ

 A20  リウ  2024年5月13日(月) 22:30 修正
日本語版win3.1は286が正式に対応からハズレています。3.0のスタンダードモードで確かめてみたいです。
IO F6hのA20mask unmaskbitについて、Xe10ではread値がundoc2の記述と違って変化なしでした。F2hの当該bitについては記述どおりでした。
が、RA2ではどちらもFFが帰ってきます。古い機種では思ったとおりの値を返してくれないようです。チェックとしては実際にFFFF:0010hを読むなどの必要性があるようでめんどうだなあ…という気分です。

 牛寺 木又 命令  まりも  2024年5月13日(月) 22:57 修正
仮想86モードで実行すると一般保護例外で通常はハングアップになるはずですが、CR0の読み書きはいいのですかね。INVDも通っているっぽいです。いっぽうRDMSRなんていう命令は必ずハングアップします。大概のEMMが用意している仮想86モニタに例外トラップがあって、キャッシュ関連の主だった命令は通すようにしているのではないでしょうかね。

ところでシステム共通域の0000:041Eからの38バイトを使えると思いきや、ハイレゾRLでは2箇所何かに使われていました。したがってハイレゾのときだけ別のところを使わねばなりません。98XA専用でその後即廃止の0000:04E0からの21バイトがどうも大丈夫そうなので、そこを使うようにしました。というわけで本日今からバージョンが上がっています。CX486IPLはバージョン0.92です。なおCX486Dのほうでディスク割込みのフックの表示が出っぱなしのバグも修正されています。
ttp://hp.vector.co.jp/authors/VA012947/util/cx486d.html

DIP スイッチ2-7はCVだのUV11のみで使われているとなっていますが、Cyrix486を載せる機種ではないから大丈夫でしょう。仮に機能が残っていたとしてもFDDのモーター関係なので致命的なことにはならないでしょう。それよりDシリーズはどうする、、、 

 VXもどきでも試してみました。  KAZZEZ  2024年5月16日(木) 0:46 修正
仕様だとは思いますが、cx486iplはワークエリアのCPUIDを見てCx486を判別している様子ですので、元286機では事前に拙作WAPICOなどでワークエリアのシステム情報にCPUIDを設定しておく必要がありました。Cx486DLCを用いた286用CPUアクセラレータの場合は単にwapico → cx486iplの順番で実行ないしはIPLware登録すれば動くと思います。Cx486SLC/SRx2の場合、CPUIDは0410か0411ですので、コマンドラインで明示的にワークエリアに0420または0421を指定すれば動くようでした。したがってIPLwareに登録する場合は「WAPICO 0421」とIPLDOS経由で登録する必要があると思います。強制指定なので、cx486iplが非対応の環境でも実行できることになります。Cyrixの固有レジスタはI/Oアクセスなので不具合が起きる可能性は低いかもしれませんが。安全に行くなら拙作DCXをWAPICOに適用しておくのも手かもしれません(cx486iplはdc.comよりサイズが大きいのでそのままではDCXを適用できません)。
(・_・): なんやいちいち「思います」って!?
(^_^;): いや今回もDOS上でしか試していなかったので…。(殴
なお手持ちのCx486系CPUアクセラレータをいくつか通り試す限り、下一桁が0のものは25MHz版、1のものは33MHz版や40MHz版のようでした。下2桁目はDLC/DRx2で2、SLC/SRx2の場合は1のようですから、最低でも0421/0420/0411/0410の4種類はあることになります。ただ、Cx486系を判別するのであれば、ある程度486の候補を絞ったうえで、Cx486特有の挙動を見たほうが確実だと思います(DCXではベクターにあるCLKEPSのソースを一部参考にしました)。

なおアイオーのIPL起動FDにはワークエリアのCPU情報を書き換える機能があり、Cx486系のときにこの機能を有効にすると元CPUIDが4種類のどれであっても0421と書き込まれるようです。
このアイオーのIPL起動FDをVXもどきに適用したところ、BIOSは書き換えられない旨の警告が出ます。当然WAPICO等のCPUリセットを行うソフトではCPUキャッシュが切れます。
さすがにVXもどきはXA/XLとは違ったのか、cx486iplでもCPUリセットでキャッシュは切れるようでした(BIOS RAMをパッチした旨のメッセージは出るのですが)。

ところでアイオーの旧ページにあったPKシリーズのアップデート差分のドキュメントを見たところ、PK486D.COMが初代9821での不具合に対応したという記述がありました。初代9821(+PK-486SRx2)がPK486D.COMの対象機種だとすれば、この時代の386SX機はBIOS RAM書き換えに対応した機種である可能性がありそうに思います。PK486S.COMのほうは286用か、または単に旧バージョンということでしょうか?

> IBM486系のCPUキャッシュイネーブラは当時、Cyrix系と違ってIPL起動するFDが存在しなかった
すみません。アイオーのIPL起動FDはCx486系の他にIBM486SX3(=BL3)にも対応していました。ただ、なぜか同じ方法で有効化できるはずのIBM486SLC2には対応していませんでした。IBM486BL3と違ってBIOSをRAM化できない286機だからでしょうか? 何か相応の理由があるのでしょうかね。

 外貨獲得に貢献  まりも  2024年5月16日(木) 8:46 修正
うあ486SLCはCPUIDが違うんですか。80286用アクセラレータがオクで出ていたので、検証用になんとしても手に入れたいと思ったのですが、倍いいとか全負けっととかの軍団が強すぎてどうにもなりませんでした。というか張り合う意味はありません、日本にお金を落としてもらいましょう。それにしてもなんでSLCの載ったアクセラレータが世界的に人気なんですかね? DLCが載ったVX用のアクセラレータ(割と初期のでしょう)には食いついていなかったので、SLC目当てなことは確かです。

ところでCX486IPLでは、CPUIDを0000:486のシステム共通域から得ていましたが、これは元80286機では不可能なんですね。意図的にリセットかけて調べるしかないですかねぇ。ただそうなると仮想86では動作しなくなります。Cyrix限定なので先にI/O 22hをつついて23hを読み出すといいですかね。いきなり23hを読み出すとDMAコントローラのほうに行ってしまいます(W/Oなので返り値はFFh)。Cyrixのデータシートを読む限りでは、22hを正しい値で叩いたあとはCPU外部に23hが出ることはなくなるようです。その後は22hに無効な値を叩き込んで元に戻しておかないと、本当の23hのDMAコントローラの方に書き込みできなくなってしまうようです。

【13時追記】CX486IPLはそういうわけでいまアップデートしました。SLCでちゃんと動作するまでにはテストをお願いすることになり、時間がかかると思います。DLCのほうは元80386機では完璧に動作すると思っています。

【23時追記】なんと9821RaではI/O port 23hを読み出すことができてしまいます。普通には00hが返ってきます。たぶんwriteした値がおうむ返しに保存されているだけだろうと思います。しかしこれでは返り値チェックでCyrix486だという判断はできないことになりますね。やはり0000:486も組み合わせですかね。ここが0の機種は80286以前かXLダブルくらいだと思いますので、まずそれは除外して、CPUIDが04xx hですらないのを次に除外でしょうか。

 参考までにDCXでの判別方法  KAZZEZ  2024年5月17日(金) 1:17 修正
お手数おかけしております。1.70版を試しました。
仕様なのかcx486dのほうはワークエリアのCPUIDを参照する仕様のまま変わっていないようでしたが、これはこれでワークエリアを書き換えれば非対応環境でも動かせますのでテスト用には重宝しています。
cx486iplはCPU判別方法が大きく変わったようで、VXもどきでCx486SLCでも動作するようになりました。前回のように事前にワークエリアのCPU情報の設定を行っていると元286機でもRAM BIOS機種と誤認してしまうようになりましたので、WAPICOは使わないほうが良さげです。

ただ既にお気付きとのことですが、今回のCPU判断では色々まずそうでした。IBM486SLC2/BL3を用いたアクセラレータや、RA2+Turbo486EX(i486DX/33)では無事に実行中止されましたが、普通の486機(Ce、BX3)ではなぜか普通に実行されてしまいます。RA21+EUD-Q(Cx486DX2)でも実行されます。これらの非対応環境では不正にBIOSパッチされる形になるのか、CPUリセット後にフリーズします。

CLKEPSの付属ソースの判別方法では、Cyrixの486互換CPUは、割り算(DIV命令)を行った際に余計なフラグを変化させないのでi486やIBM486とは区別できるようです。これを参考に、私は結果がゼロにならない割り算を行っても立てておいたゼロフラグが寝ないままだという挙動を見ています。この挙動は486ピン互換のCx486DX2でも確認できますが、Cx5x86には無いようです。
また以前にも書いたのですが、386ピン互換のCx486は486で追加されたフラグレジスタの全部を持っているわけではなさそうで、試したところNEビットが変更できませんでした。こちらについてはIBM486SLC2やBL3も同様なのですが、i486と互換性の高い486ピン互換CPUであればこのビットを持たないとは考えにくいです。
拙作DCX(0.02)では、この2つの判別により、CPUリセットを行わずに、486系CPUの中から386ピン互換のCx486だけを特定しています。

なお486ピン互換のCx486DX2などはi486との互換性が高く、CR0をいじるだけでCPUキャッシュのオンオフが(ライトスルーモードですが)できるようですが、一方でアイオーや旧メルコのイネーブラではCx486DLC/SLC用のものが486ピン互換のCx486DX2にも対応しており、それらと同じくCCR0やNCRを設定できますから、一応上位互換性があるようです。しかしCx486DLC/SLC向けの流儀そのままではCx486DX2には効かないらしく、cx486iplではCx486DX2のCCR0やNCRは設定できませんでした。もしこれが簡単に対応できるようであれば、386ピン互換CPUを判別する必要は無くなると思います。

そのほか細かいところとしましては
・DOS上で実行した際、色付きの表示で終わると、コマンドプロンプトに色が残る。
・RA21+内蔵型SASI-HDD(サードパーティ製40+40MB)で、SCSIと誤表示される。
ということがありました。ご参考まで。

 CX486D 1.90/ CX486IPL 0.96  まりも  2024年5月18日(土) 0:00 修正
内蔵SASI/SCSI BIOS装備チェックは確かに逆になっていましたので、CX486IPLではそこを修正したほか、色つき表示も表示後に白に戻すようにしました。このプログラムはCyrix486DLC/SLC専用であり、Cx486DX2などでは使うことは無いものとしているので詳しいチェックは入れていません。間違って使うのはむしろCyrix486SLC/DLCを外したのに実行してしまったときです。そのときCyrixのCPUが無い判定になっていればいいと思います。【追記】Intel 486ではちゃんと弾かれることは確認しました。

 汎用スレッド2024年5月  /人'A`;人\  2024年5月1日(水) 4:58 返信修正
お気軽にご利用下さい(蹴

 Windows98SEのFAT32  リウ  2024年5月14日(火) 13:02 修正
Windows98SEでFAT32は2TBまで使えることになっているはずですがどうも1TB付近に謎の壁があるようです。(ATAの28bit壁は越えられた前提)
(修正)
twitter.com/_uttii_/status/1790343288538780099
検証中とのことですが情報元の方がつぶやき始めているのでご確認ください。ATAは28bitの壁がややこしいので、こちらでもちょっとSCSIで試してみたくなっています。

関連するものとしては以前にこういう報告もありました。
twitter.com/yukkuriz/status/1447620624118009861
MS-DOSのSYSコマンドでも失敗することがありますから符号付きで管理しているとすると約半分でおかしくなるということに説明がつきます。

 Meや98の窓98xはどうか  かかっくん  2024年5月14日(火) 13:17 修正
タレコミで合って居るかと
本当に128GiB(137G)を越えるテストを疎かにして居そーな?当時(2000頃)でもRAIDでテスト出来そーな
気はし枡がNT系なら兎も角9xデスからねぇ
まぁBigなDriveが其れより後位デスから120Gを幾つも連ねて(JBOD)・束ねて(RAID0)やっと1T越えデスし

98の窓98xはどうかと、PCではMeで直って居るかデスな
デモDOS6迄と違いM$が直接出すだけあってみいそやえぷのチェックは入りませんでしたから元のPC版に
バグが有ったら(略)

 DOS7の限界は  まりも  2024年5月14日(火) 16:35 修正
Windows98 GUIは1GBかもしれませんが、PC/AT用MS-DOS 7.10はもっと限界低いのではと思っています。64GBがせいぜいかも。

 いわゆるNECフォーマットの場合?  くりすと  2024年5月14日(火) 23:01 修正
なんですかね…元ネタのポストを確認する限り。

 本家が定義も検証もしていないものは手出ししにくい  まりも  2024年5月15日(水) 9:26 修正
(修正)となったところをみてリンク先からさらにリンクをたどってみると
ttps://diarywind.com/blog/e/use-2tb-hd-on-win98.html
フォーマットに使われているのが拙作FDSK(PC/AT版)ではないですか。その時点で信頼性さほどなし。特に変なことはやっておらず自然な拡張をしただけですけどね。FDSKやFORMATXでは、以前は128GB未満で制限かけてました。要望があってそれを外しましたが、あとは知りませんよということになります。
とにかく1GBに至る前にいろいろトラップがあり、例えばscandiskも正常動作しないのですから、大き過ぎる容量のFAT32領域が正しいものなのかは誰にもわかりません。
>時間がかかる上に意味のないテストだから虚しい
の通りだと思います。Microsoftが思いつきで決めた上限32GBのせいぜい2倍の64GBなら、何をやっても大丈夫な範囲だと思います。

あと本家が定義していないものといえば98ではBIOS/物理セクタ長256Bのディスクの容量上限の超えかたですね。これもどうするのが正解なのかわかりません。

 FAT32仕様  リウ  2024年5月15日(水) 16:06 修正
はやとちりだったかも?と報告受けました。
手元でも軽く確かめてみた(内蔵ATAを28bit越えさせて、FDSK98で作ってformatxでパラメータ振り、それからconv98atした上で拡張フォーマットシグネチャやIPL1の削除、400hからの98領域設定値削除)のですがどうやらフォーマッタがどのようなパラメータで作ったか、というのが肝のようです。
Win9xGUIが受け付けるパラメータではないものでも、領域として作れてしまうような思いつきで決めてしまった、いい加減な仕様だったことが悪い、と私は判断することにします。
お騒がせしました。

 PC/AT版の拙作FDSKには注意書き無かった(汗  まりも  2024年5月15日(水) 18:23 修正
ちゃんと調べようとするとどういう手順になるか考えてみます。まずWin9xですのでDOS 7.xで正常に動作する必要があります。次に最も信頼できる検証用ソフトウェアはやはりM$製scandisk(DOS 7.1用) です。これが走らないのは理由のいかんを問わずダメなフォーマットです。次に、ファイルを書き込んでみてFAT32のファイルシステムが壊れないかを調べます。基本的に空き容量が無くなるまで書き込んでからscandiskで異常がないかを見ます。

これらは非常に面倒くさい作業です。scandiskがどの容量まで大丈夫かくらいは未だできそうですが。PC/AT版DOS 7.1で64GB以上の領域に書き込んでいったらファイルシステムが破損したのですよね。そのことからせいぜい64GB未満が限界と思っています。なお98版 7.1では調べたことがありません。

128GBになるとscandiskが動作しないので調べようがありません。
Win9xの GUIでは大丈夫、という考え方もありますが、DOSを経て起動するものなので、そこでダメなものはダメでしょう。Windows NT/2000などでは許される「クラスタ64KBのFAT16」はDOSで絶対に認識できないなら存在意味はあると思いますが、中途半端に認識します(まあアクセスはほぼダメですが)から、作るべきでないに該当すると思います。

 其の領域の用途  かかっくん  2024年5月15日(水) 22:15 修正
其の領域をOSの起動に遣うか、アプリやデータを容れるだけにするかで有意か否かが変わると憶い枡
例えば↑の4G FAT16はストレージに施すには不向きデスがスワップを容れるRAMディスクにはFATサイズが
小さく成るので向いて居枡。

起動にはド〜してもDOS7.1が介在し枡からDOSが扱え切れない領域は不可と成増が、アプリやデータだけを
容れるだけなら窓で扱えれば済み枡。此の場合は起動時のScanDiskがかからないやうに128G以上にした
方が良い鴨

抑々FAT32はFAT28疑惑も有馬すから、クラスタ(アロケーションユニット)サイズを8K以上にして1T超でも
クラスタ数が28bit以内のも要検証な気が?
尤もファイルサイズが約4G迄デスから余り大容量ナノも持て余す気も?

或いはFAT32自体間に合わせだった(将来的にNT系との統合(2kで目指したが実現は次代のXPで亦間に
合わせにMe)とか出なかったWinFSとか)から本気で開発しなかったとも?

 FAT28  まりも  2024年5月16日(木) 0:07 修正
FAT32はWin95 OSR2登場に際して出てきたもので 1996年中期だったと思います。当時から有効なのは28bitと言われていました。
# ATAの28bit制限(セクタの数)とごっちゃにしている人は見かけましたが、ATAの28bit超えのほうが時期は後です
28bitクラスタまで到達するような大領域を作る前にMBRの32bitセクタ問題が先に来てしまうので、テストできた地球人は居ないはずです。普通には8TiBになります。がんばって最小の4KBクラスタで作っても 1TiBあります。28bitのまえに、ファイルシステムユーティリティが想定する全FAT記憶域が尽きてしまいます。

 1TBに達した時期?  KAZZEZ  2024年5月16日(木) 1:19 修正
> 当時(2000頃)でもRAIDでテスト出来そーな気は
↓そういえば昔、こんなネタを紹介した記憶があります。
ttps://web.archive.org/web/20070319195010if_/www.watch.impress.co.jp:80/akiba/tmp/blog/20060923/spop7.jpg
これも一応RAID製品なんでしょうけど、製品としては2006年でしたか。ちょうどWin98/Meがサポート終了した年ですよね。結果的にコンシューマーレベルでは1TBを超える容量は想定されていなくても製品としてまったく問題なかったということでしょうね。

> Win9xの GUIでは大丈夫、という考え方もありますが、
デバイスマネージャのHDDのプロパティでリムーバブルディスクのチェックを入れればGUI上でリムーバブルフォーマットできたと思いますが、これだとどうなんでしょうね? さすがに私は1TBを超えるHDDは持っていませんが…。

 SuperFDフォーマットで128G、1T、2Tバイト  まりも  2024年5月16日(木) 8:26 修正
>リムーバブルディスクのチェックを入れればGUI上でリムーバブルフォーマットできた
その手がありましたね。しかしWindows95 OSR2のときしかやったことがありません。Windows98SEでも行けるかな?これによるフォーマットは「正しい」基準になると思いますし、DOSの段階で認識されない(むしろ起動阻害要因になる恐れはある)ので都合はよいでしょう。さらにこのsFDフォーマット状態を、98フォーマットやMBR形式フォーマットに変換すれば、それが正しいFAT32ということになりますかね。ただし後方に移動する必要があるので変換は瞬間には行えない問題があるし、最後方に余裕を残してフォーマットできるかが鍵になります。

 買い物ヤフオクX(旧ツイッター)ウォッチ2024年5月  /人'A`;人\  2024年5月1日(水) 5:01 返信修正
たてておきます。

ttps://page.auctions.yahoo.co.jp/jp/auction/g1135023903
この機種やはりコイン電池が2個ありますねぇ、、、はっきり写っているのは初めて見ました。

Viper-r出ましたな。
ttps://page.auctions.yahoo.co.jp/jp/auction/u1135920049
ROM ver.1.12は1.6GBのHDDの認識事例がありますので2GBまでいけるかも? 1.00は1GBもダメでしたが。
ttps://page.auctions.yahoo.co.jp/jp/auction/c1135907327
タケルなんて初めて聞いた。
ttps://page.auctions.yahoo.co.jp/jp/auction/s1135922463

ダイソーの3枚入りのが下のタイプでしたが、円盤が摩り減りやすいとかあるんすかね。
ttps://twitter.com/gd5430/status/1789678874529538526

 国民機のご先祖様  まりも  2024年5月5日(日) 21:58 修正
ttps://twitter.com/asahara420316/status/1787083464610844913
わたしが当時買ったやつも5分でハングアップしたり、起動しなかったりの初期不良でした。修理に出すしかないかなと思ったものの、興味本位で新品なのに軽く分解しました。そのうち気がついたのが、基板の真ん中あたりを押せば確実に起動するという法則でした。どうも半田付け不良かクラックが最初からあったようでした。基板と底板の間につっかえ棒をしたところ確実に動作するようになり、なんとか一年間はそれで使いました。熱ダレで動作不良は無かったと思っています。基板が大き過ぎて撓むとか、ストレスで歪むという問題があるのかもしれません。

 最近の買い物  まりも  2024年5月9日(木) 22:41 修正
ttps://twitter.com/OffGao6502/status/1788541310649184482
付属ソフトはあっても古い(確かIPLwareローダバージョンも1か2で古い)ので使わない方がいいです。memsetup33の説明にある通り、この発売後に機種によっては更にいろいろやるべきことが見つかっています。メモリ属性のMSR設定だとかCバスブリッジの32bitメモリ範囲とか(これをやらないと32bitなOSのときにDMA転送できない)。

懐かしいかといえば、IPLwareを考えるきっかけとなったものなのですが、期限内に作らないといけないので大変だったという思い出になります。趣味でやっていると納期なんて関係ありませんけどね。自分にはおそらく職業プログラマーは無理だなと思いました。メモリそのものはエンジニアリングサンプルとしてもらったのですが、箱入りは初めて中身見ました。苦労と試行の担当者さんに送ったメールそのまんまの紙コピーが説明書だったのかw

ところで連休帰りに秋葉原に20分だけ立ち寄り、萩原のDOM付き基板を買い(占め?)ました。ノート用ガワのアダプタは持っていなかったので活用できそうです。あとは秋月でパーツをいくつか。

それとようやくCyrixのCPU 486DRx2を手に入れました。本当は、何かしらハードウェアな回路が載ってるCPUアクセラレータが欲しかったのですが、海外buyersがツヨ過ぎてどうにもなりません。

>Viper-r出ましたな。
takeeee,当該386SX機は持っていないのでまあいいんですけど

 珍しいメモリ素子  まりも  2024年5月13日(月) 16:06 修正
ttps://page.auctions.yahoo.co.jp/jp/auction/l1130816359
これはA-mateの初期2+2MBのメモリやH98-B14(36bit幅2回路の特殊SIMM)およびH98 model 105 本体に使われている素子だと思います。9ビットのデータ線を持つ珍しいものです。日立製ですが身の回りで壊れているものを2件見かけており、ひょっとすると壊れやすいのかもしれません。修理用に押さえておくべきなのかも、、、さらにSIMM基板を起こせる人なら、レア物H98-B14メモリの基板をコピペで作成して高値で売れるかも? 過去には1枚17000円くらいでも落札されてますよね。

 514900は  かかっくん  2024年5月13日(月) 22:21 修正
HM514900はPCSHD籠の板にも遣われて居ますた

514900は514800のncピンの1本で1bitを追加した物デスから514800と
511000か514400を併用で代用するとか?

36bit巾のSIMM自体は珍しい物でわなく72pのSIMMでP有のFPやECCが36bitデス
514900を4ッで2MのP有を造る事も出来枡
# 但し個人的には集積度が同じ石でPを構成するのわ疑問デス。何故ならPが化ける確率もデータと同じだから
# ECCも同様でECCが化ける確率がデータと同じと云うのわ如何に?

 4月&5月の災害(タイトル修正)  エマティ  2024年4月3日(水) 21:29 返信修正
台湾東部で地震 9人死亡 934人けが 建物倒壊などの被害
ttps://www3.nhk.or.jp/news/html/20240403/k10014411141000.html

M7.7だそうです。
震源の情報が見当たらないのですが、津波が起こったので、海なんでしゅね、
今ぺーこの建物の倒壊の写真だけでも死者9人で済みそうに思えないのですが。(汗

 地震お見舞い  まりも  2024年4月4日(木) 5:42 修正
震源の深さは当初非常に浅いと言われていたので津波に大警戒することになりましたが、後の発表では15kmと訂正されました。普通の活断層地震ではなくてプレート境界(地震のラスボス)が半分陸上で起こったものです。日本だと大正時代の関東地震とか東海地震想定のうち駿河湾奥の地震くらいしかないやつです。それだけヤバい地震です。

建物崩壊は阪神淡路級に見えますが、なんといっても斜面の崩れが特徴的と思いました。至る所崩れています。もともと台湾の東海岸は猛烈な落差があって急崖続きで、日本の親不知海岸や由比海岸の比ではないほどですから崩れやすいには決まってますが、トンネルと橋梁で通っている交通インフラがことごとく破壊されたようです。

地盤の変動は詳細が未だ伝わってきてない感じですが、まあ陸側が相当に上がったのではという予想はしてます。こういう地震の積み重ねで台湾は小さな島なのに山が非常に高くなっているからです。

 過去との比較  エマティ  2024年4月5日(金) 16:43 修正
過去の災害と比べて被害者が激減していますね。
耐震規格の整備及び実施が効果的になされているようです。
ちなみに60度に傾いたビルは新基準の作成前に建設されたものです。
ニュースの動画を見ていると、この斜面なら崩れてもしょうがないと思うような角度ですね。

台湾の面積は九州とほぼ同じで、最高峰は富士山より高い3952mです。
日本は山岳地帯が多くて、平地が少ないと社会科だ習ったような気がしますが、台湾はもっと少なそうな感じです。

   試運転  2024年4月6日(土) 14:08 修正
> エマティ 様
> 耐震規格

私は海外案件に関わった経験は無いので海外の事情は全く分かりませんが、NTTファシリティーズ(大手組織系で、逓信省営繕課や電電公社建築局が源流の事務所)の技報や京大が公開している資料によると、
1974年まで、日本統治時代の基準(関東大震災を契機に導入された設計手法)を準用

1982年に改正

1997年に改正、および1999年に修正

2011年に改正
という経過を辿っているようで、特に97年の改正は大きなものだった様です。
ttps://www.ntt-f.co.jp/rd/ehs_and_s/overseas_report/pdf/2018_2.pdf
ttps://ocw.kyoto-u.ac.jp/wp-content/uploads/2006/04/1999_Jiji_earthquake-06jp.pdf

2018年に、日本と台湾のそれぞれの基準で超高層RCを試験的に構造計算した日本コンクリート工学会での論文によると、層間変形角が変わってくる(台湾の方が大きくなる)結果が出たようです。
ttps://data.jci-net.or.jp/data_pdf/34/034-01-2134.pdf

 なんとドバイで洪水発生  エマティ  2024年4月18日(木) 17:05 修正
UAEなどで暴風雨、ドバイ空港が冠水 「過去75年で最大」の降水量で死者も
ttps://www.bbc.com/japanese/articles/cd19n2p47nxo

24時間で2年分の雨が降ったそうです。

 情報が出てくるたびに震源の深度にブレがあった昨日の地震  まりも  2024年4月18日(木) 18:09 修正
本来乾燥地の中東も中央アジアも果てはモンゴルもこの冬から春の降水量が例年より非常に多かったようです。ロシアや中央アジアの洪水はその結果だそうで。
日本に目を向けると昨日の夜中の豊後水道下の地震ですよ。プレート境目ではなくプレート内地震と専門家は言うてはりますが、南海トラフ関連には違いありません。フィリピン海プレートが押してくるから起こっているに変わりありません。数日間は注意レベルを上げる必要はありそうです。

 アフリカでも豪雨  エマティ  2024年4月30日(火) 23:53 修正
ケニア ダム決壊 少なくとも45人死亡 各地で豪雨や洪水相次ぐ
ttps://www3.nhk.or.jp/news/html/20240430/k10014436711000.html

ケニアというとサバンナの国というイメージなのですが。(汗

5/1追記
ケニアのダムなら中国製のダムなのかもしれませんね。(おぃおぃ
水位や流入量・放水量などの情報が全くありませんが、せめてダム管理者のコメントが欲しいところです。(汗

 太陽風  リウ  2024年5月12日(日) 1:41 修正
なにかとんでもない規模だったようです。オーロラが兵庫県北部でも見えたなどという投稿がXにあったりもします。
日本はちょうど季節の変わり目での気温の乱高下と連休気分の終了時ということで気分が滅入りそうですが、みなさまもご自愛ください。
手元の古いパソコンたちは壊れてなさそうです。これだけはよかったです。

 汎用スレッド2024年4月  /人'A`;人\  2024年4月1日(月) 3:20 返信修正
お気軽にご利用下さい(蹴

 メール送信ができなくなってた新年度  まりも  2024年4月1日(月) 10:32 修正
98関係連絡用のわたしのメアド(marimo9821 outlookドメイン)ですが、受信はできるものの送信ができなくなったみたいです。マイクソソフトがなんかやったのか、メールソフト ズThunderbirdが勝手にバージョン更新したときにサーバ設定環境をいじったか、よくわかりません。ちょっと調べてみます。
# 4月1日ネタではありません

 なんですと?FAT32領域が最大32GBの理由  まりも  2024年4月2日(火) 19:29 修正
ttps://gigazine.net/news/20240326-windows-format-dialog/
この記事の最後の方に注目。WindowsでFAT32でフォーマットできる容量の最大が32GBなのは単なる「思いつき」だったとのこと。ふざけた話ですが、根拠を持たせるとすると127.99GiBかなとは思います。

 時代遅れな仕様だらけのFAT32  かかっくん  2024年4月3日(水) 23:21 修正
そーらιぃデスよ
窓98xのFDISKで64G辺りで不具合が出たり、抑々ファイルサイズが約4GiB迄だったりタイムスタンプの精度が2秒
だったりと時代遅れな仕様にしたのわナニを隠そうM$デスし
# 年フィールドは1980+127年(〜2107年)の必要わ有ったのか?+63年の〜2043年でも間に合った希ガス
# ド〜せ其れ迄に別のFSに移行するし組み込みなら時刻は兎も角日付の年号だけ狂っても連続性さえ有れば(略)
# 代わりに秒精度が1秒のが何れだけ良かった事か

# FDISKはPC用の修正版が出た、後二者は仕様とされたが、設計時点で修正は出来たがLFNにも修正が必要に
# 成るので不実施。デモLFNの修正はFAT32への対応にも必要ナノで云い訳に成らぬ希ガス

約128GiBな根拠は実態がFAT28だからdsk?
デモ、クラスタ(アロケーションユニット)の数・番号の制約デスよね?クラスタのサイズは32KiB迄デスから(略)
亞、然うかBigなDriveか、窓98xでは対応しなかった気が?Meは後追いで対応したんでしたっけ?
(真坂、対応したのがDOS8.(略)?)
噫、i8**はIAAで解決か、なつかしス。デモ44*とか他社品はド〜したっけな?
デモBigなDriveとは無関係のSCSIにも此の制約が有ったとすると(略)

因みにPC用は当時何処かの学習塾辺りが造ったやうな?
software.tokiwa.qcweb.jp/menu/index.html
forest.watch.impress.co.jp/library/software/fat32format/
forest.watch.impress.co.jp/library/software/fat32format/download_10580.html

   試運転  2024年4月13日(土) 11:26 修正
日本電線工業会から、強電用のVVFケーブル(いわゆるFケーブル、もしくはVAケーブル)で、導体が真鍮で出来た偽物が流通しているという発表が有りました。
ttps://www.jcma2.jp/newsrelease/individual.html?entry_id=1181

ケーブルは、切り屑の銅部分を金属スクラップ屋へ売却する事が有りがちですが、そのスクラップ屋でFケーブルとして買い取ったものの中から偽物が見つかったのが事の発端の様で、発表の中では真鍮が挙げられているものの、アルミ製の物も見つかっているようです。

特高用でアルミケーブルは昔から有りますし、低圧でも幹線で用いるCVケーブルでアルミのもの(AL-CVT)は2018年頃に古河電線が開発・発表してますが、Fケーブルは国内メーカーだと銅以外のものは製造していません。
# まぁ、AL-CVTは採用事例が増えつつあるものの、まだ一般的とは言えませんが・・・

導体が異なるだけなら良いのですが、許容電流を低く設定しないといけないとか、端子部を導体の材質に変えないとこれも異常をきたします。
# AL-CVTは、端子どころか端子接続用の工具からして専用品を使うはずです。

ハドフの青箱や某オクでケーブルを買う際は、正規品なのかよく確かめましょう。

 銅より安い?  まりも  2024年4月13日(土) 18:06 修正
わざわざ真鍮にする方がコストかかるのではないかと思うのですが、純銅の価格上昇のせいですか。真鍮といっても単に不純な銅合金ということでしょうかね。電気精錬したのではなくて、銅クズを単に溶かして伸ばしただけのかもしれません。亜鉛以外の金属も混ざっていそうです。VVFケーブルにそんなものを使ったら電気抵抗は大きいし曲げに弱いし、極めて危険です。不純銅合金は純銅より硬いので、電線を取り回した時の感覚でもわかるような気がします。

そう言えば中国製のLED電球なんかもアルミ放熱版は再生品、しかも相当の低品質っぽいです。単に溶かしただけのような感じで、クリンカーがたくさんついており光沢がありません。アルミ以外に何が混ざっているかもわかりませんが、多くは鉄でしょうかね。

VVFにあるくらいなのだから、電子工作で使うような弱電用の電線にもあり得そうなので、気をつけないといけませんね。

 SVにも有りそーな?  かかっくん  2024年4月14日(日) 0:27 修正
VVFケーブルだけでなくVVR(SV)ケーブルにも有りそーな気がし枡ねぇ
# 平形と○形、Vinyl被覆・Vinyl外被・Flat(平)/Round(○)の意。PE製のはEEF

有名処のを選んだ処でコPY品の可能性も有馬すし
モノよりも賣り手を吟味すべきなんでせう

   試運転  2024年4月14日(日) 12:15 修正
> かかっくん 様
> モノよりも賣り手を吟味すべきなんでせう

ニュースリリースではPSEマークの確認などと書いてますが、マーキングを誤魔化されたらアウトなので、出荷証明とかを確かめた方がマシな気がします。

まぁ、特にVVFなどは民間工事だと市中在庫を流用なんてのが当たり前に有って出荷証明を取りようがないので、信用できる代理店を通すかですね。

 ニュースなのか  まりも  2024年4月14日(日) 16:56 修正
ttps://ascii.jp/elem/000/004/193/4193999/
これがMSNのニュースの上位に現れたでござるよ(個人的環境のためでしょうけど)。
おふがおさんのところで引用されてた、スレーブ関連の昔の記事をアップデートしました。当時はCFリセット関連のことは書いてなかったんですよね。
ttp://hp.vector.co.jp/authors/VA012947/knowhow/ide_slave.html

 スレーブ側の話  リウ  2024年4月14日(日) 20:43 修正
LBAパッチ作者的には特に多数のRedWood機種での調査がされていないことが気がかりではあるのですがそれはおいておいて(Lt、Nfでは確認済みですし、NECPCIチップ持ちのNa7でも動作するはずではあるのですが)

電源投入時点でBIOS側が2台目には256Byte/S設定のつもりの機種があります。(DIPSW設定によらずに)
AH=03で修正されずにAH=8eで再設定する方がよいかもしれません。(LBAパッチでは強制512B/S扱い)

 DOS4のソース  リウ  2024年4月26日(金) 11:14 修正
ttps://github.com/microsoft/MS-DOS/tree/main/v4.0/src/BIOS
DOS1や2は歴史的な意味はありつつも見てなかったのですが
なんと4.0のソースが公開されていました。
ちょうどメモリ管理に興味が出たタイミングですので興奮してしまいました。
ttps://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS
MASMやらが入ってます。超驚き

 ミイソが避けた理由  まりも  2024年4月26日(金) 21:01 修正
4.0で32bitセクタ数を扱えるようになったんでしたっけ?
ミイソが98DOSで4.0をパスしたのはどういう理由だったのでしょう?

 古いDOS  KAZZEZ  2024年4月27日(土) 9:06 修正
> 4.0をパスした理由
一般論としてはコンベンショナルメモリ占有量が増えたからでしょう。3.3xまでは動いていたソフトがメモリ不足で動かなければ使い物になりませんから。5.0ではその反省から標準でUMBとかDOS=HIGHとかのメモリ対策が充実しています。

> 32bitセクタ数
そのせいかDeviceParamterBlockが1バイト増えて33バイトになって互換性がなくなった(追加ではなく挿入になった)という問題もあったそうで。ルートディレクトリを直接操作するようなツールで不具合が出る可能性があったようです。

もちろんNEC版4.0は出なかったので移植元となるIBM PC用4.0の話ですが。EPSON版4.0ではそのあたりをどうしたのかは存じません。

> MASMやらが入っています
その名残で後年のDOSにもEXE2BINが付属しつづけていたというのも有名な話でした。MASM以外でEXEファイルをCOM変換することにどのような需要があったのかは存じませんが。

 単なる時間稼ぎ?  まりも  2024年4月27日(土) 10:28 修正
>DeviceParamterBlockが1バイト増えて33バイトになって互換性がなくなっ
おぉそれがありましたね。例えばdrvcpyがDOS5以上限定なのはそこでした。
>ルートディレクトリを直接操作するようなツールで不具合
まさにこれです。

しかしNECとしては最終的にはDOS 3.3と5以上とを併売していたし、ディスクドライブが読めないほどの互換性の悪さは65-128MBのパーティションの時だけだったと思います。DOS4を見送ったのは、色々なユーティリティソフトウェアの互換性問題を見極める時間が必要だったからですかねぇ。割とすぐにDOS5が出ると見ていたのでしょうか。

 Ap3のサウンドアナログユニット  まりも  2024年4月27日(土) 19:09 修正
久しぶりに電源を入れたところPIPO音が小さい、耳垢ノイズがする、ということでマザーボードが見えるところまで開けてみたところ・・・液漏れしてぬれてますね。パターン腐食も見られます。これは、しうり しかありません。

みなさんは音声子基板のケミコン交換では、ちゃんと半田付けを外して両面洗浄していますか?面倒臭いのでおもて面だけにしたいところですが、うら面にも汁が回っていますよね。GW前半がつぶれますけどいまからやりますか。

ちなみに製造時期4ZのAp3ですが、パッチ配線がひどいです(画像2)TTL-ICやらGALやらが裏返しに子亀に載っており、ジャンパー配線の数がおびただしいです。しかも多数が裏面のCPUのピンに到達しています。マザーをいじるだけでジャンパー配線が外れそうですから、ますますやりたくありません。

【23時画像追記】裏面を見ると、うわぁアナログ音声のジャンパ配線が子基板のピンに来ています(画像3)。これはさらに外す手間が増えるではないですか。どこまで配線パターン設計ミスってるのだミイソは。ちなみにXv13,20/Wの前期型マザーボードでも、アナログ音声信号のラインを完全に忘れたパターンがあり、長い修正ジャンパが飛んでいます。

 DOS4は色々変わった  かかっくん  2024年4月28日(日) 4:58 修正
えぷDOS4デスが、RAMも喰い枡すしDPBもズレて居枡。あとFAT16Bを遣うにはSHAREが要り枡(過去ログ参照)
あと、えぷDOS3は3.1の初版を除きDOS4の後に出枡た
# えぷDOS3.3はDOS5と同様のOPENING.SYS画面が出る

あとみいそDOS3に有りえぷDOS5で追随した機能に、削除したファイルの末尾クラスタを記憶するというのが
有馬す。此れに由りUNDELETEの成功率が挙がり枡
DOS3当時はDOSにUNDELETEが無かったので余り生かされません(生態学IIやフリーソフトを要した。Nortonにも
有った鴨?)でしたが。
だからえぷはDOS5迄憑けなかったの鴨?

ところでDOS4と云えばコマンドラインで拡張子憑きでファイルを実行(FOO.COMとFOO.EXEが有っても
FOO.EXEを実行可)出来たり英語DOSのレベルで正式にDBCSに対応したとか色々有馬す
# 後者はDOS2/3でわM$KKだかAhSKI!だかがローカライズしたモジュールを供給
英語DOSがDBCSに対応したと云うのはDOS/Vの開発とも関係が有るやうデス。IBMJの日本語DOSが
KDOS(PS/55用IBM DOS K3.30)からJDOS(PS/55用IBM DOS J4.01)に替わり増したし
# 5550用やJX用は幾つ迄有ったでせう?K3.30迄哉?

DOS5はDOS4の續きでわなくDOS3から創り直したと云う説も有馬すね
FAT16Bに対応したコMパQのDOS3.31わM$-DOS4より前ナノか後ナノか?

   /人'A`;人\  2024年4月28日(日) 9:15 修正
修正したと思ったら消えている、、、

>Ap3のサウンドアナログユニット
これはやはり音を出すしか能がないような感じですか? であれば当方には(殴)無用の長物で百害あって一利なし(殴)なんで無慈悲に撤去することの検討を加速する必要がありますね。

 取り去るとピポが聞けなくなる  まりも  2024年4月28日(日) 13:19 修正
子基板上はD/Aコンバータのデジタル以外はアナログ系回路のみかなと思いますが、スピーカアンプのTDA7052Aが載っていますから、取り去るとピポ音も出なくなります。もっとも上で書いたパッチ配線はその入出力のどちらか(未確認)ですので、そこから音声を取り出して自前で鳴らすのであれば、子基板は撤去可能かもしれません。ついでですから試してみますかね。取り外しても動作可能なら、ハンダを外すよりは、ペンチでブチブチ切ってしまえばいいと思います。【追記】試したところシステムは起動できましたが、もちろん音無美紀子です。

なお過去ログで書きましたが、S3864のウィンドウアクセラレータのアドオンボードは、Ap3/As3では取り外すと映像がおかしくなりますので、取り外し不可です。いっぽうAnやそれ以前の機種のWindowsモデルに載っているアドオンのそれは取り外しても動作します。

【20時画像追記】取り外し中、取り付け中、完成取り付け後 の画像です。しうり作業で一番大変なのは、画像2のとき、72本のピンの位置を合わせて装着するときです。これが面倒なので、半田付けを解いてまでやらないほうがいいような気がします。腐食がなくケミコンの予防交換ならそれで十分です。なお今回は交換後も表面実装のモノを使用していますが、高さ制限のためです。しかしスキマにコテを入れるのが非常に難しくなります。ケミコンの取り付け順序に工夫が要ります。アンプICの7052Aを外してICソケット化しようかと思いましたが、隣のケミコンのランドとの隙間がさらに狭くなることから、断念しました。

 ピッチは幾ら?  かかっくん  2024年4月29日(月) 18:59 修正
此のピッチは幾らdsk?
2mmかシュリンク(1.776)か、2mmなら既存のピンヘッダが有馬すがシュリンクに合ったピンヘッダは無いやう
デスから2mmかハーフピッチのピンでハウジングを光造形で創る(熔融式でわ憑ける際に融けるので不可)やうデス。
需要有りそうなら検討し枡
ツーピースにすれば今後のケミコン交換は楽に成増

# ん?UVレジンは硬化後は熱可塑性とな?熔融式で融点が高目のを遣う鹿?

   /人'A`;人\  2024年4月30日(火) 5:12 修正
ありがとうございます。前向きに検討します。
(・_・):やるんかやらんのかどっちなんや

今年のGWはちょっと遠出するのと一人多重録音(殴)の続き(蹴)と畑仕事と落ち葉集めですねぇ、、、、、去年の熊連続出没騒動(私もそれらしいのを目撃しました)のせいで自粛を強いられて集まりが悪いもんで。高温続きで蛇とか出始めてるんでこの時期にやりたくないんですがひとりでに集まるものでもないんで、、、

 Anも  まりも  2024年4月30日(火) 7:33 修正
ピッチは1.776mmっぽいです。

Ap3/As3の改修マザーボードに貼り付いているICは、Ap2/As2で見られる例の加水分解しやすいテープでくっついているので、これも撤去すべきです。しかし上の画像のようにジャンパー線の巣になっているので、触りたくないですよね。どれがどれに繋がっているのかわからない状態で切れてしまったら終わりです。

そういえばAnの初期マザーボードにもこれがあったような。そしてサウンドアナロ子基板はどうもAp3/As3のと同じ物です。うちにある初期マザーボードのは漏れているのですが、おもて面の汁を拭き取っただけで放置しています。音無響子さんになってもいいから撤去しますかね。

 むしろ、Anが先  おふがお  2024年4月30日(火) 17:47 修正
Ap3/As3のサウンドサブボードは、Anのものと同じと見ていいです。
基板・コンデンサの状況は、製造年月的に以下のような感覚です。

51以降:そもそも漏れにくい。
4X〜4Z辺り:大体漏れてるが、まだパターンは無事。水洗いしてコンデンサ交換するだけで直せる。
49以前:パターン損傷の可能性高。基板剥がさないといけない。

確かに、BEEP音だけでも鳴るように、基板剥がした後に簡易配線したりするのもありですね。「アマ」用途なら尚更。

1 2  過去ログ全 182件 [管理]
(C) CGI-design