X



懐かしのMS-DOSプログラミング ver.2
■ このスレッドは過去ログ倉庫に格納されています
0320デフォルトの名無しさん2015/09/18(金) 00:47:54.86ID:jgQeR3+L
↑↑
更に修正
for /f "delims=" %%a in ('dir /a-d /s /b') do @CALL :proc "%%a"
末尾の %%a はダブルクォートでくくる。ファイルメーにスペースが有るときに必要だった。
0321デフォルトの名無しさん2015/09/18(金) 00:53:56.15ID:jgQeR3+L
↑↑↑
後出しですまんが、表示するだけなら

for /f "delims=" %%a in ('dir /a-d /s /b') do @echo %%~na%%~xa

で充分
0323デフォルトの名無しさん2015/09/19(土) 22:24:15.58ID:+yAAtXTu
LSI C-86は出来過ぎた試食版だったからな。
Sモデルのみ以外に何の制約もない。
0324デフォルトの名無しさん2015/09/19(土) 22:46:17.70ID:1gNO/ViF
64KB以上のコードなんて個人じゃほとんど書かないしね。
データ用メモリならBMSなりEMSなりでいくらでもなんとかなったし。
0325デフォルトの名無しさん2015/09/20(日) 07:47:24.22ID:Iri/6B1b
サポート無しと書いてあるにもかかわらずサポート電話は鳴り止まず
アセンブラR86への質問が集中したという(のちにオンライン公開)
なお、一番売れたのはLSI C-86のマニュアルだったという
0328デフォルトの名無しさん2015/09/21(月) 03:02:51.18ID:WqC2QgKA
farデータ、farポインタはそのまま使える(Sモデル向けのライブラリ関数は当然未対応)
far関数はそのままだと共通のTEXTセグメントに入れられちゃうけど
一度アセンブリ言語で吐き出してから、所属するセグメントを例えばTEXT CSEGから
<ファイル名>_TEXT CSEGに書き換えて、RETでなくRETFで帰るようにしてやると……
0330デフォルトの名無しさん2015/09/21(月) 06:47:34.13ID:WqC2QgKA
ごめん、訂正、呼び出される側はfar指定付けた時点でRETFになる(当たり前)
外部関数の宣言でfarつけとけば、Sモデルでもきちんとセグメント指定したfarコールしてくれる
手動で手間かけなきゃいけないのは呼び出される側のセグメント名の修正だけ(なハズ)

なので1ファイル=1モジュール=1セグメントで、同一モジュール内のstatic関数だけnearコールする感じの使い方が
試食版でも(やろうと思えば割と簡単に)できちゃう(書き換えたファイルでは標準ライブラリ呼び出せなくなるから苦労は増えるけど)
0332デフォルトの名無しさん2015/09/28(月) 21:42:24.90ID:tVvff2lk
ライブラリで master.lib を活用してたっけなぁ
その作者がその後ニコニコ動画を作成するとは
0333デフォルトの名無しさん2015/09/30(水) 12:25:40.56ID:CwFEELRN
dir と打とうとして指が滑り、dior になってしまってオシャレな気分に
0334デフォルトの名無しさん2015/10/02(金) 21:40:07.85ID:sNptuE4Z
diorとは何か?
ググってフランスのブランドだと知る。
俺ら引きこもりプログラマはブランド品など縁がないからな(笑)
0336デフォルトの名無しさん2016/01/15(金) 00:41:51.09ID:6o0fYWvH
microsoft嫌いの俺が唯一評価するツールはm80だけだな
0338デフォルトの名無しさん2016/01/15(金) 07:41:12.81ID:POz82VxF
ディオール知らないとかネタじゃないならビビる
ヴィトンやエルメスぐらい有名だぞ
ユニクロ知らねえって言ってるようなもんだ
0340デフォルトの名無しさん2016/01/16(土) 23:38:29.37ID:cvqdiWLy
尺度の揃ってない比較だよな
俺もガキの頃エルメス読めなくて恥かいたけど、今でも男性向け商品そんな目立ってないし、そもそも日本人男性に合うのかとか思うしね
ジップネックニットとか10万超すのにジップ裏地が弱くてしばらく着てると痒くなったのよ。洗濯機に気軽に放り込めてなんぼだよ。ユニクロでいいよアホかと

男が詳しい必要ないと思うんだよな
腕時計とジャケットとクツだけはっときゃいいんじゃ
0341デフォルトの名無しさん2016/05/01(日) 16:16:59.40ID:tKi6j9CT
匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています

言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?

Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al

ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw


The Covenant Project
概要

Covenantは、純粋P2Pのファイル共有ソフトです

目的

インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します

特徴

Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)

