mov dx,offset msg
mov ah,9
int 21h
mov ax,4c00h
int 21h
msg db '懐かしのDOS時代のプログラミングについて語ろうぜ ver.2',0dh,0ah,'$'
前スレ
懐かしのMS-DOSプログラミング
http://toro.2ch.net/test/read.cgi/tech/1271821343/
探検
懐かしのMS-DOSプログラミング ver.2
■ このスレッドは過去ログ倉庫に格納されています
2014/05/15(木) 22:29:17.71ID:wgclvry3
352デフォルトの名無しさん
2018/11/08(木) 18:45:12.55ID:cDcIjCKR >>351
多分、出来ないんじゃないかな、たとえ1バイトの ASCII 文字であっても。
「text mode」はあるけれど、「mode」という言葉が示すとおり、グラフィック mode
とは切り替えて使っていただと思う。PC-9801 や PC-8801 では、text と
graphic をハードウェア的に重ね合わせることが出来て便利だったけれど。
多分、出来ないんじゃないかな、たとえ1バイトの ASCII 文字であっても。
「text mode」はあるけれど、「mode」という言葉が示すとおり、グラフィック mode
とは切り替えて使っていただと思う。PC-9801 や PC-8801 では、text と
graphic をハードウェア的に重ね合わせることが出来て便利だったけれど。
353352
2018/11/09(金) 15:22:02.19ID:mgnuIu1c [VGA]
・640 x 480, 16色/モノクロ
・640 x 200, 16色/モノクロ (EGA 互換)
16色は、4BIT分使うから、(640*480*4/8)/1024 = 150 で、
640 x 480 x 4BIT は、150(KB)。また、
640*480*4/8 = 0x25800。
[EGA]
典型例:
・640 x 350, 64色中の16色/モノクロ
・640 x 200, 16色
[CGA]
text mode と graphic mode を持つ。
・320 x 200, 16色のうちの4色
・640 x 200, 2色
PC/AT の video memory は、古い仕様書では、0xA0000 - 0xBFFFF (128KB)と
なっているが、実際は 「RAM」だけでも、150(KB)以上あるはず。
仕様書的には典型的なアドレスは、
0xA0000 : EGA/VGA graphics modes (64 KB)
0xB0000 : monochrome text mode (32 KB)
0xB8000 : color text mode and CGA-compatible graphics modes (32 KB)
0xC0000 : Video BIOS の ROM ---> VGA の場合は、ROM ではなく、VRAMのはず。
となっており、VGA での text buffer は、0xB8000 となっている。
0xA0000 から 150KB までの領域は、最終アドレスが、0xC57FF となり、
0xB8000 と重なってしまう。なので、graphic と text の同時使用は出来
ないハズ。ただし、ネットで入手できる仕様書は概ね かなり古いようだが。
・640 x 480, 16色/モノクロ
・640 x 200, 16色/モノクロ (EGA 互換)
16色は、4BIT分使うから、(640*480*4/8)/1024 = 150 で、
640 x 480 x 4BIT は、150(KB)。また、
640*480*4/8 = 0x25800。
[EGA]
典型例:
・640 x 350, 64色中の16色/モノクロ
・640 x 200, 16色
[CGA]
text mode と graphic mode を持つ。
・320 x 200, 16色のうちの4色
・640 x 200, 2色
PC/AT の video memory は、古い仕様書では、0xA0000 - 0xBFFFF (128KB)と
なっているが、実際は 「RAM」だけでも、150(KB)以上あるはず。
仕様書的には典型的なアドレスは、
0xA0000 : EGA/VGA graphics modes (64 KB)
0xB0000 : monochrome text mode (32 KB)
0xB8000 : color text mode and CGA-compatible graphics modes (32 KB)
0xC0000 : Video BIOS の ROM ---> VGA の場合は、ROM ではなく、VRAMのはず。
となっており、VGA での text buffer は、0xB8000 となっている。
0xA0000 から 150KB までの領域は、最終アドレスが、0xC57FF となり、
0xB8000 と重なってしまう。なので、graphic と text の同時使用は出来
ないハズ。ただし、ネットで入手できる仕様書は概ね かなり古いようだが。
354352
2018/11/09(金) 16:06:28.02ID:mgnuIu1c 【CGA】
https://www.seasip.info/VintagePC/cga.html
[Graphics Modes]
In the two graphics modes, all memory is used for the framebuffer. Each row is 80 bytes.
At the beginning of memory are the first set of rows (0, 2, 4, ..., 198); offset by 8k are
the second set (1, 3, 5, ..., 199). This may have been to make it easier for the hardware
to produce an interlaced picture, but it's a pain to program.
グラフィック・モードでは、1ラインは、80バイトで、
0行目、2行目、4行目、・・・、198行目
と続いた後、先頭から 8KB 離れて、
1行目、3行目、5行目、・・・、199行目
となっていたらしい。
In low-resolution graphics mode (320x200), a byte corresponds to four pixels; in high-resolution
mode (640x200), a byte corresponds to 8. In each case, the highest-numbered bits correspond
to the leftmost pixel.
↑は、つまり、320x200 では、4色だから、1ピクセル当たり2BIT。
よって、8/2 = 4 で、1バイト当たりで、4ピクセル。
この場合、1行は、4(ピクセル/バイト) × 80(バイト) = 320(ピクセル)。
640x200 は、モノクロモードだから、8BIT で、8ピクセルに相当。
つまり、4色カラーモードでも、当初からパックド・ピクセル方式だったらしい。
この場合、1行は、8(ピクセル/バイト) × 80(バイト) = 640(ピクセル)。
https://www.seasip.info/VintagePC/cga.html
[Graphics Modes]
In the two graphics modes, all memory is used for the framebuffer. Each row is 80 bytes.
At the beginning of memory are the first set of rows (0, 2, 4, ..., 198); offset by 8k are
the second set (1, 3, 5, ..., 199). This may have been to make it easier for the hardware
to produce an interlaced picture, but it's a pain to program.
グラフィック・モードでは、1ラインは、80バイトで、
0行目、2行目、4行目、・・・、198行目
と続いた後、先頭から 8KB 離れて、
1行目、3行目、5行目、・・・、199行目
となっていたらしい。
In low-resolution graphics mode (320x200), a byte corresponds to four pixels; in high-resolution
mode (640x200), a byte corresponds to 8. In each case, the highest-numbered bits correspond
to the leftmost pixel.
↑は、つまり、320x200 では、4色だから、1ピクセル当たり2BIT。
よって、8/2 = 4 で、1バイト当たりで、4ピクセル。
この場合、1行は、4(ピクセル/バイト) × 80(バイト) = 320(ピクセル)。
640x200 は、モノクロモードだから、8BIT で、8ピクセルに相当。
つまり、4色カラーモードでも、当初からパックド・ピクセル方式だったらしい。
この場合、1行は、8(ピクセル/バイト) × 80(バイト) = 640(ピクセル)。
355352
2018/11/09(金) 16:41:28.91ID:mgnuIu1c >>351
見つけた。CGA では、排他使用しか出来なかったらしい。
多分、この伝統を VGA も受け継いでいたと考えられる:
【Register I/O】
03D8h: Mode control register
The following bits are used:
Bit 1: Graphics mode
If this bit is set, the display RAM will be treated as bitmap graphics rather than as text.
↑[I/O ポート、0x3D8]
BIT1 = 0 : display RAM will be treated as text.
1 : display RAM will be treated as bitmap graphics.
見つけた。CGA では、排他使用しか出来なかったらしい。
多分、この伝統を VGA も受け継いでいたと考えられる:
【Register I/O】
03D8h: Mode control register
The following bits are used:
Bit 1: Graphics mode
If this bit is set, the display RAM will be treated as bitmap graphics rather than as text.
↑[I/O ポート、0x3D8]
BIT1 = 0 : display RAM will be treated as text.
1 : display RAM will be treated as bitmap graphics.
356デフォルトの名無しさん
2018/11/10(土) 12:38:05.67ID:2tjkLAbl 昔の人のほうが頭使ってた気がする
357デフォルトの名無しさん
2018/11/10(土) 13:58:30.77ID:g7tZUN2t >>356
ゆとりが悪い
ゆとりが悪い
358デフォルトの名無しさん
2018/11/10(土) 16:53:22.03ID:mr47SEAg ちなみに、おいらは、昔の人全体の代表ではない。
昔から、浮いた、もとい、特殊な存在だったよ。
昔から、浮いた、もとい、特殊な存在だったよ。
359デフォルトの名無しさん
2018/11/11(日) 03:11:43.95ID:4b5Szb0b 昔から今に至るまで中二病が良くなってないのか
ご愁傷様
ご愁傷様
360デフォルトの名無しさん
2019/04/05(金) 13:07:38.08ID:RIbaYTZD パンチカードでプログラミングの体験したい
361デフォルトの名無しさん
2019/04/05(金) 18:03:16.74ID:H6W88Bbl okitacはカードでtosbacは紙テープだったな
362デフォルトの名無しさん
2019/04/05(金) 22:01:28.30ID:2ukm4Pa5 昔、ウルトラマンで紙テープを読みとるの見て憧れたな。
363デフォルトの名無しさん
2019/04/05(金) 23:30:38.78ID:YlNbo3fd 仮面ライダーV3はカタカナ表示がスクロールしてたぞ
364デフォルトの名無しさん
2019/04/06(土) 06:38:29.24ID:25bhzAdA 和文もあるのか?
Windows7 が走る機械で編集・コンパイルして PC-9801FA にバイナリーを送り込む、ってのを最終的にやりたいのですが、
そしてデータ受け渡しは RS-232C が適当だと思っていますが、手をつけるにあたって何かいい方法・書籍・Cバス基盤はありませんか?
そしてデータ受け渡しは RS-232C が適当だと思っていますが、手をつけるにあたって何かいい方法・書籍・Cバス基盤はありませんか?
366デフォルトの名無しさん
2020/01/05(日) 02:26:57.67ID:/f8ZqQ50 >>365
PC9801関連のスレで聞いた方がよいのでは?
RS-232Cなら標準搭載しているのでCバス拡張ボードは不要なんじゃ。
それよりバイナリ転送するなら、ホスト側はUSBポートしかない機種だとRS-USB変換アダプタの
フロー制御でハードウェア・ハンドシェイクできる製品を検討することが重要な気がするけど。
仮に、MS-DOS側(=PC9801)の転送ソフトを知識ゼロから自作したいという話だとしても
CCT-98IIIとかフリーソフトとかの転送用ソフトで試してみては?
様々なバイナリ転送プロトコルを勉強したいとかなら廃刊になったCマガジンとか。
(今では電子書籍で安価に買えるみたい)
PC9801関連のスレで聞いた方がよいのでは?
RS-232Cなら標準搭載しているのでCバス拡張ボードは不要なんじゃ。
それよりバイナリ転送するなら、ホスト側はUSBポートしかない機種だとRS-USB変換アダプタの
フロー制御でハードウェア・ハンドシェイクできる製品を検討することが重要な気がするけど。
仮に、MS-DOS側(=PC9801)の転送ソフトを知識ゼロから自作したいという話だとしても
CCT-98IIIとかフリーソフトとかの転送用ソフトで試してみては?
様々なバイナリ転送プロトコルを勉強したいとかなら廃刊になったCマガジンとか。
(今では電子書籍で安価に買えるみたい)
367デフォルトの名無しさん
2021/08/04(水) 01:20:33.88ID:j/I41xD/ >>365
素直にUSB接続のFDDを買いなよ・・・
素直にUSB接続のFDDを買いなよ・・・
368デフォルトの名無しさん
2021/08/09(月) 03:13:50.04ID:TVSytFqE369デフォルトの名無しさん
2021/08/09(月) 03:14:58.82ID:TVSytFqE あるいはヘキサダンプをプリントアウトしてPC-9801FAでバイナリエディタを使って手入力w
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「レーダー照射」なぜ中国は素直に謝罪しないのか 非を認めず反論、逆ギレ「ごめんなさい」と言えない国情★3 [七波羅探題★]
- 【サッカー】Jリーグ、43億円の赤字予算を承認 ★2 [鉄チーズ烏★]
- 松村沙友理、スタバは好きだけど「やっぱコーヒーに700円800円が…」「家でお湯わかしてやったらタダやん」 [muffin★]
- 40代教員、1億8600万円分の暗号資産だまし取られる 「警察手帳のような物」見せられ−滋賀県草津市 [蚤の市★]
- 上野動物園の双子パンダ、1月末に中国に返還へ 国内でパンダ不在に ★4 [蚤の市★]
- 【ラブホ】小川晶前市長、出直し立候補意向 周囲に伝達 群馬・前橋市長選 [ぐれ★]
- 4:44:44.444
- ブレイキングダウンの試合前挑発タイムでくも膜下出血 朝倉未来の責任は [279254606]
- 最近ネットでよく見る「チュウ日人が減って改めて感じた。害悪なのは
- 統一教会関係なくても安倍晋三は暗殺されるべきだった??
- なんとかいうアメリカの定番ハンバーガーチェーン店のキッズ向けバーガーがこちら
- ちいかわ好きだけどハチワレがめちゃくちゃ嫌い
