1983年9月8日木曜日

[言語] DOSコマンド

[言語] DOSコマンド
最低限の MS-DOS
■ 前書き
今日では MS-DOS のみを使う必要性はほとんどないが、時には Microsoft Windows の DOS 窓を使う必要性もあり、また DOS 窓から、コマンドを打ち込むほうが手っとり早いこともあるので、簡単に MS-DOS の説明をする。
UNIX との比較もすることになるが、この場合はコンソールでの UNIX と思ってもらってもよいし、 DOS 窓と見かけが随分似ている XWindow の (kterm などの) 仮想端末からの UNIX のコマンド入力との比較であると思ってもらってもよい。
■ MS-DOS の用語
ごく基本的な用語の説明をする。 Windows ではファイル名に大文字、小文字を使うことができるが、両者を区別しない。
MS-DOS のコマンドも原則的に大文字と小文字の区別をすることはないが、以下 UNIX と比較するためにも、MS-DOS のコマンドを小文字で表記する。 (UNIX では大文字、小文字を厳密に区別するが、システムコマンドは通常小文字である。)
プロンプトとコマンドライン
MS-DOS や UNIX などで、コマンドをキーボードから入力できる状態のときに端末などに表示されるマークを プロンプトという。
たとえば (UNIX ではシェルによってプロンプトの形が変化して)
 >  MS-DOS
% UNIX (csh)
# UNIX (bash)
プロンプトの直後にコマンド (命令) を入力することができ、この行のことをコマンドラインという。なおコマンドを計算機に与えるためには最終的にリターンキー (あるいはエンターキー) を押す必要がある。
ドライブ名
Windows (MS-DOS) では接続されているハードディスク装置、フロッピーディスク装置、CD-ROM 装置などには必ずドライブ名 (a から z) が付けられる。例えば
        * a   フロッピーディスク装置
        * c   Windows のシステムがあるハードディスク
となっており、異なる装置には異なるドライブ名が割り当てられている。コマンドラインから
d:
のように打ち込めば、ドライブ d に移動する。
UNIX にはドライブがない。UNIX では複数のハードディスクなどが接続されている場合にも、見かけ上、一つのハードディスク (より正確には唯一つのファイルシステム) があるだけである。このファイルシステムは UNIX をインストールする時点で決まり、あとでハードディスクを増設することが不可能である。増設するためには最初からインストールをやりなおさなければならない。これが Windows と違う点である。
ディレクトリー (or フォルダー)
各ドライブにはディレクトリー (or フォルダー) と呼ばれるものを作って、ファイルを分類整理できる。例えば
ディレクトリーの作成例
d:\
  |-- archiver
  |          |-- work
  |
  |-- work
  |-- usr
        |--local
        |--bin
        |--mule2
        |--share
のような構造を持つ。上の例では d ドライブ全体が一つのディレクトリーで、その中に幾つかのディレクトリーがあり、更に各ディレクトリーの中に幾つかのディレクトリーがある (あるいは作ることができる)。
階層が一番上のディレクトリーをルートディレクトリー と呼び \ で表示する。
ディレクトリーと呼ぶのは MS-DOS や UNIX の方式で、 MS-Windows ではフォルダーと呼ぶ。ファイルを整理するための階層構造という点からは、 フォルダーと呼ぶ方がすっきりするかもしれない。
先にも説明したように UNIX ではドライブがなく。ファイルシステムは唯一つである。そのためルートディレクトリーは唯一つしかない。UNIX ではルートディレクトリーを / で表記する。 (円記号 \ は UNIX では常に逆スラッシュ\になるが、MS-DOS のディレクトリー表示の \ は UNIX ではスラッシュ / である。)
ディレクトリーの絶対指定と相対指定
下の例では d:\work は赤で表示したディレクトリーで、 d:\usr\local は黄色で表示したディレクトリーである。
このようにディレクトリーを表示する方法をディレクトリーの 絶対指定という。
d:\
  |-- archiver
  |          |-- work
  |
  |-- work
  |-- usr
        |--local
        |--bin
        |--mule2
        |--share