接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
15
0342デフォルトの名無しさん2017/01/03(火) 23:12:51.54ID:tIB0Geiv
timeout で最後まで待ったら処理A、途中でキーを押したら処理Bに分岐したいです
0343デフォルトの名無しさん2017/01/04(水) 01:01:34.11ID:MZRDhGwM
for /f "usebackq tokens=3" %i in (`timeout 3`) do set res=%i
「0 秒待っています。続行するには何かキーを押してください ...」←普段はこの左の数字が変化するけど
「3 秒待っています。続行するには何かキーを押してください ..0」←for文では左の数字は固定で..のあとに変化する数字が付くことに気づきました
これで途中でキーを押せば「...」「..2」など、最後まで待てば「..0」を取得できました

しかし、なぜか
if %res%==..0
で比較できません…
何か目に見えない特殊な文字コードが入っている?
0344デフォルトの名無しさん2017/01/04(水) 01:33:52.26ID:MZRDhGwM
%res:~8,1%
これが空なら途中でキーを押した、0なら最後まで待ったということが分かりましたw
なんとかなりましたorz
見た目は「..0」でも1文字ずつ調べるとピリオドは3つあり、「...(空)2(空)1(空)0」となっていました
(空)はたぶん制御文字で、途中でキーを押すと最後の0まで伸びない
秒数に応じて(空)も合わせて2つづつ位置が伸びるようで、5秒なら %res:~12,1%
0345デフォルトの名無しさん2017/04/23(日) 03:31:30.84ID:H8Cvp+NU
AT-互換機のDOS互換FDDブートかWindowsの16bitモードやDOSBOX等で動くLSI-Cで
VRAMに図形を出すのって何処かに例はありますか?
0347デフォルトの名無しさん2017/06/05(月) 14:58:52.67ID:yTD0hQm/
memo

【ランサムウエア】「身代金要求型」不正ウイルス作成の疑い 中学生を逮捕
asahi.2ch.net
test
read.cgi
newsplus
1496631476

【自作PC】AMD、32コア/64スレッドのEPYCを6月20日、次世代のRadeon VegaはSIGGRAPHで発表
asahi.2ch.net
test
read.cgi
newsplus
1496264554
0348デフォルトの名無しさん2018/02/16(金) 06:36:37.30ID:W1XJdyx1
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
0349デフォルトの名無しさん2018/05/23(水) 22:16:44.71ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

2FT6E
0350デフォルトの名無しさん2018/07/04(水) 23:47:27.16ID:gFgZc5FG
EIR
0351デフォルトの名無しさん2018/11/08(木) 16:09:22.71ID:vbhiXs8X
PC/AT の VGA カードって、PC-9801みたいに、テキストとグラフィックの画面の合成はできないのでしょうか。
0352デフォルトの名無しさん2018/11/08(木) 18:45:12.55ID:cDcIjCKR
>>351
多分、出来ないんじゃないかな、たとえ1バイトの ASCII 文字であっても。

「text mode」はあるけれど、「mode」という言葉が示すとおり、グラフィック mode
とは切り替えて使っていただと思う。PC-9801 や PC-8801 では、text と
graphic をハードウェア的に重ね合わせることが出来て便利だったけれど。
03533522018/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 の同時使用は出来
ないハズ。ただし、ネットで入手できる仕様書は概ね かなり古いようだが。
03543522018/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(ピクセル)。
03553522018/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.
0358デフォルトの名無しさん2018/11/10(土) 16:53:22.03ID:mr47SEAg
ちなみに、おいらは、昔の人全体の代表ではない。
昔から、浮いた、もとい、特殊な存在だったよ。
0365◆QZaw55cn4c 2020/01/02(木) 15:13:56.73ID:VmmTWzwp
Windows7 が走る機械で編集・コンパイルして PC-9801FA にバイナリーを送り込む、ってのを最終的にやりたいのですが、
そしてデータ受け渡しは RS-232C が適当だと思っていますが、手をつけるにあたって何かいい方法・書籍・Cバス基盤はありませんか?
0366デフォルトの名無しさん2020/01/05(日) 02:26:57.67ID:/f8ZqQ50
>>365
PC9801関連のスレで聞いた方がよいのでは?
RS-232Cなら標準搭載しているのでCバス拡張ボードは不要なんじゃ。

それよりバイナリ転送するなら、ホスト側はUSBポートしかない機種だとRS-USB変換アダプタの
フロー制御でハードウェア・ハンドシェイクできる製品を検討することが重要な気がするけど。

仮に、MS-DOS側(=PC9801)の転送ソフトを知識ゼロから自作したいという話だとしても
CCT-98IIIとかフリーソフトとかの転送用ソフトで試してみては?

様々なバイナリ転送プロトコルを勉強したいとかなら廃刊になったCマガジンとか。
(今では電子書籍で安価に買えるみたい)
0368デフォルトの名無しさん2021/08/09(月) 03:13:50.04ID:TVSytFqE
>>365
Windows7→Windows98(PC-98)にネットワーク経由でデータ移動
Windows98(PC-98)→PC9801FAにMAXLINKで転送
0369デフォルトの名無しさん2021/08/09(月) 03:14:58.82ID:TVSytFqE
あるいはヘキサダンプをプリントアウトしてPC-9801FAでバイナリエディタを使って手入力w
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況