04/05/15 18:39
>>198
参考にしろといわれてもねぇ。
>>199
何故に?
コンポーネントをEXEにして分離したほうがいいのか聞いてるんですけど。
201:デフォルトの名無しさん
04/05/15 18:42
>>200
それは動的リンクとは言わない。
202:デフォルトの名無しさん
04/05/15 18:50
オーバーレイとかあったなぁ(しみじみ
203:デフォルトの名無しさん
04/05/16 01:28
思うがままに作って、完成させてから要望聞いて対応すりゃいいじゃん。
要望が出そうなところが分かってるなら、最初からそういう風に設計できるだろ?
ただ、DOS用なら、俺としては実行部はファイル1つの方が分かりやすい。
>>195の言う「動的リンク」が何を指すのか、>>200でいよいよ分からなくなったが…
204:は ◆cplnFO9T0I
04/05/16 18:38
>>201
似非動的リンク
>>203
わかったYO!
ともかくそこの部分を変更可能なように作っておくということで。
ともかく、ひとつのEXEで作ってみる。
205:デフォルトの名無しさん
04/05/16 18:41
>>204
似てもいない。
206:デフォルトの名無しさん
04/05/17 04:13
とりあえず、がんがれ。
207:デフォルトの名無しさん
04/07/03 15:04
消えた「は」
208:は ◆cplnFO9T0I
04/07/04 00:17
生きてますよ。
209:デフォルトの名無しさん
04/07/14 01:46
昔から疑問だったんだけど、>>143にあるようなVRAMアドレスって
DOSエクステンダを使うとどうなるんですか?
アドレス変わっちゃうのかな?
210:デフォルトの名無しさん
04/07/14 02:01
DOSエクステンダは1MB以下のメモリはアドレスが変わらないように
マップしてくれます。その代わりぬるぽが検出できないわけで
211:デフォルトの名無しさん
04/07/14 10:32
pharlapのdosエクステンダはvram用セレクタがあるよ
212:デフォルトの名無しさん
04/07/14 16:58
前に他のスレで伺ったらスレ違いとのことでしたので、
こちらでお尋ねしてもよろしいでしょうか?
VCでCUIのプログラムを作ったのですが、
Windows(XP/200/98等)内のDOSプロンプトでは動作するのに、
Windows98の起動ディスクで起動したDOSプロンプト内では動作しません。
Win32APIは使っていません。
調べた範囲ではSTUBが動作してしまっているようなのですが、
どうすればこの場合STUBではなく通常動作させられるのでしょうか?
213:デフォルトの名無しさん
04/07/14 17:08
最近のVCはDOS用プログラム作れないからCUIでビルドしても無理
DOS対応コンパイラを探せ
214:デフォルトの名無しさん
04/07/14 17:20
TurboC++とかだな
215:212
04/07/14 17:32
>>213 , >>214
ありがとう
216:デフォルトの名無しさん
04/07/14 18:44
Digital MarsとかもDOS吐けるでしょ。
217:デフォルトの名無しさん
04/07/16 10:36
お分かりになる方がいらしたら教えていただきたいのですが・・・
MASMver5で作ったマンデルブロ集合計算プログラム( .387ディレクティブ
で有効にした浮動小数点命令を使用してます)なんですが、IBMのDOS5J
の下で実行させると45分もかかるのに対して、WIN98SEのDOS窓では
4分程で終了します。どうしてこんなに実行時間に差がでるのか?と不思議に
思っています。何が原因でしようか。
CPUはATHLON2000+で、マ・・集合計算プログラム中でEMMS命令により
MMX命令を禁止させてます。(EMMS命令を追加してやらないと浮動小数点
命令が正常に実行されません)
よろしくお願いします。。
218:デフォルトの名無しさん
04/07/16 10:46
SEは優秀だから
219:デフォルトの名無しさん
04/07/16 14:44
>>217
計算だけ? 描画もしてる?
DOS窓はフルスクリーン?
220:217
04/07/16 19:01
>>219様
レス、ありがとうございます。
DOS窓はフルスクリーンで、計算と同時に描画も行っています。
221:デフォルトの名無しさん
04/07/16 19:15
>>220
試しに計算だけで比べてみるといい。
DOSの描画はVGA互換モードだから遅いのかな。
222:217
04/07/16 19:39
>>221様
ありがとうございます。
ご指摘のようにDOSでの描画は、BIOSのサービス(ファンクション番号
0CH)を利用しているため遅いです。正確に測ったことはありませんが、
単純に点を打っていくだけでも、400*400の面いっぱいを描くのに数十
秒位かかったように記憶しています。
223:デフォルトの名無しさん
04/07/26 01:30
XPでLSI-Cを使おうとすると、uasgeが空行になっちゃうんですが
対処法あります?
224:デフォルトの名無しさん
04/07/26 07:47
>>223
状況がよく分からんのでソース貼ってくれ。
実行結果も。
225:デフォルトの名無しさん
04/07/26 10:56
>>224
いやただたんに
$lsic
(謎の改行(usage分?))
$
こんな感じなんですよ
226:デフォルトの名無しさん
04/07/26 13:13
一回command.com起動汁
XPってDOSコマンドが表示されない時があるんだよな・・・
227:デフォルトの名無しさん
04/07/26 15:30
NTVDMとやらが悪さしているようでガスね
毎回command.com立ち上げるのめんどいんでこれを機にDOSBOX入れまス
228:デフォルトの名無しさん
04/07/26 20:43
DOSBOXってこれ?
URLリンク(dosbox.sourceforge.net)
229:デフォルトの名無しさん
04/07/26 22:24
sou
230:デフォルトの名無しさん
04/08/01 16:53
ハードウェアを直接叩くのが面白いと聞いたので、パンチしたら壊れました。
どう責任とってくれるんですか。楽しくありませんでした。
231:デフォルトの名無しさん
04/08/01 17:05
スレ違い
スレリンク(tech板)
232:デフォルトの名無しさん
04/08/01 23:10
最近はハードウェアよりもソフトウェアに対してムカつくことが多いです。
ソフトウェアを直接叩く方法を教えてください。
233:デフォルトの名無しさん
04/08/01 23:40
>>232
右斜め45度から勢いよくやれ。
234:デフォルトの名無しさん
04/08/02 00:42
>>233
本当だな?
235:sage
04/08/02 01:31
諸先輩方に質問があります。
大変、厨房な質問ではありますがどうかよろしくお願いいたします。
(1).EXEファイルの先頭512バイトのリロケーション情報領域の事ですが、先頭1バイト目の『ファイル識別子』の種類と意味を知りたいのですがどなたかご存知でしょうか?
(2).EXE/.COMファイルのリロケーション領域について詳しく紹介されているHPがあれば教えていただきたいのですが。
現在、勉強中なのですが参考文献も減ってきており四苦八苦しております。
どうか宜しくお願い致します。
236:235
04/08/02 02:20
>(2).EXE/.COMファイルのリロケーション領域について詳しく紹介されているHPがあれば教えていただきたいのですが。
(2).EXEのリロケーション領域と.COMのPSP領域について詳しく紹介されているHPがあれば教えていただきたいのですが。
の間違いでした。スミマセン。
237:デフォルトの名無しさん
04/08/02 11:01
MSDOS拡張機能セットを買え
238:デフォルトの名無しさん
04/08/03 00:10
昔はプログラミングの資料がOSに付いてたんだったな
つーかマジな話拡張機能セットってまだ買えるの?
239:デフォルトの名無しさん
04/08/04 13:17
MSDNに載ってないか?
240:デフォルトの名無しさん
04/08/04 22:05
ここにある資料ではどうよ?
漏れは「リロケーション領域」の意味がわからんので自分で調べてくれ。
URLリンク(www.wotsit.org)
241:デフォルトの名無しさん
04/08/05 11:17
>>235
DOS PSP」でググッたら、PSPの説明ありますた。
超カメレスで、スマソ
URLリンク(www5c.biglobe.ne.jp)
242:235
04/08/06 00:33
皆さんレス有難う御座います。
>MSDOS拡張機能セット
・・・資金が不足している為、購入不可です。
>MSDN
そういえば、載っているかも知れませんね。
調査不足でした。
>>240さんから紹介して頂いたページは最高にいいですね。
ピンポイントで知りたい情報が載ってました。
その他にも色々なファイル情報があり素晴らしいページですね。
お気に入りに登録しときました。
本当に有難う御座いました。
もうちょっと精進しときます。
243:デフォルトの名無しさん
04/08/06 07:32
>>235
DOS5Aのマニュアルp295,296
「EXEファイルの構造と・・・」
URLリンク(uploda.net)
ここに飛んでupload25235.jpgをクリックしてちょ
244:デフォルトの名無しさん
04/08/07 01:39
>>233
せっかくカラー化できると思ったのに白黒に逆戻りになってしまうではないですか?
245:デフォルトの名無しさん
04/09/07 23:04
VGAの同期信号を一時的に停止させるgenericな方法ってありませんか?
246:デフォルトの名無しさん
04/09/08 21:31
VGA コントロールレジスタ」でググッたら、こんなのがありますた。
↓
URLリンク(community.osdev.info)
0x03c3:VGA動作許可レジスタ(8bit、W)
bit0:VGA動作許可(1:動作許可)
bit1-7:リザーブ
このレジスタいじったら、どうなるんだろ?
247:デフォルトの名無しさん
04/09/21 22:28:05
PCIバスボードの割り込み関係の話なんですけど、
割り込みを使用するボードを1枚挿してBIOS上で
単一のIRQ(例えば5)のみを使用するように設定して
そのベクタを書き換えた場合の割り込み処理は問題ないのですが、
複数のIRQ(例えば5と12)を使用するように設定した場合に
ベクタを書き換えた後、割り込みが発生すると
スタックオーバーフローが出て暴走してしまいます。
勿論IRQを複数使用できる設定にしていても実際使用している
IRQは1つですし、実行ファイルも同じものです。
割り込み処理の記述等で何か注意する必要があったりしますか?
248:デフォルトの名無しさん
04/09/21 22:46:52
>>247
「スタックオーバーフローが出て暴走してしまいます。」
スタックポインタのチェックコードが有効のままになっていて、
割り込みルーチンであぼんしているわけじゃなくて、本当にスタックを
食いつぶしているってことですか?
249:デフォルトの名無しさん
04/09/21 22:53:56
interrupts?で追い確認?
250:デフォルトの名無しさん
04/09/22 06:15:23
>>248
割り込みを発生させた途端、
Internal Stack Overflow
System Halted
のようなメッセージが画面に表示されて
止まってしまうような状況です・・・。
このメッセージ自身DOSで出してるので
恐らく実際スタックを潰しちゃってると
思うんですが・・・。
251:デフォルトの名無しさん
04/09/22 10:56:42
>>250
割り込みの発生ペースは上がってますか?
config.sys で STACKS=64,512 とか指定してみるとどうでしょう。
252:デフォルトの名無しさん
04/09/22 20:42:14
>>251
割り込みトリガそのものは外部のスイッチから与えてるので
発生している割り込みは1回だけだと思います、多分。
スイッチのチャタリングが発生してる可能性もあるかも知れませんが、
上手くいくパターンでは1回の割り込みしか発生していませんでした。
しかし駄目なパターンの場合はその1回目で例のメッセージが
出てしまうんですよね・・・・。
config.sysの変更については今その環境が無いので
試せませんが明後日に試してみようかと思います。
253:デフォルトの名無しさん
04/09/24 21:28:58
ん~駄目でした・・・・orz
でもどうやら駄目なケースの場合は何故かベクタの書き換えが
上手くいっていないようです。
今日も色々試したんですがサッパリ・・・・もうどうすれば(ノД`)
254:デフォルトの名無しさん
04/09/25 19:06:54
すみません。MS-DOS 6 の Files/FCBS/Buffers/Lastdrive/stacks を
UMBやHMAに持ち上げるプログラムありませんか?
PC-98 用なら何とかありますが、DOS/V用がありません。
無ければ作ろうと思いますので、資料でも可。
255:デフォルトの名無しさん
04/09/25 19:41:59
DOSでプログラミングと言えば、ボーランドが昔のDOS用の製品を
まとめて売り出しているが、買う香具師いるのか?
URLリンク(www.borland.co.jp)
256:デフォルトの名無しさん
04/09/25 22:00:10
いません。
どうせあと二年もすれば無料になるよ。
257:デフォルトの名無しさん
04/10/04 17:23:32
Windowsが普及しきってからPCを使い始めましたが
なぜかDOSに惹かれるので、DOSコマンドも覚えました。
今からDOSプログラミングを始めようと思ったら
どういった手段で資料を集めればいいでしょうか?
大きい本屋になら未だに並んでるのか、Web上で足りるのか、諦めるしかないのか・・・
258:デフォルトの名無しさん
04/10/04 18:13:52
どんなことをなさりたいのか分かりませんが、DOSのシステムコールの説明
なら、DOSの拡張セット(NECのDOSの場合)にマニュアルが添付されて
ました。が、今でも販売されているかどうか? オークションに出るかもしれ
ませんね。BIOSサービスとかハードウェア関係は、CQ出版社が昔、解説本を
多数出してましたが、今でも在庫があるかどうか?
259:デフォルトの名無しさん
04/10/04 18:35:31
コマンドがどうとかっていうことが興味の方向なら、
Cygwin でも入れて perl とか awk その他を覚えてゆくのが良いような気がする。
260:デフォルトの名無しさん
04/10/04 18:41:22
>>254
PACK for WIN GOLD 98後期版」なるCDブックにENVHI.EXEという
フリーソフトが収録されていて、これが「一番親のcommand.comの
環境変数をUMBに追いやって、ほんの少しだけ空きメモリを広くできる
かも知れません。」なのだそう。こういうのを差しているのかな?
激しくカメレスで、スマソ
261:デフォルトの名無しさん
04/10/04 21:39:45
>>254
MSDOS7なら全部~Highがあるんだけどそれじゃだめだよな。
262:デフォルトの名無しさん
04/10/06 13:21:53
>257です。
コマンドラインで作業をしたいという訳ではなく、>258の仰るようなことに興味があります。
資料はオクで探すしかないようですね。ありがとうございました
263:デフォルトの名無しさん
04/10/06 23:09:24
>>262
URLリンク(www5c.biglobe.ne.jp)
264:デフォルトの名無しさん
04/10/06 23:26:34
すみません。
C言語 dos で
msecの時間を表示したいのですが、
どのようにすればよいでしょうか?
よろしくお願いします。
よろしければプログラム貼り付けてください。
265:デフォルトの名無しさん
04/10/11 18:11:12
hoge
266:デフォルトの名無しさん
04/10/11 20:17:02
>>263
アセンブラのコンパイラってなんだ???
267:デフォルトの名無しさん
04/10/11 20:42:12
>>264
環境依存です。
268:デフォルトの名無しさん
04/10/12 07:43:54
>>264
読解力不足のせいで意味がわかりかねるのですが、もしmsecがミリセコンドの略で
あり、また、何等かの現象をパソコン内臓のタイマを利用してミリセコンド単位で
計測、表示したいというのが>>264氏の希望であるのならば、これが役に立つかも?
ただし、NECの9801の場合で、しかもアセンブリ言語です。 ↓
速水さん、許してちょ ↓
URLリンク(ludwig.kir.jp)
URLリンク(ludwig.kir.jp) ↓
URLリンク(ludwig.kir.jp)
所謂DOS/V機の場合、最近のマザーボートはWIN2000以降のOSを前提に
設計されているようなので、タイマIC8253完全互換の機能をサポートしてる
のどうかとかアドレスがオリジナルPC/AT機と同じかどうかは?ですね。
269:デフォルトの名無しさん
04/10/12 16:27:43
DOSでtimeGetTime()見たいのってないの?
270:デフォルトの名無しさん
04/10/12 23:40:56
ない。
DOS時代はタイマICに直接アクセスするとか、
VSYNC割り込みトラップして自分でカウントするとかでなんとかしてた。
271:デフォルトの名無しさん
04/10/12 23:53:23
URLリンク(www.vector.co.jp)
272:デフォルトの名無しさん
04/10/13 09:17:08
そうか、タイマはFM再生とか効果音に使いそうだからやっぱりVSYNCなのかな
ありがとう
273:デフォルトの名無しさん
04/10/13 15:20:56
>>268 の貼ってくれたスキャンみてて思ったんですけど
outのあと何クロックはoutの結果に依存した処理をしちゃいけない
とかを解説したとこってないですか?
274:デフォルトの名無しさん
04/10/13 16:43:53
URLリンク(anabuki.ec.u-tokai.ac.jp)
275:デフォルトの名無しさん
04/10/13 20:11:09
>>264
いろいろ書いてあります↓
URLリンク(www.webtech.co.jp)
> o カレンダ時計割り込み搭載機種では、MS-DOS環境でHRTIMER.SYSというデバ
>イスドライバを組み込むことでDOSファンクションで1/100秒単位の時刻を
>取得することが可能である。
URLリンク(www.webtech.co.jp)
276:デフォルトの名無しさん
04/10/20 18:47:58
DOS
277:デフォルトの名無しさん
04/10/26 18:57:56
上げてみるクスコ
278:デフォルトの名無しさん
04/10/26 19:06:53
32Bitコンパイラで「int 10h」
のシステムコールを使うとバグるんですが
32bitコンパイラでDOSのビデオモードの
変更とかどうやってやるんですか?
教えてください、お願いします。
279:デフォルトの名無しさん
04/10/26 19:16:45
環境ぐらい書け
280:デフォルトの名無しさん
04/10/26 20:31:00
一般的なことしか書けませんが、プロテクトモードではIDTを記述して
やらないと割り込みが使えないはずですが、この点はいかがでしょうか。
32bitコンパイラに関してはド素人なもので、こんなことしか書けません。
失礼しました。
281:デフォルトの名無しさん
04/10/26 22:15:04
ただ単にWindowsの32ビットプログラムでやろうとしているだけだったりして。
282:デフォルトの名無しさん
04/10/26 22:19:01
想像で語るのはやめようや
283:デフォルトの名無しさん
04/10/26 22:32:55
だったら環境かけよボケが
284:デフォルトの名無しさん
04/10/28 07:09:47
>>281
けっきょくこれか?クズが!
285:デフォルトの名無しさん
04/10/28 07:19:05
>>278
リアルモードにおりてから実行妹汁
286:278
04/10/29 18:09:42
>>280,285
有難うございました、やってみます
環境はBorland C++5.5でMEです。
其の他の人もどうもすみませんでした。
287:デフォルトの名無しさん
04/10/29 22:25:06
281の言う通りでしたとさ。
288:デフォルトの名無しさん
04/10/30 00:46:03
DOS窓という通称の弊害がこんなところに
289:デフォルトの名無しさん
04/10/31 07:42:50
DOSエクステンダーってどうやって使うの?
教えてエロい人(;つД`)
290:デフォルトの名無しさん
04/10/31 14:15:37
マヌアルを小便ちびるまで嫁
291:デフォルトの名無しさん
04/10/31 20:29:10
manual自体入手しづらくないか?
292:デフォルトの名無しさん
04/11/01 17:07:21
言い訳はトイレに行って一人でして下さい
293:デフォルトの名無しさん
04/11/02 15:19:28
まにゅあるなんてもうねぇだろ
294:デフォルトの名無しさん
04/11/02 21:03:46
マニュアル付きDOSエクステンダ (EXE386)
URLリンク(www.vector.co.jp)
処理系も欲しいなら
Digital Mars C++ (X32) (コンパイラはWin32アプリ)
URLリンク(www.digitalmars.com)
Open Watcom (DOS/4GW) (こっちはDOS上でもコンパイルできる)
URLリンク(www.openwatcom.org)
295:デフォルトの名無しさん
04/11/06 14:35:47
Digital MarsとOpen Watcomって
とっちが使いやすい?
296:デフォルトの名無しさん
04/11/08 20:43:59
正直俺も仮想8086モードでINT関係が使えん何故だ・・・・
297:デフォルトの名無しさん
04/11/09 16:33:34
Open Watcomって商用では使わない方が良いって聞くけど何で?
298:デフォルトの名無しさん
04/11/09 16:45:12
>>297
何故そう言った奴に聞かない?
299:デフォルトの名無しさん
04/11/10 18:40:55
噂とかで流れてんじゃねーの( ´ー`)フゥー...
300:デフォルトの名無しさん
04/11/14 16:49:57
>>297
商用で使ってはいけないとライセンスに書かれているからです。
301:デフォルトの名無しさん
04/11/14 23:04:29
マジッスカ???
302:デフォルトの名無しさん
04/11/15 09:30:55
マジッスヨ???
303:デフォルトの名無しさん
04/11/16 16:59:11
DOS画面で、入力内容とかメッセージとかをファイルに出力するコマンドがあったら
教えて下さい。
304:デフォルトの名無しさん
04/11/16 17:10:11
>>303
質問があいまいだな
COPY CON filename や ECHO 、リダイレクトなど。
305:デフォルトの名無しさん
04/11/16 17:29:14
>>303さん
レスありがとうございます。
DOS画面の表示内容をそのままファイルに出力したいのです。
長いバッチで古い上の方が消えてしまうもので、
それを全て記録したいのです。
初心者なのでいまいちうまく説明できなくてすみません。
306:デフォルトの名無しさん
04/11/16 17:36:50
>>304さんありがとうございました。
リダイレクトでできました。
即レスありがとうございます。
307:デフォルトの名無しさん
04/11/22 16:29:27
308:デフォルトの名無しさん
04/11/24 15:25:49
[Windows]初心者~管理者まで必読!コマンドライン(DOS Pt.3)
スレリンク(win板)
309:デフォルトの名無しさん
04/12/07 23:03:00
アスキー出版局の、PC-9801スーパーテクニックっつー本
誰かいらんけ?
310:デフォルトの名無しさん
04/12/07 23:16:35
>>309
図書委員の権限発動して高校の図書館に入れさせてコピーした記憶のある懐かしい代物だなw
311:デフォルトの名無しさん
04/12/09 23:03:50
あなたを詐欺罪で訴えます。
312:デフォルトの名無しさん
04/12/10 13:39:44
>>2 >>109
今更だが、パッチってこれだな。
URLリンク(groups.google.com)
313:デフォルトの名無しさん
04/12/10 15:10:04
>>312
まぁあれだ、MSに対向するためのみの意義しかないグラフィック機能を除けば今でもそれなりだろうね。
少なくともLSI-Cを使うよりも16倍いい。
#あれはあれで、悪くはないのだが。
314:デフォルトの名無しさん
04/12/10 15:32:19
LSI-CはLFN libraryがあるから、Win/DOS両方で使えるような小物を作るのに重宝している。
315:デフォルトの名無しさん
04/12/12 21:55:24
dosのフォントが気に入らない。変更するにはレジストリをいじるしかないのかな?
316:デフォルトの名無しさん
04/12/12 22:02:34
そりゃDOS窓やろ
317:デフォルトの名無しさん
04/12/12 22:05:17
もし窓じゃないDOSならCONFIG.SYSをいじって下さい。
318:デフォルトの名無しさん
04/12/14 13:58:46
319:デフォルトの名無しさん
04/12/16 15:04:05
DOSってなんどす?
320:デフォルトの名無しさん
04/12/18 16:37:45
Turbo C + nasm + alink => 16bits DOS EXE
をしているのですが、どうもうまくいきません。
ASMからC関数はよべるのですが、
CからASM関数をよぶとエラーになってしまいます。
それから、Cから指定されたポインタはスタック内でどのようになっているのでしょうか。
たとえば、
mov ah,09h
mov dx,[bp] ;<-ここがよくわかんない
int 21h
というように、ASM側でどのように指定してよいかわかりません。
どなたか教えていただけませんか?
321:デフォルトの名無しさん
04/12/18 16:57:42
DOSで動作するMASMの6か5.1ってフリーになってないのかな。
322:デフォルトの名無しさん
04/12/18 17:37:39
セグメントディスクリプタを書いてないんじゃないかと E.S.P.
323:デフォルトの名無しさん
04/12/18 18:16:12
>>320
FAQ
勉強してから質問しれ
324:320
04/12/18 18:24:44
>321
MASM はサイズが大きすぎるので、ちょっと。。。
>322
せぐめんとでぃすくりぷたとは??
325:320
04/12/18 18:36:14
>323
質問の説明が悪かったですね。。
まず、ASM関数 _puts を用意します。
関数内では、
ah=09h
ds:dx=buffer
int 21h
を処理するようにします。
そして、Cからこの関数を呼び出したいとします。
セグメントが違う(僕の勘違いかもしれませんが)ので、
mov ah,09h
mov dx,[bp] ;[bp]=Cの引数
int 21h
とすると、ゴミが表示されます。
という内容でした。
326:デフォルトの名無しさん
04/12/18 19:13:05
>>325
引数は正しくわたされてるか
_pusは正しく動作するか
C側のオブジェクトは確保されているか
これらを確かめた上で
tcのローカル変数を処理したいのならば([bp]と書いてあるので)、スタック上に確保されている
よってDSで処理する_putsに適合させることはできない。(セグメントオーバーライドでも不可)
DS上の別領域にでもコピーする
ただし、small modelならばSS=DSなので問題は起きない
327:デフォルトの名無しさん
04/12/18 19:52:37
つーか、コンパイラにアセンブリ出力させてよく見ろ。
328:デフォルトの名無しさん
04/12/18 21:52:29
ACPIをDOSでコントロールしたいのですが、どこかにソースかライブラリが落ちていないですか?
329:デフォルトの名無しさん
04/12/18 22:38:48
俺はEPSONのPC386からぶっこぬいてきたフォントをTerminalの14ptに突っ込んで使ってるので
DOSの時代からWin95/98/2000を経てXPのコマンドプロンプトまで同じフォント。
ついでにLinux上のX-Winodwも一緒
330:デフォルトの名無しさん
04/12/18 22:53:51
日記は(ry
331:デフォルトの名無しさん
04/12/19 04:18:23
w
332:320
04/12/19 08:57:41
>327
引数の受け渡されているところが、なまなましく見ることができ理解できました。
ただ、C側のアドレスに関しては解決できません。
extern void putc( char c);/*ASM関数*/
char* ss="Hello World!\n$";
putc( *ss);/*表示されるのは,ゴミ*/
相性が悪いのでしょうか?
333:デフォルトの名無しさん
04/12/19 09:02:13
asm以前にCもわかってなさそうだな・・・・・
334:デフォルトの名無しさん
04/12/19 09:04:47
>>333
俺も全く同じ事を思った。
>>332
>相性が悪いのでしょうか?
プログラミングとあなたの相性が悪いせいかもしれない。
335:デフォルトの名無しさん
04/12/19 09:10:43
なんせ完全な解が出てるのに無視してる
336:320
04/12/19 09:29:04
ソースです。ご指摘、お願いします。
NASM -f obj start.nas
TCC -c main.c
ALINK start.obj main.obj -oEXE -o test.exe
;start.nas
segment .text USE16
extern _main
..start:
call _main
mov ax,4C00h
int 21h
global _putc
_putc:
push bp
mov bp,sp
add bp,4
push dx
mov ah,02h
mov dl,[ss:bp]
int 21h
pop dx
pop bp
ret
segment stack stack
resb 100h
stacktop:
337:320
04/12/19 09:29:34
/*main.c*/
extern void putc ( char c);
void main ( void)
{
char* test="Hello World!\n$";
putc( 'i');/*"i"表示*/
putc( *test);/*ゴミ表示*/
}
338:デフォルトの名無しさん
04/12/19 09:38:36
だからCの勉強をしなさいって。
339:デフォルトの名無しさん
04/12/19 09:41:24
"Hello World!\n$"
なんの意味があるんだ最後の$…
340:デフォルトの名無しさん
04/12/19 09:42:28
うーん・・・・まず2chの勉強が先かと・・・・・・・・
まずはsageと打鍵する練習
341:デフォルトの名無しさん
04/12/19 09:42:58
じゃなかった。この原因は。
Cの「スタートアップ」と呼ばれるものが何をしているか
もっとはっきり言えば、DS,ES,SSは誰がいつ設定しているのか、と。
342:デフォルトの名無しさん
04/12/19 09:44:54
それもCの勉強なんだがな
343:320
04/12/19 10:21:50
"Hello World!" のセグメントは、>326 の言ったとおり取得できないんでしょうか?
>341
スタートアップについてはよくわかりません。。
バイナリ初心者なもので。。
344:デフォルトの名無しさん
04/12/19 10:39:15
うひょひょひょ。
ヘルプ見ろ。
サンプル見ろ。
ヘルプ見ろ。
サンプル見ろ。
関数の使い方書いてあるだろ。
初心者はそれ真似することからはじめろよw
345:デフォルトの名無しさん
04/12/19 10:44:38
char* ss="Hello World!\n$";
putc2( *ss);
mov ah,09h
mov dx,[bp + 0]
mov ds,[bp + 2]
int 21h
としてみてください・・・
346:デフォルトの名無しさん
04/12/19 10:50:48
char[] ss={"Hello World!\n$"};
putc2(ss);
mov ah,09h
mov dx,[bp + 0]
mov ds,[bp + 2]
int 21h
としてみてください・・・
347:320
04/12/19 10:58:46
訂正です。
"Hello World!\n$" =訂正=> "Hello World!\r\n$"
>345
ASM関数
_puts:
push bp
mov bp,sp
add bp,4
push dx
push ds
mov ah,09h
mov dx,[bp + 0]
mov ds,[bp + 2]
int 21h
pop ds
pop dx
pop bp
ret
を追加した後、C側で puts( ss); としたところ、これもゴミが出てきます。。。
348:デフォルトの名無しさん
04/12/19 11:07:36
半可通が教えるクンして泥沼プ
またーりオチ
349:デフォルトの名無しさん
04/12/19 11:14:10
よくこんなんで、nasmとかalinkを使うよな。
トラブルが全く切り分けられないのに、標準以外のツールなんか使うなよ。
350:デフォルトの名無しさん
04/12/19 11:38:52
typoっぽいケアレスが気になるんだけど、何回も書いているから本当に理解してないのかも・・・・・・
351:デフォルトの名無しさん
04/12/19 12:34:28
しかし、ここの住人はキモイな
ここまで性根が腐ってるとは。。。
よっぽど現実社会じゃ、みじめでいじめられてるんだろうんなw
352:デフォルトの名無しさん
04/12/19 12:53:07
ASM関数
_puts:
mov bp,sp
push dx
push ds
mov ah,09h
mov dx,[bp + 2]
mov ds,[bp + 0]
int 21h
pop ds
pop dx
ret
としてみてください・・・
353:デフォルトの名無しさん
04/12/19 13:12:31
手取り足取り指導してる方がよっぽど醜悪
これがわからない内は引き篭もってろ
354:\________/
04/12/19 14:10:09
∨
/ ̄ ̄ ̄ ̄\
( 人_____,,)
|ミ/ ー◎-◎-) ボクハ ホントウハ ツヨインダゾ・・・ブツブツ
(6 (_ _) ) カタカタカタ
| ∴ ノ 3 .ノ ______
ヽ、,, __,ノ | | ̄ ̄\ \
/ \.____| | | ̄ ̄|
/ \___ | | |__|
| \ |つ |__|__/ /
/  ̄ ̄ | ̄ ̄ ̄ ̄| 〔 ̄ ̄〕
355:デフォルトの名無しさん
04/12/19 14:17:57
>>351
絶妙な釣りと、釣りに気づきながら悪ノリしているこのスレの常連の構図だが。
356:デフォルトの名無しさん
04/12/19 14:30:58
過疎スレで釣りをする人間がいる訳ないし(ヒマな引き篭もりほど
そんな発想をするんだろが)、こんな過疎スレでいつもの構図も何もない。
悪ノリと言っても、みじめな自分の社会生活のウサ晴らしに
初学者をいびってるだけだろうが。
顔だけでなく精神まで腐ってちゃ救いようがないな。
全く内外ともに絵に描いた様なキモオタだな。
だから何時までもバカにされてみじめなんだよ。耳が痛いだろう。
アンタらは、もう一生救われないよ。
357:デフォルトの名無しさん
04/12/19 14:33:13
久しぶりの餌なんだから、もっとゆっくり食べようよ
358:デフォルトの名無しさん
04/12/19 14:38:33
魚が逃げちゃうよ。orz
359:デフォルトの名無しさん
04/12/19 14:48:02
初学者の割に、他人のアドバイスを聞く耳を持ってないようだがw
耳に心地良い(そして間違ってるwww)アドバイスについて逝くしwwwww
360:デフォルトの名無しさん
04/12/19 14:53:48
wを連打してるのが痛々しい 悔し泣きしてるのか?
361:デフォルトの名無しさん
04/12/19 21:45:00
他のasmスレに逝ってないようだし、本当に釣りだったかも
362:デフォルトの名無しさん
04/12/19 21:47:40
とりあえずメモリモデルについて調べろ、引数がstackにどう積まれるか、だな
363:デフォルトの名無しさん
04/12/19 22:10:00
何を逝っても無駄・・・・・誰の話もきいちゃいなかったし・・・・・・・・
364:デフォルトの名無しさん
04/12/19 22:57:13
だーかーらー、釣りだってばよ。
365:デフォルトの名無しさん
04/12/20 00:52:20
こんなリアルっぽい釣りがあるかよ
366:デフォルトの名無しさん
04/12/20 12:54:55
リアルっぽいからこそ釣れるんだろ。
367:デフォルトの名無しさん
04/12/20 13:34:37
おまいらピラニアかよ
368:デフォルトの名無しさん
04/12/20 14:29:30
本物はどこかふざけてるんだよ。
今回はそれがない。
369:デフォルトの名無しさん
04/12/20 16:47:10
( ´・_・`)320タン、ちゃんとCの勉強してるかなー
370:320
04/12/21 00:30:55
すいません。レス遅くなっちゃいました。。
なかなかうまくいかないので、最初からまた調べ直そうと思います。
教えてくれたみなさん、わざわざありがとうございました。
またつまずいたら、ずうずうしいながら質問させて頂きます。
その時は、もう少し高度な話題ができたらなと思います。
(マジレスでした。。。)
371:デフォルトの名無しさん
04/12/21 01:04:57
もう一度だけまじめに書くけど、>>337がうまく動かないのは、
コンパイラは文字列リテラル "Hello ..."がDGROUPのセグメントにあると仮定したコードを吐いているのに
DSが別の領域を指しているため、全然別のデータを読んでいるから。
DSを設定するのはスタートアップ(TCCならc0x.obj)で、
コンパイラがリンカを呼び出すときに、これをリンクしている。
とりあえず、アセンブラコード内でcall _mainするのをやめて
単にCのソースにアセンブラの関数をリンクして動かしてみ。
372:Help
04/12/21 01:36:21
どなたかご存知でしたら教えてください。
C#で作成したDLLからVB6へイベントを通知する方法を
ご存知でしたら教えてください。
VB6は、C#記述のInterfaceをサポートしていないので
デリゲートでイベント通知がうまく出来ません。
お願いします。
373:320
04/12/21 01:44:46
>371
その方法は何度かためしたのですが、
Error: Fixup overflow in module main.c at _TEXT:000E, target = _putc
という感じで、リンクが出来ませんでした。。
374:デフォルトの名無しさん
04/12/21 01:56:07
じゃあ、コンパイラの出力を参考にセグメント指定をしなさい。
_TEXT segment byte public 'CODE'
みたいな奴。(byteかwordか忘れた)
そして、_putcを
_TEXT segment
assume cs:_TEXT
_putc proc
...
_TEXT ends
と書く。
データ領域があったら、DGROUPも設定する。
うろ覚えのまま書いてるから、正確にはコンパイラの出力をコピーするように。
もし、asm側から_mainを呼ぶなら、call _mainの前にDSを設定する。
もちろん、呼び出す所はassume cs:_TEXTとされた_TEXTセグメントの中。
375:デフォルトの名無しさん
04/12/21 04:21:10
なんでも教えりゃわかるってもんじゃないんだよ
376:デフォルトの名無しさん
04/12/21 08:53:39
INT28
377:デフォルトの名無しさん
04/12/22 03:07:11
INT 1B
378:デフォルトの名無しさん
04/12/22 19:33:56
>>377
clc/stc/cmc
379:kai
04/12/27 00:44:06
dos用に作られたCプログラムをwindows上で動かすことはできないのですか?
380:デフォルトの名無しさん
04/12/27 00:46:59
>>379
自分で試せよ。
381:デフォルトの名無しさん
04/12/27 13:49:21
基本的に動く。ただしNECのPC98のハードウェア、BIOSに依存したものは動かない。
その場合98エミュレータ上では動く。
382:デフォルトの名無しさん
04/12/28 21:52:20
餌がコネェ
383:デフォルトの名無しさん
05/01/17 00:57:24
CGの技術・性能が向上していく一方で、テキストだけ、あるいはラインアートな絵といった
ゲームにも大きな魅力を感じている人間がここにいる。
ミステリーハウスとかZorkとかNethackとか。どういうわけだか好きなんだ。
かといって派手な演出が嫌いというわけでもないんだが、とにかく
今もDOSでプログラミングとかしている人は尊敬するわけです。
がんばってくださいありがとう保守。
384:デフォルトの名無しさん
05/01/19 00:32:50
DOSはもう流行ることもないんだろうけど
消えることもないんだろうナ‥
せっかく書くんだ 一番好きなOSで動かすのが当然だろう
385:デフォルトの名無しさん
05/01/27 10:57:57
TurboC++1.01を使ってるんですが286までしか扱ってくれないので
386レジスタを使おうとしてもコンパイルエラーが出ます
なんとかできませんか
アセンブラは386対応のものを使ってます
int main()
{
asm{
mov eax,0 ; eaxって何?って言われる
};
return 0;
}
386:デフォルトの名無しさん
05/01/27 10:59:41
>>385
何故eaxを使いたいのか聞かせてくれ
387:デフォルトの名無しさん
05/01/27 11:04:44
前に 66h 埋め込んでおけばいいんじゃねーの?
TC++でどうやるかは知らんが。(emitか?)
388:デフォルトの名無しさん
05/01/27 11:22:02
>>386
386で動かすプログラムだからeax使った方が効率いいからです
>>387
コンパイラが286時代のものなのでそもそもeaxレジスタは存在していなく
未定義の識別子扱いをしてパースしてくれないんです
389:デフォルトの名無しさん
05/01/27 11:24:16
go WATCOM with DOS-extender to get the 32bit-full-power!
390:デフォルトの名無しさん
05/01/27 11:41:55
>>388
だから、mov eax,0の代わりに、mov ax,0にしてその前に66hを埋め込むってこと。
391:デフォルトの名無しさん
05/01/27 12:00:07
こうですか…
mov eax,0
db 66h
なんと言うか可読性がすごいことになりそうですね…
392:デフォルトの名無しさん
05/01/27 12:01:41
>>391
ホームラン級の馬鹿だな
393:デフォルトの名無しさん
05/01/27 12:07:45
ワロタ
394:デフォルトの名無しさん
05/01/27 12:12:49
その程度の認識で効率がどうのこうの言うのは背伸びしすぎ
395:デフォルトの名無しさん
05/01/27 12:13:21
素直にアセンブラ使えばいいのに。タボシなんか捨てて。
396:デフォルトの名無しさん
05/01/27 17:50:51
いや、TurboC/C++は、アセンブラコードは処理できないよ。
外部のアセンブラに渡すだけ。
ていうかね、.286とか.386cって書いているの見たこと内科医?
どっか先頭の方、適当なところに入れて桶
397:デフォルトの名無しさん
05/01/28 13:19:16
PC/AT互換機用のTCなら、ボーランドのFTPサーバーから
自由にダウンロードできるようですが・・・
違ってたらスマソ
398:デフォルトの名無しさん
05/01/28 13:30:28
FTPは知らんが、HTTPなら。
URLリンク(community.borland.com)
399:デフォルトの名無しさん
05/01/30 23:36:17
BCC使ってるんですけど、
system("set /P A=\"[Y/N] \"");
system("echo \%A\%");
とやると「%A%」と表示されてしまいます。
どうしたら良いのでしょうか?
ご指導くださいませ。
400:デフォルトの名無しさん
05/01/30 23:59:03
>>399
Borland C++ の16bit版?
ていうかDOSでは set /P は使えないだろ。
>system("set /P A=\"[Y/N] \"");
>system("echo \%A\%");
system() 関数は呼び出す毎に別の環境になるので
最初の行で環境変数 A を設定しても
その値は次の行には引き継がれない。
system("set /P A=\"[Y/N] \" && echo \%A\%");
とするか、バッチファイル作って呼び出せ。
401:デフォルトの名無しさん
05/01/31 03:06:39
system("echo %A%");
402:デフォルトの名無しさん
05/02/07 03:02:15
バッチファイル以外で %環境変数% が使えるようになったのはWin95付属のDOS7.0以降だな。
403:デフォルトの名無しさん
int 2ch =05/04/02(土) 07:57:13
URLリンク(www.256b.com)
URLリンク(www.256b.com)
404:たかのぶ
05/05/09 21:58:11
こんなん叩いたら↓
if not exist z: net use z: \\Server01\e$ PPPPP /user:XXXXXX
こんなもんがでたYO↓
z: は \\Server01\e$との接続を記憶しています。
記憶している接続に上書きしますか?(Y/N)
藻前ら分かる香具師はいますか
405:デフォルトの名無しさん
05/05/11 05:51:11
command.comは気が狂いだすから持ち出すのやめてくれ
406:デフォルトの名無しさん
05/05/11 16:01:09
うはwwwwwcommand.comおwwww
いいけつしとるのぉwwwwおkwwww
407:デフォルトの名無しさん
05/06/18 23:11:50
初心者です。突然すいません。急いでいるもので。
○○.EXEというDOSプログラムの中身を見るのはどうしたらよいのですか?
408:デフォルトの名無しさん
05/06/18 23:15:13
バイナリエディタで開け
409:デフォルトの名無しさん
05/06/18 23:16:02
>>407
d>debug ○○.EXE
410:デフォルトの名無しさん
05/06/18 23:20:00
ありがとう。
定番バイナリエディタってどれです?
(409は難しそう)
411:デフォルトの名無しさん
05/06/18 23:33:43
16進でみたいだけならviでもhidemaruでもMifes(綴分からん)でもいいけど。
中味を見るというのがよく分からん。
ひょっとしてexeからソースを復元したいの?
412:デフォルトの名無しさん
05/06/18 23:36:22
はげまるって、 まだDOS版売ってるの?
413:デフォルトの名無しさん
05/06/18 23:53:04
>>411
難しいことはよく分かりません。
とりあえず「Stirling」ってやつVectorで定番って書いてあったからそれで開いてみた。
4D 5A 20 01 6C 00 74 00 20 00 C4 09 FF FF 52 0D MZ .l.t. .ト...R.
↓
↓
↓
延々と続いてる
初めて見ました。(初心者です)
右のほうは何なんですかね?文字化けしてるのかな?
DOSプログラムでNotePCのバッテリー情報を確認できるツールが有るんだけれど
機種によって使えたり使えなかったりするので、どこかを変えれば何とかなるのかなって思って…
だけどこの数字の羅列の意味はよく分からないな…
414:デフォルトの名無しさん
05/06/18 23:53:10
dos限定だったのか。
エスパーな会話しちゃったw
415:デフォルトの名無しさん
05/06/19 00:02:25
>>413
それがプログラム
左が16進数で、右がテキストエディタで開いたときのものと思え
ってか、お前がバイナリエディタで開いたバイナリは
改編を認めてるのか?
ライセンス違反だぞ
416:デフォルトの名無しさん
05/06/19 00:03:48
このスレッドの名は
DOSでプログラミング
"で"なんだから、DOSを使うのが前提でしょ?
コマンドプロンプトではなくDOS
ずっと俺はそう思ってたけど
417:デフォルトの名無しさん
05/06/19 00:10:55
>>416
winに付属しているコマンドプロンプトしか頭になかった。
正直すまんかった。
(そういや、伯父もいまだにPC98FAつかっているしな)
418:デフォルトの名無しさん
05/06/19 00:15:22
>>413
どんなプログラムか知らんがその機種にあったものを探した方が早いと思うぞ。
素人がぱっと見ただけでパッチを当てられるようなもんじゃない。
419:デフォルトの名無しさん
05/06/19 08:21:05
DOS始めるには何からやればいいの?
420:デフォルトの名無しさん
05/06/19 08:39:23
あきらめる
421:デフォルトの名無しさん
05/06/19 11:46:26
>>419
DOSのインストール
422:デフォルトの名無しさん
05/06/19 19:41:31
>>421
DOSのインストールって何
もともとあるんじゃないの?どこにあるの?
423:デフォルトの名無しさん
05/06/19 19:49:03
>>422
DOSだって昔は単独で販売されていたんだからインストーラだって存在していた。
424:デフォルトの名無しさん
05/06/19 20:15:09
>>422
WinNT系にはDOSは入っていない。
今DOS単体が手に入るのかどうかは不明。
やりたいんならWin9x系OSをインストールするとかかな
425:デフォルトの名無しさん
05/06/19 20:50:01
DR DOSでも使えばいい
426:デフォルトの名無しさん
05/06/19 21:11:03
Windows 2k/XPでもDOS起動ディスクは作れないわけではない。
URLリンク(homepage2.nifty.com)
URLリンク(homepage2.nifty.com)
427:デフォルトの名無しさん
05/06/19 21:13:34
DOS"で"プログラミング
なんだから、DOSでやろうや
Win9xでやるのもいいと思うが、そしたら絶対に
Windowsのエディタでコード書くだろ
DOSを入れろ
428:デフォルトの名無しさん
05/06/20 01:43:36
やっぱ、VB1が、とても好き。
mouse.com入れて、結構あそべます。
429:デフォルトの名無しさん
05/06/21 09:44:56
MS-DOSを使ってみて、かなり不自由だったので
ツール郡を移植したあの日々
2ヶ月後くらいに公開したら、もっと質のいいものが出回ってるとしった日
死にたくなった
あれから、2度とDOSの画面は見ていない
430:デフォルトの名無しさん
05/07/18 10:49:41
DOS上で、Windows のプログラム開発は、出来ますか?
gcc + mingw とかで。
431:デフォルトの名無しさん
05/07/18 11:03:22
>>430
MS-DOSでgccは動かないと思いますが。
432:デフォルトの名無しさん
05/07/18 12:48:01
>>430
動作確認はどうするんだよ。
433:デフォルトの名無しさん
05/07/18 13:32:58
djgpp
434:デフォルトの名無しさん
05/07/18 15:25:42
>>431
マジっすか?
というか、勝手に思っててください。
435:デフォルトの名無しさん
05/07/18 16:41:54
思うだけなら自由だしな
436:デフォルトの名無しさん
05/07/18 19:35:05
ここでいってるDOSってMS-DOSのことなの?
もし、MS-DOS限定ならバージョンはどれを指すの?
>>1を見るとハードを直に叩けるって言ってるから6.1以前の物限定?
437:デフォルトの名無しさん
05/07/20 05:25:08
ポッカーーーン
438:デフォルトの名無しさん
05/07/20 05:46:40
俺がMS-DOSを使わなくなったのはメモリの管理を阿呆みたいにし始めたからかな
439:デフォルトの名無しさん
05/07/20 11:26:23
EMSにXMS、さらにはBMSか?
440:デフォルトの名無しさん
05/07/20 17:39:37
UMB,HMA,
441:デフォルトの名無しさん
05/07/20 20:16:29
>>440
どっちもXMSの一部じゃなかったっけ?
442:デフォルトの名無しさん
05/07/21 00:14:12
そういえばそうだったかも。
ん、でもHMAはXMSのおまけで、UMBは仮想EMSのおまけだったような気も。
XMSって286以上の規格じゃなかった?
443:デフォルトの名無しさん
05/07/21 06:14:11
UMBの割り当て/解放のファンクションはXMSドライバのファンクションの一部に
いちおうなってる
URLリンク(www.ctyme.com)
EMM386を組み込まないと実際には使えないんだろうけど
444:440,442
05/07/21 17:22:29
勉強になりました。
でもこの先使うことなどなさそうな知識だ。
445:デフォルトの名無しさん
05/07/21 18:49:15
(ノ∀`)それを言わないで
446:デフォルトの名無しさん
05/07/23 07:17:32
CD-ROMドライバはネットワークドライブ(のドライバ)の一種だそうですが、ネットワークドライブの仕様について情報源があれば教えて下さい。
447:デフォルトの名無しさん
05/07/23 07:19:48
ドキュメント読めよ
448:デフォルトの名無しさん
05/07/23 14:47:28
ドキュメントはないんじゃなかったっけ?
Undocumented DOSにネットワークリダイレクタの機能を利用した
RAMディスクのサンプルが出てたけど
449:デフォルトの名無しさん
05/07/24 19:37:18
DOSでプログラミングじゃなくてDOSをプログラミングになってきた俺はどうすればいいんだろう・・・
450:デフォルトの名無しさん
05/07/24 20:55:13
>>449
用途によってはDOS互換OSもまだ需要があるから
そのままがんがれ!
451:デフォルトの名無しさん
05/07/31 21:00:23
Dos Promptでシューティングでも作りたいんだが
なんか良い解説サイトとかない?
452:デフォルトの名無しさん
05/07/31 21:01:05
こことか超おすすめ
URLリンク(www.google.co.jp)
453:デフォルトの名無しさん
05/07/31 21:31:34
俺はDOSエクステンダを自分で作ってみたい
っていうか、どういう処理をしてるんだよ
気になって夜も眠れん
454:デフォルトの名無しさん
05/07/31 22:02:59
その時の気分でプロテクトモードとリアルモードを切り替えてるんだよ
455:デフォルトの名無しさん
05/07/31 22:07:13
>>453
URLリンク(www.vector.co.jp)
456:453
05/08/01 22:08:39
>>455
おーサンクス心の友よ
457:デフォルトの名無しさん
05/08/18 23:41:51
こっちのほうが詳しそうな人がおおいので、質問させていただきます
PCIデバイスのプログラミングやっとります。
PCIデバイスで割り込みを使うには、PIC(割り込みコントローラー)の、モードをLevelトリガーモードに
しないといけないようです。そのためPCIバス対応の割り込みコントローラー(APIC?)には、IRQを部分的に
Levelトリガーモードにする機能があるようなのですが、いくらぐぐっても
らしき資料が見つかりません。
どなかた助けてください、お願いします
458:デフォルトの名無しさん
05/08/19 00:20:43
適当にハード関連の本を十冊くらい嫁
459:デフォルトの名無しさん
05/08/19 09:58:25
>>458
何もしらんくせにええかげんなこと書くなよ...
460:デフォルトの名無しさん
05/08/19 16:21:32
>>457
まずはそのデバイスがedge-trigger使えるかどうか調べてからにしな
461:457
05/08/19 19:32:06
ここで聞いた俺が馬鹿だったわ。Linuxのソースコードでも読むことにする
あばよ
>>460
Edge-triggerはPCIデバイスでは使えない、PCIデバイスは全部Level trigger
462:デフォルトの名無しさん
05/08/19 21:00:37
つか、DOSでPCIバス叩いてた奴なんて少数派だと思うぞ。
463:デフォルトの名無しさん
05/08/19 21:41:23
>>461
YMF7x4のFM音源割り込みはモロにIRQだったけどなw
INTなんか使ってねーよ
464:デフォルトの名無しさん
05/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
05/08/19 22:19:20
ごめん間違えた
(誤)PCIのIRQ割り込みは基本的にEdge trigger、しかしPCIの場合はこれをLevel triggerにしないとだめ
(正)PCのIRQ割り込みは基本的にEdge trigger、しかしPCIの場合はこれをLevel triggerにしないとだめ
466:デフォルトの名無しさん
05/08/20 11:46:50
>>464
まずはdatasheet読もうぜ
440BXとかその辺のヤツだけど役に立つだろ
('A`)ノシ URLリンク(www.intel.com)
467:デフォルトの名無しさん
05/08/20 15:38:39
>>466
Thx!、そうか、Intelの本家ページを探せばよかったのか!...
やはり0x4D0, 0x4D1の二つのポートを使うらしい。ただしIRQ1とIRQ2は絶対、Edge triggerで
Levelには変更できないそうだ、ありがとう!
468:デフォルトの名無しさん
05/08/20 22:34:31
>>467
お前英語読めねーの?
思い切り書いてあるんだが。
469:デフォルトの名無しさん
05/08/21 10:23:06
>>468
だから、上のマニュアル読んで言ってるんじゃないか。ああ、おせっかいだったか悪かったな。
「やはり...」の文脈の流れから見てわかんねーの?半島の方ですか?
後それからIRQ1,2に加えて8,13も無理みたいだな。
470:デフォルトの名無しさん
05/08/21 10:30:18
なにこれしきのことでファビョってるんだ?
471:デフォルトの名無しさん
05/08/21 12:35:44
DOS使いはレベルが低いね
472:デフォルトの名無しさん
05/08/21 13:16:05
IBM PC DOS 7.0J/V(または 2000) で REXX のプログラムの話は出て来ないものか。
473:デフォルトの名無しさん
05/08/21 13:29:58
>>467
16bit 環境でプログラムですよね?(プロテクトモードはよく知らないので)
ISA時代で使われていたテクニックそのままで良いですよ。
強いて違いを挙げるとすれば、
・大抵のPCIボードは、割り込みステータスレジスタがあり、これをクリア
しないと、割り込みハンドラからIRETしても、割り込みハンドラに再突入
する。
・PCIボードは、ISAボードと違い、割り込み共有可能。
つまり、
割り込みハンドラに突入=自分のPCIボードへ割り込みが入った
とは必ずしも言えない。
・PCIコンフィギュレーションレジスタを弄って、IRQを書き換える時、
レガシーデバイスと共有できない点に注意。
(レガシーデバイスは、レベルトリガじゃないのが、ほとんど)
まぁ、こんな所ですかね。
ところで、PCIボードを制御したいって、制御対象は産業用ですか?
産業用なら、メーカーから何がしか情報が出てませんかね?
474:デフォルトの名無しさん
05/08/23 02:01:32
>>473
産業用ではありませんNE2000互換のNICの制御を目的としております。
>割り込みステータスレジスタがあり、これをクリア
>しないと、割り込みハンドラからIRETしても、割り込みハンドラに再突入
>する。
なるほど、Levelトリガーゆえの挙動ですね。肝に銘じておきます。
あと、追加質問で大変申し訳ないのですが、LevelトリガーはEdgeトリガーとは
EOI発行のタイミングが異なると小耳に挟んだのですが、そこらへんは
どうなんでしょうか?
475:デフォルトの名無しさん
05/08/27 10:52:04
>>474
遅くなってすんません(週一で巡回しているもので)。
> あと、追加質問で大変申し訳ないのですが、LevelトリガーはEdgeトリガーとは
厳密な内部の違いになると あまり自信は無いです。
基本的には、割り込み処理を抜ける前に EOI で十分です。
(優先順位の高い割り込みへの割り込みを許す為に、先にEOIを発行するって
ワザもありとは思いますが、8259を更に弄る必要が無かったっけ?)
> NE2000互換のNICの制御
プログラムが主目的でなく、通信が主目的なら、NICに関して言えば、
メーカーさんから NDISとか呼ばれている DOS用のドライバが提供されて
いると思います。
それを採用するのも一つの手ではあります。
(100kb程度のメモリを占有するのがネックですが)
476:デフォルトの名無しさん
05/08/29 08:33:40
>>475
>基本的には、割り込み処理を抜ける前に EOI で十分です。
わかりました、ありがとうございます。
477:デフォルトの名無しさん
05/09/01 19:19:03
INT13の使い方について質問です。
AX=0x4300でIDEのHDDを書き換えようとしたら、エラーが出ました。戻り値はAH=0x01でした。
調べてみるとパラメータ異常ということで、試しにAXに代入する値を0x4100に変えて、
それ以外はまったく同じ条件でまったく同じセクタを読み込んでみると正常終了します。
読み込みが可能で書き込みのできない条件というのが、今ひとつよくわかりません。
エラーの原因と対策を教えてください。
環境は、Win98SEの起動ディスク(DOS 7.1)の上で実行しています。DOS窓ではありません。
LOCKも事前に実行しました。
マザーのBIOSも確認しましたが、HDDを保護するような項目は見あたりませんでした。
478:デフォルトの名無しさん
05/09/02 11:34:04
>>477
HDDの容量は?
479:デフォルトの名無しさん
05/09/02 22:01:32
>>478
20GBです。
その後、試行錯誤してWinMeの起動ディスクから起動すれば、正常に書き込みできることが判明しました。
いずれのケースでもCONFIG.SYSは0バイト、ドライバ類は何も組み込んでいません。
何が違うのかさっぱりです。
480:デフォルトの名無しさん
05/09/12 22:48:40
定期age
481:デフォルトの名無しさん
05/09/12 22:50:58
PentiumD使いの俺がきましたよ
482:デフォルトの名無しさん
05/09/12 22:52:39
シングルタスクOSでデュアルコアCPU...
483:デフォルトの名無しさん
05/09/12 22:53:54
>>481
そのPCはDOS専用機に汁!
484:デフォルトの名無しさん
05/09/12 23:03:13
DOSBox(エミュ)使ったほうが開発しやすくないだろうか
485:は@ c178.016.c3-net.ne.jp ◆cplnFO9T0I
05/09/16 20:42:53
>>484
グラフィックアプリ、I/O直叩き
これをやるのにはエミュじゃ無理じゃない?
486:デフォルトの名無しさん
05/09/16 21:04:28
モノにもよるが、標準的なデバイスなら大体おkなんじゃない?
最終的には実機でデバッグすればいいんだし。
487:デフォルトの名無しさん
05/09/17 20:24:01
ふつークロス開発
488:デフォルトの名無しさん
05/09/19 11:38:44
つ[ハンマー]
489:デフォルトの名無しさん
05/11/06 16:37:59
DOSでPCIでネットワーク処理って楽しそうだな(w
すなおにLinuxとかのフリーライセンスなマルチタスクOS使っておけばいいのに。
490:デフォルトの名無しさん
05/11/06 18:52:03
やれやれ、最近の若いもんはPacket Driverも知らんのか・・・
困ったもんじゃて。
491:デフォルトの名無しさん
05/11/06 19:06:14
>>479
HDDの中身はWinMeでFDISKかけてないか?Win98かMeの時にWin2000との互換性取るためにVFAT他で仕様変わってるはず
492:デフォルトの名無しさん
05/11/07 17:36:23
>>490
そんなの使ってサーバ作りたくないなw
493:デフォルトの名無しさん
05/11/09 04:28:12
>>491
INT 13でのアクセスなので、ファイルシステムは関係ありません。
ぶっちゃけ、初期化されてないHDDでもアクセスできるというか、
そもそもFDISK自体がINT13でHDDを初期化しているわけですから。
結局のところ解決できず、HDDは今のところ放置です。
そのかわり、今はUSBメモリで四苦八苦しています。
手持ちのノートパソコンをUSBメモリからブートさせたいのですが、
BIOSがタコでサポートしているディスク形式(ジオメトリ)が限られているらしく、
なかなかうまくいかなくて。
HDDエミュレーションの仕組みをよく理解していないので、MBRにパッチを当てて
動作をトレースしているところです。
494:デフォルトの名無しさん
05/11/09 18:11:50
ボリュームの排他ロックってのが必要じゃなかったっけ? たとえMS-DOSモードでも。
Meでは廃止されたのかな
495:デフォルトの名無しさん
05/11/09 23:33:29
>>494
事前にコマンドプロンプトからLOCKコマンドは実行したのですが、
それとはまた別の手続きが必要なのでしょうか?
ちょっと調べてみます。
496:デフォルトの名無しさん
05/11/25 00:59:57
ローカルにある三つのファイルをまとめて圧縮したいのですがこれをコマンドプロンプトでやるには
どうしたらいいのでしょうか?DLLはWINDOWS標準でついているものを使いたいです。
例えばC:/マイドキュメントのa.log、b.log、c.logを
c:/work/guro/の下に圧縮する場合
なんてコマンドプロンプトを打ち込めばいいのでしょうか?
どうぞご教授お願いいたします。
497:デフォルトの名無しさん
05/11/25 01:12:49
スレ違いどころか板違い。このへんででも聞け。
スレリンク(win板)
498:デフォルトの名無しさん
05/11/25 01:35:47
>>496
つ[makecab file c:/work/guro/file.cab]
499:デフォルトの名無しさん
05/11/26 05:50:37
PITなんですが、インターバル間隔として設定されている値はどうすれば取得できますか?
例えば#0の場合、40hをただINするだけでは設定値は得られないみたいなんですが・・・
何かコマンドを送って得られましたっけ?
500:デフォルトの名無しさん
05/11/26 11:02:22
あらら500
501:デフォルトの名無しさん
05/11/26 13:23:59
>>499
ググったらこんなの有った。あとはコマンド表見て考えれ
>8253/8254の動作中のカウンタの値を読み出すには、一旦ラッチコマンドを使用して値を確定させます。
>8254は他に "Read-Back command"を用いることで、現在のカウンタの状態(動作モード、OUT信号)を
>読み出すことができます。
502:デフォルトの名無しさん
05/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:デフォルトの名無しさん
05/12/01 14:52:14
age
504:デフォルトの名無しさん
05/12/22 15:26:03
DOSで動的リンクについて詳しいサイトとかってあったら教えてください。
505:デフォルトの名無しさん
05/12/22 17:40:04
AsciiNetの過去ログが詳しい。
506:デフォルトの名無しさん
06/02/09 13:51:40
PCを再起動しようと思い、INT 19Hと書いたのですが、
電源が再投入される訳ではないのですね。
Windowsを再起動したときのように、BIOSの起動からやり直すのは
どうすればいいのでしょうか?
507:デフォルトの名無しさん
06/02/09 15:23:07
>>506
JMP FFFF:0000
508:506
06/02/09 18:05:40
>>507
再起動できました!
ありがとうございます。
509:デフォルトの名無しさん
06/02/11 15:07:46
( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/
(_フ彡 / ←>>30
510:デフォルトの名無しさん
06/03/29 11:13:26
>175さんの質問に近いのですが質問です。
win2kProで現在動いているWindowsのプロセス(イメージ名)一覧
を返却するバッチを作りたいのですが、
win2kだとtasklistコマンド使えないみたいなので(XPProでは使えましたが)
困っております。どうすれば良いでしょうか?
511:デフォルトの名無しさん
06/03/29 15:22:07
>>510
これを解析
URLリンク(www.vector.co.jp)
ここってピュアDOSのスレじゃないのかな。
512:デフォルトの名無しさん
06/03/29 18:31:10
ピュアDOSなのだと思うが、質問者にピュアDOSかどうかの区別がつかないから仕方がない
513:デフォルトの名無しさん
06/03/29 19:35:10
510は区別がついてるがスレ違いってところだろ。
>>1の書き方見た感じ、VDMはHW直接叩けないからダメだとは思うね。
514:デフォルトの名無しさん
06/04/09 19:20:00
>>499
直接設定値は取得できないが、現在のカウント値を複数回読んで得られる最大の値は
かなり正確な設定値となる。
元ねたはPC-9801スーパーテクニックでシリアル通信速度を取得したい、という例だったかと。
半信半疑で試してみたら本当に正確な値が得られたのでマジびっくり。
>>501
8bit単位で入出力するからいったん16bitまるごと内部レジスタにラッチしないと正しい
カウント値が得られない場合があるんだよね。
515:デフォルトの名無しさん
06/05/13 11:07:36
MS-DOSでDMA転送を使うときに使用するメモリってどうやって確保するのでしょうか?
mallocじゃ無理ですよね?
Linuxだとカーネルメモリを確保する関数があるんですが、MS-DOSでは分かりませんでした。
516:デフォルトの名無しさん
06/05/13 13:55:34
>515
手元に資料が無く、適当に思い出しながら書いてます。
少量なメモリのDMA転送を行う場合:
普通にmallocして使ってください。
大量(1MB以上とか)なメモリのDMA転送を行う場合:
ズボラなやり方
→メモリマネージャを使ってなければ1MB以上は、DOSの管理外なので
直接書き込んでしまいます。
真面目なやり方
→HIMEM.SYSならXMS、EMM386.SYSならEMSというメモリ管理機構が
使えるので、これでメモリを確保して使います。
Ver.7以降なら、VCPIやDPMIもデフォルトで使えるかも知れません。
(そうでなくても、そういうものが使えるマネージャが大抵用意されてます)
517:デフォルトの名無しさん
06/05/13 14:04:08
>515
補足です。
Linuxと違って、DOSは全て特権モードで動いているようなものです。
カーネルは全く保護されていません。
(カーネルが置いてあるエリアを適当に0クリアすれば、いつでもクラッシュできます)
メモリも全く保護されていません。
(メモリ例外は起きません)
安心?して、自由きままなコードを書いて下さい。
518:515
06/05/13 15:15:42
>>517
mallocで大丈夫なのですね。
HDDにDMA転送でセクタ書換を行っていたのですが、
試してみるとエラーとなってしまったのでmallocの問題とばかり
思っていました。
原因は別のところにありそうなのでもう少し調べてみます。
ありがとうございました。
519:デフォルトの名無しさん
06/05/13 15:26:30
BIOSの領域ってDOSからアクセスできますか?
520:デフォルトの名無しさん
06/05/13 15:47:07
>>516
XMS/EMS(除HMA)は物理アドレス取れないからアウト。
多分DPMIでも取れない。
よってズボラなやり方推奨。
521:デフォルトの名無しさん
06/05/13 16:20:48
>>519
BIOSだろうがI/Oだろうがアクセスしまくりです。
522:デフォルトの名無しさん
06/05/13 21:39:08
計算した数値をコンソールに出力したいのですが、どうすればいいのでしょうか?
523:デフォルトの名無しさん
06/05/13 21:50:43
>>522
所謂DOS窓のことならスレ違い。
524:デフォルトの名無しさん
06/05/13 22:03:34
>>523
どこで聞けばいいのでしょうか?
525:デフォルトの名無しさん
06/05/13 23:45:18
>>524
Win32APIスレ辺りかな。つーか、聞く前に探すように。
526:デフォルトの名無しさん
06/05/14 00:25:47
>>525
サンクス。
527:515
06/05/15 11:58:06
IDE接続のHDDにDMAにてセクタを書き換えたいのですがまだ上手くできません・・・。
コンパイラはOpen Watcomを使用して、DOS-32BIT(CauseWay Executable)として
コンパイルしています。
この場合でもmallocしたメモリのアドレスをそのままDMA転送用のアドレスとして
I/O レジスタに登録しても大丈夫なのでしょうか?
物理アドレスに変換する必要とかはないでようか?
mallocにて確保したアドレスは4MBを少し超えたところになります。
I/Oレジスタへ確保したアドレスを登録しても、HDDにはアドレス0以降の内容が
書き込まれてしまいます。
どこかにサンプルソースとかないでしょうか。
528:515
06/05/15 12:56:03
>>527
Open Watcomのスレがあったのでそちらで質問してみます。
529:デフォルトの名無しさん
06/05/15 16:54:06
アセンブラの勉強をしようと思って、MASMでアセンブルしてTurboDebuggerでデバッグしよと
したら、Not a 32-bit Program と言われて拒否されました。
16ビット用のデバッガってあるのでしょうか?
530:デフォルトの名無しさん
06/05/15 17:48:04
>>529
debug, symdeb, exdeb, 16bit用のTurbo Debugger等々
531:デフォルトの名無しさん
06/05/15 18:15:52
>>530
サンクス。
16bit版のTurbo Debuggerもあるんだ。
探してみます。
532:デフォルトの名無しさん
06/05/31 19:14:48
Borland C++ 5.0って32ビットDOSアプリケーションを作れるのでしょうか?
sizeof(int)ってすると2となるので16ビットアプリケーションになっている気がします。。。
533:デフォルトの名無しさん
06/05/31 21:46:08
>>532
32bitDOSアプリケーションを作るのには別売りのDOS Power Packが必要。
DOS Power PackはBC4.0or4.5用だが非公式にはBC5.0でも動く旨の文書がどこかにあったはず。
534:532
06/06/01 00:11:18
>>533
DOS Power Packはプロテクトモードなので今回は使えないんです。
16ビットのままでもなんとか使おうと思っているのですが、__int64が未定義エラーに
なってしまいます。
16ビットコンパイラで64ビット整数を扱うのは無理なのでしょうか???
535:デフォルトの名無しさん
06/06/01 01:25:21
>>534
↓これによるとVer.5.02JのBCC32から__int64が使えるようだが
URLリンク(mulnet.net)
32bit用コンパイラでコンパイルできて 16bit用で出来ないのなら無理なのだろう。
というか普通「32ビットDOSアプリ」というとDOSエクステンダを使ったものを指すので
必然的にプロテクトモード(と仮想86モード)を使うことになるよ。
ちなみにOpenWatcomの16bitコード用コンパイラ(wcl)なら__int64が使えた。
#この場合は16bit用なので当然 sizeof(int) == 2
536:デフォルトの名無しさん
06/06/03 23:10:08
非プロテクトモードで動く32bitアプリってどんなアプリじゃ。
64bitINT型が使いたいだけってことなら、C++でlonglong型を実装すれば
いいんじゃね?
537:デフォルトの名無しさん
06/06/04 06:54:15
x86でプロテクトモードじゃない32ビットアプリ
とか言ってるような輩は相手にするな
538:デフォルトの名無しさん
06/06/04 16:35:09
リアルモードで32bitレジスタアクセスすれば32bitアプリ
・・・とは言わんよな、普通は。
539:デフォルトの名無しさん
06/07/23 02:47:00
最近のマザボでDOSを起動する時、EMSドライバがエラー起こす・・
対策方法とかあります?
それとも諦めるしかない?
540:デフォルトの名無しさん
06/07/23 06:00:36
ウチは大丈夫
情報すくなすぎ
541:デフォルトの名無しさん
06/07/27 00:22:32
>>518
PC/ATのDMAコントローラは64KBごとのブロックをまたがる位置のDMAは
出来ないのでは?
PC-98にもその制限がありDMAするデータのサイズの二倍の領域を
mallocして前半がブロックをまたがる場合には後半の領域をDMAバッファ
にして対処したことがある。
>>527
DMAコントローラには物理アドレスを与える。
Phoenix Technologiesの"PCI-ATA-DMA"は読んだ?
元のPC/ATにはIDEのDMAコントローラは無いから、各社のPCIの
ATAコントローラを直接制御するってこと?PnP大変でしょ?
542:デフォルトの名無しさん
06/07/27 08:14:38
PICやAVRでIDE叩くよりマシ
543:デフォルトの名無しさん
06/07/28 22:10:52
INT 25h や 26h での質問。
セクタライトするとき lock unlock しないといけないはずだけど、どうするの?
解説書が無いので調べられない。細かい説明はいらないからソース書いてよ。
544:デフォルトの名無しさん
06/07/28 22:20:51
できればMASMでお願いします。MS-Cでもいいです。
545:デフォルトの名無しさん
06/07/28 22:45:49
>>539
これでダメならあきらめろ
device=emm386.exe ram frame=D800 i=D800-E7FF
546:デフォルトの名無しさん
06/07/29 01:48:48
>>543
DOS 6.2までならロックいらないでしょ?
>>492 が生DOSでも必要と言っているけどWin95(MS-DOS 7.0)からそうなったの?
資料はRalf Brown's Interrupt Listと
URLリンク(msdn.microsoft.com)
547:デフォルトの名無しさん
06/07/29 10:23:21
>>546
> URLリンク(msdn.microsoft.com)
それはメディアをイジェクトできないようにするロックだな。
int 25h とかで使うのは、Minor Code 4Ah, 4Bh の方。
FAT32にも対応させるなら、↓も見ておくべし。
URLリンク(msdn.microsoft.com)
> >>492 が生DOSでも必要と言っているけどWin95(MS-DOS 7.0)からそうなったの?
自前でロックするか、lockコマンドでロックしておかないとエラーメッセージが出て
DOSが停止したと思うが。アンカーミスってるようだがどこ指したかったんだ?
548:546
06/07/29 21:28:33
>>547
出したかったのは
URLリンク(msdn.microsoft.com)
と
>>494
だった。orz
549:デフォルトの名無しさん
06/07/30 00:17:16
DOS/V用の表計算やワープロ(エディタじゃない)ソフトを使いたいが
オークションでも出品されてない。
PC-98なら結構あるんだが
誰か作ってくれ!DOS用だからそんなに多機能じゃなくていい、むしろシンプルに!
でも100行くらいしか使えない表計算なんていらないけどね
550:デフォルトの名無しさん
06/07/30 00:31:09
フリーでいくらでもあるのに
551:デフォルトの名無しさん
06/07/30 00:35:24
いくらですか?
ん...? フリーなのに?
552:デフォルトの名無しさん
06/07/30 00:40:59
もしかして子供?
553:デフォルトの名無しさん
06/07/30 01:48:06
MS-Worksはちょっと便利かも。
554:デフォルトの名無しさん
06/07/30 04:58:39
はれ?Works って、DOS用あったんだ。
Win3.1用しか知らんかった。
ん~...
しかし、フリーで DOS用の表計算アプリって、いくらでもって程あったっけ?
ググって見た。
HYO (未だ更新中?)
URLリンク(homepage3.nifty.com)
CXP
URLリンク(hp.vector.co.jp)
参考: (MG LIB: ドスモバ用アプリのライブラリ)
URLリンク(mb.amcsys.com)
超計算 ぺけぺけ
URLリンク(mb.amcsys.com)
555:デフォルトの名無しさん
06/07/30 08:40:10
>>553
未だに使っている。PC-98用とDOS/V用とWin3.1用があったかと。
556:デフォルトの名無しさん
06/07/31 22:22:55
>554
HYOは訳わからないっス
CXPは行数が少ないっス
超計算 ぺけぺけ 最高っス!
おいらはCSVが大好きっス
でもエクセルなんか使っても、100分の1も機能使ってないっス
ぺけぺけは究極のシンプル・イズ・ベストアプリっス
今の付加価値蔓延PC環境の中でおいらはもがいていたっス
こういうシンプリーなものがおいらには合うっス
で、エディタじゃないワープロのものってないっスか
ワードや一太郎はいらないっス
イメージ的にはこんなやつっス
URLリンク(homepage3.nifty.com)
用紙サイズが指定できて、エディタのように文章を打ち続けると改行するまでずーと
右に移動するものじゃなく、きちんと用紙サイズに対応して改行しなくても字が折り返す
やつで、せいぜい罫線が引けりゃ十分というものっス。
よろしくっス!
557:デフォルトの名無しさん
06/07/31 23:50:56
Ver4以下の一太郎。dashでもjump(教育用だっけ?)でも可。(386以下ならVer.3以前)
機能過剰はVer.4からだが、今のようなあからさまな変化(似非DTPソフト化)はVer.5以降。
そもそも文章打ちを最初からワープロでやろうってのが間違い。
入力、推敲はエディタでやって、ワープロソフトではそれ以外の作業を行う。(紙に合わせて文の折り返しの長さを調整したり効果を付けたり。絵や図を入れることも。)
エディタだって折り返しカラム数指定できるものはある。
558:デフォルトの名無しさん
06/08/01 00:03:25
しかし、スレ違いだな。
プログラミング板の話題じゃないよ。
↓
MS-DOS ってどうよ
スレリンク(os板)
559:デフォルトの名無しさん
06/08/01 00:08:06
>557
折り返しできるエデイタでフリーのDos/Vタイプってありますか?
560:デフォルトの名無しさん
06/08/01 06:41:17
>>559
>>558
561:デフォルトの名無しさん
06/08/02 09:18:48
HyperCube
562:デフォルトの名無しさん
06/08/05 08:22:30
DOS で動く Java環境って無いの?
563:デフォルトの名無しさん
06/08/06 11:40:12
レスが無い... 無いのか.... or2
564:デフォルトの名無しさん
06/08/06 13:26:45
グラフィックもネットワークも標準である訳じゃないし
VM作る気にもならなかったとしてもおかしくない罠
565:デフォルトの名無しさん
06/08/10 23:47:26
ハードディスクの ボリュームラベル の作成・変更・削除ってどうするの?
566:デフォルトの名無しさん
06/08/16 00:37:03
保守
567:デフォルトの名無しさん
06/08/17 18:31:04
>>565
labelコマンド
568:デフォルトの名無しさん
06/08/17 21:47:31
>>567
mov ah,09h
mov dx,offset msg_korosuzo
int 21h
msg_korosuzo db "一応プログラミングのスレなのでそのレスはいかがな物かと思います。",0Dh,0Ah,'$'
569:デフォルトの名無しさん
06/08/17 21:54:46
system("label.exe …");
570:デフォルトの名無しさん
06/08/17 22:10:50
ボリュームラベル属性のファイルをルートに作るんじゃなかったっけ
571:デフォルトの名無しさん
06/08/17 23:08:15
>565
FAT(FAT12,16,32)は>570の通り。実際にそれを行うコマンドがLabelコマンド。
パーティーション自体に付くラベル(FS非依存)はHDDメニューあたりのエントリを書き換える。
572:デフォルトの名無しさん
06/08/17 23:19:42
わざわざ小細工して互換性の問題出すより
569がいいんじゃないの
573:デフォルトの名無しさん
06/08/18 00:12:34
Int 21h Function 440Dh Minor Code 46h
574:デフォルトの名無しさん
06/08/18 01:40:53
system って無敵関数だったもんな。format とかでお世話になった。
575:デフォルトの名無しさん
06/08/18 01:43:32
おれGUI開発したぜ!
system("win.com")
576:デフォルトの名無しさん
06/08/27 23:46:14
system("del io.sys")
system("del msdos.sys")
system("del command.com")
577:デフォルトの名無しさん
06/08/27 23:56:57
C:\io.sys が見つかりませんでした。
C:\msdos.sys が見つかりませんでした。
C:\command.com が見つかりませんでした。
578:デフォルトの名無しさん
06/08/28 09:27:51
URLリンク(win.com)
URLリンク(command.com)
579:デフォルトの名無しさん
06/08/28 20:52:49
system("del c:\\ntldr")
580:デフォルトの名無しさん
06/08/28 23:56:12
ツリー状にフォルダがたくさんあって各フォルダの中のmp3ファイルだけを抜き出してコピーするにはどうすればいいの?
できれば一度のコマンドもしくはバッチファイルで実現したい
581:デフォルトの名無しさん
06/08/29 00:10:35
>>580
for /R src %i in (*.mp3) do @copy /y %i dst
582:デフォルトの名無しさん
06/08/29 07:52:12
すげー、天才かよ
583:デフォルトの名無しさん
06/09/09 10:09:12
基本的なことで申し訳ありませんが、DOS窓でコマンド手打ちだと動くのに、バッチにすると一瞬で窓が閉じて何もされません・・・
なにがいけないのでしょうか?
584:デフォルトの名無しさん
06/09/09 11:36:33
>>583
バッチファイルの最終行にpauseって書いておくと幸せになれるかもね。
585:デフォルトの名無しさん
06/09/18 20:58:02
>>583
コマンドプロンプト(DOS窓)から実行すればおk。
586:デフォルトの名無しさん
06/09/19 01:00:41
>>583
ftp.bat
587:デフォルトの名無しさん
06/09/21 19:12:48
DOSプログラムからフルスクリーンで
system("notepad.exe");
で実行すると、DOS側がフルスクリーンから
DOS窓になってしまいます。 (TURBOC, MS-DOS)
ALT+Enter で手動で戻すのではなくて、
自動でフルスクリーンに戻すにはどうすればいいですか?
588:デフォルトの名無しさん
06/09/22 21:02:09
MS-DOSでDOS窓を表示させるとは
ただ者ではないな
589:デフォルトの名無しさん
06/09/25 11:17:35
>>588
H/W PC9801 OS Windows98 でフルスクリーンからDOS窓でした orz...
ちなみに「MS-DOS プログラムにWindowsを検出させない」にチェックを入れると
フルスクリーンからDOS窓に変更されることはないのですが、
案の定system関数も実行されなくなってしまいます。
ALT+ENTER キーを仮想で押したかのような実験はまだしてません。
それより何かもっといい手があるかと思いまして。
590:デフォルトの名無しさん
06/09/25 12:29:47
>>587
なぜ、そのような変則的な操作が必要なのか、だれも理解できていないよ。
具体的なシチュエーションを簡潔に述べよ。
(注意:あるソフトで・・・→× とある業務ソフトで・・・→×)
591:デフォルトの名無しさん
06/09/26 11:21:21
>>590
具体的には、
・Win98に作成したDOSプログラムを起動。
・オペレーター(おばちゃん)が特定処理を行うと、CSV形式のデータを出力。
・その後、DOS側でsystem関数を使用し、作成したWindowsプログラムに
出力データを引き渡す。
・その際、DOS側では system関数に STARTコマンドを使用し、 /WAIT オプションで一時停止
・Win側プログラムはデータを処理して、LAN経由でサーバーに送信。自身で自動終了。
・DOS側はプログラム終了後に”送信完了しました”と表示。
・フルスクリーンが解除され、DOS窓状態に。
・おばちゃん「なんだか画面が小さくなってます」報告
・上司「なんとかならんのか」報告
DOSプログラムをWinに変更出来ないのはクライアントの予算の問題 orz
592:デフォルトの名無しさん
06/09/26 18:52:44
最初っからDOS窓にしときゃいい。
593:デフォルトの名無しさん
06/09/26 19:52:30
>>591
全画面とウィンドウ表示を切り替える関数は、Windows APIですらXP/2003でようやく実装されたという次第。
URLリンク(msdn.microsoft.com)
まして9xのシステムコールでは存在するわけがなかった。
URLリンク(msdn.microsoft.com)
ところで、DOS窓へAlt+Enterをプログラムから送ってみたらどうだろう?
それを行うだけのWin32プログラムを作ってさ。
594:デフォルトの名無しさん
06/09/26 21:39:59
Win9xだからWM_SYSCOMMANDで適当にそれっぽいの送るなんていう
いい加減な方法でも動作したような
595:デフォルトの名無しさん
06/09/29 00:22:30
>>590
理路整然が邪魔になることもままあることを学べ。学生よ。
596:590
06/09/29 00:44:05
>>595
学生じゃなくてファーム屋なんだが。
>>591の苦労は俺も味わったことがある。
俺の場合は、工員さんがDOSの黒い画面を毛嫌いするから逆だったが。
597:デフォルトの名無しさん
06/09/29 00:51:37
>>596
農家か。
598:デフォルトの名無しさん
06/09/29 16:18:02
>>26
モロにハード周りの書籍「PC9801スーパーテクニック」っていう
本持ってるけど、誰か買ってくれないかな。
今書籍名で検索したら3500円だかでオクに出されてたけど
送料込み2000円ぐらいでいい。俺にはもう用がねえんだ。
中古屋に糞みたいな値段で売るのも癪だし必要な人間に売りたいので
処分に困ってるw
思えば中学生のころQuick CでINT21hとかやってたわ。懐かしい。
599:598
06/09/29 16:30:49
すみません↑はスルーしてください。
amazonで中古が400円とかで売ってたわ。
シャレになんねーなこの価格崩壊。当時5000円もしたのにw
600:デフォルトの名無しさん
06/10/03 04:27:19
注文前に相場教えてくれてありがとう
601:デフォルトの名無しさん
06/10/03 08:39:53
PC9801スーパーテクニックって俺も持ってるわ。
あと、アセンブラの本が3冊出てきた。
602:デフォルトの名無しさん
06/10/03 10:42:23
UNDOCUMENTED DOSが出てきた
603:デフォルトの名無しさん
06/10/03 22:42:52
>>598
俺もそれ持ってるw
>>601
俺と環境がそっくりだww
604:デフォルトの名無しさん
06/10/05 11:23:17
テキストファイルの全行を削除するDOSコマンドは
ありませんでしょうか?
605:デフォルトの名無しさん
06/10/05 11:33:12
copy /y nul ファイル名
606:デフォルトの名無しさん
06/10/05 11:41:13
del fileして、copy nul fileとか?
607:デフォルトの名無しさん
06/10/05 12:33:22
del > file
608:デフォルトの名無しさん
06/10/05 19:11:38
rem > file
609:デフォルトの名無しさん
06/10/06 12:10:48
copy nul fileで出来ました。
ありがと!
追加で
テキストファイルが空(0行、nul)ではない場合
Excelを起動するコマンドありますか?
610:デフォルトの名無しさん
06/10/06 17:07:52
↓を改行せずに1行で記述
mshta.exe "javascript:
try{new ActiveXObject('Scripting.FileSystemObject').GetFile('file').Size&&ne
w ActiveXObject('WScript.Shell').Run('excel.exe');}catch(e){}finally{close();}"
611:デフォルトの名無しさん
06/10/06 18:19:33
>>610
解りませんでした
言い方かえます。
テキストファイルのサイズがゼロ以外の場合、Excelを実行する
BATなんですけど
宜しくお願いします
612:デフォルトの名無しさん
06/10/06 18:50:23
>>611
メモ帳の使い方から教えろと言うのか?
613:デフォルトの名無しさん
06/10/06 18:56:45
>>612
言ってません。
BATファイルの作り方です。
614:デフォルトの名無しさん
06/10/06 19:28:17
メモ帳に>>610の
mshta.exe "javascript:try{new ActiveXObject('Scripting.FileSystemObject').GetFile('file').Size&&new ActiveXObject('WScript.Shell').Run('excel.exe');}catch(e){}finally{close();}"
をはりつけて、拡張子を.batにして保存すればいいのでは
615:デフォルトの名無しさん
06/10/06 19:38:06
そもそも"MS-DOS"用のExcelはない。
616:デフォルトの名無しさん
06/10/06 20:25:05
そもそもActiveX自体がWindows専用だけどね。
>610
警告:悪質なスクリプトを検出しました
オブジェクト:FileSystem Object
活動:GetFile
コンピュータが停止しました。このスクリプトを処理する必要があります:
ファイル:
C:\Documents and Settings\***********\デスクトップ\javascript:try{new ActiveXObject
('Scripting.FileSystemObject').GetFile('file').Size&&new ActiveXObject('WScript.Shell')
.Run('excel.exe');}catch(e){}finally{close();}
どう処理しますか?
処理:
このスクリプトを停止する (推奨)
この活動を 1 回許可する
→スクリプト全体を 1 回許可する
このスクリプトを認証する
617:デフォルトの名無しさん
06/10/06 20:27:35
ウイルスを掲示板に張るなボケカス
618:デフォルトの名無しさん
06/10/06 20:35:16
偉そうに根拠のない因縁つけてくるのは先生の方だけどね。
619:デフォルトの名無しさん
06/10/06 20:50:38
GetFileを使おうとしただけで悪質なスクリプト扱いか。
620:デフォルトの名無しさん
06/10/06 21:10:21
↓あたりはノートン先生もご立腹なんだろうな。
WSH(・∀・)スレッド!
スレリンク(tech板)l50
HTAをもっと流行らせる計画
スレリンク(tech板)l50
というわけで純粋なDOS環境の話でなければ↓や↑を見るといいですよ。
初心者~管理者まで必読!コマンドライン(DOS Pt.5)
スレリンク(win板)l50
621:デフォルトの名無しさん
06/10/07 19:55:35
>>618
他人が妹のパンツをずらそうとしたら、兄として君は怒るだろう?
622:デフォルトの名無しさん
06/10/07 20:38:54
>>621
ずらしたい奴がずらせばいいと思う
623:デフォルトの名無しさん
06/10/08 00:05:14
開発環境として聞きたいんだけど、
みんなが使ってる環境ってどんな感じ?
自分は家では、
OS: PC DOS 2000
CC: LSI-C
使ってるんだけど、ノートで使うと省電力機能がほとんど使えないから
バッテリの消費が激しくて使えないから、BSD使ってる。
モバイルでDOS使ってる人っている?
624:デフォルトの名無しさん
06/10/08 01:51:33
dosidle 入れてもダメ?
625:デフォルトの名無しさん
06/10/08 01:56:46
開発環境としてなら、普通にWindowsのDOS窓でいいと思うのだけど。
どうしても純DOSでないと駄目?
626:デフォルトの名無しさん
06/10/08 02:05:33
>>625
Windows 9xは不安定
しかも窓だと色々と縛りがあったりしてウザイ
627:デフォルトの名無しさん
06/10/08 02:53:40
>>626
2kにしない理由は?
628:デフォルトの名無しさん
06/10/08 03:01:15
>>627
2KにDOSなんてねーだろ
エミュレータ使えってことか?
629:デフォルトの名無しさん
06/10/08 03:26:36
>>628
そういう言葉尻はどうでもいいからさ
つかさ、2kのコマンドプロンプトで出来ないことって、
そんなにないだろ。
パラレルポートの制御だってドライバいれればできる。
OSの乗換えを検討したほうがいいと思うのだが?
630:デフォルトの名無しさん
06/10/08 04:12:26
>>629
多分君はDOSを使う必要がないからコマンドプロンプトでいいんだと思う。
ここはDOSのスレであって、コマンドプロンプトでできることを話すスレではない
631:デフォルトの名無しさん
06/10/08 06:54:39
>>630
2KのコマンドプロンプトはDOSのシステムコールエミュレータだから
こいつで動かせないような直接ハード叩くようなコードは
それこそDOSスレで話す範疇じゃあなくなるんだが? 藻前さんの理論だとさ。
批判のための批判は自分の首締めるだけだからやめといたほうがいいよ。
632:デフォルトの名無しさん
06/10/08 07:05:26
直接ハードを叩かないDOSプログラムなんて、つまんなーい!
633: ◆0uxK91AxII
06/10/08 07:08:58
開発環境 コマンド プロンプト、所謂DOS BOX
実行環境 実機+DOS
634:デフォルトの名無しさん
06/10/08 07:20:43
デスクトップPCでISAバスの工業用ボード使ってれば別だが、
問題提起した人間はノーパソ使ってるって言ってるしな、
さほど特殊な環境じゃないだろう。
というわけで>>630の負け。
635:デフォルトの名無しさん
06/10/08 07:40:58
ハードがPCでよければ、WMWareとかqemuにPC-DOSインストールすれば
外側は省電力の効くWinのまんまでハードも叩ける開発環境がゲットできる
636:デフォルトの名無しさん
06/10/08 13:23:08
コマンドプロンプトでDOSのゲームができるとでも思ってるのか?
637:デフォルトの名無しさん
06/10/08 14:07:32
NetHackならできたぞ
638:デフォルトの名無しさん
06/10/08 19:12:54
できるよね
639:デフォルトの名無しさん
06/10/08 21:09:20
>>631
おまえさぁ、DOSシステムコールだけでプログラミングなんてあり得んでしょう。
640:デフォルトの名無しさん
06/10/08 21:10:24
>>634
>デスクトップPCでISAバスの工業用ボード使ってれば別だが、
えらい限定しますね、あなたのお仕事はよく分かりましたが・・・。
641:デフォルトの名無しさん
06/10/09 03:54:55
unko
642:デフォルトの名無しさん
06/10/09 09:34:57
del D:\xxx\yyy\*.txt
でゴミ箱に行かない削除ってできましたっけ?
shift+ctrl+削除みたいのDOSコマンドでできますか?
643:デフォルトの名無しさん
06/10/09 09:35:40
DOSどころかコマンドプロンプトすら全く使ったことがないのが丸わかりな質問だな
644:デフォルトの名無しさん
06/10/09 09:52:17
>>643
で?
645:デフォルトの名無しさん
06/10/09 10:06:06
>>644
>643
646:デフォルトの名無しさん
06/10/09 10:20:49
>>645
>644
647:デフォルトの名無しさん
06/10/09 11:34:20
>>646
>643
648:デフォルトの名無しさん
06/10/09 11:50:55
ウンコ
649:デフォルトの名無しさん
06/10/09 12:07:22
ウンコ迷惑
650:デフォルトの名無しさん
06/10/09 12:10:21
>>649
そらそうだ。と、誰もが思った。
651:デフォルトの名無しさん
06/10/09 16:43:31
ここはいつから 「コマンドプロンプト相談スレ」 になったんだ?
652:デフォルトの名無しさん
06/10/09 17:17:16
コマンドプロンプトとDOSの違いもわからない奴が蔓延してるから
どうしようもない
653:句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx.
06/10/09 19:24:27
>>652
654:デフォルトの名無しさん
06/10/09 20:53:55
2chで句読点を求めるなよ。
655:デフォルトの名無しさん
06/10/09 23:30:20
>>639
DOS窓はDOSじゃないなんてつまんないこと言ってるから
ハード叩くのはDOSの範疇じゃないだろ、という
至極原理的な反応返されただけの話。
それとも、ハード叩かないのはDOSプログラミングではない
とでも言うつもりか?
656:デフォルトの名無しさん
06/10/09 23:52:10
一人しか言ってないのに、すべてが自分の対極とはどんな思考回路だ?
657:デフォルトの名無しさん
06/10/10 00:00:21
別にDOS上でハードに直接アクセスするのはDOSプログラミングの範疇だと思うが。
658:デフォルトの名無しさん
06/10/10 00:36:35
>>656
漏れもその一人しか相手してないつもりだが
そう読めなかったなら書き込み不足だな、申し訳ない
>>657
もちろんその通り
同じようにWin上のDOS窓だってDOSプログラミングの範疇だ
と>>630に反論してるだけ
659:デフォルトの名無しさん
06/10/10 01:05:03
暇なのか?
>>630は書き込んでねーだろ
660:デフォルトの名無しさん
06/10/10 01:52:51
よーするに、ターゲットがDOS上で動くなら開発環境は
実機だろうがDOS窓だろうがエミュだろうがなんだっていいんじゃないの
ってことだろ。
つまらんことを何時までもグダグダと反論してるなよ。
661:デフォルトの名無しさん
06/10/10 03:30:48
これだから今時のDOS使いは・・・
662:デフォルトの名無しさん
06/10/10 05:30:33
VC++6でコンソールアプリケーションを作って
コマンドプロンプトやそれを全画面にして動かすのは出来たのですが
DOSをフロッピーから起動したところで実行すると変なエラーが出て
(スタブが云々)実行されません。どうすればよいのでしょうか?