[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 08:39 / Filesize : 220 KB / Number-of Response : 953
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

DOSでプログラミング



1 名前:デフォルトの名無しさん [03/03/07 10:45]
ハードウェアを直接叩くのはやっぱり楽しい!

DOSにおける開発について語りましょう。


416 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 00:03:48 ]
このスレッドの名は
DOSでプログラミング
"で"なんだから、DOSを使うのが前提でしょ?
コマンドプロンプトではなくDOS
ずっと俺はそう思ってたけど

417 名前:デフォルトの名無しさん [2005/06/19(日) 00:10:55 ]
>>416
winに付属しているコマンドプロンプトしか頭になかった。
正直すまんかった。

(そういや、伯父もいまだにPC98FAつかっているしな)


418 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 00:15:22 ]
>>413
どんなプログラムか知らんがその機種にあったものを探した方が早いと思うぞ。
素人がぱっと見ただけでパッチを当てられるようなもんじゃない。

419 名前:デフォルトの名無しさん [2005/06/19(日) 08:21:05 ]
DOS始めるには何からやればいいの?

420 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 08:39:23 ]
あきらめる

421 名前:デフォルトの名無しさん [2005/06/19(日) 11:46:26 ]
>>419
DOSのインストール

422 名前:デフォルトの名無しさん [2005/06/19(日) 19:41:31 ]
>>421
DOSのインストールって何
もともとあるんじゃないの?どこにあるの?


423 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 19:49:03 ]
>>422
DOSだって昔は単独で販売されていたんだからインストーラだって存在していた。

424 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 20:15:09 ]
>>422
WinNT系にはDOSは入っていない。

今DOS単体が手に入るのかどうかは不明。
やりたいんならWin9x系OSをインストールするとかかな



425 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 20:50:01 ]
DR DOSでも使えばいい

426 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 21:11:03 ]
Windows 2k/XPでもDOS起動ディスクは作れないわけではない。
homepage2.nifty.com/winfaq/w2k/hints.html#952
homepage2.nifty.com/winfaq/wxp/boot.html#745

427 名前:デフォルトの名無しさん mailto:sage [2005/06/19(日) 21:13:34 ]
DOS"で"プログラミング
なんだから、DOSでやろうや
Win9xでやるのもいいと思うが、そしたら絶対に
Windowsのエディタでコード書くだろ
DOSを入れろ


428 名前:デフォルトの名無しさん [2005/06/20(月) 01:43:36 ]
やっぱ、VB1が、とても好き。
mouse.com入れて、結構あそべます。

429 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 09:44:56 ]
MS-DOSを使ってみて、かなり不自由だったので
ツール郡を移植したあの日々
2ヶ月後くらいに公開したら、もっと質のいいものが出回ってるとしった日
死にたくなった

あれから、2度とDOSの画面は見ていない


430 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 10:49:41 ]
DOS上で、Windows のプログラム開発は、出来ますか?
gcc + mingw とかで。


431 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 11:03:22 ]
>>430
MS-DOSでgccは動かないと思いますが。

432 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 12:48:01 ]
>>430
動作確認はどうするんだよ。

433 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 13:32:58 ]
djgpp

434 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 15:25:42 ]
>>431
マジっすか?

というか、勝手に思っててください。



435 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 16:41:54 ]
思うだけなら自由だしな

436 名前:デフォルトの名無しさん mailto:sage [2005/07/18(月) 19:35:05 ]
ここでいってるDOSってMS-DOSのことなの?
もし、MS-DOS限定ならバージョンはどれを指すの?
>>1を見るとハードを直に叩けるって言ってるから6.1以前の物限定?

437 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 05:25:08 ]
ポッカーーーン

438 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 05:46:40 ]
俺がMS-DOSを使わなくなったのはメモリの管理を阿呆みたいにし始めたからかな


439 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 11:26:23 ]
EMSにXMS、さらにはBMSか?

440 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 17:39:37 ]
UMB,HMA,

441 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 20:16:29 ]
>>440
どっちもXMSの一部じゃなかったっけ?

442 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 00:14:12 ]
そういえばそうだったかも。
ん、でもHMAはXMSのおまけで、UMBは仮想EMSのおまけだったような気も。
XMSって286以上の規格じゃなかった?

