echo テスト > tes.com
tes
# 「テ」一文字だけでいいんだけどね
push ffffh
push 0
retf
5 :
デフォルトの名無しさん:2014/05/18(日) 23:08:49.99 ID:wTsBQBni
DOSのエミュレータを使えば、いろんな環境でDOSとまったく同じように使えます。
>>2 スモールモデルしか対応していないのが残念なんだが
int 21hとか直接書いてたのっていつ頃なんだ?
ふつー CALL 5
DOSでアセンブラ使ってたら今でも使うだろ。
>1000 デフォルトの名無しさん [sage] 2014/05/18(日) 23:04:42.60 ID:rUyw0YMJ Be:
> Windows 8.1でもdosソフトウェアは、うごきますか?
DOXBOX おすすめ
あれ
打ちまちがえた
x DOXBOX
o DOSBOX
>>6 でもfarが使えるから大きなデータは外へ出しちゃえばかなりのことができる。
ご丁寧にfar文字列処理関数も入ってる。
Turbo Cがタダで使えるのに LSIC86 試食版を今更使う理由が分からん
>>13 CP/M 対応も考慮したプログラム作法が理解できんとは
CP/M86なんて使ってたやついたのかね。
call 5なんて、知識レベルでの互換性の意味しかないだろ…。
四半世紀前に、バイト先の別働隊が
コンカレントCP/MとかC-DOSの案件
やってたのを思い出した。
>>14 コードセグメントが near ポインタのみの64KBというのは、ちと狭すぎやしないか‥
>>15 フリーの MS-DOS 用 C コンパイラってあるの?
>>20 Turbo C
GCC(要djgpp)
他にもあるやろ
>>17 そゆこと
DOSでcall 5を使うのは「俺はお前らと違ってCP/Mから知ってんだぞドヤァ」の意味にしかならない
>>16 そこで自分から“CP/M”を口にしてしまうようでは、煽り師失格だな
>>21 turbo c ってフリーなの?
でもオープンソースじゃないよね
gcc(djgpp) は i386 以上を要求するしね
>>24 オープンソースでi386未満がターゲットのコンパイラが欲しかったの?
条件後出し乙。
その条件だと心当たり無いわ。
役立たずで申し訳ない。
パソ通全盛期の80年代末、フリーウェアはほとんどがTurbo Cで書かれてたね。
俺はQuick Cへ行ったけど。
そうか?
アセンブラも多かった気がするよ。
そんな俺は、TurboPascalをasm文だけ使って構造化アセンブラとして駆使してた。
TurboPascalってasm文をテンポラリファイルに書き出して子プロセスでtasm呼び出してたし、
asm文しか使わんなら素直にtasm直に使ったほうが便利だろ。
いや、tasmいらんよ、アセンブラを内蔵してる。
tasmとか呼び出すのはとろくさいC系だろ。
OpenWatcomのことを思い出してあげてください・・・
>>24,
>>25 Open Watcom C/C++ はどう?
DOSエクステンダ不要なバイナリーも
作れたハズ
リロってなかった。スマソ
Turbo Cはコンパイルも速いし、吐き出したコードもMS-Cより2〜3割速かった
Open Watcomはインラインアセンブラ周りでいろいろ罠があって勧めにくい
QuickCって学習用と謳っておきながら
ラージどころかヒュージモデルのライブラリまで入ってたね。
実際にQCでそんな巨大なアプリ書く奴いたのだろうか・・・
そらゲームとかの素材置きまくったらあっという間ですわ
ヒュージポインタはいまいち信頼出来ないと思っていた‥‥
セグメント-オフセット処理は自分でなんとかしないといけないと思うよ‥‥
というか、やっぱり 64KB 以上のオブジェクトをそのまま使おうと思っちゃいけない、自分で完全管理するしかないと
というわけで、LSI-C にラージモデル(だけでいいのでそ)のサポートがほしかった
>>35 自分で探すべきなんだろうけれども、たとえばどんなところが罠なんですか?
>>38 Open WatcomのBugzillaでinlineとかをキーワードで検索するといろいろと
何年も放置された未修正のバグの山が出てくる
40 :
デフォルトの名無しさん:2014/05/23(金) 22:03:27.43 ID:8WEuVIde
鯖移転完了age
LSIC-80 今でも使ってますよ。XPまではDOS窓で動いたのに、7になったら
動かなくなって、仮想マシンとか調べたら対象のOSをインストールしなければ
いけないのね。困ってたらnetでmsdos.exe見つけ、それ経由で使えてラッキー。
8085+82XXの基板がまだあって、去年は\3万の仕事を2件やりました(w
DOSでCW、エコロジーとか使ってた頃が懐かしい(w
CWはemm386.exeと相性悪くロックしたりした。
REDもそうかな? CWとほとんど同じ使い勝手だったのは覚えてるけど。
初期の仮想EMSドライバは各社癖があったよな
45 :
デフォルトの名無しさん:2014/05/29(木) 23:17:32.12 ID:r/lE+ONP
MELEMM.386 が一番使いやすかったな。
ああ俺もだな。
メルコの4MB-EMSボード使っていたからというのもあるけど
細かな指定ができるのはメルウェアが一番だったな。
ディスクキャッシュは糞だったけど。
ダメルコのディスクキャッシュソフトで何枚FDが死んだ事か…。
MSDN垢持ってるひとは今でもMS-DOS6.22が手に入る。6.2/Vも。
16bitコンパイラはあったかな。
Visual C++1.52cのリンカーってDOSのEXE吐けたっけ?
そういえば今年はIBM-PC/AT誕生30年
吐けるよ。win3.1用exeもdllもvbxも
quick win用exeもスタティックlibも
P-codeもcomも。
RAMDiskで768KBぐらい使って、そこに中間ファイルのパス張っておくと
コンパイルが速いってのをやったなあ。5インチ縦置き20MBのディスクの頃。
TurboPASCALはコンパイル速かったなあ
ディスクキャッシュ上でコンパイルして実行。フロッピーへは遅延書き込み
パスカルはワンパスでコンパイルできる言語仕様だからな。
ヘッダも分離してないし、当時のマシンスペックには最適の高級言語だった。
関係ないが、アップルのSwiftがちょっとパスカル臭がしてうれしい。
Turbo Cも1パスで高速、安価、吐き出したコードもMS-Cより高速と
いいところずくめだった。日曜プログラマは一斉にTCへ流れた感じがある。
特にMSAが98用に移植した1.5が大ヒットしたね。
プリプロセッサがあったり前方参照が可能なCが1パスでコンパイルできるわけない
ところが、BorlandのCはプリプロセッサも含めて1パス
#if中でsizeofあたりも使えたんだぜ
最近clang化したせいでできなくなった
ああ、1パスの意味が分からん人か。
理解不足で速いと言いたいだけだろとも思ったけど、clang化でできなくなったというからには何か構造的なレベルでこ違いを感じてるのかなあ
つか#if内でsizeofって逆にパス増やしてない?それともプリプロセッサ内でも自然に扱えるように独自実装積み上げてたのかな
たーCは無駄なコード吐いてたな(Pコード形式?)
Cはどれも似たり寄ったりだけど、ターボアセンブラは至宝!
QuickCのコンパイル速度だけは感動した気がする
>>57 > #if中でsizeofあたりも使えたんだぜ
#if sizeof(int)==4
typedef int int32;
#elif sizeof(long)==4
typedef long int32;
#endif
とかやれても limits.h あるし意味ないよなあ、移植性失うし。どういう便利な使い方あんの?
>>56 pascal にも前方参照あるし、前方参照は call 命令だけ吐いといてあとからオペランド埋めればいいだけだよ
>>64 > pascal にも前方参照あるし、
本質的にできないからforwardなんてのが後からUCSDに追加されたりしたんだけど。
>>65 それがどうかしたのか?
前方参照できるのは事実だろ。
ん?
横レス
本質的にできない、ってワンパスでは、ってことではないのかな。実際ワンパスで実現する方法はないよね
いや、まああえて言えばシンボル保存した上での実行時の遅延評価までやるのなら可能だろうけど。
cでそんなことやるにはobj-cみたいにランタイム用意しなきゃ無理だろ
機械語レベルの前方参照なら
>>64の言う通り、何も難しい事は無いし
ソースレベルの前方参照は、C言語はそもそも不可能だろ、普通forward宣言が必要なのを前方参照とは言わんしな
(C++でクラス内ではまだソースコードに出現してないメンバ変数名を使えたりするようなのがそれ)
>>59 ひとつのコンパイラがプリプロセスから構文解析、意味解析をトークンごとに一気に行ってるからできるわけでパスは増えてないよ
ていうかこれが1パスでないなら1パスって何なんだ
>>68 > ソースレベルの前方参照は、C言語はそもそも不可能だろ、普通forward宣言が必要なのを前方参照とは言わんしな
ごめん、意味がわからない
> (C++でクラス内ではまだソースコードに出現してないメンバ変数名を使えたりするようなのがそれ)
そんなことできないし
話にならんな
class t {
int f(){
return m; //この時点でmを参照できる
}
int m;
};
こういう風にまだ出てきてない宣言を使えるのが前方参照で、これは1パスでは無理
CやPascalみたいにプロトタイプやforward宣言が必須なものは、その情報だけで呼び出し側の生成には充分だからこそ必須になってる訳で1パスで可能
バブル絶頂の80年代末、パソ通が黎明期から普及期へと移り変わった頃
Vz + TCCは俺の青春って人は多いだろうね
>>71 ちょっとおそい90年代前半だが、それでも Vz + lsic が青春でした‥
EZ→TunedEZ→NITemacsだったかな。
VZは仕事で使ってたか。
VZを常駐させるようになって、いままで多数使用していたフリーソフトを整理できたからな。
FDか
fdとki-shell 手放せなかったな
FDのひと死んじゃったんだよね南無南無
各自がシステムのフロッピーとデータ用フロッピー持って、共同パソコンを一々
立ち上げてはエディット・コンパイルとかやってたな。システムは左側。
HDD内蔵のパソコンが出た時は、フロッピースロットが1つしかない!って慌てたわ。
システム用フロッピーには書込み防止シールを貼る
8inchだと角を切るだっけ?
フロッピースロットが1つでも何とかなってたような記憶が
なんかフロッピー入れ替えてた覚えがある
MS5550は3FDDでシステム&プログラム&データ
おれが大学当時、大学の授業のために5インチフロッピーが必要ってのがあった。
生協で買ったよ。1枚700円ぐらいしてた。
>>80 書込み防止したまま書込みをすると警告と再試行、中止、無視の
指示要求が出る
その状態でフロッピーを入れ換えて再試行をするとDOSは入れ替え前の
状態から書き込むのでフロッピーの中身が大変なことになる
int 1bh
>>85 PC-9801で最初にHDDを内蔵したやつでは、普段の使い方で同様に
「さっきまでのディスクのディレクトリを上書き」が発生するという酷いバグが
受信ringバッファから読みだすルーチン: LSIC80、石は8085=8080コード
char* _asm_u(char*); /* 左辺値にするための宣言*/
#define ring(ptr,ring) *(_asm_u("\n\tMVI\tH, HIGH " #ring "_\n" \
"\tLDA\t" #ptr "_\n\tMOV\tL,A\n\tINR\tA\n\tSTA\t" #ptr "_\n"))
char ch1read(void) { return ring(c1r_rpt,r1ring);
受信ringバッファに書込む割込み処理の、正常受信時の処理:
ring(c1r_wpt,r1ring) = ACHDR;<---I/Oreg. B000h番地
rptとwptはbyte、ringは[256]にして自然ラップアラウンド、添え字計算時の
アドレス演算がワード演算されないように最適化させてます。
ptrを1バイトにするために
MVI H,HIGH ring
LDA ptr
MOV L,A
INR A
STA ptr
MOV A,M
として11バイト50クロックにするより、素直にptrに2バイト使って
LHLD ptr
MOV A,M
INR L
SHLD ptr
として8バイト44クロックのほうがメリットあると思う。
ptrを1バイトにする以前にringバッファに256バイトもいるのかまず検討すべき。
わを!4行でできるのか(*o*) ptrの頭はゼロのまま・・・あ!違うか初期化で
先頭+00にしとくのですね。今度使ってみます。ありがとう!!
ringは32と64で周回遅れが出たことがありますが、
主な理由は++した後マスク演算が要らないからです。
4CHあって、各受信256送信512、実装8KBの半分近くがringです(w
再構成するフレームがせいぜい80byte5種類位なのでこれでも余裕です。
最初に書いたときは受信バイト数を持って、書き込みで++読み出しで--、
片方は割込みだからタスク側で DI/EI してとかややこしい事書いてました。
自分では簡潔になったと思ってましたが、診て貰ってよかったです(m_ _m)
91 :
90:2014/06/15(日) 02:32:02.60 ID:n1YZfzi+
>>88 の部分は確かに上の最適化可能ですが、システム全体の性能はどっこい
なことが判りました。メインループで「そのCHに受信データがあるか?」の判定
のところで、rptrとwptrを並べて配置してあることを利用して、
LHLD rptr ;wptrとrptr両方
MOV A,H
XRA L
CNZ そのCHの受信フレーム再構成処理 と最適化してます。
こっちでメモリアクセスが1行増えるから、全体の性能はどっこいなのでした。
80C85のデータシート見たら、機械語の説明表でステート数とサイクル数
という欄があるのですが、これらはどう見ればいいのですか?
ここで答え書いてもらうより
ステートとかで検索してみれば
93 :
90:2014/06/15(日) 03:32:31.88 ID:n1YZfzi+
一般用語から類推すると、ステート数=CPUクロック数 だと思えますが、
サイクル数ってのがステートより少し小さい数字で出ていて、こちらが何の事か
想像できないんです。どちらの数字に1/原CLKを掛けたものが実行時間とか。
メーカーさんのサイトでも覗いてみれば
もしくは電凸?答えられる人いるかな
うろ覚えだからな、ヘタにかけないし
当時はステート数で実行時間を計算してたよ
DMAがどうとかウェイトサイクルがどうとか、そんな話だった気がする
何クロックだかで1ステートとか1サイクルとか、そういう定義があった。
きちんとした資料なら定義がちゃんと書いてあるだろうし、書いてないならいまさら
確認するのは無理だからあきらめろ。
97 :
90:2014/06/18(水) 04:47:59.32 ID:Nalm9W0l
沖電気の80C85のpdfの中探してみましたが、定義なしで使っていました。
4ステートの命令が1サイクル、7ステートが2サイクル、10ステートが3サイクル
なので、3で割った商で近似できそう。メモリアクセスの量みたいですね。
reg,reg 命令が一番少なくて、LDA/STAのようにメモリアクセス1回だと2サイクル
メモリアクセス2回だと3サイクル、call/return はpush/pop & jump だから
もっとサイクル数が多い。
8085は条件分岐が成立しないと 命令の3バイト目の読み込みをスキップするから2サイクルになるぞ
99 :
90:2014/06/18(水) 17:22:44.57 ID:Nalm9W0l
その辺は成立/不成立で両方書かれています
すでに全然DOSと関係ないな…
V30の80モードでも動かしてるんだろう…(笑
男なら黙ってリアルモード実行
プロテクトモード、なにそれ美味しいの?
>>101 Z80にしてほしかったね、多分今でも買う‥
>>102 VRAM を一時的に UMB にして FEP を放り込むとかできないじゃないか
105 :
デフォルトの名無しさん:2014/06/28(土) 22:23:23.14 ID:mzWdk+zj
1980年代、NECのドットプリンタ(PC201HPR*?)が70万円だった。
PC9801VM2が40数万円、40MBのHDD付のPC9801VX4(?型式忘れた)が80万円。
たった40MB(GBじゃない)のHDD付で40万円も高かった。信じられる?
もっとも、ずっと前のYHPなんかFDに相当するシステムだけで1千万円、
プリンタみたいにきれいな印字ができなくてグラフを描画するプロッタ
が300万円したから、その時代よりは随分安くなったが。
ああ、当然、FORTRANのプログラムはタイプライタで横にテープに穴を
空ける装置で打ち込んでた。ディスプレイなんて気のきいたものはなかった。
VM2とCバスに差す40MBHDD(互換品)なら持ってた
DOSの起動が速くて感動した
FORTRANはグリーンディスプレイが付いてた世代
メインフレームに転送ボタンを押すと、瞬時に実行された!
うちはイエローディスプレイだったな。
108 :
デフォルトの名無しさん:2014/07/20(日) 11:52:05.80 ID:UVunCW/j
★2ch勢いランキングサイトリスト★
◎ +ニュース板
・ 2NN
・ 2chTimes
◎ +ニュース板新着
・ 2NN新着
・ Headline BBY
・ unker Headline
◎ +ニュース板他
・ Desktop2ch
・ 記者別一覧
◎ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
・ ログ速
◎ 全板実況込み
・ 2勢
・ READ2CH
・ i-ikioi
※ 要サイト名検索
またとんでもない懐古趣味のスレがあった物だ。
懐かしいな。
4bit,8bitでゲームを作り、インベーダーではCPUやROMが無くなり海外まで資材担当にリュックを背負わせて買いに行かせたり。
インベーダーゲームの基板を買取にヤクザが会社に押しかけたり。
CP/M CP/M86 MP/M 色々やったな。
DOSには腹立たしい思いしか無い。
CP/Mのライセンスは10万とか30万とか安かったしただで使うケースも多かった。
しかしMSDOSになってから突然1000万だとふっかけられて頭に来た。
西みたいな若造が窓口だなんて頭に来た。
LSIC-80のリンカで、ROMのアドレスを指定しないと0100h番地からになるのは
CP/M時代のルールを引きずってるんだよね。
>>110 あれだろ,メモリ上ではプロセスの頭にヘッダが確保されている,そのヘッダの大きさにあわせているんだろ.
でもあのヘッダ(Program Segment Prefix) の半分はコマンドラインの内容だったたりするのは MS-DOS 的だったかと
(CP/M なら FCB(FileControlBlock) で引数を指定するからな
なんのための 80h バイトだったんだろ?
>(CP/M なら FCB(FileControlBlock) で引数を指定するからな
>
>なんのための 80h バイトだったんだろ?
コマンドライン全体がコピーされるしデフォルトのDMAでもあった筈
80h〜ffhのディスクバッファはなぜかDMAと呼ばれたたな。
フロッピーはDMAで転送すると思い込まれてたんだろうね。
それともdisk 何とか areaとかの略称だったのかな
>>113 CP/M 2.2のマニュアル(
http://www.cpm.z80.de/manuals/cpm22-m.pdf)では、
システムコールの説明で
> FUNCTION 26: SET DMA ADDRESS
> Entry Parameters:
> Register C: 1AH
> Registers DE: DMA Address
>
> DMA is an acronym for Direct Memory Address,
となっているが、巻末の用語説明では
> DMA: Direct Memory Access. DMA is a method of transferring data from the disk into memory
> directly.
とも書かれているので用語として統一されたものではない感じ。
さんくす。結構曖昧なんだね。
PC-88の内蔵フロッピーはDMA使ってなかったりする
>>113 > フロッピーはDMAで転送すると思い込まれてたんだろうね。
当時の CPU の能力では、DMAC を使うか、転送に専任しないと FDD (30kbyte/sec ぐらい) に間に合わなかった様な気がする。
PC-88はメインCPUがZ80だけど、FDにも専用のZ80(とRAM)を持っていて
データはそれら同士でI/Oポート介してハンドシェイクしていたんだよね。
FDの方のZ80がDMA使っていたんじゃないの? 俺は詳しくしらんけど。
>データはそれら同士でI/Oポート介してハンドシェイク
ハンドシェイクはI/O経由でも良いけど
データ転送はDMA使った方が良くね?
Web見てもオーバーヘッドの問題はあったみたいだね。
もともとFDDの無かったPC-8801(8001?)から拡張して、何かしら互換性を持たせるために
建て増し的に設計して、それでFDDはサブシステムに追い出したのかも知れないし
NECの中の人が何を思う所あってそう設計したのか俺には分からないw
PC-8001の外付けFDDから既にサブシステムだったから、それを継承したんだろう
元々PC-8001とPC-8031とは別々に開発がスタートしたんじゃなかったかな。
PC-8031を開発始めた段階で、どんな代物と繋ぐのかよく分かってなかったと言うw
PC-8031は簡単な外付け回路でセルフブートできるし、プリンタ等繋げられるI/Fもついてるから
スタンドアロンのマイコン装置としての活用も想定されてたと思う。
スタンドアロンで音楽を演奏(ヘッドをガチャガチャ動かして)というのがあった記憶が
PC-8031にプリンタ繋いで、プリンタサーバにしたことならある。
PC-8031って変換アダプタつければP6にも繋げたよな。
PC-8031にプログラムを転送して実行、結果を受け取るプログラムなら作った事ある
>>124 そうか8255を使ったパラレルポートだからプログラム次第でプリンタを繋いで動かしたりとかできたんだな
>>127 PC-8001との通信用とは別のポートだよ。
PC-8031って本体用ポートの他にプリンタポートも付いてたのか。
オレはTF-20だったなあ。
8001用のペンプリンタの試作機って見たことある
カンカンカンカンうるせーのw
あのPC-8023だって十分うるさい
PC-8023でググったらWindowsから印刷してる人がしてわらた
csvdeでメンバーのデータをツリー状に出力する方法ってありませんか?
134 :
デフォルトの名無しさん:2014/08/27(水) 22:04:17.16 ID:4mdNC+SS
csvdeでメンバーのデータをツリー状に出力する方法ってありませんか?
スレチ
LSIC80は完全に16bitアプリなので、win7にしたら使えなくなった。
(今でも8085のコードを書く仕事がある)
netで msdos.exe というのを拾って使えるようになった。感謝。
8085なんてまだ現役なのか。
せいぜい80186くらいだと思ってた。
8085が現役なんじゃなくて、互換チップが未だ生き延びているんじゃないか?
川崎重工辺りが頑なに作っていた気がするぞ。
>>139 そのFreeBSD/Linuxパックも2.2.6-RELEASEだのlibc5だのって
20年くらい前のバージョンだろ
Windowsパックだって32bit版OSのみって時点で
16bit DOSアプリだと考えた方が自然
141 :
136:2014/10/05(日) 03:49:49.38 ID:Hj6+65GA
川重が作ってるのはZ80(Z180?)互換チップです。
8085は今はどこも作ってないでしょう。年に数枚しか作らない基板なので、
必要なCPUはアキバで別の基板から抜いた奴を調達してるのではないかと。
今売ってるLXIC80があれば64bit環境にも対応してるかもしれませんが、
私のは20年近く前にお客のPC98の中から拾ってきた奴なのでもろ16bit製品(w
>>140 > Windowsパックだって32bit版OSのみって時点で
> 16bit DOSアプリだと考えた方が自然
動作環境にDOSもWin3.1もないんだしそれはなかろ。
いまだに売ってるDOS用ツールはDOS用って言って売ってるし。
http://www.lsi-j.co.jp/products/lsic80_debug.html > 動作環境
> 対応OS MS-DOS 2.11以上
> 対応メモリ 384KB以上
> 対応機種 NEC PC-9800シリーズ(XA,XL,XL2,RLのハイレゾリューションモードも含む)
> PC-H98シリーズ およびその互換機
>>142 それはPC-98専用の製品だからだろ・・・
短いDOSプログラム
COM型で1バイト
RET
145 :
デフォルトの名無しさん:2014/10/05(日) 14:07:19.03 ID:a6/ySe32
C9
>>145 C9を瞬時に理解してしまった自分にワロタ
Opcode Mnemonic Description
C9 LEAVE Set SP to BP, then pop BP.
さて質問だ
com 形式で 'C9' だけおきリターンすると,無事にプロセス終了となるわけだが,そう簡単な話ではない
なぜこれでうまく終了できるのか説明願いたい.RET っていってもいったいどこに戻るのか?
C9でRETはZ80ではないでしょうか
8080でもRETだよ。
C9の場所をcallする前にSPに適切な値を入れてやる必要がある。
それをするのはOS(の、ローダー機能)のはずだから、OSの存在が前提に
なってるね。デバッカなどでRETの場所をステップ実行すれば、PCの値が
SPの指していたメモリの内容に置換されるのが見える。
DOSエクステンダを自作したい人なんかには有用な本だとは思うが、あんま一般的な内容じゃないと
思うんだがツイッター見てると絶賛の声が多いな >はじめて読む486
そりゃTwitterだからね。
リセット直後の32bitリアルモードがずっと使えると便利なんだけどな。
リアルモードのアドレッシングだけど4GB全部アクセスできるモードが。
486の頃は既に高級言語に移行してたな…。
パフォーマンス必要なとこだけアセンブラで書いてた。
それにしても、MONコマンドとBSAVEだけでプログラム作ってたとか今じゃありえんよな。
ってこれはDOSじゃなくてN88BASICの話だけど。
DOSもDEBUGコマンドで似たような事してたから、やはりマジキチ。
>>157 え、DATA分にバイナリを羅列しておいて、BACIS では確保していた領域に POKE し、USR 関数でジャンプしていたんでは?あーわすれたね
>>158 そのバイナリを作るのに、俺はまだ厨房だったからさすがに直接ニモニックコードは書けず、アセンブラでやってたのです。
読むのはできたけどね、プロテクトディスクダンプして解除とか(笑
ちなみに引数もPOKEで書いてCALLしてた。
>>159 > 直接ニモニックコードは書けず、アセンブラでやってたのです。
意味がわからん。
単語は知らんが、英語はしゃべれるみたいな?
db XX,YY,ZZ〜
みたいなソース書いてアセンブラに食わせてたんじゃないの
>>160 16進数でcd 21とか直接バイト列をゴリゴリ書くレベルではなかったけど、int 21hと打つことはできた、みたいな。
まあ実際は上くらいならいいけど、アドレス計算が面倒なので、機械語コードを言語に翻訳してくれるdebugコマンドはありがたかったという話。
今で言うなら、メモ帳だけでプログラム書くのはめんどいけど、IDE使うなら楽ちん、みたいな感覚かな。
ああ、ニモニックコードの意味の使い方を間違えてたのか、失礼しました
ついでに言えば、masmを使えるようになった時の快適さもすごかったな。
エディタはedlinだったけど。
今じゃviエディタすら使う気がしない、もうろくしたものです。
そういや、みんなはDOS最終期は何のエディタ使ってたの?
俺はeliseだったなあ。
Turbo系のIDE系はUMBを限界まで張ってると起動できなかったから、結局コンパイラ単体しか使わなかったなあ。
おお、こんなのあったんだね、知らなかった。
ニフティに入ってなかったから、地元の草の根でしかフリーソフトの情報なんて仕入れられなかったよ。
これ移植してる機種数すごいな。
それにしても、ベクターは偉大だなあ、本業はもうすっかりゲームになったけど、ソフトライブラリは会社がつぶれても何らかの形で残してほしい、ここからしかもう入手できない遺産が多すぎる。
実際、俺が作ったソフトもいくつか登録されてんだが、作った俺本人がここからしか入手できない、ソースも実行ファイルも読む手段のない5インチフロッピーに封印されてるので。
TAKERUも懐かしいね、魔導物語かなんかを買った記憶があるなあ。
FEPは最後までNECAIだった。
あれをUMBに入れるには、いったんVRAMもUMB領域に割り当てる必要があったなあ。
DOS時代は RED-->CW だった。winになってWZ
viは、exモードを駆使して初めて真価を発揮する。
それができないなら、使う意味はあまりない。
exモードが駆使できるならvisualモードなど不要
>>169 その発想はただのヲタ
両方をTPOに応じて的確に使い分けられてこそ、真のvi使い
それには同意だが、私はNitEmacsを使っていた。
おっちゃんの最期のDOSエディタはVzだった
Win3.1に入り秀丸に出会った。
今も秀丸だ。
キーバインドはWordStart&Vzな変態だw
いまでも ^RC 多用します
vzにシェアを食われて肩身の狭い思いをしたmifes派
Vzが出てMIFESが食われたかは知らんけど、Finalは消えた。
まあFinalは品質に問題あるソフトだったけどな。
しかし生き延びてるのはMIFESという…。
今更買う人いるのかねえ…。
そういうけどエディタってIMEやフォントと同じで慣れたものから離れられない。
生き延びるって重要だ。
仕事で永く使えるといったらMIFESの他に何かあるかな? (秀丸はちょっと…)
オープンソースのものなら最悪自分でメンテ続けられるので安心だよ
うーん、仕事でプレーンなテキストを書きまくるっていうシチュエーションがまず思いつかないなあ。
最近のMIFESはCSVに特化したモードとかはあるらしいけど、Excelでいいじゃん、みたいな。
1万以上する価格設定も今時強気すぎる気がする…。
今公式サイト見てきたら、内容をSNSに投稿できますってのをウリにしてる段階で、なんかもうなんか違う気がする。
ソースコード作成とか閲覧とかはテキストエディタを使うよ
csvもexcelを通すと変に加工されることがあるし、そもそも使いにくいので、csvエディタ機能はあると嬉しい
高すぎるからmifesは使わないけど
MIFES風マクロだとやっぱり微妙に使いにくいのん?
ソースなんてもうコード補完がないと書きたくないくらいに怠け者になってしまった
秀丸を MIFES の色にして使ってる
おれはTeraPad派
Vzなつかしいな
Windows版のVzもっと早く出てれば
秀丸には乗り換えなかっただろうな
>>186 >Windows版のVzもっと早く出てれば
いまだにそんなもの出てないのに?
WZのことだろ。
同じ会社が販売しただけ
それを言い出したらMIFESだってDOS版とは別物だろうに。
みんなおらの大便してくれてありがとう
>>166 nifty にしかないものも多かったからね‥MIDI データ群は返す返すも惜しい‥今 MIDI やってる人はどういう発表形態をとるの?
>>190 作業比率は減ってるらしいがDOS版の作者が今も関わっててるみたいだから別物ではないだろ
Mifesはバージョン5よりバージョン4のほうが軽くてよかったな。
>>192 オリジナルならニコ動とかにうpするんじゃないかな?
版権ものは分からん。
>>193 開発者がどうであれ、ソフトそのものはスクラッチだろ。
>>154 あれが有用なのは「動く」32ビットコードが省略なしに載っていて誰でも試せるところにある
実際、アラインメントの調整くらいで、タスクスイッチングが動いた、‥i386SX でのお話
特権モード関連の分かりやすい資料として高く評価されているよ。
>>156 リセット直後ってCSのベース値が特殊なだけで32bitでも何でもないぞ
いったんプロテクトモードにしてからリミット4Gのセレクタをロードして
そのままリアルモードに戻すと4GBアクセスできたりするらしいが
通称Unreal modeな
>>190 VZはc.mos氏作であるが故のVZといえるけど、MIFESは別にそういうわけじゃないよなぁ
Wzもc.mos氏作なの?
違う。TYさん。
MIFESはDOSの頃はメガソフトの外部の人ひとりでやってて、Windowsになってその人とメガソフトの中の
チームとでやってるんでなかったかな。
206 :
41:2014/12/01(月) 03:51:37.76 ID:OW3QXxN0
8085の仕事がまたキター---いよいよ基板がなくなるみたいなのでこれが最後
かな〜。使われてる石見ると1980年代の半ば頃の設計のはずなんだけど、
よく同じ石があるなと感心する。
207 :
デフォルトの名無しさん:2014/12/01(月) 12:35:08.80 ID:GrWyVyTu
初期化のバグも残ってますとか
>>206 置き換えたくても、基板アートワークを起こすのに数十万円掛かるからな。
210 :
41:2014/12/02(火) 04:01:46.83 ID:ror4iJjw
うん、それはお客さんも言ってた。年に数枚しか出ない基板だから、その起こし
の費用が出ないんだって。今後は最近の1チップでuartが4CH載ってる適当な
基板にソフトを載せ換えることで対応するらしいので、実際にあるH8Sの基板を
想定してHEWに移植してみた。XPマシンが壊れる前に単体までは動かしてみた。
ルネでHEWなら石に見合ったiodefine.h使うだけで移植可能なので、それを
お奨めしてみたい。
そういうのに国が補助金出せばいいのに
ルネなんて救済しないでいいから
中国企業ばかり応募してくるんじゃないの?
213 :
41:2014/12/06(土) 03:54:06.69 ID:aCbxE5A/
1週間返信が無いから、動いてる(確認中)なのだとおもう。
動かなければ動かんぞゴルァ!はすぐ来るだろうから。暇だったので最適化(w
_asm_c("\n\tEXTRN\teventfg_,clrdata_\n");
_asm_c("\n\tLDA\teventfg_\n\tORA\tA\n"); /* if(eventfg) */
_asm_c("\n\tCNZ\tclrdata_\n"); /* crldata() */
LSI-Cのasm文は使いづらかったな
まあインラインアセンブラなんて局所的にしか使わんし
使い勝手なんてどうでもいいよ。
局所の使い勝手だって?
局部フェチ
>>213 すげえな、これ本当に8086系用なんか?
8080だろ。見て分からんの?
CP/Mスレッドじゃないんで。
CP/Mと8080ってイコールじゃないけど何言ってんの??
LSI-C80はMS-DOS上でしか動かんってのが起点だからまぁいいんでね?w
> LSI-C80はMS-DOS上でしか動かん
何言ってんの? バカなの?
LSI-C80でビルドしたモジュールは8080上で動くが、
LSI-C80はMS-DOS環境でしか動かないよ。
だからWindows7標準では動かせないって話を>213=>41が書いているわけだ。
> LSI-C80はMS-DOS環境でしか動かないよ。
CP/M版もあったの知らないのねw
>>225 それをちょっといじったと思われるMSX-DOS版もあったな。
当時アルバイトで使った
あーなるほど。すんません。
んじゃ、クロス開発専用と言い換えておく。
>>226 ひでえな それより新しいMS-DOSじゃ動かないのかよ!!!!
CP/Mはこれからも8080/Z80の開発環境として生き残りそうだし、
x64が主流になって仮想86が捨てられ、DOSの方が先に忘れられそうな気がす
231 :
デフォルトの名無しさん:2014/12/12(金) 00:09:19.32 ID:SHR/Y9Rm
MSが言ってる16bitの断念って、win3.1用のソフトの動作とかじゃないの?
ていうか、次期OSではwin32すら切り捨てるという噂もあるけど、どうなることやら
234 :
デフォルトの名無しさん:2014/12/12(金) 04:03:21.24 ID:iNQHvDR7
そもそも、16bitアプリが何でもかんでも動く訳じゃないし
MS-DOSのソース見つけたけど、どうやって使うの?
>>236 まずはio.sysに当たる部分を0から書く
>>232 全角英数を使うのが当たり前、半角英数を使う奴は非常識馬鹿
…そう言われてた時代もかつてあったんだよ
技術的な理由もちゃんとあった
まあその元記事を書いた奴はその時代で頭が固まってるってことで、やっぱり非常識馬鹿なんだけど
半角カナだろ
バカかよ
>>238 パソコン通信の頃の話だっけか
全角半角が混在してると何かあったときに文字化けしやすくなるとか聞いたことがある
だがな、全角英数きもっ
半角ってなんですか?
>>239 当時を何も知らん糞ガキは黙ってな
文字化けの話じゃねーよ馬鹿が
>>238 >全角英数を使うのが当たり前、半角英数を使う奴は非常識馬鹿
>…そう言われてた時代もかつてあったんだよ
ねぇよバカかよw
>>238 それは違うな‥
二つの原則を混在している
@半角カナは使うな
A全角英数は使うな
つまり、void さんは文字コードが特定のフォント中のグリフに対応することはあってはならない、と主張していた
だから、半角と全角でグリフが異なるのはおかしい、と。
しかし、void さんのシグナチャー「ヘミ猫」はその主張とは裏腹に半角全角が混在していたのであった‥
>>243 懐かしいなぁ…「話しってなんですか?」「無礼者」
>>246 void さん曰く「猫じゃないもん!」
ともかく全角英数はキモい
>>248 もうIE8..ごめん/Operaでは気軽に JISコード(ISO-2022-JP) を閲覧できない‥手元の環境ではいちいちエディタで変換しないと
他のブラウザはどうなってんの?
どいつもこいつも…頭カッチカチだから文字化けの話からどうしても抜け出せないとはw
当時の半角英数の画面や印刷物を一目見れば理由が分かるのに
10年位前だったか、voidさんが2ちゃんねるに遊びに来てた頃、
「voidには読めないスレ」と題して半角カナだけで会話してたスレが有ったな
>>253 > 当時の半角英数の画面や印刷物を一目見れば理由が分かるのに
そんなもん今時誰も持ってないからわかんねーよ
>>240 Shift-JISは混在している方が復帰しやすいね
まさか出版業界という狭い世界でしか通用しない「常識」を
一般でも当然であるかのように偉そうに言い張るジジイだったとは
voidはascii-pcsを散々荒らしてたな
259 :
名無しさん@そうだ選挙に行こう:2014/12/14(日) 04:00:51.32 ID:QEpJ0bQG
voidさんは荒らしてない
荒らしてたのはvoidさんに突っ込まれて発狂した人たちの方
もともとNetNewsのfj.*辺りの話題ではなかったっけ >半角カナ使うな
>>257 「画面や印刷物」→出版業界?
お前も糞婆並みの思い込みの激しさ・視野の狭さだなw
そもそも出版業界は当時からそんなチンケなシステム使ってないし(笑)
>>259 coolを装って他人を発狂させるように持って行くのが奴のやり口
つまり荒らしの一種であることには変わりない
その辺が、ただ吠えるだけだったmohtaと違うところだが
もしかして半角が混ざると折り返しで引っかかるというショボい話をしているのか
264 :
名無しさん@そうだ選挙に行こう:2014/12/14(日) 09:59:22.50 ID:QEpJ0bQG
半角カナが本文とかタイトルとかに含まれてると
ハングアップするメールソフトがあったんだわ
265 :
名無しさん@そうだ選挙に行こう:2014/12/14(日) 10:00:30.37 ID:QEpJ0bQG
あとNeXTのメールソフトはJISのESCシーケンスが途中で終わってるメールが来ると良くハングアップした
ハイソな方々は底意地の悪いやつばかりだからなぁ
そもそも7ビットしか通さないサーバを経由すると文字化けするんよ。
MIMEヘッダのネスティングで見失ったり
縦書きにするときの折り返しがうまくいかない、という理由以外
英数字を半角にしてはダメ、という理由は見たことがないよね
ダサダサの全角英数で書かれた横書きWeb記事は笑えるけど
今時、文章を書くのは縦書きを要求されない事案の方がずっと多いのに
それが当然かのごとく言い続けるバカ
プロポーショナルフォントなら全角でも違和感ないぞ。
少なくとも、他人に半角を強制する理由もない。
>>269 だからさ、「Web記事」の時代しか知らないようなお子様は大人しく黙ってればいいと思うよ、見てて滑稽だから。
そもそも、なんでそんなお子様がこのスレに来るのかが意味不明(笑)
つ「鏡」
一行72文字分で強制改行ってのもあるしな
fj時代は、書き込み内容は日本語でも標題だけは半角英数にしてたな。
>>271 98で一太郎使ってる頃から、英数は半角が当然
論文だろうと企画書とかのレジメだろうと、ね
縦書きにする必要があるものは当然全角で原稿を書くけど
全角が必要ない場所に全角使用を強制するなどという
狭い世界での馬鹿げた習慣は無かったよ
「本屋新聞の原稿」以外にパソコンとか使ってなかったのかね
会議の資料の手書きとか考えられないんだが
それとも、専用のワープロ(死語)でも使って書いていて
文字コードの変換で苦労するから全角英数の強制かね
いずれにしろ、無知の老害は邪魔以外の何者でもないね
全角英数の使用を、でかい声で、さも全世界で普通に行われていたかのごとく言い張ってたのに
それが単なる「縦書き改行の都合」とは
おまえはいったい誰と戦っているのだ?
>>277 単なる週末限定論破厨
こういう輩は誰にでも食らいつく
板名もスレタイも読めないあたり人間並の知能がないのは確かだな
そもそも、Windows環境でコンソールアプリをちょっと作ったぐらいで
「俺はDOSも知ってるぜぃ」などと勘違いしてる奴が多いんじゃないのかな
やはり TSR をみようみまねで組んでほしいところ
デバドラとしても実行ファイルとしても常駐コマンドとしても使えるファイル
ネ申業に見えたな
デバイスドライバも兼用できるか?!いや、emm386.exe はあったか‥こいつが dos の最高峰かもしれん‥
一度実行したら常駐し、再実行で常駐から外れるという節約精神
割り込みベクタをリンクして
あとから取り外すとき
ほかの常駐がリンク追加してても
自分のベクタだけ消す親切仕様ですねわかります
「リンク」だって(爆笑)
288 :
デフォルトの名無しさん:2014/12/25(木) 15:58:48.20 ID:9LCXhqZT
えぅ
チェーンの方がいいか?
自分探しの旅ですね
.exe形式のデバドラってどういう構造なんだろう
デバイスヘッダが先頭になきゃいけないわけだし・・・
割り込みベクタはチェーンになってないぞ。
デバドラチェーンと混同してない?
行儀の良いTSRはチェーンになってたよ
いずれにしろ、チェーンから自分だけ外す、というのは無理。
自分が書き換えたより後で誰かが書き換えてたら、常駐解除を
中止する、ということしかできない。
チェーン部分だけ切り離して常駐したままとし,他の主要機能は解放してしまう,というのはありかな‥結構難しいな‥
困ったときはリセット
余計なことして無駄なメモリ食うほうが罪
たった2行で破綻してるぞ
チェーンって構造はリンクだよな
割込みベクタの場合は、自分が書き換える前にあった番地を、アプリ側で
どこかに持っておいて、自分の処理をやる前あるいは後に、そっちも呼んでやる、
という風になってるから、自分以外のアプリについては手が出せない。
299 :
デフォルトの名無しさん:2015/02/19(木) 21:19:28.51 ID:hgzMijvn
ちと知恵を貸してくれ
CONFIG.SYSでデバイスドライバ内から環境変数にセットしたいんだが
この時、Master Enviroment Blockは存在しない様で煮詰まってます
なんかいい方法無いですかね
shellとして実装してcommand.comを呼び出すのもアリかなとは思いますが
スマートじゃないもんで・・
Function 52hあたりで取れなかったっけ?
ドライバの組み込み段階でPSPとかあるのかものすごく疑問だが
301 :
デフォルトの名無しさん:2015/02/19(木) 22:36:11.17 ID:hgzMijvn
int 21h ah=52hでFirst MCBからたどってたんだけど見つけられなかった
PC-DOSとかのRAMDISKとかもバッチ側から判定してるし無理なんかな
config.sysの段階ではまだ環境変数そのものが無いんじゃないか?
あれはcommand.comの担当だし。
一時的に適当なメモリに渡したい値を書いておいて、autoexec.bat内でそれを参照して環境変数をセットするプログラムを走らせるとか。
303 :
デフォルトの名無しさん:2015/02/20(金) 01:21:34.71 ID:E5Tlwj2H
たしかに、デバイス読込み時には環境変数は1個もなかったですね
一応ブロック型のデバイスなのでCONFIGで組込む必要があるんですが
ドライバ内で作業域作って、後から別プログラムで参照した方が簡単でいいかもですね
どうも有り難うございました
え、もしかして実務のデバドラなのか。
環境変数にこだわってるわけではなくて、実行構成も固定されてて、クライアント?に値を渡したいだけなら、適当な割り込みベクタを使ってオレオレシステムコールを作ればいいんじゃないかな。
産業用途の環境なら、あえて予約はされてるけど絶対に使われない割り込み番号を乗っ取るのが一番安全だな。
例えばサウンドボードとかMIDIとかのメディア系。
ついでに書けば、ドライバ内に作業域とあるが、起動シーケンスで一回しか使われない情報は、必ずしもお行儀よくmallocとかしなくていいんだぜ。
起動時なんだから、他に動くプログラムが固定されてるなら、メインメモリの一番おしりあたりとかを勝手に書き換えてしまえば良い。
Turbo系のデバッガだって、MCBを無視して勝手にUMB領域使ってたしなあ(笑)
未だにこんなの使ってるということはエミュ運用も考えられるので
あまり裏ワザじみたことはしないほうがいいかも
エミュの再現性は高い
一概に言えるかアホか