ディレクトリー構造が上のようになっているときに d:\archiver において
 \work  赤のディレクトリー
 work   緑のディレクトリー
となる。すなわち先頭に \ などを付けずに、ディレクトリー指定をすれば、それより下位のディレクトリーを指定することになる。
これをディレクトリーの相対指定という。ディレクトリーの相対指定にはこれ以外に
 .   現在のディレクトリー(カレントディレクトリー)
 ..  現在のディレクトリーの一つ上のディレクトリー
がある。カレントディレクトリー (current directory) は DOS 窓ごとに決まる。DOS 窓は何個も開くことができて、この各々の窓ごとに現在のドライブ、ディレクトリーが定まってくる。
従って Windows ではシステム全体のカレントディレクトリーは定まらない。UNIX においても同様である。
また UNIX でのディレクトリーの絶対表記は例えば /usr/local のようになる。
■環境変数
普通、変数はプログラム内部で有効なだけであるが、 環境変数と呼ばれる変数はシステムで有効な変数で、すべてのプログラムから参照することができる。これは任意に設定できるが、普通のプログラムと同様に役目の決まった予約変数がある。
例えば、環境変数 PATH はコマンドを探すときのディレクトリーのリストを示す。例えば、
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND
とすれば、コマンドを
c:\windows, c:\windows\commannd
の2つのディレクトリーを探すことになる。
以上の設定はコマンドラインから打ち込んでもよいが、普通は c:\autoexec.bat に書き込むのが普通である。
どのようにして、コマンドラインのパラメータや環境変数が読み取られているかを知っている方がコマンドの動作の仕組を理解しやすいことがあるので、参考までに以上の変数を獲得する C 言語サンプルをつける。 (UNIX 上の C 言語は原則的に英語版であるため、以下のプログラムを UNIX で動かすためには日本語を英語にしたほうがよい。)
C プログラムからパラメータ、環境変数を獲得するサンプル
#include
#include
void main(int argc, char *argv[]){
    printf("コマンドラインから手渡された文字列の数は %d です。\n", argc);
    printf("コマンドラインから手渡された最初の文字列は %s です。\n", argv[1]);
    printf("環境変数 PATH の値は %s です。\n", getenv("PATH"));
}
■MS-DOS のコマンド
コマンド 意味 対応する UNIX コマンド
mkdir ディレクトリー作成 (make directory) mkdir
cd ディレクトリー移動 (change directory) cd
copy ファイルのコピー (copy) cp
dir ファイル名の一覧 (directory) ls
以下に、より詳しく説明します。
mkdir
mkdir ディレクトリー名
でディレクトリーを作成します。以下の 2 つの使用方法では違って結果が起きることに注意します。
  mkdir work 現在いるディレクトリーの下に work を作る (相対指定)
  mkdir \work 現在いるドライブのルートディレクトリーの下に work を作る (絶対指定)
下の図の d:\archiver にいるときには、第 1 の方法でできるディレクトリーが緑色、第 2 の方法でできるディレクトリーが赤色です。
d:\
  |-- archiver
  |          |-- work
  |
  |-- work
cd
cd ディレクトリー名
でディレクトリーを移動します。以下の 2 つの使用方法では違って結果が起きることに注意します。
  cd work 現在いるディレクトリーの下の work に移動 (相対指定)
  cd \work 現在いるドライブのルートディレクトリーの下の work に移動 (絶対指定)
下の図の d:\archiver にいるときには、第 1 の方法による移動先ディレクトリーが緑色、第 2 の方法による移動先ディレクトリーが赤色です。
d:\
  |-- archiver
  |          |-- work
  |
  |-- work