443 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 06:14:11 ]
UMBの割り当て/解放のファンクションはXMSドライバのファンクションの一部に
いちおうなってる
www.ctyme.com/intr/rb-4768.htm
EMM386を組み込まないと実際には使えないんだろうけど

444 名前:440,442 mailto:sage [2005/07/21(木) 17:22:29 ]
勉強になりました。
でもこの先使うことなどなさそうな知識だ。



445 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 18:49:15 ]
(ノ∀`)それを言わないで

446 名前:デフォルトの名無しさん [2005/07/23(土) 07:17:32 ]
CD-ROMドライバはネットワークドライブ(のドライバ)の一種だそうですが、ネットワークドライブの仕様について情報源があれば教えて下さい。

447 名前:デフォルトの名無しさん mailto:sage [2005/07/23(土) 07:19:48 ]
ドキュメント読めよ

448 名前:デフォルトの名無しさん mailto:sage [2005/07/23(土) 14:47:28 ]
ドキュメントはないんじゃなかったっけ?
Undocumented DOSにネットワークリダイレクタの機能を利用した
RAMディスクのサンプルが出てたけど

449 名前:デフォルトの名無しさん mailto:sage [2005/07/24(日) 19:37:18 ]
DOSでプログラミングじゃなくてDOSをプログラミングになってきた俺はどうすればいいんだろう・・・

450 名前:デフォルトの名無しさん mailto:sage [2005/07/24(日) 20:55:13 ]
>>449
用途によってはDOS互換OSもまだ需要があるから
そのままがんがれ!

451 名前:デフォルトの名無しさん mailto:sage [2005/07/31(日) 21:00:23 ]
Dos Promptでシューティングでも作りたいんだが
なんか良い解説サイトとかない?

452 名前:デフォルトの名無しさん mailto:sage [2005/07/31(日) 21:01:05 ]
こことか超おすすめ
www.google.co.jp/

453 名前:デフォルトの名無しさん mailto:sage [2005/07/31(日) 21:31:34 ]
俺はDOSエクステンダを自分で作ってみたい
っていうか、どういう処理をしてるんだよ
気になって夜も眠れん

454 名前:デフォルトの名無しさん mailto:sage [2005/07/31(日) 22:02:59 ]
その時の気分でプロテクトモードとリアルモードを切り替えてるんだよ



455 名前:デフォルトの名無しさん mailto:sage [2005/07/31(日) 22:07:13 ]
>>453
ttp://www.vector.co.jp/soft/dos/prog/se008332.html

456 名前:453 mailto:sage [2005/08/01(月) 22:08:39 ]
>>455
おーサンクス心の友よ

457 名前:デフォルトの名無しさん mailto:sage [2005/08/18(木) 23:41:51 ]
こっちのほうが詳しそうな人がおおいので、質問させていただきます
PCIデバイスのプログラミングやっとります。

PCIデバイスで割り込みを使うには、PIC(割り込みコントローラー)の、モードをLevelトリガーモードに
しないといけないようです。そのためPCIバス対応の割り込みコントローラー(APIC?)には、IRQを部分的に
Levelトリガーモードにする機能があるようなのですが、いくらぐぐっても
らしき資料が見つかりません。

どなかた助けてください、お願いします

458 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 00:20:43 ]
適当にハード関連の本を十冊くらい嫁

459 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 09:58:25 ]
>>458
何もしらんくせにええかげんなこと書くなよ...

460 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 16:21:32 ]
>>457
まずはそのデバイスがedge-trigger使えるかどうか調べてからにしな

461 名前:457 mailto:sage [2005/08/19(金) 19:32:06 ]
ここで聞いた俺が馬鹿だったわ。Linuxのソースコードでも読むことにする
あばよ

>>460
Edge-triggerはPCIデバイスでは使えない、PCIデバイスは全部Level trigger

462 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 21:00:37 ]
つか、DOSでPCIバス叩いてた奴なんて少数派だと思うぞ。

463 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 21:41:23 ]
>>461
YMF7x4のFM音源割り込みはモロにIRQだったけどなw
INTなんか使ってねーよ

464 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 22:18:08 ]
>>463
PCIのIRQ割り込みは基本的にEdge trigger、しかしPCIの場合はこれをLevel triggerにしないとだめ
そのためPCIをサポートしているチップセットは、一部のIRQのみをLevel triggerにする機能がついてるわけ
その方法を探している。

Linuxのコードをざっと読んだところ、0x4d0, 0x4d1の二つのポートを使って、それが可能のようなのだが
これはどうやらEISA用のやり方らしい、PCIも同じ方法でできるのかどうかはわからない。

Linuxのコメントを読むと、APIC用の別のやり方があるそうなのだが...不明



465 名前:464 mailto:sage [2005/08/19(金) 22:19:20 ]
ごめん間違えた
(誤)PCIのIRQ割り込みは基本的にEdge trigger、しかしPCIの場合はこれをLevel triggerにしないとだめ
(正)PCのIRQ割り込みは基本的にEdge trigger、しかしPCIの場合はこれをLevel triggerにしないとだめ

466 名前:デフォルトの名無しさん mailto:sage [2005/08/20(土) 11:46:50 ]
>>464
まずはdatasheet読もうぜ
440BXとかその辺のヤツだけど役に立つだろ
('A`)ノシ www.intel.com/design/intarch/datashts/290562.htm

