懐かしのMS-DOSプログラミング [sc](★0)
-
- 1
- 2010/04/21(水) 12:42:23
-
mov dx,offset msg
mov ah,9
int 21h
mov ax,4c00h
int 21h
msg db '懐かしのDOS時代のプログラミングについて語ろうぜ',0dh,0ah,'$'
-
- 321
- 2012/02/25(土) 21:41:54.99
-
保守
昔は1バイトでも節約するのに苦労してたのに、
今はアプリ1つ起動しただけで数100MB食う有様。
メモリがいくら安くなったとはいえ、食い過ぎじゃないかと。
-
- 322
- 2012/02/26(日) 00:07:38.09
-
くたばれよジジイ
-
- 323
- ◆0uxK91AxII
- 2012/02/26(日) 12:31:53.24
-
MS-DOSなら16[Byte]単位での節約だよねー。
くたばれよジジイ
-
- 324
- 2012/02/26(日) 13:47:34.72
-
16 bits
-
- 325
- 2012/02/27(月) 14:35:58.53
-
OpenWatcom 1.9でnearポインタをunsigned longにキャストしたら
セグメント:オフセット形式になったんだけど、他のコンパイラもこんなだったっけ?
-
- 326
- ◆QZaw55cn4c
- 2012/02/27(月) 18:58:37.49
-
>>325
C はよくわからないけれども、アセンブラですら、4バイト確保してseg:off だから、多分そうじゃないかな。
-
- 327
- 2012/02/27(月) 19:15:13.91
-
>>291
今でもドライバ書こうとすれば…
-
- 328
- 2012/02/27(月) 23:11:26.15
-
プログラミングはUNIX(SunOS)から入ったから、ポインタのNEARとかFAR
とかはハァ?って感じだった。
-
- 329
- ◆0uxK91AxII
- 2012/02/28(火) 00:14:43.67
-
>>325
そこはFP_SEG, FP_OF, MK_FPを使おうか...。
>>327
X64なWindowsだと自由とはいかないんだけどね。
-
- 330
- ◆0uxK91AxII
- 2012/02/28(火) 17:51:04.75
-
nearなら無関係だったか。
-
- 331
- 2012/02/28(火) 18:51:22.22
-
MK_FPとかあったなー
今の今まで忘れてた
-
- 332
- 2012/03/25(日) 10:39:32.43
-
Turbo C++でやってみたけどsmall/large/huge共にセグメントアドレスは入らなかった
-
- 333
- 2012/03/25(日) 14:28:05.68
-
333
-
- 334
- 2012/04/27(金) 01:08:04.98
-
シフトキー
capsロック
numlock等
実際にはキー入力されないキーを利用して
バッチファイルを条件分岐したい
適当なdosプログラムが探せないので
作りたい
バッチファイルで返り血を読む方法も
よくわからないです
-
- 335
- 2012/04/27(金) 01:28:31.15
-
そいつはDOSの守備範囲外だ。
どの機種かはしらんがキーボードBIOSをつかうか、
あるいはキーボードI/Oを直接叩くしかないぞ。
-
- 336
- 2012/04/27(金) 01:32:28.40
-
>>334
こんなもんだろう
org 100h
mov ah,02h
int 16h
mov ah,4ch
int 21h
んでERRORLEVELで結果を見ればよろし
-
- 337
- 2012/04/27(金) 05:34:38.03
-
昔ならBUで一発だったのにな
-
- 339
- 2012/04/29(日) 20:59:15.23
-
アセンブラでexe形式のソフトを作っているのですが
コマンドラインからの引数はどのようにすると参照できますか?
-
- 341
- 339
- 2012/04/29(日) 21:49:32.99
-
exe形式ならES:0000hのPSPを参照すれば引数がわかるんですね。
-
- 342
- 2012/04/30(月) 22:22:15.63
-
psp:80hにコマンドラインの文字列が置かれ、同時にデフォルトDTAでもあった。
懐かしいねぇ。
-
- 343
- 2012/04/30(月) 23:06:33.05
-
過去形じゃなくて今でもそうだけどな
-
- 344
- 2012/05/01(火) 22:41:20.07
-
64bitOSの普及で過去形になりつつある。
仮想86モードがあっさり切られるとはね。
-
- 345
- 2012/05/02(水) 00:16:55.51
-
ロングモードから仮想86モードに移行できないだけで
仮想86モードが切られたわけじゃないと思うが。
-
- 346
- 2012/05/02(水) 13:44:20.24
-
逆アセンブラは何を使ってますか?
-
- 347
- 2012/05/02(水) 22:39:58.48
-
symdeb
-
- 348
- 2012/05/03(木) 10:12:33.13
-
wdis (the Open Watcom disassembler)
Current State|Wasm
http://www.openwatcom.org/index.php/Wasm
-
- 349
- 2012/05/03(木) 17:01:30.04
-
xda
-
- 350
- 2012/06/10(日) 21:10:04.11
-
これは凄い。
Creating a raytracer for DOS, in 16 VGA colors
http://www.youtube.com/watch?v=N8elxpSu9pw
-
- 351
- 2012/06/23(土) 23:38:25.39
-
int 20
Linuxよこんにちは
-
- 352
- 2012/06/26(火) 17:57:38.69
-
#include <stdlib.h>
#include <time.h>
#include <conio.h>
main()
{
srand((int)time(0));
while(1)
outp(rand(), rand()%256);
}
を実行したら、青画面が出てパソコンが死んだよ (HDDクラッシュ)。w
-
- 353
- 2012/06/26(火) 19:18:07.23
-
秘孔を突いてしまったのですね
-
- 354
- 2012/06/26(火) 21:58:52.30
-
まぁ、実験用のマシンだから別に壊れても構わない
-
- 355
- 2012/06/27(水) 09:06:21.99
-
Cを覚え始めて楽しくなってきた頃、
>>352なことは誰もがやるよねw
-
- 356
- 2012/06/27(水) 11:42:52.22
-
既にPC-8001でさんざんやった後だから、Cではポート叩くのはやってないなぁ。
精々RAMDISKのドライバ作ったくらい。
-
- 359
- 2012/06/27(水) 13:24:17.98
-
RAMDISK は cache にするべきだったな
-
- 360
- 2012/06/27(水) 15:29:53.65
-
>>358
小学校低学年レベルの探究心の話をしてたのか
それは失礼w
-
- 361
- 2012/06/27(水) 22:09:16.82
-
debugで適当なアドレスからトレス始めてPC内部を探検とかもやったなw
-
- 362
- 2012/06/27(水) 22:14:21.10
-
ラムディスクでクラッシュはやった
-
- 363
- 2012/06/28(木) 01:05:43.97
-
PC98用のハード叩きまくりプログラムをPC/ATのWin95DOS窓でうっかり動かしたら
いきなり沈黙して再起不能になったことが…
修理に出したらメイン基板交換で返ってきた
-
- 364
- 2012/06/28(木) 09:10:02.24
-
昔、Libretto50をsymdebでROMをトレスしてたら
HDDクラッシュしたことがあったな。
-
- 365
- 2012/08/23(木) 00:33:46.57
-
Cyrix 5x86のキャッシュON/OFF制御コード解析してるんだが
write_cyrix_reg(u_char reg, u_char data)
{
outb(0x22, reg);
outb(0x23, data);
}
これだと0x23のDMAと競合しないのかね?
98でも動くara5x86.exeを逆汗しても同じようなコードが存在するから
間違ってはいないと思うのだが。
-
- 366
- 2012/08/23(木) 13:17:29.93
-
>>365
regの値を見てキャッシュ制御とDMACアクセスを切り替えるという
涙ぐましい努力をしとるのです
-
- 367
- 2012/08/23(木) 20:09:37.30
-
おお、ご存知の方がいるとは。
-
- 368
- 2012/08/25(土) 11:25:55.41
-
DMAバンクレジスタ(ch2)だから競合しても問題ないだろ。
-
- 369
- 2012/09/29(土) 15:53:11.03
-
@wktk.c
#include <stdio.h>
void main()
{
puts("+ +");
puts(" _∧_∧_ +");
puts(" (0゚・∀・) ワクワクテカテカ");
puts(" (0゚∪ ∪ +");
puts(" と__)__) +");
}
-
- 370
- 2012/09/29(土) 16:14:34.98
-
フロッピーディスクをフォーマットしたときに書き込まれるタイムスタンプと
現在のハードディスクにフォーマット時に書き込まれるタイムスタンプは
同じフォーマットですか?
-
- 371
- 2012/09/29(土) 16:30:33.36
-
いいえちがいます
-
- 372
- 2012/10/08(月) 02:05:40.26
-
>>1
debugコマンドってこと?
このページを共有する