copy
copy A B
の構文で、原則的にファイル A をファイル B にコピーしますが、
    * A がファイルのとき、ファイル B がなければ ファイル B ができて、中身が A のコピーになります。
    * A がファイルのとき、ファイル B がすでにあれば B の内容が A のコピーになります (上書きされる)。
    * A がファイル、 B がディレクトリーであれば、ファイル A のコピーをディレクトリー B の中に作ります。
    * A, B が共にディレクトリーであれば、 A の中のファイルを全部 B の中にコピーします。
B がディレクトリーのとき、
copy *.txt B
によって、現在のディレクトリーにあるファイルで、拡張子が .txt であるファイルがすべて B にコピーされます。 * は任意の文字列を意味し、トランプのワイルドカード (どのカードにも一致するカード) の意味で使用されます。
UNIX のコピーコマンドは cp で、名称が少し違いますが、tcsh などでは * は同様な意味を持っています。
dir
dir
で現在いるディレクトリーのファイル名の一覧を表示します。対応する UNIX のコマンドは ls です。
■シェル (shell)
MS-DOS ではコマンドを解釈するプログラム (command.com) によってコマンドが処理されていました。 Windows NT では command.com 自身が動いているのではなく、これをエミュレート (emulate, 真似) する cmd.exe によって、コマンドが処理されます。
UNIX ではコマンドを解釈するプログラムはシェル(shell) と呼ばれ、そのため Windows の cmd.exe や command.com のことを一般的にシェルと呼ぶ傾向があります。
このように呼ばれる理由の一つに、現在では UNIX シェルを DOS 窓で使用できるようになったこともあります。つまり cmd.exe, command.com は Windows の DOS 窓で動かすことができるシェルの一つに過ぎないわけです。
バッチファイル (シェルスクリプト)
常に同じ一連のコマンドをコマンドラインから打ち込む必要がある場合には、普通はファイルに一連のコマンドを書いておいて、このファイルを実行させるのが普通です。このようなファイルは MS-DOS では拡張子に .bat が付いていて バッチファイル と呼ばれます。 UNIX では同様なファイルはシェルスクリプト ( shell script) と呼ばれ、 MS-DOS のバッチファイルのこともシェルスクリプトと呼ばれることがあります (UNIX ではシェルスクリプトには特別な拡張子は付きません)。
UNIX のシェルスクリプトには if 文などの条件文を使うことができ、一方 MS-DOS のバッチファイルにはこのような機能がほとんどありませんから、バッチファイルのことをシェルスクリプトと呼ぶことは少し分不相応な面があります。
autoexec.bat
autoexec.bat は MS-DOS が起動時に実行するバッチファイルです。ここでは普通、環境変数を設定します。例えば
autoexec.bat の例
SET PATH=%PATH%;d:\archiver;d:\usr\local\bin
のようにします。環境変数 PATH の値 (これは文字列です) をバッチファイル内で使用する場合には %PATH% とします。従って上の autoexec.bat の意味はすでに値が設定されている環境変数 PATH の値 (文字列) の後ろに ;d:\archiver;d:\usr\local\bin を付け加えるものです。
UNIX にも同様なファイルがあります。シェルによって違いますが、csh (C シェル) を使用している場合には、 .cshrc が autoexec.bat と同じ役目を果たします。例えばコマンド検索パスの設定は次のようになります。
.cshrc のサンプル (一部分)
set path = (. /usr/local/bin /usr/lib /users/bin $path)
$path は autoexec.bat の %PATH% と同じ役目をします。
色々なシェル
UNIX のシェルで Windows に移植されているものに、次があります。
 sh  角藤版 pLaTeX に同梱
 bash  Cygnus GNU-Win32
 tcsh  Virtually UN*X!
Cygnus GNU-Win32 に関しては
    奥村晴彦, LaTeX2e 美文書作成入門, 技術評論社