467 名前:デフォルトの名無しさん mailto:sage [2005/08/20(土) 15:38:39 ]
>>466
Thx!、そうか、Intelの本家ページを探せばよかったのか!...
やはり0x4D0, 0x4D1の二つのポートを使うらしい。ただしIRQ1とIRQ2は絶対、Edge triggerで
Levelには変更できないそうだ、ありがとう!


468 名前:デフォルトの名無しさん mailto:sage [2005/08/20(土) 22:34:31 ]
>>467
お前英語読めねーの?
思い切り書いてあるんだが。

469 名前:デフォルトの名無しさん mailto:sage [2005/08/21(日) 10:23:06 ]
>>468
だから、上のマニュアル読んで言ってるんじゃないか。ああ、おせっかいだったか悪かったな。
「やはり...」の文脈の流れから見てわかんねーの?半島の方ですか?

後それからIRQ1,2に加えて8,13も無理みたいだな。

470 名前:デフォルトの名無しさん mailto:sage [2005/08/21(日) 10:30:18 ]
なにこれしきのことでファビョってるんだ?

471 名前:デフォルトの名無しさん mailto:sage [2005/08/21(日) 12:35:44 ]
DOS使いはレベルが低いね

472 名前:デフォルトの名無しさん mailto:sage [2005/08/21(日) 13:16:05 ]
IBM PC DOS 7.0J/V(または 2000) で REXX のプログラムの話は出て来ないものか。

473 名前:デフォルトの名無しさん mailto:sage [2005/08/21(日) 13:29:58 ]
>>467
16bit 環境でプログラムですよね?(プロテクトモードはよく知らないので)
ISA時代で使われていたテクニックそのままで良いですよ。

強いて違いを挙げるとすれば、

・大抵のPCIボードは、割り込みステータスレジスタがあり、これをクリア
 しないと、割り込みハンドラからIRETしても、割り込みハンドラに再突入
 する。
・PCIボードは、ISAボードと違い、割り込み共有可能。
 つまり、
  割り込みハンドラに突入=自分のPCIボードへ割り込みが入った
 とは必ずしも言えない。
・PCIコンフィギュレーションレジスタを弄って、IRQを書き換える時、
 レガシーデバイスと共有できない点に注意。
 (レガシーデバイスは、レベルトリガじゃないのが、ほとんど)

まぁ、こんな所ですかね。

ところで、PCIボードを制御したいって、制御対象は産業用ですか?
産業用なら、メーカーから何がしか情報が出てませんかね?


474 名前:デフォルトの名無しさん mailto:sage [2005/08/23(火) 02:01:32 ]
>>473
産業用ではありませんNE2000互換のNICの制御を目的としております。

>割り込みステータスレジスタがあり、これをクリア
>しないと、割り込みハンドラからIRETしても、割り込みハンドラに再突入
>する。
なるほど、Levelトリガーゆえの挙動ですね。肝に銘じておきます。

