X



懐かしのMS-DOSプログラミング ver.2

■ このスレッドは過去ログ倉庫に格納されています
0254名無しさん@そうだ選挙に行こう
垢版 |
2014/12/13(土) 16:38:37.00ID:md/0oTMx
10年位前だったか、voidさんが2ちゃんねるに遊びに来てた頃、
「voidには読めないスレ」と題して半角カナだけで会話してたスレが有ったな
0257名無しさん@そうだ選挙に行こう
垢版 |
2014/12/13(土) 22:05:54.42ID:/7e0hvt5
まさか出版業界という狭い世界でしか通用しない「常識」を
一般でも当然であるかのように偉そうに言い張るジジイだったとは
0259名無しさん@そうだ選挙に行こう
垢版 |
2014/12/14(日) 04:00:51.32ID:QEpJ0bQG
voidさんは荒らしてない
荒らしてたのはvoidさんに突っ込まれて発狂した人たちの方
0262名無しさん@そうだ選挙に行こう
垢版 |
2014/12/14(日) 08:41:09.08ID:xqizqHdC
そもそも出版業界は当時からそんなチンケなシステム使ってないし(笑)

>>259
coolを装って他人を発狂させるように持って行くのが奴のやり口
つまり荒らしの一種であることには変わりない
その辺が、ただ吠えるだけだったmohtaと違うところだが
0264名無しさん@そうだ選挙に行こう
垢版 |
2014/12/14(日) 09:59:22.50ID:QEpJ0bQG
半角カナが本文とかタイトルとかに含まれてると
ハングアップするメールソフトがあったんだわ
0265名無しさん@そうだ選挙に行こう
垢版 |
2014/12/14(日) 10:00:30.37ID:QEpJ0bQG
あとNeXTのメールソフトはJISのESCシーケンスが途中で終わってるメールが来ると良くハングアップした
0269デフォルトの名無しさん
垢版 |
2014/12/15(月) 15:01:35.76ID:S12Bl0xh
縦書きにするときの折り返しがうまくいかない、という理由以外
英数字を半角にしてはダメ、という理由は見たことがないよね
ダサダサの全角英数で書かれた横書きWeb記事は笑えるけど

今時、文章を書くのは縦書きを要求されない事案の方がずっと多いのに
それが当然かのごとく言い続けるバカ
0270デフォルトの名無しさん
垢版 |
2014/12/16(火) 04:13:14.47ID:TqAHWkrR
プロポーショナルフォントなら全角でも違和感ないぞ。
少なくとも、他人に半角を強制する理由もない。
0271デフォルトの名無しさん
垢版 |
2014/12/16(火) 06:29:04.39ID:Y09zRoZG
>>269
だからさ、「Web記事」の時代しか知らないようなお子様は大人しく黙ってればいいと思うよ、見てて滑稽だから。
そもそも、なんでそんなお子様がこのスレに来るのかが意味不明(笑)
0275デフォルトの名無しさん
垢版 |
2014/12/21(日) 04:40:14.34ID:SzaLx6Ws
>>271
98で一太郎使ってる頃から、英数は半角が当然
論文だろうと企画書とかのレジメだろうと、ね

縦書きにする必要があるものは当然全角で原稿を書くけど
全角が必要ない場所に全角使用を強制するなどという
狭い世界での馬鹿げた習慣は無かったよ
0276デフォルトの名無しさん
垢版 |
2014/12/21(日) 04:52:50.92ID:SzaLx6Ws
「本屋新聞の原稿」以外にパソコンとか使ってなかったのかね
会議の資料の手書きとか考えられないんだが

それとも、専用のワープロ(死語)でも使って書いていて
文字コードの変換で苦労するから全角英数の強制かね


