98システム解析スレッド2024年9月 /人'A`;人\ 2024年9月1日(日) 4:59 |
古い機種でシフト系キーの認識がずれる KAZZEZ 2024年9月11日(水) 22:03 |
I/O 41hでキーボードを読もうとして気付いたんですが、RA前期以前(RX後期を含む)の古い機種では、[SHIFT][CTRL][CAPS][カナ][GRPH]の5つのシフトキーが、本体に記憶しているロック状態とキーボードのロック状態が簡単にずれて反転することがあるようです(古い機種の話ですので、さすがに既出でしょうか?)。なお[NUM]ロックは影響しないようです。 当初[CTRL]+[C]で終了するプログラムを書いたところ、VM21で[CTLR]が効きっぱなしになってフルキー部の大半が使い物にならなくなりましたから、少々焦りました。この場合も逆に[CTRL]を押しながらであれば入力できました。
色々試したところ、キーボード割込を禁止している最中にI/O 41hを何度か読んだ場合に当初とはシフトの状態が変化して終了したら発生するようです。具体的には「割込禁止 → (充分なWAITを経てから)I/O 41hをIN → シフト系キーを押す → 押したままでI/O 41hを(充分なWAITを経て)IN → (割り込みを許可して) DOSに戻る」という、最小2回の IN 命令で起こるようです。
具体例として以下のプログラムは[STOP]キーの入力待ちをするものなのですが、この場合もシフト系キーを押しながら[STOP]終了することで発生します。最初からシフト系キーを押していた場合はキーを離すことでも発生します。 100 FA (CLI) 101 B9FFFF (MOV CX,FFFFh) 104 E2FE (LOOP 104) 106 E441 (IN AL,41h) 108 3C60 (CMP AL,60h) 10A 75F5 (JNZ 101) 10C FB (STI) 10D C3 (RET)
一度シフト状態がずれるとキーボードを繋ぎなおしても直りませんので、PC本体側のシフト状態の認識に問題が出ているようです。一方で、同じことをもう一回やれば元に戻りますので、一方通行ではありません。 RA21(V30時を含む)やBX3などの新しい機種では発生しないようですので、キーボード割込のBIOSが更新されているのでしょうね。EPSON機の場合は286LEでは一応発生しましたが、該当のシフト系キーを2度押しすれば簡単に直るようでした。486HAのような新しい機種では発生しません。
また、キーボード割り込みを禁止しなければ発生しません(その場合は当然ながらキーバッファに意図しないデータが溜まっていることがあります)。WAIT処理にカレンダBIOS(INT 1Ch)を使ったときも発生しないようでした。さすがにタイマー系ファンクションはBIOS内で割り込みが許可されていたのでしょうかね。DOSファンクションで文字表示をする程度であれば関係ないようでした。
BIOSファンクションを使わずに直接I/Oでキーボードを読む必要があるのはFDloaderくらいなものだと思いますから、BX3以降で発生しないのでしたら気にする必要もなさそうですが、それ以前にIPLwareで発生させようとしてもDOSが起動する時点で直っていますから、実害はあまり無さそうです。
|
旧キーボードも? かかっくん 2024年9月12日(木) 17:36 |
此れデスが、RA以前と云う事で当該機種に旧キーボードであっても起こり枡か? 新キーボードで問題が起こり旧キーボードでわ問題無ければ旧機種に新キーボードを遣う事の弊害で片付けられ枡 此処で問題に成るのは新キーボードのRA/RXデスが
RX後期含と云う事で、RX前後期の間に出たEX(旧ロゴの新キーボード)やLX(ラップトップナノでキーボード一体型) デモ出そーな気がし枡
|
旧機種新キーボードの問題とは違いそうです KAZZEZ 2024年9月12日(木) 21:35 |
書き忘れましたが、キーボードについてはいくつか(XL付属・T付属・Xa7付属・Winキー付き・サードパーティ品)を試していますので、種類は関係なさそうでした。 たとえばXLキーボード(メカロック)の場合、VM21に繋げば発生しましたが、BX3に繋いでも発生しません。
メカロック機種にソフトロックキーボードを繋いだときの問題というとCAPS/カナのロック状態が必ずしも起動時の初期値と合っているとは限らないことかと思いますが、そちらは2度押しすれば直るそうですので、異なる問題だと思います。ロックのないSHIFT/CTRL/GRPHでも発生しますし。
|
RLを持ち出す まりも 2024年9月13日(金) 21:45 |
単に本体機種とキーボードの組合せが合っていないだけかと思っていましたが、それとは関係ない症状ということですか。9801RA旧とLED有りRDF機用キーボードでも起こるということであれば、RLでも起こりそうです。ちょっと試してみます。ところでキーボードの押され判定をin 41h一発で行うのは本来は良くない方法です。キーボード割り込みを止めればBIOSのキーバッファに影響なく読めると思いますが、本体からキーボードに送るコマンドの方が中途半端に遮断されるかもしれないので、キーボード側が正しく受け答えできなくなっても当然なところはあります。しかし1命令で読めるメリットがあるので、IPLwareなどでも使っていますね(汗 キーボードBIOSのファンクション01hとか04hの使い勝手がよくなかったりするのでしょうがないのです。
FDloaderではBIOSを気にする必要がないので気楽ですが、一文字待ち入力しかやったことがありません。STOPなど特定キーが押されていなければスルーするというようなのはやったことがないですね。しかもそのキーとシフトの組み合わせ読み出しもやったことがありません。ESC+HELP+数字のように、3つのキーが押されている場合の判定処理ってそもそも何やっているんだろうという疑問があります。ITFの起動初期にあるはずですから、それを真似ればいいのかもしれません。
|
ITFは調べていませんが… KAZZEZ 2024年9月13日(金) 23:20 |
> ESC+HELP+数字 ご参考までに、前述のCTRL+Cを感知して終了するプログラムの場合、単に前回読んだデータを記録しておき、特定の順番でキーが押されるのを見ていただけです。押したとき(メイク)と離したとき(ブレーク)が別の値ということで、たまたま(ぉぃ)前回のキーを離さずに次のキーを押した、つまり同時押しが感知できたのだと思います。この場合、もし異なる順番で押したものを含めるならばすべての組合せ(3キーだと6通り)を調べる形になりそうですが…。
> 本来は良くない方法 ですよね…。何度も繰り返しI/O41hからキー入力を拾うプログラムを実行した場合、充分なWAITを取っていればそこそこ実用的に入力は可能でしたが、キーボードを滅茶苦茶に叩きまくっていると、やはり時々ハングします。キーボードを繋ぎ直せば復活しますが、ノート機ではどうしようもありません。BIOSではエラー時にリトライやキーボードリセットまでやる手順になっているそうですので、真似するには複雑そうです。FDloaderでキー入力によるEDITを行うようなプログラムは面倒そうですね。
|
RLでも再現 まりも 2024年9月14日(土) 17:32 |
KAZZEZさんの示したコードのプログラムを打ち込んで、RLにLEDつきキーボード2種(RDFとPCI機用)で走らせてみました。同じくSTOPキーに割り当ててSTOPキーでプログラムを終了させましたが、何度か実行している間に、SHIFTロックの状態がおかしくなりました。SHIFTキーを押すと状態が反転します。
【19時追記】シフトは反転しないがCAPSロック反転の状態も遭遇しました。この場合LED点灯状態とも不一致になります。
「本来は良くない方法」で読み出しているのだから文句は言えないところですが…知っておく必要のある情報だと思います。
|
RX21/51以後に出たDX UR/UF NVは? かかっくん 2024年9月14日(土) 20:06 |
複数キーの同時推しはフラグで判定するとか? 一定時間内(毎秒56〜79回のVsyncとか)に目的のキーのメイクでフラグを建てブレイクで下げるとか、フラグが 全部ソロったら目的の処理をするとか?
ところでRX21/51含と云う事デスが、RX21/51以後に出たDX UR/UF N NVは如何でせう? *A/*Sは無問題のやうデスが あとRA21/51以後のRL21/51も気に成る処デス
|
再現性 KAZZEZ 2024年9月14日(土) 21:54 |
> 何度か実行している間に > [SHIFT]+[STOP]では終了できなくなります うちのRA2/RX51/UV11/VM(VX)21では一発で変わるのですが…若干挙動も違うようですが、あまり再現性が良くなかったということでしょうか。だとしたら相当の手間だったのではないかと思います。お手数おかけいたしました。境界期の機種というのもあるかもしれませんが、もしかしたらRA21でもしつこくやれば変わったのでしょうかね? あとで試してみます。
> DX UR/UF N NV このあたりの時代の機種は軒並み電源が入らなくなっていて、なかなか試せないのですよね。うちにあるNECデスクトップ機でRA21(1990年)の後はBf(1994年)まで可動機がありません。ノート機を含めてもNS/Aが液晶瀕死でどうにか動くくらいです。
(22:40追記) 分かりました。実行するときにシフト(CTRL/CAPS/カナ/GRPH)を押したままRETURNで実行し、終了するときは普通に(シフトを押さずに)終了すると、RA21以降の機種でも発生するようでした。RLはRA2以前ではなく、RA21以降と同じようです。 解除する方法は逆で、従来通りシフトを押さずに実行したうえで、終了時にSHIFTを押していれば直るようです。(追記)おっしゃるように、SHIFTを押すだけでも簡単に直るようです。 追記:この方法ですとBX3やRa40でも発生しましたので、恐らく全機種該当するようです(VM21よりも前は分かりません)。
|
re:再現性 リウ 2024年9月14日(土) 22:39 |
うちのRA2では一発で再現することを報告します。 修正できたら書き込むつもりでしたがまったく直せていません。 0041hと0043hの挙動の勉強不足です。undocのIO相手に適当にコマンドを送ってLED状態を取得しようとしましたがキーボードフリーズでまともにまだ制御方法すらわかっていません。
|
混ぜるな危険 まりも 2024年9月14日(土) 23:17 |
シフト状態の異常に限らず、とにかくI/O 41h直読みを乱れ押しで繰り返すと、キーボードBIOSの状態がめちゃくちゃになるようです。キーボードBIOSの初期化ファンクションのah=03h,int 18h をやっても元には戻りません。割り込み禁止してI/O直読みするのは良くないとしか言いようがありません。
|
RA21以降のキーボードBIOS KAZZEZ 2024年9月14日(土) 23:40 |
状況的に考えてみますと、恐らくRA後期/RL以降のキーボードBIOSの変更点は、シフト状態が反転した場合でも、該当のシフト系キーを押せば修正されるようにしたことだと考えられそうです(RX後期はスペックが変わっていないから変更しなかったのでしょうか?)。 それであれば終了時にシフトが押された状態であれば症状が出ないこと、逆に最初から押されていて終了時に離していれば発生すること、反転した場合にシフトを押しながら操作しても直っていないように見えること(すでに直っているから)、そして何回かやったら反転したという話も、終了時にタイミングよくシフトを離したためと考えれば、すべて説明が付きそうです。
[15日22:40追記] トラ技の記事によればキーボード割込みからデータリードまで37μs開ける必要があるそうで、信号線の内容が反映されるのにそれだけ時間を置く必要があるのだとか。プログラム終了時の割込み再開後に37μsだけ余裕がありそうですから、その間にシフトを離せば発生したのでしょうかね。
> RX前後期の間に出たEX(旧ロゴの新キーボード) EX2の電源が修理できましたのでこれも調べてみましたところ、RA21以降の挙動でした。RA前期以降のかなり早い段階で修正されたのでしょうかね。もっとも手持ちのEXは製造番号からして0Yで、RA21の0Xより新しいものでしたが…ちなみにRX51も0Xでした。これに対して手持ちのRA2は98ですから1年以上離れています。 なおEXの付属キーボードがどのタイプだったかについては、仕舞い込んだのか、そもそも持っていなかったのか忘れており、確かめておりません。今回はとりあえずXa7のキーボードで動作確認しました。
|
EXのキーボード かかっくん 2024年9月16日(月) 17:47 |
EXのキーボードわ PC-9800 Series の旧ロゴの新キーボードでせう。RとPC-9800 SERIES(新ロゴ)の間デス
|
Cな上にwebarchiveにアクセスする必要があります リウ 2024年9月20日(金) 20:58 |
そういえば、と思い出したので(現行サイトにはファイルの実体が置かれていません ttps://darudarudan.github.io/pc9821/key_io.lzh) ttp://darudarudan.syuriken.jp/kai/key_io.lzhをwebarchiveに見に行くとファイルがあります。 参考に見て見たところ割り込みの中で取り込むのがやはりいいのでしょうか 割り込みを止めた状態でやるにはIO0043hでバッファが埋まったのをloopで読んで溜まった時に0041hで読み出しになるのでしょうか まだダウンロードしただけで実機で確認しておりません。
21日21:15追記 Xe10+Win付キーボードで試しました。 シフトを押しながら実行し、ESCで抜けるとCOMMAND.COMシェルはシフトがロックされた状態になりました。シフト2回押しで正常に戻ります。 むしろMS-DOSのバグでは?と思いたくなります、がどうなんでしょうか
|
対IDE変換器なるものは まりも 2024年9月21日(土) 20:54 |
MCtekえむしてさんのSD-IDE変換器がなんだかうまく使えない人がいるようですが、ひょっとしてMarvellチップ採用のSATA-IDE変換器と同様に、プライマリとセカンダリの両方にドライブ(とくにCD-ROMドライブ)を接続すると特定の機種(両ポート間の導通の信号線が多い機種)でバグるという問題が起こっているのではないでしょうかね? この問題はここの過去ログ(2022年9月)にもあるし、$の2015年のログでも見つけました。SATA-IDE変換器で起こるのなら、設計次第ではSD-IDE変換器(回路)でも起こり得ることだと思います。 ttp://ematei.s602.xrea.com/cgi-bin/bbs39_ris3/bbs39.cgi?mode=past&year=2022&mon=9 なおCF-IDE変換器は、何もやっていないピン形状変換ですのでこの限りではありません。
【追記】LBA_IDEを組み込まずに使い始めようという人が結構いるような感じですね。組み込まなければ何も始まらないということと、無理にSDにIPLwareを組み込まなくていいから、まずはDOS起動FDにOSFDIPLwareでLBA_IDEを組み込んでください、という点をもっと強調しておきたいです。 起動したいデバイスにIPLwareとLBA_IDEを組み込むプロセスがわからんという人もいましたが、OSFDIPLwareならわからんということはないでしょう。
【22日追記】どうもIPLware実行LBA_IDE組み込みの後に領域を確保しようとして、その際にフォーマッタがIPLを初期化してしまうということをご存知ない方が多いみたいですね。しかし組み込んでからフォーマットする必要はあります。組み込みと領域確保完了まではDOSはフロッピー運用にすべきで、そのフロッピーにOSIPLware +LBA_IDEを入れておく、というのを推奨します。そもそもOSFDIPLwareは、CHSパラメータを変更するIPLwareアプリとOSインストールのために作ったような物ですので、まさにここで活用してください。
それから、LBA_IDEを使う場合、フォーマッタはFDSK98以外を使うのを避けるべきです。FDSK98ならすでにIPLwareが存在していればIPLを初期化しませんし、32GB以上の容量(というかヘッド数×セクタ数の積が大きい場合)でも動作不良を起こしません。MS-DOS純正のFDISK、FORMATだとここの時点でダメです。FDSK98ではsetfdskの段階で純正のフォーマッタのIPLを吸い出しており、動作の互換性に何の心配も要りません。 (挑戦者UIDE133/98が出た2002年頃に戻った感があったので書きました↓) ttps://www7b.biglobe.ne.jp/~marimo9821/knowhow/osinst_and_format_disk.html
|
HOME CLRキーのルーツ かかっくん 2024年9月23日(月) 0:30 |
> なおCF-IDE変換器は、何もやっていないピン形状変換ですのでこの限りではありません。
CFを遣うなら然うデスが、SD-CFを遣うと同様のやうな?
ところでHOME CLRキーのルーツは少なくともPC-8001迄わ遡るやうデスな # PC-100ゎCLR HOMEの模様 # TK-80BS・COMPO BSや、システム3100等オフコン・端末系は未調査 assets.st-note.com/production/uploads/images/93570506/rectangle_large_type_2_249b3efe0cc6e475258bff355e56150a.jpeg assets.st-note.com/production/uploads/images/99831104/rectangle_large_type_2_05c9a4c94afbb0d02f3aaeb42122e1eb.jpeg
PC-88の初期はINSとDELも兼用、BSは無かったやうで? 此れがみいそBASICでDELがBSと同じくカーソルの左の字を消して詰める仕様の由来のやうで?
|
ROM BASICの場合 KAZZEZ 2024年9月24日(火) 7:04 |
> むしろMS-DOSのバグでは?と思いたくなります、がどうなんでしょうか 最初に示した14バイトのプログラムの最後のRET(C3)をIRET(CF)に直してROM-BASIC上から打ち込んでCALLしてみましたが、同様のシフト反転の挙動が確認できました。MS-DOSに限らないようですから、BIOSの挙動をそのまま利用するようなOSだとそうなるのでしょうかね?
> LBA_IDEを使う場合、フォーマッタはFDSK98以外を使うのを避けるべきです。 そういえば先月、Xc16/Sで2kのインストール実験に使ったトランセンドの8GBのCFは、もともと本体サポート内の容量だったので深く考えないで使っていました。そのせいかどうかは分かりませんが、何回かに一回かの割合で(HDD版の)IPLwareが正しく実行されない(画面が光っただけで即終了する)という不具合がありました。正しく実行されることも多かったので、原因がよく分かりません。
そのCFは現在AT互換機に使っているのですが、いったんPC-98でフォーマットした影響か分かりませんが、どうも挙動が変でした。eMacinesのAthlon64マザーの場合、BIOSでLBAモードに設定していればフォーマットできるのですが、デフォルトのCHSモードだとFDISK後のFORMATに失敗します(FDSKを使っても同じ)。別のAT互換機(PenIIノート)では普通にフォーマットできるのですが、Win98上でDOS互換モードのC:とネイティブドライバのD:に二重で認識されてしまいました。いずれもPC-98で使ったときはそのような不具合は無かったのですが。PC-98上で設定したパラメータとの間に不整合でもあったのでしょうかね?
> PC-88の初期はINSとDELも兼用 > BSは無かったやうで? そういえばみいそに限らず8ビットくらいの時代のキー入力にBackSpaceのような概念は無かったような気がします。INSもDELの反対で強制的にスペースを1個挿入するものだったりしましたっけ。
|
わざわざCHSモードにしない まりも 2024年9月24日(火) 12:14 |
>デフォルトのCHSモードだと CFリセットは98であろうがPC/ATであろうが本質的に起こりうるものなので、BIOSでCHSモードにしたら動作不良になるのは当然です。一般にPC/ATではLBAモードで使うのが当たり前ないしは固定的仕様なので、「CFリセットは98オンボードだけで起こる」と思われてしまっているのかもしれないだけです。
|
相性か不具合かの定義は難しいですが MCtek 2024年9月24日(火) 15:47 |
まりもさん、OSインストールの手引き、ありがとうございます。 こうやればうまくいくよ、という手引きを作ることはできるのですが、これをやってはダメだよを網羅的にまとめるのはなかなか骨が折れるのではないかと感じました。SD-IDE変換の件で質問や問い合わせが増えておりましたら申し訳ありません。質問コーナーを作るなどして対応していきます。 OS導入時はIPLware起動中にFキーを押してフロッピーから起動するという手順を説明していましたが、少なからず一枚はOSFDIPLwareを組み込んだ運用ディスクを作って導入作業をしたほうがスムーズに進められそうなので、今後はその方法を紹介していこうと思います。
また、ApやAsで使いたいという方にEXIDE543を紹介する機会も増えました。 敢えて大容量カードの先頭だけを使う、というのも選択の一つだと思います。 大容量化した最近のSDコントローラーは"おそらく"昔のあまり賢くないものとは異なり、空き容量がある状態なら一部分を頻繁に使用しても摩耗は分散される"かも"しれませんから。 (その場合は新品を使うか、事前に対応したSDホストからSDFormatter v4.0やblkdiscard, fstrim等を使用してERASEコマンドを発行し、使用しない予定のエリアが未使用領域であることをSDカードに通知しておく必要がある"かも"しれません。) ※言い訳ですが、"おそらく"や"かも"に関しては外から見た挙動からの推測であり、実際はカード毎のコントローラーの実装に拠るため断言できません。ユーザーができる限りのことをするとしたら、という話です。もちろん寿命や特性などは気にせず一番安価なものを使い捨てたほうが低コスト!という考えも否定しません。
FC1307A搭載基板(SD-IDEとSD-CFいずれも)のMaster-Slave間は若干相性(?)があるようです。記憶にある限りですが列挙してみます。 ・FC1307AとFC1307A …OK ・FC1307AとGreenhouseのCF青Dual 4GB …OK ・FC1307AとApacer Industrial 4GB …OK ・FC1307AとQuantumのHDD …NG 純正状態でCD-ROMドライブとHDDが1本のケーブル同居している機種はぱっと思い浮かびませんが、そういった機種では置き換えに注意が必要になりますね。 Master-Slave間の制御線は電源電圧でプルアップされているものがあるため、プルアップしている電圧、双方のICのスレッショルド電圧といった電気的な問題の可能性も疑っています。 (FC1307AもMarvell, jmicronのSATA-IDE変換もI/O電圧が3.3Vのため、問題の根本は同じ…という可能性は十分考えられます。) SD-IDEボード上の改造だけで改善できるなら何か手を打てればと考えていますが、ファームウェアの粗をつつくのとどちらが先か天秤に載せたりしているところです。
また、PC-486MUでは標準搭載のミツミのCD-ROMドライブとCFやFC1307Aの相性が悪く、双方シングル接続でも無視されたり止まったりします。 ・PM:FC1307A SM:ミツミのCD …NG ・PM:CF各種 SM:ミツミのCD …NG 対CF環境でCDドライブの入れ替えで改善した報告があったので、HDDで運用するかCDドライブを別のものに替えるか…と考えつつスタメン入れ替えで奥にしまい込んでしまいました。 EPSON機はLBA_IDEのパッチ対象となっていないので、今は深追いしなくてもよいかな、と考えております。
話題は変わりますが、Vectorホームページからのお引っ越し、お疲れさまでした。 PC-98関連の記事がZennにマッチするか、現在のメインSNSであるFediverseで発信するか、新規にブログかホームページを作成するか、あるいは再びTwitter(X)に戻るのか…等考えておりますが、情報発信とコミュニケーションどちらに重きを置くかも含めて一長一短あり悩ましいところです。
|
AT互換機同士の機種間のフォーマット互換性の問題? KAZZEZ 2024年9月24日(火) 21:17 |
> わざわざCHSモードにしない この時代のAT互換機ではすでにLBA認識が一般化していたということであれば、はじめからLBA前提で作業すれば良かったのですね。何故そのマザー(2005年頃)がデフォルト(AUTOモード)でCHS認識したのかが謎です。8GB以下の容量だとCHSが優先されるのか、それともCFにCHS情報が書き込まれていたらそれに従うのか(しかしPC-98ではそれで使えていたのですが)。いずれにしても、逆に「わざわざLBAモードに」設定しないと使えない状態でした。 しかし最終的な目的は稼働中のPenIIノート(1999年頃のモデル)のHDDをCFに置き換えること(事前にフォーマット・DOS7.1転送しておき、PCカードスロット経由でHDD内ファイルを丸コピーする魂胆)でしたので、他機種(追記:おっしゃるようにAT互換機間での話です)でも使えることを意識して、なるべくAUTOモードでデフォルト状態の認識でフォーマットさせたかったのです。結局、PenIIノートの稼働を丸一日止めて、そちらでフォーマットさせました。こちらではLBA認識だったのかどうかは確かめていませんが、毎日12時間運用して今のところ不具合はありませんし、何より普通にフォーマットできていますので、LBAモードだった可能性は高そうです。
|
PCの他機種ならLBAでわ? かかっくん 2024年9月25日(水) 10:50 |
他機種が何を示すかにも依り枡が、PCの他機種なら其れこそLBAナノでわ? # '99頃のPCだと拡張INT13h対応は未だ鴨? # あれ?拡張INT13hがBIOSでのLBA対応だった肝?其れ迄のわLargeとかH255とか(共にCHS)
因みにAuto認識は【其のPCに都合の良い設定】に成増から、他機種との互換性が高いとわ限りません 例えばみいそD3766はPCに依ってバラバラのCHSで認識されたりし枡 # 170Mで出荷された機種が240Mで認識されたり設定通りの170Mに成ったりする 互換性重視ならLBAか手動設定かが無難でせう
|
マスター/スレーブ(M/S)問題はプライマリ/セカンダリ(P/S)問題よりも根深い かかっくん 2024年9月25日(水) 11:37 |
Marvell SATA-IDE石と☆α2の問題わポートとSATA-IDEの間にバッファを入れて当該ポートが遣われる際だけ 通せば解決しそーな気がし枡。回路図を示せばM.P.S辺りが創って呉れそーな?(他力本願)
Marvell石が非選択(CS1/CS3共にネゲート)時でも他の信号に応じてヘンなデータを出すのが問題の肝? # 本来は非選択時にデバイスがヘンなデータを出してもホストは相手にしないが☆α2はデータバスがP/Sで # 共用の為(略)
ん?ケーブルが別のP/S問題でなく同一ケーブル上のM/S問題でしたっけ?其れなら他機種(98のて/486/ GHOST7/YEBISU機やPC)デモ起こる予感? M/S問題とするとCS1/CS3 A2-0は共用(他も)デスからデバイス指定フラグ(I/O 64Ch bit4)に関わらず 反応すると云う事の希ガス、と成れば☆α2に限った話でわナイと云う事に(略)
M-S間でのみ通信してホストは無関係な信号て有馬したっけ?昔はSPSYNCとか有馬したが # SPSYNCは2台のHDDのスピンドルを同期させる信号、後年廃止され28ピンはCSELに転用
|
M/Sに限っての話ですが MCtek 2024年9月27日(金) 13:02 |
以前に試運転さんがまとめてくれた資料がわかりやすいですが、ATAデバイス側でプルアップされているピンは3本だけです。
28 CSEL 34 PDIAG# 39 DASP#
CSELはケーブルセレクトを使用しなければ関係ないとして、39ピンはよく悩みの種となるアクセスランプの線ですが、Slave存在検知用としても使われているようです。本体側のアクセスランプを点灯させる回路ともつながっていて厄介な信号ですが、逆にアクセスランプを介して常に状態を見ることができるとも言えます。 もう一つ怪しいのがPDIAGで、初期化の際にSlave側デバイスで異常があればアサートされMaster側が受け取る信号らしく、こちらはホストの介入はないようです。
SD-IDEの場合5Vが供給されているのでさほど難しくないでしょうが、SD-CFの場合CF-IDEアダプタからの(あるいは、CF-IDEアダプタへの)供給電圧を3.3Vにする必要がある関係から、カード内でプルアップされている場合は難しそうです。未実装ならCF-IDEアダプタ側でどうにかするのも手です。
CF-IDEアダプタは98後期の機種ではCPU付近のピンヘッダから直接3.3Vを供給していますが、それ以外の機種ではCF-IDEの電圧切り替えのジャンパとダイオードを取り去り3.3V LDOを載せたものや少し電圧を盛って3.7Vにしたものを用意して実験しています。 (・_・):0.1Vは実力で耐えてな(鬼)
P/S間で問題が起きるマシンは手元に486MUしかないので詳細に検証できていません。
|
問い合わせは来てませんで単なるお節介 まりも 2024年9月28日(土) 23:43 |
MCtekさん >SD-IDE変換の件で質問や問い合わせが増えて ということは全くありません。愛瑠仮でのサポートを拝見していて、案外昔を知らない人が98を使おうとしているのかも?と思い、勝手ながらDOSの「入れ方」を書かせていただきました。そういえばY!では「Windows98の入れ方」っていう商材をもう10年以上も出品している人がいますけど、どうなんですかね。
一部の対IDE変換器でプライマリとセカンダリのデータが衝突するらしい問題は、98オンボードの一部機種しかあり得ない問題だろうと思いますが、さらには98のBIOSアクセスのときだけ問題なのかもしれません。「相性」に近いモノですが、どちらかというと98のIDEのほうがクセがある(ここぞと"専用インターフェイス")ので、原因を変換器のコントローラに求めるのは筋違いでしょう。
KAZZEZさん >デフォルト(AUTOモード)でCHS認識したのかが謎 CHSで認識したというのは、マザーボードまたはIDEカードのBIOSがIDEデバイスにCHSでデータを授受しているというところまでを確認したのでしょうか? 単にCHSのパラメータがBIOSメニューで表示されていただけなのでしたら、それは「CHSで認識した」のではなくて、「もしかしてCHSでアクセスしようとするソフトウェアに対してこのCHSで処理しますよ」ということを示しているだけの場合もあり得ます。LBA対応のデバイスでも、BIOSは仮の(CFデバイス固有のH:Sとも違う)CHSを示してきます。
|
CHSアクセスだと判断した理由は KAZZEZ 2024年9月29日(日) 1:30 |
FDISK後のFORMATに失敗する挙動が、AUTOモードのときとCHSモードのときで同じだったというだけです。具体的なCHS値は表示されていなかった気がします。BIOSで強制的にLBAモードを指定したときだけ、FORMATが成功しました。FDSKを使っても同様でしたので、FDSKが「CHSアクセスしようとするソフト」でない限りは、AUTOモードでCHSアクセスになっているのではないかと思います。
> 39ピンはよく悩みの種となるアクセスランプの線ですが、Slave存在検知用としても使われているようです。本体側のアクセスランプを点灯させる回路ともつながっていて なるほどです。マスター接続が前提の初期のファイルベイ機や、98NOTEの内蔵HDDにスレーブ接続すると、アクセスランプがしばらく点灯したままになる挙動は、そういうことだったのですね。
|
|
|