あと、追加質問で大変申し訳ないのですが、LevelトリガーはEdgeトリガーとは
EOI発行のタイミングが異なると小耳に挟んだのですが、そこらへんは
どうなんでしょうか?



475 名前:デフォルトの名無しさん mailto:sage [2005/08/27(土) 10:52:04 ]
>>474
遅くなってすんません(週一で巡回しているもので)。

> あと、追加質問で大変申し訳ないのですが、LevelトリガーはEdgeトリガーとは
厳密な内部の違いになると あまり自信は無いです。

基本的には、割り込み処理を抜ける前に EOI で十分です。
(優先順位の高い割り込みへの割り込みを許す為に、先にEOIを発行するって
ワザもありとは思いますが、8259を更に弄る必要が無かったっけ?)

> NE2000互換のNICの制御
プログラムが主目的でなく、通信が主目的なら、NICに関して言えば、
メーカーさんから NDISとか呼ばれている DOS用のドライバが提供されて
いると思います。

それを採用するのも一つの手ではあります。
(100kb程度のメモリを占有するのがネックですが)


476 名前:デフォルトの名無しさん mailto:sage [2005/08/29(月) 08:33:40 ]
>>475
>基本的には、割り込み処理を抜ける前に EOI で十分です。
わかりました、ありがとうございます。

477 名前:デフォルトの名無しさん mailto:sage [2005/09/01(木) 19:19:03 ]
INT13の使い方について質問です。

AX=0x4300でIDEのHDDを書き換えようとしたら、エラーが出ました。戻り値はAH=0x01でした。
調べてみるとパラメータ異常ということで、試しにAXに代入する値を0x4100に変えて、
それ以外はまったく同じ条件でまったく同じセクタを読み込んでみると正常終了します。

読み込みが可能で書き込みのできない条件というのが、今ひとつよくわかりません。
エラーの原因と対策を教えてください。

環境は、Win98SEの起動ディスク(DOS 7.1)の上で実行しています。DOS窓ではありません。
LOCKも事前に実行しました。
マザーのBIOSも確認しましたが、HDDを保護するような項目は見あたりませんでした。

478 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 11:34:04 ]
>>477
HDDの容量は?

479 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 22:01:32 ]
>>478
20GBです。

その後、試行錯誤してWinMeの起動ディスクから起動すれば、正常に書き込みできることが判明しました。
いずれのケースでもCONFIG.SYSは0バイト、ドライバ類は何も組み込んでいません。
何が違うのかさっぱりです。

480 名前:デフォルトの名無しさん mailto:age [2005/09/12(月) 22:48:40 ]
定期age

481 名前:デフォルトの名無しさん mailto:sage [2005/09/12(月) 22:50:58 ]
PentiumD使いの俺がきましたよ

482 名前:デフォルトの名無しさん mailto:sage [2005/09/12(月) 22:52:39 ]
シングルタスクOSでデュアルコアCPU...

483 名前:デフォルトの名無しさん mailto:sage [2005/09/12(月) 22:53:54 ]
>>481
そのPCはDOS専用機に汁!

484 名前:デフォルトの名無しさん mailto:sage [2005/09/12(月) 23:03:13 ]
DOSBox(エミュ)使ったほうが開発しやすくないだろうか



485 名前:は@ c178.016.c3-net.ne.jp ◆cplnFO9T0I [2005/09/16(金) 20:42:53 ]
>>484
グラフィックアプリ、I/O直叩き
これをやるのにはエミュじゃ無理じゃない?

486 名前:デフォルトの名無しさん mailto:sage [2005/09/16(金) 21:04:28 ]
モノにもよるが、標準的なデバイスなら大体おkなんじゃない?
最終的には実機でデバッグすればいいんだし。

487 名前:デフォルトの名無しさん mailto:sage [2005/09/17(土) 20:24:01 ]
ふつークロス開発

488 名前:デフォルトの名無しさん mailto:sage [2005/09/19(月) 11:38:44 ]
つ[ハンマー]