いずれにしろ、無知の老害は邪魔以外の何者でもないね
全角英数の使用を、でかい声で、さも全世界で普通に行われていたかのごとく言い張ってたのに
それが単なる「縦書き改行の都合」とは
0280デフォルトの名無しさん
垢版 |
2014/12/23(火) 14:08:09.73ID:CpoMz/jA
そもそも、Windows環境でコンソールアプリをちょっと作ったぐらいで
「俺はDOSも知ってるぜぃ」などと勘違いしてる奴が多いんじゃないのかな
0283デフォルトの名無しさん
垢版 |
2014/12/24(水) 22:25:12.00ID:NXoDExpJ
デバドラとしても実行ファイルとしても常駐コマンドとしても使えるファイル
ネ申業に見えたな
0284デフォルトの名無しさん
垢版 |
2014/12/24(水) 23:20:14.86ID:+1mcRXwz
デバイスドライバも兼用できるか?!いや、emm386.exe はあったか‥こいつが dos の最高峰かもしれん‥
0286デフォルトの名無しさん
垢版 |
2014/12/25(木) 11:00:25.05ID:Y5il8ylR
割り込みベクタをリンクして
あとから取り外すとき
ほかの常駐がリンク追加してても
自分のベクタだけ消す親切仕様ですねわかります
0288デフォルトの名無しさん
垢版 |
2014/12/25(木) 15:58:48.20ID:9LCXhqZT
えぅ
チェーンの方がいいか?
0290デフォルトの名無しさん
垢版 |
2014/12/25(木) 17:36:22.76ID:L/jFdBQ0
.exe形式のデバドラってどういう構造なんだろう
デバイスヘッダが先頭になきゃいけないわけだし・・・
0291デフォルトの名無しさん
垢版 |
2014/12/25(木) 17:48:27.48ID:EJcNEjL/
割り込みベクタはチェーンになってないぞ。
デバドラチェーンと混同してない?
0293デフォルトの名無しさん
垢版 |
2014/12/25(木) 18:09:48.21ID:EJcNEjL/
いずれにしろ、チェーンから自分だけ外す、というのは無理。

自分が書き換えたより後で誰かが書き換えてたら、常駐解除を
中止する、ということしかできない。
0294デフォルトの名無しさん
垢版 |
2014/12/25(木) 19:51:19.13ID:EL6gBj3v
チェーン部分だけ切り離して常駐したままとし,他の主要機能は解放してしまう,というのはありかな‥結構難しいな‥
0298デフォルトの名無しさん
垢版 |
2014/12/26(金) 18:15:16.88ID:U37YhbAO
割込みベクタの場合は、自分が書き換える前にあった番地を、アプリ側で
どこかに持っておいて、自分の処理をやる前あるいは後に、そっちも呼んでやる、
という風になってるから、自分以外のアプリについては手が出せない。
0299デフォルトの名無しさん
垢版 |
2015/02/19(木) 21:19:28.51ID:hgzMijvn
ちと知恵を貸してくれ

CONFIG.SYSでデバイスドライバ内から環境変数にセットしたいんだが
この時、Master Enviroment Blockは存在しない様で煮詰まってます
なんかいい方法無いですかね

shellとして実装してcommand.comを呼び出すのもアリかなとは思いますが
スマートじゃないもんで・・
0300デフォルトの名無しさん
垢版 |
2015/02/19(木) 22:25:09.86ID:LWlw/bQR
Function 52hあたりで取れなかったっけ?
ドライバの組み込み段階でPSPとかあるのかものすごく疑問だが
0301デフォルトの名無しさん
垢版 |
2015/02/19(木) 22:36:11.17ID:hgzMijvn
int 21h ah=52hでFirst MCBからたどってたんだけど見つけられなかった
PC-DOSとかのRAMDISKとかもバッチ側から判定してるし無理なんかな
0302デフォルトの名無しさん
垢版 |
2015/02/20(金) 01:03:48.98ID:YdLhjXHH
config.sysの段階ではまだ環境変数そのものが無いんじゃないか?
あれはcommand.comの担当だし。
一時的に適当なメモリに渡したい値を書いておいて、autoexec.bat内でそれを参照して環境変数をセットするプログラムを走らせるとか。
0303デフォルトの名無しさん
垢版 |
2015/02/20(金) 01:21:34.71ID:E5Tlwj2H
たしかに、デバイス読込み時には環境変数は1個もなかったですね
一応ブロック型のデバイスなのでCONFIGで組込む必要があるんですが
ドライバ内で作業域作って、後から別プログラムで参照した方が簡単でいいかもですね