に説明があります。
mule for Win32 が Windows 95 の command.com で動作が不安定の場合には、 bash, tcsh を使用した方がよいようです。設定方法などは
    mule for Win32 の FAQ
を参照してください。
5. 標準入出力
標準入出力の考えは C 言語をある程度知っていないといけません。ここでは標準入出力の考えを C 言語のサンプルプログラムで説明します。標準入出力の考えは DOS でも UNIX でも変りません。
リダイレクト
次のようなプログラムを考えます。
sample.c
#include
void main(){
    int i;
    scanf("%d", &i);
    printf("%d\n", 2*i);
}
中身は単に数値を入力して、2 倍して出力するだけのものです。この場合の scanf は実は標準入力から入力する命令で、 printf は標準出力に出力する命令です。通常は標準入力はキーボードで、標準出力はディスプレーになっていますが、これをファイルなどに切り替えることができます。例えば中身が次のようなファイル
test.dat
15
を用意して、コマンドラインから
sample のようにすれば、入力が test.dat に切り替わり、30 がディスプレーに表示されます。出力に関しても同様で
sample result.dat
とすれば、ファイル test.dat から入力され、ファイル result.dat に出力されます。以上の方法を入出力のリダイレクト (redirect = 向きを変えること) といいます。一般にプログラムで入出力がリダイレクトできるかどうかは、プログラムの書き方で決まってきます。
パイプライン
今 2 つのプログラム A, B があって、
A | B
のようにコマンドラインに打ち込むと, A の標準出力が B の標準入力となります。このときの縦棒は A の標準出力を B の標準入力に流し込むためのパイプあるいはパイプラインと呼ばれます。標準入出力の時のサンプルを使用すれば
sample とすれば、ディスプレーに 60 が表示される。
以上、パイプラインは DOS でも UNIX でも使用することができますが、違いがあります。DOS のパイプラインはディスク上の一時ファイルを経由するようです。従って A | B の構文では事実上 A の処理が終了するまで、 B の処理が始まりません。これに反して UNIX ではオンメモリーで処理をし、 A | B の構文では A, B が連結した状態で動きます。そのため場合によっては UNIX の方が圧倒的に速さを見せることになります。

MS-DOS 入門
http://mail2.nara-edu.ac.jp/~asait/latex/msdos.htm#section22





1983年8月19日金曜日

1983年8月1日月曜日

[機器][PC] SEGA,SC-3000H(SEGA Computerシリーズ)








 
SEGA,SC-3000
正式名称 SC-3000H
発売日 1983年?月?日
定価 33800円
CPU Z-80A(3.5MHz)
VDP TMS-9918
画面解像度 256×192ドット 16色
スプライト 32面
ビデオRAM 16KB
サウンド 8オクターブ3重和音+ノイズ
RAM 2KB
ROM 無し(*1)
キーボード JIS標準配列(プラスチック)
インターフェース オーディオカセット
カートリッジスロット×1
シリアルインターフェース
電源 ACアダプタ 100V 7.7W
外形寸法 幅353×奥行210×高さ46mm
重量 ??kg
備考(*1) ROMは持たない構造で、周辺機器
BASICレベル2カートリッジ(RAM容量0.5KB) \5,800
BASICレベル3カートリッジ(RAM容量16KB) \9,800
を差した時にBASICのROMとRAMが供給されます。

1983年7月22日金曜日

[ゲーム][LSDゲーム] 任天堂ゲーム&ウォッチ,ポパイ(POPEYE)(1983)~パノラマスクリーンシリーズ