489 名前:デフォルトの名無しさん [2005/11/06(日) 16:37:59 ]
DOSでPCIでネットワーク処理って楽しそうだな(w
すなおにLinuxとかのフリーライセンスなマルチタスクOS使っておけばいいのに。

490 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 18:52:03 ]
やれやれ、最近の若いもんはPacket Driverも知らんのか・・・
困ったもんじゃて。

491 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 19:06:14 ]
>>479
HDDの中身はWinMeでFDISKかけてないか?Win98かMeの時にWin2000との互換性取るためにVFAT他で仕様変わってるはず

492 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 17:36:23 ]
>>490
そんなの使ってサーバ作りたくないなw

493 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 04:28:12 ]
>>491
INT 13でのアクセスなので、ファイルシステムは関係ありません。
ぶっちゃけ、初期化されてないHDDでもアクセスできるというか、
そもそもFDISK自体がINT13でHDDを初期化しているわけですから。
結局のところ解決できず、HDDは今のところ放置です。

そのかわり、今はUSBメモリで四苦八苦しています。
手持ちのノートパソコンをUSBメモリからブートさせたいのですが、
BIOSがタコでサポートしているディスク形式(ジオメトリ)が限られているらしく、
なかなかうまくいかなくて。
HDDエミュレーションの仕組みをよく理解していないので、MBRにパッチを当てて
動作をトレースしているところです。

494 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 18:11:50 ]
ボリュームの排他ロックってのが必要じゃなかったっけ? たとえMS-DOSモードでも。
Meでは廃止されたのかな



495 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 23:33:29 ]
>>494
事前にコマンドプロンプトからLOCKコマンドは実行したのですが、
それとはまた別の手続きが必要なのでしょうか?
ちょっと調べてみます。

496 名前:デフォルトの名無しさん [2005/11/25(金) 00:59:57 ]
ローカルにある三つのファイルをまとめて圧縮したいのですがこれをコマンドプロンプトでやるには
どうしたらいいのでしょうか?DLLはWINDOWS標準でついているものを使いたいです。
例えばC:/マイドキュメントのa.log、b.log、c.logを
c:/work/guro/の下に圧縮する場合
なんてコマンドプロンプトを打ち込めばいいのでしょうか?
どうぞご教授お願いいたします。

497 名前:デフォルトの名無しさん mailto:sage [2005/11/25(金) 01:12:49 ]
スレ違いどころか板違い。このへんででも聞け。
pc8.2ch.net/test/read.cgi/win/1116131036/

498 名前:デフォルトの名無しさん mailto:sage [2005/11/25(金) 01:35:47 ]
>>496
つ[makecab file c:/work/guro/file.cab]

499 名前:デフォルトの名無しさん [2005/11/26(土) 05:50:37 ]
PITなんですが、インターバル間隔として設定されている値はどうすれば取得できますか?
例えば#0の場合、40hをただINするだけでは設定値は得られないみたいなんですが・・・
何かコマンドを送って得られましたっけ?

500 名前:デフォルトの名無しさん mailto:sage [2005/11/26(土) 11:02:22 ]
あらら500

501 名前:デフォルトの名無しさん mailto:sage [2005/11/26(土) 13:23:59 ]
>>499
ググったらこんなの有った。あとはコマンド表見て考えれ

>8253/8254の動作中のカウンタの値を読み出すには、一旦ラッチコマンドを使用して値を確定させます。
>8254は他に "Read-Back command"を用いることで、現在のカウンタの状態(動作モード、OUT信号)を
>読み出すことができます。


502 名前:デフォルトの名無しさん mailto:sage [2005/11/27(日) 01:14:31 ]
>>477
|試しにAXに代入する値を0x4100に変えて、
|それ以外はまったく同じ条件でまったく同じセクタを読み込んでみると正常終了します。
ah=41は"IBM/MS INT 13 Extensions - INSTALLATION CHECK"だよ。
EXTENDED READはah=42。
Ralf Brown's Interrupt ListとBIOS Enhanced Disk Drive Specification
を読みなさい。
ほれ。擬似コード。このままだと動かないと思うよ。
inreg.x.ax = 0x4300;
inreg.h.dl = drive | 0x80;
segreg.ds = FP_SEG(pac);
inreg.x.si = FP_OFF(pac);
pac.size = sizeof pac;
pac.reserved = 0;
pac.blocks = sectors;
pac.ptr = FP_OFF(buff);
pac.seg = FP_SEG(buff);
pac.lbalow = lbasec.LowPart;
pac.lbahi = lbasec.HighPart;