どうも有り難うございました
0304デフォルトの名無しさん
垢版 |
2015/02/20(金) 02:52:39.83ID:YdLhjXHH
え、もしかして実務のデバドラなのか。
環境変数にこだわってるわけではなくて、実行構成も固定されてて、クライアント?に値を渡したいだけなら、適当な割り込みベクタを使ってオレオレシステムコールを作ればいいんじゃないかな。
産業用途の環境なら、あえて予約はされてるけど絶対に使われない割り込み番号を乗っ取るのが一番安全だな。
例えばサウンドボードとかMIDIとかのメディア系。
0305デフォルトの名無しさん
垢版 |
2015/02/20(金) 03:01:15.57ID:YdLhjXHH
ついでに書けば、ドライバ内に作業域とあるが、起動シーケンスで一回しか使われない情報は、必ずしもお行儀よくmallocとかしなくていいんだぜ。
起動時なんだから、他に動くプログラムが固定されてるなら、メインメモリの一番おしりあたりとかを勝手に書き換えてしまえば良い。
Turbo系のデバッガだって、MCBを無視して勝手にUMB領域使ってたしなあ(笑)
0306デフォルトの名無しさん
垢版 |
2015/02/21(土) 15:07:24.84ID:qawIJ4u+
未だにこんなの使ってるということはエミュ運用も考えられるので
あまり裏ワザじみたことはしないほうがいいかも
0309デフォルトの名無しさん
垢版 |
2015/04/02(木) 21:55:36.57ID:/mItJeV5
巨人3連敗ざまぁ
0310309
垢版 |
2015/04/02(木) 21:56:29.54ID:/mItJeV5
誤爆失礼
0312デフォルトの名無しさん
垢版 |
2015/04/13(月) 21:05:32.51ID:qtTodoaL
あまり裏ワザ使うと、エミュでも再現できず、作動しないと思うのだが。
0316デフォルトの名無しさん
垢版 |
2015/07/26(日) 12:50:57.68ID:YJ+DIjqN
サブディレクトリを含む、ファイル名の一覧を出力したい
フォルダは除きたい

▼入力
dir /a-d /s /b

上記から、ファイルのパス部分を削除したい

for /f "delims=" %%a in ('dir /a-d /s /b') do @set x=%%a

変数に代入
ここからファイル名のみ取り出す方法がわかりません
なにか、いい案ないでしょうか
0317デフォルトの名無しさん
垢版 |
2015/09/17(木) 21:56:25.06ID:XhnyECMl
たまに上げとくか
0318デフォルトの名無しさん
垢版 |
2015/09/18(金) 00:39:31.72ID:jgQeR3+L
>>316
もう自己解決しているかもしれないが

REM もっとシンプルに出来るかどうかは知らん
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /a-d /s /b') do @CALL :proc %%a
goto BYE

:proc
@set x=%~n1%~x1
@echo %x%
@goto :EOF

:BYE
endlocal
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 を活用してたっけなぁ
その作者がその後ニコニコ動画を作成するとは
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 をハードウェア的に重ね合わせることが出来て便利だったけれど。
0353352
垢版 |
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 の同時使用は出来
ないハズ。ただし、ネットで入手できる仕様書は概ね かなり古いようだが。
0354352
垢版 |
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(ピクセル)。
■ このスレッドは過去ログ倉庫に格納されています

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