FreeDOS(98)進捗どうですか

自分用の大雑把な作業記録です(というか、他の人に意味があるのだろうかこれ…) ソース https://github.com/lpproj/fdkernel ディスクイメージや関連ツール http://bauxite.sakura.ne.jp/software/dos/freedos.htm ※他の人のツイートやリプを含むツイートは入れてないです、まあ一応… 続きを読む
4
前へ 1 ・・ 15 16 ・・ 19 次へ
sava @lpproj

ということで行入力を後回しにしつつ、FreeCOM(DBCS)をすこし更新してみました。漢字とかの2バイト目が0x7cだったときにパイプ処理とみなされる不具合の修正です… github.com/lpproj/freecom…

2016-07-05 15:39:39
sava @lpproj

あとはどさまぎでFreeDOS(98)のディスクイメージも更新しておきました。カーネルは更新ないです…(FreeCOMの更新と入れ忘れてたCOPYINGの追加…) github.com/lpproj/fdkerne…

2016-07-05 15:43:38
sava @lpproj

どうでもいい近況(DOS):いまどき特にひねりもないDOS用のIDE(PATA)CD-ROMドライバ書いてる人なんて、自分以外にこの世に存在するんですかね…(白目 pic.twitter.com/iqmDFzUjtl

2016-07-09 16:26:42
拡大
sava @lpproj

@lpproj しいて言うとAT/98兼用なのとCD再生できるドライバとしては比較的サイズが小さい、というぐらい(だけどMSCDEXがでか過ぎるのでわりとむなしい…) pic.twitter.com/axv7pqNNsj

2016-07-09 16:39:45
拡大
拡大
sava @lpproj

@lpproj (PC-98系はnp21winでしか動かない気がするなあ…とりあえず実機で試さないと…)

2016-07-09 16:43:47
sava @lpproj

ちなみに、DOSのCD-ROMドライバにはSTOP AUDIOというコマンドがあるのですが、 ・演奏中に発行するとポーズ状態になる ・ポーズ時に発行すると完全停止 という微妙に面倒な仕様…素直にPAUSEとSTOP別コマンドにして、どうぞ

2016-07-09 16:49:54
sava @lpproj

@lpproj 実機(9821Xc13)に入れたら導入時に固まる。やはり動かんか…どうしたもんか…

2016-07-10 13:14:55
sava @lpproj

@lpproj AT系の実機で動かしたときもだいぶ不安定だ…もうすこし真面目にATA(PI)プロトコル実装しないとあかんかのう…最大の問題は実機の存在する冷房のない家の部屋で複数台のPCを動かさないといけないこと…直せる気がしませんな…(白目

2016-07-10 23:40:54
sava @lpproj

実機で動かないのを今のところガン無視してCD-ROMドライバをちまちま進めているけどだんだん場当たり感がひどくなっていく…でも1から書き直すほど本気になれますん…(ん?

2016-07-12 18:31:34
sava @lpproj

あとmode senseコマンドのpage cotrolの"Changeable Value"の意味が今日になってわかった。ほんとにビットマスクパターンなんだ…ふえぇ…

2016-07-12 18:34:37
sava @lpproj

え…もしかしてIDENIFY (PACKET) DEVICEで取れるシリアルナンバーのとこ(word10~19)がASCIIじゃないってこともあるの…? 値の範囲チェックしてたら98実機のCDドライブ(ソニーCDU76E)弾いちゃってたとは…

2016-07-13 22:25:26
sava @lpproj

@lpproj んでためしにIDENTIFYの情報確認してみたら、すんげーサッパリしてた…ATAPI準拠というにはいろいろ設定足りない気がする…(エミュレータでももうちょっと設定してるもんですがね…) pic.twitter.com/FxliOYi9Xv

2016-07-14 15:21:11
拡大
sava @lpproj

しかし手元にあるATA(PI)4やATAPIドラフトのリビジョンヒストリとか見ると最初の日付が1996年2月とか1995年8月とかだったりするので、Win95登場の頃って実はATAPIの規格まだ完全に固まってないっちゅうことだよなあ…

2016-07-14 16:01:47
sava @lpproj

自作CD-ROMドライバがWin3.1上でCD再生できない理由がようやくわかった。Win3.1のドライバがAUDIO STATUS INFOを10バイトで読み出すのだった…(リファレンス上だと11バイトあるが、最後の1バイトは使わないようだ…)

2016-07-19 20:56:55
sava @lpproj

うーん、ボリューム制御機能をつけると4Kオーバーになってしまう…しかもエミュ上だと機能的うまみがほとんどない(実ドライブをマウントしないとほぼ無意味)… pic.twitter.com/W3ycFykYLP

2016-07-20 16:27:12
拡大
sava @lpproj

FreeDOSのディストリに入ってるshsucdx(MSCDEX互換ドライバ)はPC-98でも使えるようです。これでUMBなしでCD-ROM読めるようにしても基本メモリ600K空けられる… pic.twitter.com/DyBGq5SNym

2016-07-20 17:52:08
拡大
拡大
sava @lpproj

@lpproj shsucdxの問題点?として、 ①MSCDEXとオプションが違う(/D:CD_101 /L:Qと書くかわりに/D:CD_101,Qとする) ②SMARTDRVがキャッシュしない(特定バージョン用のパッチはある) みたいなことはありますが、小さいことはいいことだ…

2016-07-20 17:57:08
sava @lpproj

どうにか手持ちの実機(98/AT)で自作CD-ROMドライバが動くことを確認した…

2016-07-21 19:06:14
sava @lpproj

@lpproj しかし手持ち以外の実機でまともに動く気があんまりしないのよなあ…特にPC-98系は… 一応バイナリ(人柱向け)です… github.com/lpproj/mydosut…

2016-07-21 19:10:16
sava @lpproj

ためしにfdxms286を移植してみる…286版のnp2ではいけそう… pic.twitter.com/0aWuesWu0k

2016-07-23 16:45:59
拡大
拡大
sava @lpproj

ちなみに286世代のPC-98はいったんA20をイネーブルにするとCPUリセット以外にディセーブルにする方法がないです…しかたないのでプロテクトメモリ転送BIOSで2バイトくらい転送することで代用しています…

2016-07-23 16:49:23
sava @lpproj

そういやhimem.sysにはBIOSアクセス用に拡張メモリ予約するオプションがあるのですが、指定してもHMA使えちゃうのはそういうもんですかね…int15h経由で拡張メモリ使うのってだいたいHMA部分から使ってそうな気がしますが… pic.twitter.com/SBttZLLd3O

2016-07-24 14:41:04
拡大
sava @lpproj

ということでまあ、fdxms286のPC-98移植版、いちおう上げておきました… bauxite.sakura.ne.jp/software/dos/f…

2016-07-24 19:42:10
sava @lpproj

@lpproj (ちなみに386以上のCPU搭載している実機&エミュ上での利用価値はほとんど)ないです…お察し版じゃないnp2でいちおう使える(純正HIMEM.SYS以外の)XMSドライバ、というのがほぼ唯一のメリットしょうか…

2016-07-24 19:47:45
sava @lpproj

誰もきいてない近況(98)その49:FreeDOS(98)の直接コンソール出力(int29h)のスタック消費量が128バイト超えてる(!)ことが判明…ローカルスタック使ってるデバドラやTSR内で呼び出されると致死量レベルに近いものがあるので専用スタックを用意することに…

2016-07-28 14:05:09
前へ 1 ・・ 15 16 ・・ 19 次へ