503 名前:デフォルトの名無しさん [2005/12/01(木) 14:52:14 ]
age

504 名前:デフォルトの名無しさん mailto:sage [2005/12/22(木) 15:26:03 ]
DOSで動的リンクについて詳しいサイトとかってあったら教えてください。



505 名前:デフォルトの名無しさん mailto:sage [2005/12/22(木) 17:40:04 ]
AsciiNetの過去ログが詳しい。

506 名前:デフォルトの名無しさん [2006/02/09(木) 13:51:40 ]
PCを再起動しようと思い、INT 19Hと書いたのですが、
電源が再投入される訳ではないのですね。
Windowsを再起動したときのように、BIOSの起動からやり直すのは
どうすればいいのでしょうか?


507 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 15:23:07 ]
>>506
JMP FFFF:0000

508 名前:506 [2006/02/09(木) 18:05:40 ]
>>507
再起動できました!
ありがとうございます。


509 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 15:07:46 ]
  ( ・∀・)   | | ガッ
 と    )    | |
   Y /ノ    人
    / )    <  >__Λ∩
  _/し' //. V`Д´)/  
 (_フ彡        /  ←>>30


510 名前:デフォルトの名無しさん [2006/03/29(水) 11:13:26 ]
>175さんの質問に近いのですが質問です。

win2kProで現在動いているWindowsのプロセス(イメージ名)一覧
を返却するバッチを作りたいのですが、
win2kだとtasklistコマンド使えないみたいなので(XPProでは使えましたが)
困っております。どうすれば良いでしょうか?


511 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 15:22:07 ]
>>510
これを解析
ttp://www.vector.co.jp/soft/win95/util/se360371.html

ここってピュアDOSのスレじゃないのかな。

512 名前:デフォルトの名無しさん [2006/03/29(水) 18:31:10 ]
ピュアDOSなのだと思うが、質問者にピュアDOSかどうかの区別がつかないから仕方がない

513 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 19:35:10 ]
510は区別がついてるがスレ違いってところだろ。

>>1の書き方見た感じ、VDMはHW直接叩けないからダメだとは思うね。

514 名前:デフォルトの名無しさん mailto:sage [2006/04/09(日) 19:20:00 ]
>>499
直接設定値は取得できないが、現在のカウント値を複数回読んで得られる最大の値は
かなり正確な設定値となる。
元ねたはPC-9801スーパーテクニックでシリアル通信速度を取得したい、という例だったかと。
半信半疑で試してみたら本当に正確な値が得られたのでマジびっくり。

>>501
8bit単位で入出力するからいったん16bitまるごと内部レジスタにラッチしないと正しい
カウント値が得られない場合があるんだよね。





515 名前:デフォルトの名無しさん [2006/05/13(土) 11:07:36 ]
MS-DOSでDMA転送を使うときに使用するメモリってどうやって確保するのでしょうか?
mallocじゃ無理ですよね?
Linuxだとカーネルメモリを確保する関数があるんですが、MS-DOSでは分かりませんでした。


516 名前:デフォルトの名無しさん mailto:sage [2006/05/13(土) 13:55:34 ]
>515
手元に資料が無く、適当に思い出しながら書いてます。

少量なメモリのDMA転送を行う場合:
 普通にmallocして使ってください。

大量(1MB以上とか)なメモリのDMA転送を行う場合:
 ズボラなやり方
  →メモリマネージャを使ってなければ1MB以上は、DOSの管理外なので
   直接書き込んでしまいます。
 真面目なやり方
  →HIMEM.SYSならXMS、EMM386.SYSならEMSというメモリ管理機構が
   使えるので、これでメモリを確保して使います。
   Ver.7以降なら、VCPIやDPMIもデフォルトで使えるかも知れません。
   (そうでなくても、そういうものが使えるマネージャが大抵用意されてます)






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<220KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef