tabsize=4 CMOS内のデータ解析  以下は、CMOS 内部のオフセットで表す。実際には、I/O ポートの 3000 (16進数) からの偶数番地に書き込まれているので、実際のアドレスは、オフセット500 なら 0x3000+0x500*2 となる。  この結果を利用し障害が発生しても、RKは一切責任をとらない :-P cmosuty.exe の比較機能がうまくいかないので、一日であらかた調べたもので、 不十分なところがある・・・ 分かる人に <不明> 部分を教えてほしいなぁ。無理かな? F-BASIC などで、ドライブ構成やマウスの移動量設定などは使えるんじゃないかな offset byte +000 (2+4+4)*16 ?+OS種別文字列?+? OASYS や XENIX などの名が見られるが・・・ +0A0 不明 +0C0 1 不明 01 +0C1 2 起動ドライブ(デバイス種、番号) FD:02 HD:01 CD:08 +0C3 1 不明 +0C4 ? +0C5 1 不明 +0C6 ? +0C7 2 不明 08,08 この辺りはリセットするとデータが変わる。 +0C9 ? +0CA ? +0CB ? +0CC 8 不明 +0D4 4 不明 FE,05,FF,FF +0D8 ? ・・・ +0DC 1 不明 起動の際に値が変わる +0DD ? ・・・ +0DF 1 不明 01 +0E0 ? ・・・ +0E6 1 不明 +0E7 1 (NULL) ──────── +0E8 6 文字列「富士通」 MSDOS で環境設定を行うとこの部分はクリアされる。 +0EE (2)*16 ドライブ構成 デバイス種、番号が記録される。 要素がない場合は、FFで埋める。 FD:00 HD:02 ROM:05 RAM:03 HD の場合、番号は上位4ビット:ID番号、下位:ドライブ番号 になる。その他は順に 00, 01, …となる。 +10E 2 RAMディスクの容量(バイト数) MSDOS では 2バイト単位で設定できるが、ネイティブモードでは 32ビットのため 4 バイトごとで記録する。 +110 (6)*5 RS232C の設定 ここは調べていない(^_^;) +12E (不明) ・・・ +135 1 プリンタのモード設定 00:非漢字 01:縮小 03:標準 +136 1 プリンタオプション ビット0:カットシートフィーダ ビット1:カラー ビット4:ピッチ設定有効 +138 1 ? +139 1 プリンタ種 00:24ドット 01:32ドット 02: … +140 ? ・・・ +146 1 シングルドライブの設定 あり:1 なし:0 +147 (3)*3 COPYキーの設定(MSDOS) 順に、COPY,SHIFT+COPY,CTRL+COPYの設定 +1 (NULL) +2 ハードコピーの設定 ビット0:テキスト画面 ビット1:グラフィク画面 ビット4:プリンタ文字の使用 ビット5:日付あり ビット6:白黒反転 +3 プリンタ色調 01:8色,2階調 02:64色,3階調 03:8階調 +150 ? ・・・ 不明 +1E7 1 チェックサム +0EE〜+1E6までの値を合計し反転したものの下位1バイトを記録 ・・・だよね、たぶん ──────── +1E8 16 コード(詳細不明) 28,05,00,00,00,00,02,00,00,00,00,00,00,00,09,00 xx xx xx xx +1F8 (16)*32 エラー情報 ()はバイト数 日付(年,月,日 :3)、時間(時,分,秒:3)、ID(1)、 機能番号(1)、エラー番号(2)、未使用(6) ──────── +3F8 ? ・・・ +52E 不明 ・・・ +532 不明 情報ディスク(起動ディスク)により変化する ・・・ +538 不明 起動の際に値が変わる ・・・ +570〜 不明 起動の際に値が変わる +57A 1 不明 +57B 1 ? +57C 1 不明 起動の際に値が変わる +57D 1 不明 +57E 1 不明 +57F 1 不明 +580 1 ? +581 1 ? +582 1 ダブルクリックの間隔 1/100秒で指定。(システムの設定では 6〜81の範囲) +583 1 マウスの設定 ビット0-6:移動量の設定(システムの設定では1〜41の範囲) ビット7 :左右ボタン入れ換えあり +584 1 キーボードの設定 ビット0-3:リピート間隔(システムの設定では 6,A,E のみ) ビット4 :文字キーのリピート無効 ビット5 :リターン 〃 ビット6 :PF 〃 ビット7 :クリック音あり +585 1 TownsMENUのパレット設定 01〜0a:色番号 0e :パレットファイルあり +586 1 ? +587 1 ? +588 1 プリンタ種の設定 ビット6:レーザービーム ビット7:ドットインパクト その他は熱転写とされる +589 1 TownsGEAR でのカレントドライブ(文字列) +58A 1 ? +58B 1 ? +58C 1 ? +58D 1 ? +58E 1 ? +58F 1 ? +590 1 拡張ドライバ設定 ビット0-6:タブレット筆圧 ビット7 :音声メッセージあり +591 1 ? +592 1 ? +593 1 ? +594 1 ? +595 1 ? +596 1 ? +597 1 ? +598 1 F-BASIC386 でのカレントドライブ(文字列) A:41,B:42, … ,Q:51 +599 1 ? ・・・ +5A8 1 不明 +5A9 ? ・・・ +5B1 不明 情報ディスク(起動ディスク)により変化 ・・・ +5CD 起動の際に値が変わる ・・・ +615 1 高速モード設定 +616 1 ? +617 1 ? +618 1 TownsOS に関する設定 ビット5:外字を使用する ビット6:RAMディスクを使用する ビット7:TownsMENUで背景を表示する +619 1 情報ドライブの設定 ビット0:ドライブ0 ビット1:ドライブ1 ビット2:不明 ビット3:不明 ビット6:不明 ビット7:不明 +61A 1 不明 +61B ? ・・・未使用? +628 8 不明 +630 ? ・・・未使用? +7D1 16 不明 設定のない部分は FF で埋める +7E1 不明 ・・・ 〜+7ff FMR の CMOS には日本語FEPのインストール状況なども記録されているらしい ので、当然 TOWNS にも同じオフセットに存在するはず。しかし不明 情報ディスクを設定する/しない、そこから起動する/しないによって、内容が 大きく変わってしまうために、細かい確認ができなかった。 以上は cmosuty.exe と MSODS の fc.exe を用いて解析したもので、作業中に突然 ハングアップすることが何度かあった。やはり CMOS は危険。