[ゲーム][LSDゲーム] 任天堂ゲーム&ウォッチ,ポパイ(POPEYE)(1982)~パノラマスクリーンシリーズ
ポパイ(POPEYE)
ゲーム&ウォッチパノラマスクリーン/任天堂
Written by T鈴木
ポパイ・ザ・セーラーマン(ピョッピョー
ポパイのゲーム&ウォッチと言えば、皆さん真っ先に思い浮かべるのが、ビンやパイナップルをキャッチするワイドスクリーン版かと思われますが、こちらはマイナーなパノラマスクリーン版。
パノラマスクリーンの悲劇については増刊号の「マリオズボンアウェイ」や「スヌーピー」の記事を参照してもらうとして、前述のワイドスクリーン版とは内容が全然違うので、これから買おうと思ってる人も「な~んだ、内容同じじゃん!」なんて目に合わず安心!です(「セメントファクトリー」なんてワイド版とテーブルトップ版がまったく同じで、両方買った人はさぞガッカリしたことでしょうしねぇ・・・って、この時代にセメントファクトリーを両機種買う猛者がいたら、かなりアレだが笑)。
とにかく殴れ!殴り合え!
ひたすら殴りあうバイオレンスなゲーム
ブルートをボコボコ殴って端まで追い詰め、海に叩き落したら勝利!
途中落ちてくるほうれん草を取ってパワーアップし、オリーブを救い出せ!(内容的にはファミコンの「アーバンチャンピオン」に近いかな?)
「ポパイ」ハウトゥープレイ
隙を突いて殴れ殴れ!
ポパイを操作してパンチを繰り出し、ブルータスを左へ左へと追い詰めましょう。
ちなみにスコアが
1~30点のときは2回、
31点か~70点のときは3回、
71点~100点のときは4回
殴るとブルータスが1マス後退するぞ。
ブルータスもパンチで反撃してきます。
ポパイが2~4発殴らなければブルータスを後退させられないのに対し、ブルータスがポパイを後退させるに必要なパンチ数はたった1発!
「そんなの卑怯では!」と思われそうですが、ブルータスのパンチはモーションが大きいので、見てからでも避けられるのが大きな強みです。
バックステップでいったん下がり、相手がパンチを振り下ろしてから接近してパンチパンチ!
ブルの反撃!
追い詰められても諦めるな!
最後まで諦めるな!
ブルータスを左端まで追い詰めるとあと一歩!
スコアが
1~30点のときは4回、
31点か~70点のときは5回、
71点~100点のときは6回
殴れば海に叩き落とせるぞ。
しかし6回って・・・・かなり大変なんですが(逝
ここまで来たらもう少し!
ほうれん草をキャッチせよ
ほうれん草はこの位置に落ちてくる
うまくキャッチすると「♪チャ~チャララチャッチャッチャ~」のお馴染みのテーマと共にブルータスをぶっ飛ばし、オリーブを助けて1面クリア!
取り損ねるとまたブルータスを海に落とさねばなりませんので、ぜひ1発で取りたいところです。
しかしワイドスクリーン版はほうれん草も何もなく、ただ落ちてくるものをキャッチするだけの退屈な内容だっただけに、時代の進化を感じますね~。
ゲームBでは橋の下からカジキマグロのような魚がつついてきます。
魚につつかれると1マス後退してしまうので注意!
ゲームBはムズい!
得点システム
アラームキャラのスイーピー
海へ叩き落すと5点。
またオリーブを助けると15点加算されます。
最高得点は999点。
また300点に到達するとこれまでのミスは帳消し、その時点でノーミスだと以後の得点が2倍になります。
この辺は従来のシリーズと同じですね。
ちなみに左はアラームキャラにスイーピー。今回はアラームキャラとしてカワいく登場です。
「火曜日には返すから…」といつもハンバーガー食ってるキャラ「ウィンビー」も出してほしかったところ(笑
テーブルトップ版
ちなみにこの「ポパイ」、パノラマスクリーン版の他にテーブルトップ版も発売されています(内容はパノラマと同様)。
え?そんなの見たことないって?
それもそのはず、なぜか「ポパイ」に限りテーブルトップ版は海外でしか発売されていません。
他3種類(スヌーピー、ドンキーコングJr,セメントファクトリー)はきちんと国内発売したのに…う~ん、なぜだ!?
テーブルトップ版
元祖格闘ゲーム
「ポパイ」のパッケージ
ちなみに「ポパイ」のアーケード版が登場したのは1年前の1982年。
つまりG&W版(81年)→アーケード版(82年)→ファミコン版(83年7月)→パノラマスクリーン版(同8月)という順番で出たことになり、任天堂のポパイシリーズでは一番後発になるんですねぇ。
だからどうしたって話ですが(笑)。
           
Suzuki's Homepage 
http://www5d.biglobe.ne.jp/~t-suzuki/vol.11/popeye_panorama.htm
           
         
           
           

[ゲーム] PC6001版アクション「JUMP」~雑誌『Beep』投稿ゲーム


[ゲーム] PC6001版アクション「JUMP」~雑誌『Beep』投稿ゲーム
「JUMP」
ジャンプスキーゲーム。 実行すると滑走路が表示される。
スペースキーを押すとスタート。 坂の部分でスペースキーを連打すると加速が付く。
平坦な部分でスペースキーを1度押すとジャンプとなる。 手前でジャンプすると平凡な記録に。
先端部分でジャンプすると大記録に。
               
RetroPC
http://retropc.net/hashi/bp198509.html
http://retropc.net/hashi/hydlide.html
http://retropc.net/hashi/p6programs.html

コンピュータ情報
https://databug2210.blogspot.com/search/label/%24NEC%20PC6001?updated-max=1981-09-12T10:22:00%2B09:00&max-results=20&start=18&by-date=false













[ゲーム] PC6001版アドベンチャー「SATAN」~雑誌『マイコンBASICMagazine』投稿ゲーム

[ゲーム] PC6001版アドベンチャー「SATAN」~雑誌『マイコンBASICMagazine』投稿ゲーム
「SATAN」作者:S.Y
オーソドックスなRPGだ。SR作品。
START
剣を持っているのがプレーヤであるカルビン。緑色の人間は道具屋や宿屋や情報屋など。
グリーンスライムがあらわれた!!
敵は丸っこいグラフィックで凝っている。
情報屋
情報にはお金が必要だ。
武器屋
高い武器ほどSTRが上昇する。
情報屋
ん?このヒントは…
天女の羽衣を見つけた!
スペースキーを押すと道具が使えるのだが、表示されていても購入していないと使えないので注意。
天女の羽衣を使うと別のゾーンへ飛べるぞ。
別ゾーンの武器屋
かなり高額になっている。ゴットソードを目指してお金を貯めよう。
魔法使いがあらわれた!
敵は2匹まで同時に現れる。
               
RetroPC
http://retropc.net/hashi/bm198812.html
http://retropc.net/hashi/bp198509.html
http://retropc.net/hashi/hydlide.html
http://retropc.net/hashi/p6programs.html

コンピュータ情報





















 

[PCゲーム] NEC PC-8801ゲーム,HAL研究所製作,


■NEC PC-8801ゲーム,HAL研究所製作,
ラリーX NEC PC-8801用 アクション
SUPER GALAXIAN NEC PC-8801用 シューティング
平安京エイリアン NEC PC-8801用 アクション
ジュピターランダー NEC PC-8801用 アクション
モールアタック NEC PC-8801用 アクション
ナイトドライブ NEC PC-8801用 レース

















◆ジュピターランダー
PCG
◎[PCG8200添付カセット(バージョン違い)][PCG8800mkII添付カセット(バージョン違い)]
◆[MEMO]
・I/O 1981.6 広告
平安京エイリアン 近日発売
SUPER GALAXIAN 発売中
ウルトラインベーダー 近日発売
RALY X (RALLY X の誤植?)発売中
SUPER SLOT 近日発売
NIGHT DRIVE 発売中
JUPITER LANDER 発売中

OUT of STANDARD
http://www.geocities.jp/upd780c1/n80/frame.html