OH!FM 1984 09

Survival, Water, Medical Field Manuals

Military Manuals

Softbank Japan

Document text

ME 
CN いこ で ここ 
eel 
ここ て で こい 
NATUS 


RET 
UE Xe a TT AE: 


(の 
Gt こよ いっ BE mx 
A anie s E ED 


Ps 


2: Eai S x d ts A 
ここ rS MEN 


dms : DS EE US i 
d E 


aa RY 
に M 
1 
B s E. 
Cee 
YA E 
OO こい 


IM 


LH 
fe 


N 


n 


PNE ES 
AE 


et : ^ 
e ES 
EC m E 


e 


Lt 


$t 
sts 


nur 
I1 
PS 
" 
ti 
etit. 
Hd 
CC et 


TA 


5 
[s 


uu 


E 


Lut 


its 
st. 
att 


は 
i 


i. 


noon 


SE S ^ 
0 Rs 
RE PA aule as 
des de ^ TEE teens. 


si ipio ea 


COCOCGOO 


re 
Ò 


OOO 
OOO 


いい 
COR 
ee 


OOOO - 
OCT 


* + D 
ve Rx DOLO 
"x ` DOCK E. DOC ON x OODCXXYXY 
; : e: x KG 
r3 KA si ris ny "a A e. YN A 
Fw meom PL TN の 3 Y CODO! Redi ht. OO 

Ye . t 

Co の CC KX e CODO e D 
re cats Pa ^ CC 

PY CKO TODO CC m Y 
7 "aa ee OR viens "Meere COCO $us 
A d e Cu fn maa t X mm 7 s 
と か た た 6 た と の ママ ry の の の z MAU Aia dT LA MEE Eu IT x に to AR 0 いこ CYS AM OCT 

LÀ 2 » OE ^ TA dd o ded ddl deiode d d aede 
Ar CCOOOOOCCOCKP e OCC DEP DOC DOPO D EPOR TISTET 25 の 
s + J p" C " ^ スム ん で ー 
の のど ど と アプ プッ で で どの ア と と の と か どの: T. 2 7 OZ ^ r 2 E^ 


ALDEA DLE T AAA E 

TUR E A I AG y 
WAY 
ids ^ 


a Mea , 
の 


i 
A oy 


CAE 
x : : 1 ; ; j 5 ACG 
er LEUTE s : UE r TP DET Vas : 6 m. 
IIA ; ; - 


LIEU, 
MEE e DUE EAT 
eI ru 


Aue. 
E 2: EE y ; な の z ^ と , ; 4 : m daas > ; . VASE Ria Roa cara AA ama Re d TENER 
ES ANTT 35 ; 
DO 
v 


East Ra 


TE 


PO TE て で 3 
DOCU 


YY 
MI AE P PUR M ea 
MSIE A e ee aet aa v hw ee 
EL APP 
PEE M T CAD s 


2 E sk A 25 EA seuls a ea arae pr en c 
- : t m 2 < : Bos Zee : s E CORN DE DD C UE 
uu K nA Je 5 rr 1 xs us nn anita Vent p a Ron Pa E ER 
edd eda í ; 3 2 6 5 ds S 1 COL: 2 EE 3 ^ SEA dete eA M OE BA RE 
MD UAR : ER AA ; Ppa 37) 3 QUELS duse ccr OE x e V USE 8 2E CS : = es GA 
MU ; ; j eS dc AE 2 oe i s t 
D Vas Wf ST AEG D uem Gu A 3 ; C A AAA と CA venas 
OO TE RATES UA Am EE WE E UD 
$ AX RIT CRT PAAR MES C UD : "eT : RM 
Ae * Se UCM : Te 


ny 
E RIED ENDE 

SSR の と z WR I AS 
MEE mu AUR i ’ E AED. E Am 
TELE. TRE ECC TENE 


T A vo ir i E : 2 DE 
dta X3 : I KES us MR eee 


IN 


MED 
A 


i 
xe 


ELSE a tra tat afit atte ett as 


CLA DU CLERC 


SE UR. 


RY 


"es 
MP 


2s 
sd 
z 


ST 
T 
pH 


E 
in 


CCC 
to LUCI 
piae er TUA EA 
っ ee 
OO PLIN 
Ee 


ul 
" 


ON 
em NUI 


M 


49 


2 
ines 
の KEK 

ICH 
MUI RIDE EX 


H 
EA 


: 
hr 
SSES 


PPS NN 
ER VOCE AO! m 
va すす 
AS 


Wu 
us 


IA 
Ot 


: Sf ; EAE 
EU ETT i ー 
VASE UN : : 5 


et 
2 
d 
$ 


D: 
LIS E gk C im 

3 : s UU CENE の い AN 
dabis > < z 3 F < aad aaa d EY re EAE 


" 
ょ 


pope Po 


T 


P 
nh 
NS 


SOT Er 
nos 
s 
VE 


ETE T ud 


i 


iy 
i 


EER E o no | 


» 


M B E38 ai Rte A A Mor E KORR 


— e.pJBB8 03)5 
SLIDER S ABEL ADS て ご 活用 くだ さい .。 @ 東 京 ・ 席 ノ 門 (03) 5 
か ら ソ フト まで 一 挙 ( な た の ハ ソ コン の コン サル タン ト と し て こ ご 活 用 くだ さ et 
ラブ : シリ ー ズ の バー "2 = i ED 2 う 1 ET1E (OR) - [0 J 
I aT deal 011)241-4185 e (0222)66-8711 e 名 古屋 (052)221-6016 e XB (06) 344-7 
11112525475 «4h | | 41-4102 geWYzccc/j DOTO 
ビル > (011) 222-54 [043L7t S り 11/ と 


11-0486 e 広島 (082) 247-3949 - @ 福岡 開設 準備 室 〉 (092) 4 2 
4 2 cj 


富士 通 株 式 会 社 : @ ハ ソコ ン 販 売 推進 部 (03)502-0161 
@ 名 古屋 営業 所 (052) 201-8611 
軒 3. 5 イン チマ イク ロフ ロッ ピ イ ティ スク は 、 富 士 通 純正 品 を ご 使用 くだ さい 


e 札幌 営業 所 (011)271-4311 
e 大 阪 営業 所 (06) 344-1101 


パソ コン に FM 時 代 を 拓 い た 富士 通 か ら 、 天 才 肌 の 
OR 
プ 。 そ の 名 も FM-77 で す 。 目 を 見 は る 新 機軸 、 息 を 

む 多 機能 、 し か Midget 


承 。 も う 想 像 力 に 歯 ど め の き か な い ヒ ラメ キ の 連続 で 


す 。 シン プル で 知 的 な デザ イン も 、 一 歩 限度 を 超え ま 
し た 。 も っ と スリ リン グ に 、 さ ら に エキ サイ ティ ング に 、 い 
よい よ エ ンタ ー テ イニ ング に 。FM-77、 い ま 発 進 で す 。 
3.5 イ ンチ マイ クロ フロ ッ ピ イィ ティ スク を 採用 。 

FM-77 は 、3.5 イ ンチ の マイ クロ フロ ッ ピ イ テ イ スク ドラ イブ 
を 2 基 搭 載 。 デ ィ ス ク は 、 こ れ ま で の 5 イン チミ ニ フ ロ ッ ヒ イィ 
ディ スク と ソフ トコ ン パ チ で 、 し か も 320KB/ ド ライ ブ と 、 小 
弄 ・ 高 密度 化 を 実現 し よし た 。 

漢字 ROM(JIS 第 1 水準 漢字 2.965 種 ) を 標準 実装 。 
レポ ー ト 、 手 紙 な ど 、 る さまざま な 用 途 に 活用 で きま す 。 

2 個 の CPU が フル 稼動 。 

CPU の 役割 を 2 分 する と いう 、 江 用 コン ピュ ー タ の 設計 思 
想 を 受け 継い び ア ー キ テク チャ を 採用 し まし た 。 

メイ ン メ モリ は 64KB。 増設 は 最大 256KB ま で 。 

64KB の メイ ン メ モリ を 標準 実装 の は か 、192KB RAM 
カー ド * を 装着 し て 、 最 大 256KB ま で の 拡張 が 可能 で す 。 
ネオ プシ ョ ン (400 ラ イン セッ ト に 含ま れ て いま す ) 

F-BASIC V3.0 が 多彩 な 機能 を サポ ー ト 。 


FM-77 の ブログ ラム 言語 は 、FM-7 と 完全 互換 の F- 


BASIC V3.0。 豊 富 な ソフト が を の まま 使え る 2 うえ 、 パ レッ ト 
機能 、 サ ウン ド 機 能 な ど 数 か ず の 機能 を サポ ー ト し ます 。 
ユー ザ フ レ ンド リ な 言語 
FM Logo を 標準 添付 。 


スー パー イン ポー ズ “ で 
オリ ジ ナ ル の 映像 づく り 。 
テレ ビ や VTR な と の 画 
像 パソ コン の 文字 や 
グラ フィ ッ ク バ パタ ー ン が 
ドッ キン グ 。 VTR へ の 
録画 も 可能 で す 。 

* ま オプション の スー パー イン 
ボー スズ ユニ ッ ト が 必要 で す 。 
高 性 能 プ ラス 多才 の 
グラ フィ ッ ク 機 能 。 
FM-77 は 、 640X200 
ドッ ト の 高 分 解 能 表示 
が 魅力 で すむ カラ ー モ ー 
ド 時 は 、1 ド ッ ト ご と に 8 色 
ま て の 色 指 定 が で きる 
ほか 、 テ キス ト と の 泥 


e 東北 営業 所 (0222) 64-2131 
e 広島 営業 所 (0 
お 問い 合わ せ は 一 - 


2)221-2288 九州 営業 所 ( (92) 411-631 
E8974 5t $1122 (02) 434-014 


ディ スク と T ピー a 


FM- 77. 
\228 000 «o 


ディ スク ドラ イブ 1 基 タ イプ \198.000 も あり ます 


e 金沢 宮 業 所 (0762)63-7621 


表示 、 ド ッ ト ご と の 色 交 換 も 0K。400 ラ イン カー ド “を 本 体 
に 装着 すれ ば 640X400 ド ッ ト ム いう 高 精度 の 表示 も 可能 
に な り ま す 。 


* オ フシ ョ ン (400 ラ イン セッ ト に 含ま れ て いま す ) 


サブ シス テム の 充実 で 、 画 像 処理 が さら に 高速 化 。 
FM-77 は 、V RAM の アク セス 方 式 に サイ クル スチ ー ル を 
導入 。 描 画 速 度 が 最高 で な ん 2 倍 (FM-7 比 ) に アッ プ 
し まし た 。 また 、 高 速 の 漢字 表示 が 、 日 本 語 ワ ー プ ロ や 渓 
字 端 末 と し て の 利用 価値 を 高め ます 。 

音 に も 熱中 。8 オ クタ ー プ ・ 三 重 和 音 の サウ ンド 機能 。 
操作 性 抜群 の キー ボー ト 。 

レイ アウ ト 自在 の セパレート タイ ブ プ 。 

大 容量 1MB/ ド ライ ブ の フロ ッ ピ ィ イデ ティス ク を サポ ー ト 。 

€ F-BASIC V3.5、0S-9 お よび CP/M-80 に て サポ ー ト 。 
拡張 性 に 優れ た カー ド 和 群 。 

0410074 7c» 

①400 ラ イン カー ド ②⑫ 増 設 用 192KB RAM カ ー ド 
③F-BASIC V3.5 ④ 日 本 語 ワ ー プ ブロ 

信人 各種 オプ ショ ンカ ー ド 

RS-232C、MIDI、 マ ウス な ど 。 

広がる アプ リケーション に 対応 する ソフ トウ ェ ア 体 系 。 
@F-BASIC V3.5(400 ラ イン セッ ト に 含ま れ て いま す ) 

@0S -9Level 1/Level 2*(*400 ラ イン セッ ト が 必要 で す ) 
@CP/M-808(Z80 カ ー ド が 必要 で す ) 

(※CP/M-80 や は 、 デ ジタル リサ ー チ 社 の 登録 商標 で す 。) 


すぐ れ た コス ト パ フ ォ ー マ ンス を 実現 し た 興奮 パソ コン 
EMIN se 

(本 体 価格 ) 
ソフ ト は 定評 ある FM-7 と 完全 互換 、 し か も 数 か す の 卓 越し た 
機能 を すべ て 継承 し まし た 


@ 長野 営業 所 (0262)26-8222 静岡 営業 所 (0542) 54-9131 


[ 広 ]1 


—— EN 


2 
UA] 443723427 : FM シリ ー ズ の ハー ド か ら ソ フト まで 一 挙 に 展示 実演 、 あ な た の バ パソ コン の コン サル タン ト と し て ご 活用 くだ さい 。 東京 ・ 虎 ノ 門 (03)591-1091/591-2561 o 東京 ・ 秋 葉 原 (03) 251-1448 札幌 < 時 計 台 
ビル (011) 222-5476 く 丸井 今井 > (011)241-4185 仙台 (0222)66-8711 名 古屋 (052)221-6016 大 阪 (06)344-7628/341-0486 広島 (082)247-3949 e 福岡 < 開設 準備 室 〉 (092) 471-7203 


| <’? 


富士 通 株 式 会 社 : @ バ パソ コン 販売 
AKI initiis 861 ] 


e 札幌 営業 所 (011) 2 
p 業 所 (06) 344-1101 


ハイ ・ マ ニア の ハイ ・ バ フォ ー マ ン スマ シン 

限り な く 広 が る パソ コン の 世界 。 ひ と つの 目標 を こ な 
し て 、 より 高度 な 目標 に 挑戦 し て ゆく 、 そん な ハイ ・ マ 
ニア の スピ リッ ト に 熱く こたえ る FM-11AD2。 究極 の 
8 ビッ ト CPU“68B09E "を 、 さ ら に パワ ー ア ッ プ する オ 
ペレ ー テ ィング シス テム 0S-9 を 採用 。 各 モジ ュー 
ル の 有機 的 な シス テム 化 を 実現 し まし た 。 驚異 の 
マル チ 機 能 が つぎ つき と 生み 出す 未知 の 体験 へ 、 
今 、「 通 」 の 挑戦 を お 待ち し ます 。 

驚異 の マル チ 機 能 、0S-9 

日 本 語 処理 機能 を 強 化し た UNIX* ライ ク な オペ 
レー ティ ング シス テム OS-9Level 2 を 標準 添付 。 い ま 
まで 、 入力 、 リ スト 出力 な ど 一 連 の 作業 は 、 ひ と つの モ 
ジュ ー ル の 処理 が 終了 し な けれ ば 、 次 の 処理 に 進む こ 
と が で きま せん で し た 。0S-9 は 、 そ うい っ た 複数 の モ 
ジュ ー ル を 結合 、 個 々 の 処理 を 同時 に 実行 る きせ な が ら 、 
各 々 の 情報 を 有機 的 に 組み 合わ せ て いき ます 。 デ ー タ の 
検索 ・ 入 力 ・ 出 力 ・ 通 信 な どの 複数 の 処理 を 同時 に 実 
行 て きる マル チ ・ タ スク 機能 。 1 台 の CRT 画面 を 複数 に 
分 割 し 、 それ ぞ れ を 独立 し た 画面 と し て 使用 で きる マル 
チ ・ ウ ィ ン ド ツウ 機能 。1 台 の ホス ト に 複数 の パソ コン を 端 
末 装置 と し て 接続 し 、 同 時 に 使用 する こと が で きる マル チ 
ュー ザ 機 能 な む いま まで の パソ コン の 概念 で は と ら え る 
こと の で き な い 強力 な 集合 シス テム と し て の 稼動 を 実現 し ま 


し た 。 し か も 0S-9 上 の BASIC は コン パイ ラ な の で 実行 


は あく まで も スピ ー テ イィ で す 。 

1MB の ミニ フロ ッ ピ ィ テ ディ スク ドラ イブ を 1 基 標 準 実装 
長い キャ リア を 持つ マニ ア に と っ て 、 情 報 の 蓄積 は 重要 課 
題 。 日 増し に ふえ ぇ る 情報 量 に 対応 し 、 大 容量 ファ イル の 装 
備 を 実現 し まし た 。 

日 本 語 機能 を 強化 し た F-BASIC V5.0 

日 本 語 処理 機能 を さら に 強化 し た F-BASIC V5.0 を 標 
準 添付 。 こ の F-BASIC V5.0 は 、 カ ナ / ロ ー マ 字 ・ 漢 字 


変換 方 式 に より BASIC ス テー トメ ント 中 の 文字 定数 、 注 


釈 、 フ ァイル 名 に 漢字 の 使用 が 可能 で す 。 

JIS 第 1 水準 の 漢字 ROM を 標準 実装 

JIS 非 漢字 、JIS 第 1 水準 漢字 を 登録 し た 漢字 ROM を 
標準 実装 。 る きら に JIS 第 2 水準 漢字 に も 対応 て きま す 。 
日 本 語 ワ ー ド プロ セッ サ を 添付 

多彩 な 日 本 語 ワ ー プ フロ 機能 を 満載 し て 、 オ フィ ス て の 使用 
と は 、 ま だ た だ 一味 赴 う 、 あ な た だ けり け の 文章 づく り が 楽し ゅ め ます 
多彩 な 機能 を 発揮 する CRT 表 示 

カラ ー 表示 は 16 色 。640X400 
2 画面 、 ま た 640X200 ド ッ ト の モノ グラ フィ ッ ク で 12 画 面 の 


271-4311 © Rdir XP (0222) 64-2131 


@ 広島 営業 所 (082) 221-2288 九州 営業 所 (092)411-6311 


ATA DE 


ドッ ト の カラ ー グラ フィ ッ ク で 


e 金沢 営業 所 (0762)63-7621 


マル チ ペ ー ジ 機能 、8 色 まで の 色 交 換 が 簡単 に で きる パ 
レッ ト 機 能 、 上 下 左右 の スク ロー ル 機 能 な と CRT 表 示 
機能 は 充実 、 マ ユニ ア の ニー ズ に し っ か り と こ だ た えま す 。 
操作 性 重視 の キー ボー ド を 採用 

軽快 な キー AI HMM 
ル 設 計 。 本 体 と 上 の 接続 ケー ブル (カー ルコ ユー ド ) は 2.5 メ ー 
トレ ま て 延長 可能 で す 。 

用 途 を 拡げ る 豊富 な オプ ショ ン 群 

ポイ ン テ ィ ン グ ツ ー ル と し て の マウ ス 、 大 容量 20MB の ハー 
ド テ イス ク や 音声 合成 カー ド な ど 、 用 途 に 合わ せ て 自由 な 
ンス テム アッ プ ' が 可能 で す 。 

*UNIX は ベル 研究 所 が 開発 し た オペ レー ティ ング シス テム (OS) の 名 称 
で すむ 


に ベス ー ニ 
ブヒ ソ じ 


OS-93& fii 0) 
F'M-11 


イレ フン 


MA 


Y 298,000 6*7... 
ーー 
[Um 


ビジ ネス か ら サ イエ ンス まで 
用 途 を 拡 け る 高 性 能 パ ソコ ン , 


1MB の 大 容量 5 イン チ FD を 2 基 搭 載 。 本 格 的 ビジ ネス に 対応 する 
16 ビ ッ ト マ シン の 決定 版 で す 


o 長野 営業 所 (0262) 26-8222 静岡 営業 所 (0542)54-9131 [ 広 ]3 


信頼 と 創造 の 庫 士 通 


os Fu Ne HNE a 


ET W 


1 
IM 


v prmepiititt T L| 


upnaganglcr Hl n crm 
MU IM 
{ LL B 
\ THIS T I 
L ! IB um 
M n 
『 D 
| 
Jm 
L 
H- 


NINAS 


(CX BECHSRC9e Ank 


OE ,Y7 ER Pal" 


yo 


4 


oc ケー ざい YumN ぷ て で yy 


TORSON, 


ANNIA REA E] 4] 


Sg TEN 


BEES 
=F > 
富士 通 株 式 会 社 で ピ l jm 


IVZ 
TE aLla 0 0 


富士 通 マ イコ ンス カイ ラブ 仙台 


e 7980 仙台 市 国分 町 |-7-18 


富士 通 マ イコ ンス カイ ラブ 虎ノ門 


人 @〒|05 東京 都 港 区 虎ノ門 2-3-13( 第 18 森 ビル 8F ) 
ZA (03)591-1091/2561 

@ オー プン 時 間 : 月 一 金 9:30 一 17:00( 祝 日 を の で 〈) 

交通 : 地下鉄 銀 座 線 虎ノ門 駅 下車 徒歩 5 分 


LAG 


富士通 マイ コン スカ イラ ブ 


SK と 


(明治 生命 仙台 国分 町 ビル IF ) 傘 (0222)66-87|| 
@ オー プン 時 間 :10:00 一 19:00( 木 曜 定休 ) 
交通 : 広瀬 通り ホテ ルリ ッ チ 向い 


虎ノ門 病院 
[] 


(3$ ajo = imk E ) — is — 398 | 1 


富士 通 マ イコ ンス カイ ラブ 名 古屋 


@ 〒460 名 古屋 市 中 区 栄 |-5-22( 東 ビル IF ) 

会 (052)221-6016 
@ オープン 時 間 : 月 一 土 10:00 一 18:00( 祝 日 を の ぞ く ) 
交通 : 地 下 鉄 伏 見 駅 下車 7 出口 より 徒歩 | 分 


富士 通 マ イコ ンス カイ ラブ 秋葉 原 


人 @〒|0| 東京 都 千 代田 区 外 神 田 |-15-16( ラ ジオ 会 館 6F ) 
A (03)251-1448/251-1449 

@ オー プン 時 間 :10:00 一 19:00( 年 中 無休 ) 

交通 国鉄 秋葉 原 駅 前 


富士 通 マ イコ ンス カイ ラブ 大 阪 


97530 大 阪 市 北 区 梅田 | 2-2( 大 阪 駅 前 第 2 ビル IF ) 
会 (06)344 7628 

@ オー フン 時 間 : 10:00 一 19:00( 年 中 無休 ) 

交通 : 国 鉄 大 阪 駅 阪神 、 阪 急 梅田 駅 下車 


富士 通 マ イコ ンス カイ ラブ 札幌 Gt 53t) 


€ 7060 札幌 市 中 央 区 南 | 条 西 2 丁目 
(丸井 今井 | 条 本 館 4F) B (011)241 4185 

@ オー プン 時 間 : 平 日 10:00-I8:00 土日 10:00 一 |8:30 
(水曜 定休 ) 

交通 : 地 下 鉄 大 通 駅 下車 


マル ヒル  。 マイ コン スカ イラ ブ 大 阪 


富士 通 マ イコ ンス カイ ラブ 札幌 (時 計 台 ビル ) 


@〒060 札幌 市 中 央 区 北 一 条 西 2- |( 札 幌 時 計 台 ビル IF ) 
11(011)222-5476 
人 @ オ ー フ ン 時 間 : 月 一 金 10:00 一 18:00 
+ 10:00 一 15:00( 祝 日 を の ぞ く ) 
交通 : 地 下 鉄 大 通 駅 下車 徒歩 5 分 


富士 通 マ イコ ンス カイ ラブ 広島 


9 7 730 広島 市 中 区 立町 4-2( 大 橋 ビ ル 2・3F ) 
Z (082)247-3949 

@ オー プン 時 間 :10:00 一 19:00 (月曜 定休 ) 

交通 広島 電鉄 立町 駅 下車 徒歩 3 分 


reae ora 大 橋 ビ ル 2・3F 

E) EXE EI 63s] 

国際 ホテ ル | 
EE 


| ia 


w 
apm | 
スカ イラ ブ 札幌 


PERSONAL COMPUTER MAGAZINE B C O N T に N TS 


特集 どれ に し よう か OS いっ ぱい 


あな た 05 知 っ て ます か / 団 中 cc 33 
こん な に ある FM で 使え る 8/mr a 
座談 会 @ 私 の G 論 "——————— - 9 46 


zs PC9B054 7374 AURFMCRE mus =e 
mm 5-d サ ービス リク エス ト の 使い 方 /gmW……-5o 


0S9 9-d 逆 アセ ソン ブラ V ] .J/Simple Logic …… ド ドー 61 
wa プリ ンタ ボー ト で て 遊ぼ う 
m 簡易 ジョ イス ティ ッ ク の 製作 / 飛 震 無 人 ……………… 123 
5809 機 械 語 マ スタ '84 
t スタ ッ ク と 特殊 な ア ドレ ッ シ ン グ RAER キア Pr で スタ 97 


"ラフ ィ ッ ク プ ログ ラム ジェ ネ レ ー タ (P.85) 


中 グラ フィ ッ ク プ ログ ラム ジェ ネ レ ー タ / 還 員 ……… » 
は じ め て さわ る バリ ソコ ン / 小 林 泰 介 eo 109 


パリ コン の 計算 精度 / 且 部 エー 


4 アマ グラ マ 講 諾 
あな た が 作る 手作り 学習 プロ グラ ム 入 門 / 国 重 博 ………74 


ビジ ネス 用 BASIC ブ ログ ラム ジェ ネ レ ー タ 
m 5 ソー トブ ログ ラム ジェ ネ レ ー タ / 高 森 征 蔵王 132 


BDOSJ-/LbAP/ssRs eee 113 
EY EVE BRE 
ショ ー ト プロ グラ ム 集 ee 149 


レー シン グ ゲ ー ム / サ ブ マ リン ファ イト / 迷 路 ゲ ダー ム / 縦 積み 4 目 並 べ 「HAMLET」/ 
DATA SEARCHER 


READERS" AREA | 146 _ 申 つく ろ い の ペー ジ …… ド ドー 145 
FM ぼ ー と E EPE EE E EE 145 広告 索引 E A ARE EAP E EARUM Cd ME Rise E 176 
ブレ ゼン ト 情 報 ——— 145 EDITOHS' ROOM EEE TTET 176 


SPEED TRAP(P.130) サ プ マ リン ファ イト (P.149) 


「 お 嬢 様 , お 電話 が 入っ て お り ま す 。 
Tea Spoon 木下 淳 博 

あの 太陽 は 本 当 に 動い て いる の だ ろう か 。 
壊れ た 柱 時 計 を 見 て いる よう だ 。 自分 と 波 だ 
け に 時 間 が 流れ て いる 。 

も うす こし 待 と う 。 潮 が 満ち て , 波 が 足 を 
洗っ た ら 。 すべ て を 起 れ て ここ を 国 よ まう 。 

その 時 で あっ た 。 


・CP/M, CP/M-86, MP/M は Digital Research tt 
・MS-DOS は Microsoft 社 
・FLEX は TSC 社 
・UNIX は AT&T Bell Laboratories 
* UCSD p-System は カリ フォ ルニア 大 学 理 事 会 
・0S- 9 は MICROWARE 社 
・SB-80, SB-86 は LIFEBOAT ASSOCIATES 
・WORDSTAR, MAILMERGE, SPELLSTAR, 
WORDMASTER, CALC STAR, DATASTAR, 
SUPERSORT, INFOSTAR は Micro Pro 社 
の 各 メ ー カ ー の 登録 商標 で す 。 
・MSX マー ク は マイ クロ ソフ ト 社 の 商標 で す 。 
その 他 プ ログ ラム 名 , シス テム 名 , CPU 名 は 一 
般 に 各 開 発 メ ー カ ー の 登録 商標 で す 。 
本 文中 で は TM", "Q' マー ク は 明記 し て い 
UA. 
本 誌 に 掲載 され た すべ て の プロ グラ ム は , 個人 で 使 
用 する 以外 著作 権 法 上 , 無 断 複製 を 禁じ られ て いま す 。 


@ 機種 表示 に つい て @ XE FM-X 

e FM-7.FM-NEW7.FM-77  [WTJ.--CP/M-860;& 5FMZJ—ZX 
E]------FM-8 [S]---08-90:€ 5FM7 ) X 
一 ……FM-I1/ST.AD'EX.AD2.BS [3E3---FLEXO SFMZU-Z 


レー シン グ ゲ ー ム (P.149) 


Hn 
FM シリ ー ズ 用 
imme ® 

"統合 化 " デ ー タ ベー スソ フト 

レタ ー バ ンク は , 

⑧ 願 客 管理 ・ 文 献 管理 等 に 利用 で きま す 。 

@ 各 種 の 献 索 ・ 分 類 業務 に 最適 で す 。 

@ 各 種 通 知 、 文 書 を ワー プロ 機能 で 作成 で きま す 。 

人 @ 文 書 の 差し 込み 印刷 、 各 種 の ハガキ 、 封 筒 、 タ ッ ク シ ー ル へ の 印刷 が で きま す 。 
また 、@ オ ー ル マシ ン 語 プロ グラ ム の た め 、 す べ て の 処理 を 高速 で 行ない ます 。 

@ 当 社 の ワー プロ 、 デ ー タ ベー ス と 連携 で きま す 。 

@ 手 頃 な 価格 、 コ スト パフ ォ ー マ ンス は 最高 で す 。 


* ご 注文 、 お 買い 上 げ の 節 は 、 機 種 名 を 明示 し て くだ さい 。 対応 機種 : FM-7, New7.77 
プリ ンタ ー は ドッ ト プ リ ンタ ー で も 漢字 プリ ンタ ー で も 、 ほ と ん どの も の に 対応 し て いま す 。 FM- g l 


FM-11(BS を 除く ) 


PC-8801 ユ スーザ ー に 朗報 。 
COMAS-WPIN5 ょ エフ ソン TF-50 を セ バ で 販売 し まま 


(日 本 語 ワ ー プ ロ ソ フト ) (5'2HD デ ィ ス ク ド ラ イブ) 
高度 な 操作 性 , 高速 性 を 誇る WP シリ ー ズ と 、 pg Ed ND 
TF-50 の 大 容量 高速 性 が マッ チ し て 、 文 書 COMAS-WPzU-—x 
の 処理 能力 が 大 幅 に アッ プ し ます 。 対応 機種 : FM シリ ー ズ 価 格 : メデ ィ ア , 製品 レベ ル に より 
セッ ト 価 格 は 、22 万 円 (FM-I1 BS を 除く \38.000 一 \75.000 
3 ; E T PC-8801, 8801 mkII 


日 本 語 デ ー タ ベー スソ フト 給与 計算 十 日 本 語 デ ー タ ベー ス 


COMAS-K ど シリ ー ズ COMAS-Keia5 


対応 機種 : FM シリ ー ズ 価 R: 320KB FD 対応 機種 : FM-7, New7 価 格 : *119,800 (52D) 
(FM-I1 BS を 除く ) K2E | \55.000 | Y 85,000 FM-8 ¥ 155,000 (8"2D, 5"2HD) 
K2G | \85.000 | \I20.000 FM-I1 AD2 


\99.800 |Y135,000 


COMAS-K2 活 用 講座 
ORTAK, MAO-N, 専修 , 夜間 コー ス ( 各 コ ー ス と も 3 時 間 ) 
受講 料 : Y50008 所 : 当 社 教室 


な お 、 関 西方 面 で は , 産業 技術 研究 所 (TEL.075-981-4080) 
で 開設 し て な り ま す 。 詳細 は 上 記 ま で お 問い 合わ せ 下 きい 。 


Computer Application Service 


(COMAS; 


コ ヒ ー 商 品 に ご 注意 くだ さい 。 


LT RI-L D VE SHE DAE SS 株 式 会 社 コ マス / バ ソコ ン 事 業 部 
こ は 当 社 宛 返送 用 の ( ソフ ト 製 品 登録 カー ド 〕 が 付属 し て いま す の で 、 ER EE z 
TAT E AUR US I iL 〒150 東 京都 波谷 区 渋谷 1-14-6 平野屋 C) TEL.(03)407-8893( 代 ) 


8 [IA] 


ペリ フェ ラル は エプソン 


シヤ ス トブ ルル FMZJ—ASMS, 


ター ミナ ルプ リン タ ' 漢字 ブリ ンタ e " —— カラ エフ リン タ 漢字 ブリ ンタ 
FHFA3P-80I^9::4: SEA [ue quere ァ ン ス を 誇る ター ミナ ルブリン タ \79.000 FFP-10Q @FP-80 の 機能 に 加え 、136 桁 印字 を 実現 Y 189,800 
FAP-8OF/T |I 9 用紙 を 選ば な い ハ イ ・ コ スト パフ ォ ー マ ンス タイ プ ぎ 89.000 FP-BOK @FP-80 の 多 機能 を 搭載 し た 漢字 プリ ンタ \189.800 
FAP-1O0O0 @RP シ リー ズ の ハイ ・ コ スト パフ ォ ー マ ンス を 受け 継ぐ 136 桁 プリ ンタ ぎ 134.000 JP-80 @7 色 の カラ ー 印 字 が 可能 な 多 機能 ・ 高 速 ド ッ ト マ トリ クス ・ ブ プリ ンタ ぎ \158,000 
FP-B0O @ ビ ッ ト イ メー ジ 、 プ ロボ ポー ショ ナル 印字 な ど 多 機能 で 高速 \149.800 LJP-130XK 9 高速 、 高 印字 品質 の 漢字 プリ ンタ 壮 290.000( 第 1 水準 )・\310,.000( 弟 2 水準) 


@FM シ リー スズ 対応 表 


RUM 
EU 、 UP-130K 
RP-100 : TM 標準 機 


標準 モー ド 


FM7 — 5 ーー トト — ds 
M/F z # 822a (¥8,000) に より 接続 | O T E T Ha | OD | O * 


」/F ケ ー ブ ル #8224 (¥8, 000) に より 接続 R 〇 可 HE | O 可 ( 注 !) | O 可 
FM-IIST/ITAD/IIEX/IIBS D Nene 
|/F ケ ー ブ プル #8225 (48,800) に より 接続 天 


キャ ラク タ ・ ジ ェ ネ レー タ /0O: 文字 コー ド 表 一 致 へ : グ ラフ ィ ッ クキ ャ ラク タ の み 不 一 致 ハー ドコ ピー/ 可 :CRT ハ ー ド コピ ビー 可能 ( 王 |): ユ ー テ ィ リ ティ に より CRT の カラ ー ハ ー ド コピ ビー 可能 


TF-10 ハイ ・ コ スト パフ ォ ー マ ンス と 信頼 性 を 誇る ター ミナ ルフ ロッ ピー 
FM シリ ー ズ 8 HIE Y125,800 (デュ アル ) €85,000(27 77v) 


NSSNNSNNNSNNNSSNNN a 


EFM-8 
拡張 ユニ ッ ト MB26001 が な いり 場合 


7; 229010 


拡張 ユニ ッ ト MB26001 が ある 場合 


XE incedere idee 


TED DOEMMRIESTEITUUTAUERZ 
kond 


@ エ プ ソ ン の プリ ンタ は 、 ESC/P™ (EPSON STANDARD CODE for PRINTER) の も と に ター ミナ ルプ リン タ ・ コ ント ロー ルコ ー ド 体系 の 世界 統一 規格 を 提唱 し 製品 開発 され て いま す 


エフ ソフ 株 式 会 社 eii» trag caius ice nisomo263 52-2552 エフ リフ 央 売 株 式 会 社 e+ を 入 ノ 〒160 東 京 者 新宿 区 西新 宿 2-4-1 和 新宿 NS ビル 内 私 書 逢 6109 号 容 03-348-68014・ 中 央 営業 所 ノ 〒101 
東京 都 千代 田 区 神田 須田 町 2-21 サ ナダ ビル 7 階 容 03-258-4841・ 大 阪 支店 ノ プ 〒530 大 阪 市 北 区 西天満 4-14-3 住 友 生命 件 堂 筋 ビ ル ん 11 階 容 06-365-5071・ 大 阪南 営業 所 ズ 〒556 大 阪 市 浪速 区 日 本 橋 5-4-20 エ スタ ビル 4 階 容 06-632-3353・ 札 幌 営業 所 ノ 〒060 
札幌 市 中 央 区 北 一 条 西 2J 目 札幌 時 計 台 ビル 6 階 裕 011-222-2821・ 秋 田 営業 所 ノノ 〒010 秋 田 市 中 通 2 TH 176 秋田 東京 海上 ビル 7 階 裕 0188-32-4002・ 仙 台 営 業 所 ノ 〒980 仙 台 市 本 町 1-12-12 山 万 ビル 6 階 容 0222-63-3691・ 長 野営 業 所 プ 〒390 松 本 市 深志 
2-2-9 加 納 ビ ル 2 階 容 0263-36-7251・ 新 潟 営業 所 プ 〒950 新 潟 市 東大 通 1-2-25 北 越 第 1 ビル 6 階 容 0252-43-8515・ 名 古屋 営業 所 プ 〒460 名 古屋 市 中 区 新栄 町 2-13 栄 第 生命 ビル 9 階 容 052-962-7001・ 金 沢 営業 所 〒920 人 金沢 市 彦 三 町 2-3-13 明 治 生命 
金沢 診 二 ビル 4 階 容 0762-62-3216・ 広 島 営 業 所 プ 〒730 広 島 市 中 区 贈 町 3-1 第 3 山県 ビル 4 階 槍 082-223-2811・ 福 岡 営業 所 〒812 福 岡市 博多 区 博多 駅 前 3-4-8 郵 政 互 助 会 博多 ビル 4 階 容 092-471-0761・ 鹿 児島 営業 所 〒892 鹿 児島 市 加治 尾 町 18-8 三 
井 生 命 鹿児島 ビル 4 階 容 0992-25-7717・ エ プ ソ ン サ ービス モン ター プ 〒101 東 京都 千代 田 区 神田 須田 町 2-21 サ ナダ ビル 6 階 容 03-258-4881 


款 洛 の 底 か ら 、 新 発売 。 


受 は 、~" 介 の やき なき で て 、 
々 な 地獄 

再び 目力 で 天上 界 に 戻っ てこ な けれ ば な ら な い 。 
脱出 経路 や 方 法 は 、 す べ て 目 分 で 発見 せ ね ば は ならない 。 


天使 庁 上 級 天使 選考 試験 (受験 要項 より 
アド ベン チャ ー ゲ ー ム 


E 
"d 
eu 
SF 
OX 


富士 通 FM-7・8・new 7 用 5 イン チ デ ィ ス ク 版 FM-7 7 用 3 .5 イ ンチ ディ スク 版 


Y6,800 


Humming Bird Soft 


(株 工 ム ・ エ ー・ シ ー コン ピュ ー タ 事業 部 
〒530 大 阪 市 北 区 曽根 崎 2 丁目 2 番 15 号 £06(315) 0541 代 


ENVIENEXESES Gu 


E — バン ディー プリ ンタ ー 


僕ら の パソ コン と 相性 びっ たり の プリ ンタ ー、 


プラ ザー か ら 「 白 」 と 「 黒 」 で 誕生 ./ ホワ イト 
ボテ イ は FM シリ ー ズ 対応 の HR-5。 プラッ ク 


ボディ は PC シリ ー ズ ・MSX 対応 の HR-5X。 


どちら 6 乾電池 駆動 の 超 コ ント サイ ズ 。 美 
し 〈、 静 か な 印字 が 自慢 で て です 一 一 。 僕 6 の 
パソ コン ・ パ ー ト ナー は 、 こ れ に 決ま り 。 


MSX・PC シ リー ズ 完全 対応 …… 


e 超 軽 量 1.6kg、 電 電池 駆動 で 機動 性 抜群 。 

サー マル 方 式 だ か * ら 、 印字 音 は きわ め て 静 ヵ >。 
普通 紙 に も 印字 可能 。 

@ ハ ー ド コピ ビー まだ た は アフ リケーション ソフ ト に て 漢字 印字 可能 。 

e 豊富 な 機能 を 低 価格 で 実現 。 ほとん どの パー ソナ ル ・ コ ユ コンピュー 


印字 方 式 : 雪 転 写 ン 感 圭 方 式 ( ノ ン イ ン ノ パクト ) 

印字 ヘッ ド :9 ビ ピン サー マル ヘッ ド 

婦 字 種類 : く HR-5>JIS159 種 オグ ラフ ィ ッ ク 63 種 
<HR-5X>JIS159 種 グラフィック 56 種 + 
ひら が な 64 種 (AC モ ー ド ) 256 種 (B モ ー ド ) 


フラ サー 販売 株 式 会 社 suesaxs 


T104 東京 都 中 央 区 京橋 3-3-8 
TEL (03)274-—-6911 


7 4889.800 


娘 字 構成 : く <HR-5> 通 常 文字 一 9 Xx 9 ドッ トマ トリ ッ ク ズ ( ハー フ ド ッ ト 4) 
グラ フィ ッ ク ー- 6 X 8 ドッ トマ トリ ックス 

く HR-5X> 通 常 文字 一 9X7 ド ッ ト マ トリ ックス 

グラ フィ ッ ク ー-8 8 ドッ トマ トリ ックス 
印字 速度 : 約 30cps 
SE US 23508 7; J:KXDC6V +10% ~ — 20% 

乾電池 単 1 4 本 また な は AC ア ダフ ター 

外形 寸法 :303( 幅 ) X 17A (PRÁT) X 65 G3 ) mm 
[Lane E E E O E O M E U e M M M M DL B8 8 M 7] 


t -OHR-5&5X に つい て 、 詳 し く 知 り た い 方 は ………… f 
| か キ に 資料 請求 券 を 貼り 、 ぉ 手持 ちの パソ コン 機 | PIRA 
| 種 、 使 用 方 法 (ゲー ム 、 ビ ジネス …etc)、 氏 名 ・ 年 令 
| 電話 番号 を ご 記入 の 上 お 送り 下さ い 。 


名 古屋 T460 名 古屋 市 中 区 大 須 3-46-15 AR T542 大 阪 市 南 区 心斎橋 筋 |-| 
TEL (052)263—581 1 TEL (06)251 一 7265 


BEDS FURRA) 


C Xrex(igaaHHER BS c KA 


M 


テー サナ 


e 通信 販売 は 住所 ・ 氏 名 ・ 電 話 番号 ・ 機 種 名 9 ep 


・ 商 品名 を 明記 の 上 、 右 記 の 宛先 まで 現金 l て (Cy JEJ- 
株 式 会 社 


書 乙 で お 送り 下さ い 。 


|. 、 通 販 ユ ー ザ ー 激 増 に つき 、 今 月 より 〒541 大 阪 市 東 区 南 久 宝 寺町 2-71-2 船場 双葉 プラ ザ 


x J- PP TEL O6( 26D 4334% 


、 floppy QISK 
MD2DD NN 


^ vid 
de a 


Mapt s T T TO ERU. ESOS LALI 
報 字 宙 が 広がっ て いま す 。 を の 情報 宇宙 も 、 従来 の 倍 密度 タイ プ に 比べ 
3 倍 以上 の 1.6 メ ガバ イト 5 の 容量 を も つ MD/2HD (5.25 イン チ 高 密度 タ 
47) の 誕生 に よっ て 、 加速 度 的 に 規模 を 拡大 し 、 きら に 信頼 性 の 向上 
を 要求 きれ 出し まし た 。 ス リー エム は 、 情 報 宇宙 を 存 分 に 活用 し 楽し む 
た め に 、 新 時 代 の フロ ッ ピ ー デ ィ ス ク を めざし 、 新 磁性 体 、 新 構造 、 新 素 
材 を 開発 。 悪 条件 下 や 酷使 に 耐え 抜く 耐熱 ・ 耐 低温 ・ 耐 湿性 を 完成 す 
る と と も に 、 ド ライ ブ と の 適合 性 の 飛躍 的 な 向上 を 実現 し まし た 。 家 庭 や 
オォ オフィス て は 、 ス リー エム フロ ッ ピ ー テ イス ク 。 新 次 元 の 信頼 性 を 提供 し ます 。 


人 ECC, ~ ス リー エム P 


Gom 
«eU 
urs 新 発売 gm 


«P» 住友 スリ ー エ ム 株 式 会 社 3M AET 00100 AREA (003053131 仙台 営業 所 な (0222)61 2811 


磁気 製品 事業 部 横浜 支店 1*(045)312-5521 福岡 支店 1T*(092)531-4333 広島 営業 所 傘 (082)247-2200 
本 社 158 東京 都 世 田谷 区 玉川 台 2-33-1 f2(03)709-8520 名 古屋 支店 全 (052)332- 2411 札幌 営業 所 A (011)644- 7411 沖縄 連絡 事務 所 ZA (0988)77-8799 


中 村 英 者 


RRBSBEALAMSSLS2LSLSSSSSS2LSLKSILLLLLSILLI SL し まま も ああ し 


abotceatates à nuhsotaweobsvyevootsttoebhnstvniY»óoaonesqóénbosnadadgseU"sanaó»vesat4éw»ona»otauptmeavaüàestedpetevosoesÓénattsosusatbeutaenthsnáerntssqtsettt 


(deoobttliveosv6ovheovitàvetbsetenteopataétvetontodtdàoesde)onáóteqebhtNe vasóhteetapeb9nl4tsnoqueAaS»c0^5942a9v60o$ 4. Te ot bt vos "t Atv 


4co00taquaAMie9àpaoacetsoéóébtaveaoonadeaewsónteg.97o8R4sedoenantqovasaumet(qehetasnQqaed$àvsaeiaasavonttuw»echbaennáà«onatenava4qae AM» "vvv 


SHUWA 
SYSTEM グー こ あま で の 条 革 と な は 一 舟 を € 時 PP roo YR NEPN EP ERA ee Reis 
A A AN KER EE TRADING EESO ISAE O EIE EE AEREI AE ARTE E A TOAN 
CO,LTD.  F'M-7/ NHM7/ T 
p s doli eENDNMESGYE —— 1. 
: 解析 書 の 秀和 が 中 ・ 土 級 者 向け に 贈る A: 
: : : 門 マ ニュ アル シリ ー ズ jj 第 | 弾 。 FM-7 0: 
RA to s oon Keen rosis E TENI EN EIA OA EEES RTE T TS EEIN ELAT REED BASIC に 限界 を 感じ た 方 に : マ シン Ir E 
: | : 礎 か ら 指 導 。 ゲー ム 制 作 な どの マシ シン 語 プ : 
: : | ログ ラミ ング も 自由 自在 。 FM-"7 / NEWEZ) 
e AR o OSE US ONERE SASAE x NINE E A IEA E MC A QU a d bed dbeeeee ツイ | を 完全 に 使い こ な す ユ ー ザ 用 読 の 一 m pc i ex 
For the systems engineer (00010 H ER CELOS aan 
秀和 ツ ス テム トレ ー テ イン グ 株 会 社 d DUE CENE. gh ワ ジリ 3 DAE 2 i d de Lc qi aii 
〒107 東京 都 港 区 南青山 | : 
b rf R03(470) 494140 222003 pu : PC-880 PC-880kmI - MERECE A F'M-「7/ II7 t. 4 zi EQUES ER LE 
UIILITYPROGRAM UTILITYPRUBERAM — 
E A 書店 へ 。 通 信販 売 も 致し ます 。 : | Sta? «t JESUS RISEGISR | コー ティ リティ ャ 回 愛人 応用 実例 集 
E SEU E RC eA AURORAM CA ROMA e | dni. PC ユー ザ と 玉 M ユ ー ザ の 皆様 か ら 寄せ られ た 長い 間 の 熱望 に お 応え し て ーー r 
記名 、 ご 法文 の を 人 を ハク キ に て お 2SYT き い 。 | | | Buca cru ディ シグ の スタ ッ フ が 技術 の 一 端 を 提供 。 ブロ グラ ミグ 
かこ へ ASHE FIOR 定価 人:506 幅 送料 300 円 E ASH TER EESO e . 


cablascansheodeummMeeeeabdesRNoee090oeanoovcóücosvonaoetoeesuóSs AaqeBóàosvwe4eaogt*bàgoésvgyotveégoototneonRoet$e6ogtito^enuvébhetoenáqeqasanabledesoéttve?vvvqueovrat^onabpsen 


jevosashe»reabpaéecóéesséit«ónab»oonékque à*sepéaos4es0nwtedeuv«nptdpewtvogeeeory4aovibeunvets*eovrateosypytqotetmwcssneta i dbevoneoertvesont 


7GUI 
^ AE 


ss マー i 


"S 
Mr APAA 1) 
川村 清 著 


ーー ニー ュー ニョ デーー 


アン を ki, 


ーー 


" pu ss- っ 4 


T pu 


< we "ra ~S TS ーー ーー 
SS SI II a NN Ne N 


SHUWA 


TRADING 
€O. KLPD! 


1598. -879 0660 248 .0000.4320gE 


er 
ES ST 


E 


"— て 


IIO TT 19113131131 111 1 111 1111111117 


D M APT ニュ アル シリ ソー ズ : : : : : : : | : 0" =x 


フロ ッ ピ ディ スク AA ンド フ ッ ク : : : : . Nee- BASIC-8B8 #f7217 (8 18)- 

| PC mll andPC888| | | : : . BIOS-980175Nse-BASIC(BB)^ ` : 
i Personal Computer System の 能力 を 100 多 dee oq IM -"PC-980l/ E/E fifi | i : 

| :5 引 き 出 す た め に : : : : : : Naa-BASIC (B6) を 最高 の サブ ルー チン パッ : 
N ディ スジ を 実用 的 に 扱う た め の 基 礎 的 な 知 -…… ド ーー ニー ケー ジ と し て 活用 じたい - 長 天 な 月 日 を ………:…… 

: 識 一 概念 か ら 、: 高度 が だ アル ゴリ ズム に 至る : : : : : ELT, 2045 着想 の 実現 化 を は か り 

ERU. 豊富 な 図表 と 実例 を 使っ て 活用 ハン : : : : に E pe PEA olus EA 
ーー ドブ ッ ク の 著者 が 徹底 的 に : 述べ る 第 2 作 。 " BS が oe る ss i. TV REO AP IO CE 2 ラミ ミ ング の 省力 化 を 提 " Eq. A I v8 24 od d 


B5 判 全 240 頁 定価 2.500 円 送料 300 円 | xd ASH EN 定価 3 2001 送料 300 円 


RSSSRSRSSSRARSSSSARSSSSSSSERSSARSRRSSSSLBSSSSSSSRSLSSR2RLILALASSRSSSSLSSSSSSRESSSKRLRSRSSSSSSSESLSSRSRSSSSSSLSSRSRLAL2SLSSRLASSESLASLASRSSLASSLRLSSRSARSSEMSLRLRARLSLALEL 


PE | : : | : : : : » DH X = 


EE FM-7:8 05-95 MS PC-980/ 対応 
: : : ユー ザ 待 望 の 続 刊 / : 
| UNIX ライ クオ ペレ ー テ ィング シス テム 回 臨 - 還 の 全 狐 を …: い ま 。 | 「 イン ダフ ェ ー ス 編 - 
ーー 8 ビッ ト 機 唯一 の UNIX' ラ イク 0S、 0S:9 全体 を カー ネル 中 心 に 解析 し 、 ブ プログ. E o 
: ラム 実行 の 手順 を 豊 富 な サン プル プロ グラ ム と 共に 詳細 に 解説 する 。 | 14 : グラ フィ クス 編 
FM- | プア |/MHM に 対応 。 : : : : : : : | : : 
- ーー で RNICOKWINSS EGER ーー の bee em TTA sansan beenden : RS p ON 


UEM TQPRETST.Age.092€85249«980999»98»5999580992995€909295*949^*0099a2909094094«48960969€4099094*4bQq56v»€84849e2€095949209940€*909€0990809*9048b4€7«0599«€409*40q*2980099v99858Q8999»49—o9609400*253954€980€9099€09099«094229499*499€62 Qu 


SONY 


日 本 全国 の パソ コン ファ ン へ 、。 


mm db TRINITRON 
dm 


(D0.37mm7 A € 7-(2)2000 3C £3 (S) RGB.A 7] 


スラ ント パネル 


端子 ⑤ 傾斜 画 面 (⑥) テ レ 


カラ フル 。 鮭 明 。 上 日 に や き し い 、 と 人 気 の プ ラッ クト リ ニ ト ロン に ファ イン セッ チ を 加え た 、 
カラ ー テ イス プレ イ が 出 ま し た 。KV-14CP1。 こ れ は 、 び っ 〈 り する ほど の 高 画質 が 日 
RC, 6X 014GIOCRTi d^ $6075 59 VE 2355 00.37mn 7 74 z € C. 
いま まで 味 う こと の で き な か っ た 映像 美 を 楽し め ま す 。 パソ コン 用 カラ ー デ ィ イス プレイ と し 
て の 素 晴 し き は 、 こ れ だ け に と どまり ませ ん 。2000 文字 を 鮮やか に 表示 する 。 ア ナ ロ 
グ (21 ビ ピン )/ デ ジタル (8 ピン )RGB 入 力 端 子 を 装備 し て いる 。 硬 面 を 10 "傾け た 
スラ ント バ パネル を 採用 し て いる 。 い まま で の パソ コン 用 ディ スプ レイ と は 、 は っ きり 違う 


Oby FELIX THE CAT PRODUCTIONS. INC. by King Features Syndicate. INC. 


CHI, UT A otUS, 


ソニ ー な 6 で は の 特長 を 備 を て いま す 。 コ ンピュータ グラ フィ ックス を より KÉL(. 77 
ラミ ング を より や さき し く 、 ゲ ー ム を より 楽し (する の が 、KV-14CP1 で す 。 き ら に 、 映 4 
ソー ス を 選ば な い 身 語 な 入出 力 端 子 も 使う 人 に うれ し いと ころ 。 オ ー デ イオ 、 ビ デオ に 
対応 する 前 面 AV Hit/ ビ デオ 入力 端子 。 モニター 出力 端子 。 テ レビ 出力 端子 。 音 』 
多重 出力 端子 。 と 、 実に 様々 な 楽し み に 対 応 で きる 設計 。 オー デイ オ 、 ビ デオ 、 ヒ 
デオ テイ スク 、SHF 放送 、 文 字 多 重 、 音 声 多重 な ど を 甘く 映し 出し ます チャ ン オ 
wa 音量 」「 チ ュー ニン ググ)「RGB」「 ビ デオ 」 な ど を 管 面 表示 する の で 、 包 圭 ち よく 侯 


(上 手 に 使っ て 上 手 に 節電 


あな た の た め の テ レビ で す 


aam E TRINITRON 


y Mi. 


回 
919 


※ 画面 の 写真 は 
ハメ コミ 合成 で す 


前面 AV Hit プ ビデ オ 入 力 


プラ ッ ク ト リ ニ ト ロン 新 発売 。 


えま す 。 最 後に 、 パ ソコ ン に 疲れ た ら 、 テ レビ 放送 を すぐ 楽 m REO ND HURER 
し め る の も 大 き な 特 長 。 パ ソコ ン テ イ スプ レイ と し て 十分 な 美 | 
し る を 誇る の だ か ら 、 テ レビ 放送 を 映 せ ば 、 美 し すぎ る ほど 
美しい 。 夏 の 甲子 園 の 芝生 な ん か 、 ハ ッ と する ほど の 鮮やか 
さき で 迫っ て (る こと 、 う け あ いで す 。 ブ ラッ クト リ ニ ト ロン 十 フ ァ 
イン ピッチ 。 パ ソコ ン を これ は ほど 美しく 見 せる テレ ビ が あっ 
だ で し ょ うか ヵ ぇ 次 の 時 代 の 美しき を 映す テレ ビ ^ KV-14CP1。 


TRINITRON 


ソニ ー ト リ ニ ト ロン カラ ー テ レビ 
14 型 KV-14CP1 \99.800 


別売 AV Hit 端 子 用 オー ディ オ ・ ビ デオ ケー ブル €VMC-610S \1.500 (ステ レオ 
用 ) eVMC-611MS \1.500 (モノ ラル 用 ) 6VMC-612MS Y 1,700 (モノ ラル 用 ) 


: 人 @ カ タロ グ 請求 は 、 住 所 ・ 氏 名 ・ 年 令 ・ 職 業 ・ 電 話 番号 ・ 機 種 名 を 明記 の 上 、: 
: 〒〒108 東 京都 高輪 局 区 内 ソニ ー( 帆 カタ ログ 係 ヘ へ ハガキ で 、 お 申し 込み (だ きい 。 


新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 ニュ ー ス 新作 


Falcom : | 
| z EE 21 [3 f 
E com 8 (heg ZI qji DEB S)pulr NE 7] : 
| JV | 
n m 
K E 
| H 
n | 
a ^ 
i d tr la 
: Q0 m Ue i 
* | 
トラ プン スレ イヤ 
! NR クジ s s 
w 
|! 
u 
| 
Zv4cv—XAEC. WRLH x 
る 桃源 卿 。 ロー ルプ レイ ング を 3 
| アク ショ ン ゲ ー ム の フィ ー リ ン 
x «up rt グ で プレ イ で きる ノ / 全 方 向 ス ク | 
aX ロー ル ア ド ベン チャ ー。 世界 に > 
LUI EE dE) o 類 を 見 な い 超 ユ ニー ク な ゲー ム 。 ぎ 
enmt e 勿論 ノ オ ー ル マシ ン 語 で す 。 r 
TELE T を 御 期待 ノ S 


Y 


て に お いて 、 今 迄 の 常識 

を 超え た 革命 的 アド ベン チ 
ャ ー ゲ ー ム で す / 充実 内 容 で 
\3.800 と いう 低 価 格 の 実現 な ど 、 
日 本 ファ ルコ ム で は 、F M- 7 を 
カセ ッ ト ベ ー ス で お 使い の 方 に 
本 格 的 アド ベン チャ ー ゲ ー ム を 
知っ て 頂く 為 、 開 発 致 し まし た 。 


空 の 迷宮 内 の 画面 表示 は 平均 ! 秒 fo 次 元 の 森 の 中 だ け で 数 十 場 面 。 次 元 の 迷宮 エリ 


時 場面 で も グラ フィ ッ ク は 、 オ ー ル マシ ン プ で 了 数 が 、 な ん と 数 百 に も 及ぶ 状 大 さ / カ セッ ト 
| 本 の 中 に これ だ け の 壮大 な 世界 が 拡がっ て いる こと 
語 、 高速 抽 写 / 電 和子 詩 険 小説 な らち で は の ズム ーー に 驚か され る で し ょ う / これ ぞ ア ド ベ ンチ ャ ー ゲ ー 


ズ な 、 ゲ ー ム 展開 が 楽し め ま す 。 ム の 真 守 で す / 


[] ^st. men OT anin. た 恐怖 の 時 空 移動 、 超 次 元紀 行 
が 突然 鳴り 出し ゲー ム が ム 中 に 何 度 も ロ 

始ま る 。 ゲ ー ム の 流れ の ボイン 一 ド を 重ね 、 上 冒険 心 を 損なう こ 
ト ご と に 効果 が バッ チリ と 使わ と は あり ませ ん / 又 、 一 つの 
れ て いて 、 上 冒険 の 臨場 感 も 最高 場面 を 解決 で き な け れ ば 他 へ 進 


の 物 が 楽し め ま す 。 め な いと 云う 制約 が 少な い 為 、 FM-7 カセ ッ ^ T ry スク ぎ 5. 800 | を | 


場面 間 を 自由 に 移動 で き ス トリ "Jd. P. 
= -UORBCRISU sen. M-77 用 3.5 イ ンチ 版 \5.800 新 登場 (ST UD) | 


パソ コン が SXOAt ちい ます --。 


pem ブラ スー は 


パズル を 解き つつ 女の子 を 脱が し て 行く 、 パ ズル 型 思 考 ゲー 西洋 占星 術 シ ステ ム で す 。 個人 は も と より 、 店 頭 、 学 園 祭 等 で の デ 
ム 。 パ ズル と いっ て も か な り の 難し さ 、 あ せる 心 を 迎え つつ モン スト レー ショ ン な ど に も 、 相 性 診断 が 出来 る の で 効果 抜群 で す 。 
リア ル な 彼女 達 の 姿 を 堪能 し て 下さ い 。 F M-7 用 (送料 各 \300) カセ ッ ト \6,800 

ディ スク 5 \7,800 


FIM-/ 回 \6.CUU (T300) #4, 200 (T300) | F M-77 用 3.54 ンチ 版 X7,800Cr300) 新 登場 / 
FM-77 用 3.5 イ ンチ 版 半 6,.200(300) 新 登場 / 富 + i$ MB27402. MB27403 


MB27406.MB27407 
EPSON FP-80 シ リー ズ , RP-80 シ リー ズ 
MP-80 シ リー ズ (TYPE・| は 不可 ) 7 
LOGITEC KP-3000 e 
スタ ー 精 志 DPX5I0F 


ブラ ザー エ 業 M1009 つて の て メソ / 
※ 上 記 機種 及び 、 上 記 機種 に 汗 ず る プリ ンタ ー て 合用 on [3 Mp 5 f d 
VICES be o iaa DARE 


掲載 され て いる ソフ ト の 通信 販売 も 行なっ て お り ま す 。 注 文 は 、 品 名 ・ 機 種 名 ・ 住 所 ・ 氏 名 ・ 電 話 番号 を 明記 の 上 、 現 金 書留 また は 、 銀 行 振 
入 で お 願い し ます 。 銀行 振 込 の 場合 は 、 電 話 又 は ハガキ で 商品 名 を 連絡 し て 下さ い 。 第 一 勧業 銀行 立川 支店 普通 264-1436219 


OR BHEXZLOCAR UU S Tanh BUENA 。 


し れ は 、 生 命 の 誕生 する 分 子 先 の 
? $5 
o 


DU 3 x5 j 
T e . 
45 AE EE 


スト ー リ ー は 佳境 へ 解き 明か され る ジャ ミル の 正体 と 、 ス ター アー サー の 過去 . 
高速 --D ロ ルー チン を 駆使 し た リア ル タ イ ム ス ペ ー ス ファ イト . シ ー ン _ 
本 邦 初 、 恐 怖 の 4 分 割 画面 (部 屋 の 4 方 向 が 同時 に 表示 され 、 そ こ て 何 か が …) 
伝説 の 剣 [ し レイ ソー ド ) の 秘密 を 暴く べく 暗黒 星雲 へ 突入 ./ 
3-D リ アル タイ ム 戦 闘 用 修業 プロ グラ ム 付 き 、 リ アル タイ ム の み 独 立 し て 楽し む 事 も 可能 で す 。 — 


MA Ft 


O 


dr | Man 
ベイ ント ルー チン に , 
B - 5 PC-ü0 mk 


PC-8801/mkII fi 


E 5FD 版 

4 ^ - A 

~ > > te 
5 R " 

1 DE , edo 
^ s < À Aha 
^. t ^7 5 yr 
; f PARRE 
v AR 。 pm T < ` " 

3 y a で (て も A 


¥ Yr Pt 
4 e oi 


(3 本 組 ) \4,800| Y 6,800 
Eu. cod 
A e a 
* RSS 。 ED 


FM-// 用 3.5FD 版 新 発 
X 6.800 


3-D ゴ ルフ シミ ュ レ ー=* 


ゴル フシ ミュ レー ショ ン で は 、 初 め て 3 次 元 立 体 図 形 処 理 を 使用 し た 
本 格 ゴ ルフ シミ ュ レ ーション で す 。 毎回 の ショ ッ ト 位 置か ら の 立体 
視野 画面 を 表示 し 、 そ の 中 を ボー ル が 飛ん で ゆき ます 。( 和 無限 に 近い 
視野 画面 が 得 ら れ ま す 。) 視野 画面 の 作成 、 ボ ポー ル の 弾道 等 、 す べ て 3 
次 元 計 算 に よっ て 行なっ て いま す 。 ま た 、 フ ェ ア ウ ェ イ ラフ 等 の 反発 
係数 及び 角度 、 風 速 、 方 向 、 ク ラプ に よる 打上 角度 等 、 ゴ ルフ に 必要 な 
ほとん どす べ て の 要因 を 、 こ の 計算 式 に 組み 込み 、 実 際 の ゴル フ を 
ほぼ 完璧 に シミ ュ レ ー ト し ます 。 美しい 海岸 コー ス (18 ホ ー ル ) と リ 
アル な サウ ンド を お 楽し みく だ さい 。 


説明 書 、 全 コー スレ イア ウト 付 。 


ゲー ム フ リ ー ク と ゲー ム デ ザイ ナー の 接点 を 作り ます 。 
TEES urn 
lends died 
e 


2 2 る スー パー グラ フィ ッ ク エ ディ ター・ コ ンク ー ル 発表 @ コス モミ ュー ター 開発 裏話 
Fr) る る ピラ ミッ ド II… 上 達 テ クニ ッ ク o ERTH RIP- R 
ご 好評 に つき お 申し 込み は 、 お 早 目 に お 願い し ます 。 


放 T&E マカ ジン No3 こ 希望 の 方 は 、!00 円 切手 2 枚 (200 円 分 ) 同封 の 上 、 マ ガ ジ ン 請求 券 を お 送り 下さ い 
ATE SOFT の 新しい カタ ログ (No2) が で きま し た 。 こ 希望 の 方 は 100 円 切手 同封 の 上 、 カ タロ ク 請 求 券 を お 送り 下さ い 
去 通 信販 売 ご 希望 の 方 は 現金 書留 で 料金 と 商品 名 ・ 機 械 名 を 明記 の 上 当社 宛 お 送り くだ さい . (送料 サー ビス ・ 速 


J 

H 1x 
Hk 
iQ 
| ~ 
| a 
v 
[os] 
e 
c 
.H 
N 
| 
N 


7 月 3 日 に ELEELE FAM ces eame mo into 
ie 電話 番号 は 従来 通り で す 。 TEL 052-773-7770( 代 ) 


ジェ ル ダ 戦 役 第 ら 弾 / 


作戦 暗 gez V 
エネ ルギー シー ルド 装置 を 強化 し た ヴェ ル ガ ス を 使用 し 、 直 径 hm に わた る 巨大 秘密 衛 Sa 
時 ガル バ を 破壊 し 、 敵 国 に 決定 的 な ダメ ー ジ を 与え る 事 が 目的 で ある 。 pr i x = vt e rr 


ES t 0 : ^s E 
" is P A NEU f X jc Fin pd n 7 B 
AAR A \ た 
| | 
p” ds | EE 


(C T)3€3,800( F D) X5,800 
diui diodes dcl a noni リー スズ 


3. 低 価格 


使い や すさ と 実用 ; : 
性 を 重視 ノ / 他 と 較べ て 下さ きい 。 Y 26.8U0U 円 


一 JET 仕 様 一 覧 5FD.2 枚 定価 26.800 円 


久 文 書 エ リア (40 字 96 行 ) 代 テキ スト 表示 (40 文 字 X10 行 ) G SCEEHERR (漢字 JIS 第 一 水準 2965 文 字 十 107 文 字 記号 768 文 字 外字 96 文 字 ) 久 文字 サイ ズ ( 全 角 文字 、 倍 角 廊 字 、 半 角 文字 、|/4 角 文字 (123+ 


— 189) 参 辞書 ( 約 3 万 語 の か な 三 漢 字 変 換 方 式 ( 諏 語 単位 ) 使用 頻度 順 学習 機能 付 、 約 4 万 語 まで 拡張 可能 ) 僅 編 集 (文字 ・ 行 の 挿入 ・ 削 除 、 桁 の 挿入 ・ 削 除 、 行 そろ え 、40 文 字 ま で の 文字 の 切り 貼り 、 プ ロック 複写 、 
セン ター リン グ 、 右 寄せ 、 左 寄せ 、 タ プ 、 イ ン デ ント 機能 、 文 書 復活 機能 etc. 欠 文書 記録 (| ディ スケ ッ ト に 最大 64 廊 書記 録 、 パ スワ ー ド に よる に よる 機密 保護 可能 参 文 書 印刷 ( 縦 書き ・ 横 書き 印刷 、 行 間隔 ・ 文 字 間隔 設定 、 
印刷 枚数 、 連 続 ペ ー ジ 印刷 ) 多 定 形 名 管理 (40 文 字 X96 句 、 定 形 句 の 定義 、 内 容 一 覧 な ど ) 圏 ユ ー テ ィ リ ティ ー( 外 字 管 理 ) (外字 の 作成 、 外 字 の 内 容 一 覧 ) (MZ 文書 呼出 し (JET-MZ で 作成 し た 文書 を 使用 で きま す 。) 
文書 通信 機能 (電話 回 線 を 通じ て の 文書 転送 (オプ ショ ン ) 


Carry lab. キャ ン ペ ー ン プレ ゼン 
VES AH ( lab. 
神奈 川 県 川崎 市 東京 E ; e 

TUR 伸 康 "Nr - = RS alt 9 d 


チャ レンジャー ズ ソフ ト 情 報 誌 「 チ ヤ | ノン ジャ ヤー ズ 」 ご 和希 望 の 万 は 、 氏 名 、 通信 販売 全国 マイ コン 販売 店 で 取り 扱 つて お り ま す 。 通 信販 売 の 利 注 文 帽 キ ャ リー ラボ T862 熊本 市 大 江 6 丁 目 25-25 金子 ビル I 
住所 、 年 令 、 農 業 を 明記 の 上 、 送 料 200 と 請求 券 活 え て お 申し 込み 下さ い 。 現金 書 処 ガ 郵便 振替 を 御 利 用 下さ い 。 郵便 振替 口座 / 熊 本 0-18846 TEL 096-363-0211 FAX 096-363-0235-G2・G3 


サポ ー ト 月 - 金 訣 日 1400-17.00 TEL 096-363-0047 


4 LJ 


エニ ッ ク XX 


フロ グラ ムコ ン テ ス ト 


新た な “アー ティ スト (印税 所 得 者 )" の 幕 衣 け が" 
その 名 は 『 ゲ ー ム ブロ グラ ム 作 者 」 
小説 家 や 漫画 家 、 そ れ に 作 記 家 ・ 作 上 萌 家 の よう 
愛 の ある “印税 生活 "が 君 を 待っ て いる 。 
_ フ ポン ソン コン ひび ひとつ で 高 と 名 声 を つか め る 時 代 カ が や っ て きた 。 
HHX — 48. 19i. 
今年 3 月 の 1 ヵ月 間 で 4,067,220 円 も の 印税 を 、 エ ニッ クス カウ ら 受 け と っ た 彼 一 一 
「 ド アド カー 本 だ け で 印税 額 は 2.000 万 円 を 越え を る だ ろう 。 
アメ リカ で いや 、 日 本 で 続々 と 誕生 する “ゲー ム 作 者 の リッ チャ ン " 達 。 
君 に も 6、 そ の チャ ンス カ が や っ て きた 。 
ab. 今 こ そ を チャ レン ジ の 時 だ / 


UPRA 


CONTES : 
PN tips ! 


s 3 OGGI INNIA FJOR! 


N 


い 
区 NNN や 


ーー 
i) 


Mc a e r aA 
E 5 


< の デー マッ bdo 


Ne Quos e Iw 


nn vu n Oi > 
AA p T | dei 


ミン SOKEA rtirati 


こう 


V M 
* 
" 
i , 
J Pa 
| D yf 
` AN A 
CALA 
f fi 
Eie Pei n 
EA ag 
" 
B, ^ WW 
x [4 
に eom] 
Jou 
へ - — 
; E 
As | 
nm に 
Aa w^ 
し m. " y 
é C 
P A 
S WARD 
i 1 か 
Bua で d 
\ N £ 
っ - 
~ 
CA We i2 
| S | | 
) k 
4 
ra j i 


0r—»2AV7r7XNE--- トロ フィ ・ 表 彰 状 ・ 金 500 万 円 (7 名 ) 
Ott 5 プロ グラ ム 買 上 …… 0 1B 26€ 1X 4 25075 FJ (2:8) 
eA Ë プロ グラ ム 買 …………… 棋 ・ 表 彰 状 ・ 金 700 万 円 (70 名 ) 
Os D e is dno doit 記念 品 (応募 され た 方 全員 ) 
※ 上 記 の 金額 は 、 印 税 の 最低 保証 金 で あり 、 入 質 者 に 全額 前 渡し きれ ます 
@ 募 集 期 限 Tr Lale e c) 訪 募 作 品 の 著作 権 は 作者 に 帰属 し ます 。 
昭和 59 年 9 月 15 日 (当日 消印 有効 ) D 所 定 の 申し 込み 書 と 、 プ ログ ラム ハ を 収録 d) 商 品 化 に 際 し て 、 入 賞 作品 の 独占 販売 権 
@ 募集 内 容 し た だ テープ まだ は ディ スケ ッ ト を 派 えて は 当社 に 帰属 し ます 。 
a) ゲ ー ム ホビ ー プ ログ ラム お 送り 下さ い 。 e)E[ 税 は 、 当 社 規定 に より お 支払 いい だし 
b) 作 品 は 、 新 聞 雑誌 等 に 未 発 表 で 販売 流通 尚 、 申 し 込み 書 は 主 な パソ コン ショ ッ プ ます 。 
し て いな い オ リ ジ ナ ル に 限り ます 。 店 頭 ひ か 、 下 記 へ ハガキ も し く ぐ は 電話 で ご 
c) 使 用 機種 は 、 市 販 さ れ て いる パソ コン ・ 請求 下さ い 。 @ 発 表 
マイ コン で あれ ば 特に 限定 し ませ ん 。 T160 東京 都 新宿 区 西新 宿 7-1-8 昭和 59 年 10 月 31 日 以降 に 発売 され る 主 な マ 
01537; E 7103(371)5581 イコ ン 雑 誌 誌上 。 
a) 個 人 、 グ ルー プ 、 法 人 等 いずれ で も けつ 帆 エ ニッ フス プロ ブラ ムコ ン テ ス ト 事務 局 ※ 遍 募 者 に は 直接 ご 通知 いた し ます 。 


rgQuIr-»74 


[ 広 


T 


M-7/8/NEW7 


C-8801/8801m k I 
X1/C8 月 5 日 発売 / 


@FM-7 DSK PWUP UT( ユ ー テ リ テ () — GSTAIR CAT (ゲー ム ) 


アメ リカ 市 場 を 舞台 に 、 あ な た の 
経営 セン ス で に ゴロ ンジ ビ ーー クタ ズー 
カー の 社長 と し て 、 会 社 を 大 きく 
する こと が で きる か どう か 、 楽 し 
みな が ら 、 経 営 戦 略 を シミ ュ レ ー 
: ま する いま まで に な い ビ ジネス 
思考 型 ロ ー ル プレ イン グ ゲ ー ム 。 


e High-SPEED SAVE(3 一 5 倍 ) が け か ら 落 ち た 子猫 が 、 落 下 物 を 避け NN | em I FM-7/8/NEW-T(CT) Y 4,200 
e 日 付記 録 機能 な が ら 地 上 まで は い 上 が る 。 体 カメ ー タ SO CE O PC-8801/mkII (CT)Y 4,200 
@ RAM DISK に 気 を つけ 、 パ ワー エサ を 食べ な が ら 前 — — i e (5FD)\6,200 
e 裏 RAM を プリ ンタ バッ ファ と し て 使用 。 進 。 一 面 クリ ア で 一 匹 加算 APESE ^ta 7 rt 9 o4); — 0 MT 8r X1/C (CT) * 4,200 
@ 新 コマ ンド の 追加 


'. ptt 


——— 


4 de 当社 製品 の 応募 シー ル を お 送り 下さ い 。 毎月 抽選 で 豪華 な 当社 オリ 
お 生 レ し み プ ブレ ゼン ハオ ジ ナ ルク グッ スズ を プレ セン ト 致 し ます 
※ 通 信販 売 も 行なっ て お り ま す 。 ご 注 女 の 際 は 、 品 名 ・ 機 種 名 ・ 住 所 ・ 電 話 番号 を 明記 の 上 、 必 すず 現金 書 負 で お 申込 下さ い 


(送料 無料 ) 尚 、 お 急ぎ の 方 は 、 速 達 代 金 300 円 追加 し て 下さ い 


コン ピュ ー タ の より よい 活用 を め さ す 5 *ー ス テッ ク 株 式 会 社 


R Tile 東京 都 荒川 区 西 日 暮 里 2-41-16 
BOTI IT ECiac. TEL. 03(801)2301 (f&3&) 


シン リー ズ 


— 。 


from U.S.A. p D 


^ - troia 


"Lh: HERES 
Werke B 
5 


cà i: d 


Lode Runner 


人 -|・F 上 IM-/ シリ ー ズ 


150 も の 地下 迷宮 と 、 プ ラス 無限 の バリ エー ショ ン 。 そ の 中 で 、 隠 され た 宝 を 奪い 


E] d dy 返さ ね ば な ら な い 。 敵 は 迫る 。 ロード ラン ナー は 、 地上 へ の 出口 を 求め て ひたすら 
ピン 疾走 する 発売 以来 、 全 米 が 熱狂 。 い ま も な お 、 ヒ ッ ト チ ャ ー ト を 走り 続け る 
カセ ッ ト テ ー ブ プ 版 フロ ッ ピ ィ 版 


「 ロ ー ド ラン ナー」。 凄い / 面 白い / これ は まさ に 、 無 敵 の ソフ ト だ / 


AN. 
b LEE 
PONE N 


「64 人 の 人 質 を 奪還 せよ 」 それ が 君 へ の 使命 $ A さあ 、 大 変 だ ど / 2 人 の ザ 
次 々 と 君 を 襲う 敵 の 攻撃 綱 を か わし て 、 見 事 ヒー N á . -T MEADSECEXGOER T) 
ロー に な れる か ae | F て 脱出 し よう と し て いる 
E ハイ テク ニッ ク で 、 彼 ら 
B 40053 7:/ 


Y^ $ : | y $ — 
| X-1・FM-7 カセ ッ ト テ ー ブ プ 版 
シリ ー ズ EA 口 ツ E 4 版 
"er o ME 3A 


スペ アチェ ンジ 


B 


売 C)msessJAPSZCT—3A 


uf コト bE 株 式 会 社 


ソフ ト プ ロ イン ター ナシ ョ ナル 事業 部 


Š 


X-]・FM-/ カセ ッ ト テ ー プ 版 
シリ ー ズ 7n»C€wqwh& 


Soft Pro International 


T530 大 阪 市 北 区 西天満 6-7-2 梅 新 東 ビル 5F TEL(06)363-1221 


IH is Gn 
jai : 


c Fat 
buy T ^w: td 


| | 


T TTIR) 9 


d M — `~ ` 〈《 や し い だ ろ う 、 逆転 きよ な ら 負 け な ん て 。 
ML ea 
mel. 7] \ ノン ノ J ント だ か ら 、 僕 が きっ を 〈 か た き 討 ち 。 


apak RÀ : 


審判 も 動 「 野 球 狂 」。 プロ 野球 や 高校 野球 、 草 
HUDSON GROUP MEET EERE 
® 
24 [I] グ oc HUDSON SOFT PiE ALR TO 札幌 市 豊平 区 平岸 3 条 5 丁目 4 番 |7 号 コロ ナー ド 平 岸 II20| PHONE: 011-821-1538 
営業 所 ・ 仙 台 ・ 金 沢 ・ 東 京 ・ 大 阪 ・ 福 岡 ・ 沖 縄 


La 


野球 な ど 、 自分 の 好き な チー ム と 対戦 チー ム の 選手 それ 

ぞ れ の 打率 や 守備 率 な どの デー タ を 入力 。 そ れ に 従っ て 動 〈 画 面 で 
リア ル タ イ ム ゲ ー ム が 楽し め る の が 近頃 は 、 僕 が 寝 た 後 、 父 る ん が 
自分 の 草野 球 チ ー ム と ジャ イア ン ツ 試合 きせ て る みた い だ よ 。 


Nintendo" 


OI Nireondo' of Americe mc. 


Wb ls さ て 、 や め ら れ ぶ い 


宇宙 や ジャ ング ル を 舞台 に 、 ハ チ 
の バズ ビー や お じゃ ま 
虫 ク リー ビー だ ち を 
引き 連れ た ドン キー 
コン グ が 大 茜 れ ! る 
あ 、 ぉ 得意 の スプ 
レー で 、 負け る な 、 ス 

タン リー。 


英 は 、 可 愛 い カメ や カニ 。 
る て 、 マ リオ は 、 彼 ら を 蹴 飛 ば 
Lc, 最上 階 ま で ジャ ンプ て で 


AS 
OK 


Ut? ccuencas 3. 
"3f. 


機種 X-1 シ リー ズ PC- 8801 シ リー ズ FM-7 シ リー ズ PC-6001MKII PC-6601 TAPE 版 \3.600 FD 版 \5.800 
"i ハドソン 札幌 〒062 札幌 市 豊平 区 平岸 3 条 5 丁目 4 番 17 号 コロ ナー ド 平 岸 II20| PHONE : 011-821-1538 
営業 所 ・ 仙 台 ・ 金 沢 ・ 東 京 ・ 大 阪 ・ 福 岡 ・ 沖 縄 


Ld 


~ 
Ro 


HUDSON GROUP memm 


HUDSON SOFT 


切り 札 は 、 こ れ が だ 。 


コン ピュ ー タ と 、 プ ラッ クジ ャ ッ ク を お 手合 わせ 。 明 日 の デー ト を 、 カー 
ド で 占う 。 ! ト ラン プ 狂 』」 は 、 ブ リッ ジ 神経 衰弱 、 ポ ー カ ー な ど 数 々 の 
遊び が で きる ワク ワク ソフ ト だ 。 x-1.FM- 


コン ピュ ー タ も 、 
花見 で 一 杯 。 

こい こい 、 ば か っ 化 、 お いち ょ か ぶ ^。 
花札 通 は も ちろ ん 人 、 初 心 者 も オー 
PETE TME X X.8 
あ 、 人 間 の よう に 考え る コン ビュー 
タ と 、 勝 負 ./ 勝負 ./ 


p gr m 
EI 


Au, 
E hM EN 


ETT X-1, PC-8801, 9801, FM-7 
E 7 テー ブフ 版 \4.000. デ ィ ス ク 版 \6,800 


まる で 実戦 さながら の 対局 感 ノ 
ZxEg4- 9B GOGXMCRMU 
思考 プ ブログ ラム だ か ら 、 清 一 色 や 
泥 一 包 へ の 決断 は も ちろ ん 、 
士 無 双 な どの 役 満 も ね ら っ て くる 。 
さて 、 ボ ー カ ーー フェイス の 余 友 と の 
勝負 は いか に 。 


"7-4 
Ne 


7 37 適応 機種 :X-!,PC-6001,880I,PC-980IF,PC-980I,FM-7, FM-11, S1, MZ-5500, 1500 
HUDSON GROUP m— 9 7 — 7 5X 4,000, 7 4 ^ 2 hi Y 6,800, QD 版 \4.800 


HUDSON SOFT 本 社 ・ ハ ド ソ シ 札 幌 / 生 062 札 幌 市 豊平 区 平岸 3 条 5 丁 目 4 番 |7 号 コロ ナー トド 平岸 II20| PHONE:011-821-1538 営業 所 ・ 仙 台 ・ 全 沢 ・ 東 京 ・ 大 阪 ・ 福 岡 ・ 沖 縄 


4 > い l t ES : ッ 
nA TR スト トー リー x55 7 - x: 
くめ きつ だ て て 国民 を 苦し め る カボ チン の ノブ で を ? - 

さっ > プリー ター いい 
25 で うと 、 ト マト 姫 。 さ て 、! "ed j 

RE れ だ キュ ウリ 戦士 トマト ま í 

BRI y 

X-| シ リー スズ 3 FD | 

PC-60MKH、66 | T | 

FM-7 | T/SFD | [8908 
EM SFO ABI 
PC-8801 /MKII S ] の A E 


へ やこ 


ー 
ー 
ーー 
7 


准 理 小説 に る 負け な い 耐 白 ア ド ベ ンチ ャ ー 
-— NY や wD Nappi Cw や SUN ーー ュー 
ゼニ ノ PC-9801/F | 


HUDSON GROUP mem P m A 
Ae HUDSON SOFT OO a 
| 本 社 ・ ハ ド ソン 札幌 T062 札幌 市 豊平 区 平岸 3 条 5 丁 目 4 番 |7 号 コロ ナー トド 平岸 120| PHONE :0II-82|-1538 営業 所 ・ 仙 台 ・ 金 沢 ・ 東 京 ・ 大 阪 ・ 福 岡 ・ 沖 縄 


アメ リカ ン ・ エ スプ リ を 満載 
し た 面白 ゲー ム 第 二 弾 新 発 売 


bs 2 M. $- , 
か - y Y s 
も » )- 
P - B A me < 
¢ : 7 -M SU ハバ L 
< E LE by. 
: Pi ンー d T E 
< : 
t M 4 AEN 
ju Y: 
wo x 
ons gn. . ^ 
oc の ーー 


英 船団 発見 / edi 大 4 の を 


p 


ERER TORIO 凄絶 な 戦い 、 君 は 生き 残れ る か ? 
< ジジ の /o ウ ) 


alone e o ONE: / 
恋 入 の いる 街 を 防衛 せよ 。 
[$82 e JS rs [e Jb 


DAWN 


商品 コー ド 番号 FUSK23002 


魔王 の 黄金 を 徒 え , / オ オム に 乗っ て 外敵 か ら 、 錠 え か ら ヒナ を 守れ / 


E—u—i3jRU wy, ハヤ プ ブサ 愛情 物語 。 
JIOR SIJIL SOE ZZP ZRNJA 
J | E] | f [7] 
qCUNGI QU [344534] 29 2A UJ 


商品 コー ド 番 号 FUSK23007 商品 コー ド 番 号 FUSK23008 


28 [5] 


スピ ー ド ・ ス リル ・ サ スペ ンス 、 こ れ に 「 あそび 」 の 
アイ デア が 加わ っ た アメ リカ 生ま れ の 面 昌 ゲー ム 
"SilverBall? FM-7 の 世界 に 初 登場 。 


2A 好評 発売 中 で す 。 
クタ タク クル ん 


silver Ba lli 
. O 


STRIFE fads CET, 
WAAN 


商品 コー ド 番 号 FUSK 23009 
| a - p - — 
人 WE X SEI KORJ VaL 3U7z fre El E 7 殺 る か 殺 ら れる か 、 ス リリ ング な 銃撃 戦 に 勝ち 残れ / 
KORRA な か 、 à 3 


輸送 軍団 を や っ つけ ろ / ノ / レジ ーッ ルーo の の [B]gR 9) [s o7 2» — 


IIRL P LABES CASE ROBOT WAR 
FLYBOY p 


AS の 2 CLARAE ELS E NRDUE NC 商品 コー ド 番 号 FUSK23011 商品 コー ド 番 号 FUSK23006 
Ene | 商品 コー ド 番 号 FUSK23005 


製造 ・ 発 売 元 シル バー ボウ ル ソ フ トウ ェ ア 通信 販売 し て お り ま せん の で パソ コン ショ ッ プ で お 求め くだ さい 。 
の silvsp6 Ball * こ の テー プ よ り の 複製 及び レン タル 営業 行為 を 禁止 し ます 。 
Suite 902 Berkeley, CA. 94704 U.S.A e * M 
FM-7 用 カセ ッ ト テ ー プ 版 お 問い 合せ は …… 株 式 会 社 日 本 ソフ トバ ンク SilverBall は 次 々 と 新しい ゲー ム を 


定価 各 3500 円 "hu On i n MCN. 


[I] 29 


や ょ っ と 大 きい 手 を 狙 光 、 。 
女 の が りす る の が 


憎い ね 。』 
ヤミ テン や 
px 
リー ナ た つて 
や る し ね 。」 


最強 レベ ル で コン ピュ ー タ と 戦っ た こ 


ベテラン 代 士 の 感想 で す 。 


く < プロフェッショナル 麻雀 > は 、 ア セン プリ 言語 で 記述 さ 
れ 最 高速 で 動く 本 格 的 な ゲー ム ・ ソ フト で す 。 RENS 
実 な シミ ュ レ ーション に 基づい て 組立 て られ て お り 、 ゲ ー 
ム は 実戦 その まま に 展開 し ます 。 

鮭 明 に 、 美 し く 表 示さ れる リア ル な 幅 。 あな た の 入力 
の スピ ー ド の まま に 、 快 適 な テン ポ で ゲー ム は 進行 し ます 。 
3 人 の 対戦 相手 の 実 カ カレ ベル は 、3 段 階 に 変え る こと が 
で き 、 高位 レベ ル で は 最強 の 打ち 手 と し て 登場 し ます 。 
和 了 する と 点数 は 自動 計算 され て 画面 に 表示 され 、 半 
荘 が 終了 する と それ ぞ れ の 点数 の 合計 が 有 瞬時 に 行 な 
われ ます 。 スイ ッ チ を 切る まで 得点 は 累計 され て 行き ます 
か ら 、 勝 つま で 徹夜 マー ジャ ン と いう こと も あり えま すね 。 


@ リ ー チ は も ちろ ん 、 つ み 場 、 裏 ドラ 、 五 本 場 以 上 二 翻 し 
ば りな ど 、 ル ー ル は 実戦 その まま で す 。 

@ 実 際 に ある 麻雀 の 役 は 、 す べ て 網 維 さ れ て いま す 。 

@ 新 し い 思 考 ル ー チ ン の 開発 に よっ て 、 コ ンピュータ の 
実力 は 最強 に 設定 で きま す 。 最 高 レ ベル で コン ピュ ー 
タ に 勝て れ ば 、 あ な た の 実力 は か な り の も の で す 。 

條 対戦 相手 の スピ ー ド は 8 段階 に 設定 で き 、 食 い 断 、 不 
聴 罰 の 有無 も 選択 で きま す 。 

@ チ ー、 ポ ボン 、 カ ン 、 ロ ン が で きる と き に は 、 チャ イム が 鳴っ て 
ゲー ム の 進行 が 止ま り ま す 。 実 戦 の 緊張 感 を 味わい た い 
と き に は 、 停 止 し な い 実 戦 モ ー ド に 切り 換え られ ます 。 

コン ピュ ー タ の 手 牌 を 見 る こと が で きる オー プン ・ モ ー 
ド 、 コ ンピュータ だ け げ で 対戦 する デモ ・ モ ー ド も あり ます 。 

條 同じ 配 牌 か ら の 再 ゲ ー ム も 可能 で 、 初 心 者 の 実力 ア 
ッ プ に 役立ち ます 。 


| 6 マイ コン ショ ッ プ で 好評 発売 中 / | 


機 種 


PC9801 /E 


PC980IF 


PC8801 (mKII) 


N5200 モデ ル 05 


FM-IIAD2/BS 


FM-IIAD/EX 


FM77 


FM7.FM New 7 


X-I 


SMC70・SMC777 


*N5200 用 の 8 "のみ \9,800. で す 。 


プ ワ フェ ッ シ ョ ナル _ 


@48P マ ニュ ア ) し 付 


a guarantee for software that won't wear 


株 式 会 社 シシ ンプ アール 
F102 東京 都 千代 田 区 集 町 2-12 藤和 半蔵 門 コ ー プ 405 号 
Tel. (03)234-0950 


マニ アプ ソナ の ラン コン の 人 は 
5942) L XL I2 


ZDDV IAAT ECE i THR IFI E 
ン フ バム ウェブ 、 ハー だ ウェア 
/ い に が つめ みみ ハン コン 


/ 鐘 に 太っ て いこ 2 と ゃ が いで カッ 


"nita Jy EUN 
^ ui di vi CR RA er gpl aui RC RE 


18 ビ ッ ト バ パソ コン の ハー ド お よび ソフ ト の 総合 活用 を わか りや すく 紹介 する 実用 情報 


N^ Ws r 
と > が あな が ん CY 
p». feeit 0o par 


AP ソフ ト の 現状 分 析 か ら マ ウス の 未来 まで 。 


BN r 
i MC 5 T EN 
Uu MeRsexx^ E LII 
fur L3 = .» 
EN 2 nA g 1 ' E. €» 
"8" JJ b ane feu VLA ^". 
d " — M ad oath - K « 
E x ; | p. ESSEN 7 
: 1 TT I * m$ 8! プ 2 |ESES 2034 
E E Me 【 mem Ue E A 4 4 4 4 i 5 - um i E dud 
* pl -a ii- f: - "— IN pim ee ・ 
ÀA I Se T R io > k à qu 1 回 B き qu j3 o x 
À (Eu S s 。 | ad g Irm d Ww 
p reels di LT ris ep «4 ArAP PE A 


^ MACHINE テ スト ラン レポ ー ト 
dBASEI 入 門 

7 SOFT WATCHING 

連 統合 ソフ ト の 活用 事情 '84 

載 パリ ソ コンテ レコ ミュ ニケ ーション 総 カ タロ グ 


日 本 ソフ トバ ンク 出版 部 発行 谷 03-261-4095 


MAGAZINE FOR GAME KIDS 


F, 


AB 判 、192 ペ ー ジ (予定 ) 


る @ パソ コン を は じ め ホ ビー マシ ン アー ケー ド の ゲー ム 情 報 を きっ し り パ ッ ク ./ 


「BEEP」 は 、 み ん な が つく る パソ コン ゲー ム 
情報 誌 で す 。 待望 の 創刊 を 記念 し て 、 下 記 の と 
お り 「 ブ ログ ラム 原稿 」 を 募集 し ます 。 ふ る 
っ て 投稿 し て くだ きい 。 

@ あて先 
〒102 東 京都 千代 田 区 四 番 町 2-1 
日 本 ウフ トバ ンク 出版 部 [BEEP 」 編 集 室 
- く ゲーム プ ログ ラム > 
ゲー ム の ジャ ン ル は 問い ませ ん 。 未 発表 の オォ 

リ ジ ナ ル ゲ ー ム を と どしどし 投稿 し て くだ きい ( シ 

ョ ー ト 、 ロ ング いずれ も 可 ) 

@ プ ログ ラム は テー プ に 入れ て くだ さい (投稿 
作品 は 原則 と し て お 返し で きま せん の で 、 あ 
ら か じ め コ ピー を と っ て くだ さい ) 

@ ブ ログ ラム の 内 容 の 説明 、 操 作 方 法 、 遊 び 方 
を 、400 字 づ め 原 稿 用 紙 3 枚 で らい に まとめ 


@ 楽 し い ゲ ー ム プロ グラ ム だ っ て 盛り だ くさ ん ./ 


@ ど か ー ん と 充実 の 特別 企画 も ./ 


て くだ きい (原稿 に は 、 対象 機種 、 使 用 言語 、 
住所 、 氏 名 、 年 齢 、 学 校 名 、 連 絡 先 電話 番号 
を 明記 し て くだ さき るい) 

AESC 月 号 ) 掲 載 分 の 締切 は 、10 月 末日 で 
Fi 

@ 掲 載 さ きれ た プロ グラ ム に は 本 誌 規定 の 原稿 料 
を 支払 い 、 掲載 誌 を 送 り ま す 。 

< 原稿 > | 
TVOICE OF BEEPER」 と 「 は みだし 

BEEP」 の 二 つ に つい て 、 原稿 を 募集 し ます 。 

(①「VOICE OF BEEPER」 は 、 ゲ ー ム に つ 
いて 、 み ん な の 声 と 顔 写真 を 載せ る ペー ジ で 
す 。 だ た と えば 、「 こ れ は 楽し い / ゼ ッ タ イ おす 
すめ ソフ ト だ 」、「 が っ か り / 期待 は ずれ の 
ツ フ ト 」、「 ゲ ー ム 言い た い 放題 」、「 こ こ が 
知り た い 、 だ れ か 教え て 」 な ど な ど 、 ゲ ー 
ム に つい て な ら な ん で も 0O.K.。 みん な の 声 を 


書い て くだ きい 。 

e 原稿 は 400 字 づめ 原稿 用 紙 1 枚 ぐ で らい を め や 
す に し て くだ さい (多く て も 少く て も 可 )。 

@ 顔 写真 (な る べく モノ クロ 。 サ イズ は サー ビ 
ス 判 くら い ) を 添付 し て くだ きい 。 

②「 は みだし BEEP」 に も 、 み ん な の 声 を 寄せ 
で だるい 。 

@ 原稿 は な る べく 100 字 で らい に し て くだ さい 
(多く て も 少な く て も 可 )。 

娘 ① に つい て は 、 原 稿 採用 の 場合 は 、「BEEP」 
特製 トレ ー ナ ー を プレ ゼン ト し ます 。 

支 ①、② と も 創刊 号 の 原稿 締切 は 、9 月 末日 で 

AD Qt b. 原稿 は た て 書き に し て くだ きい 。 


日 本 ソフ トバ ンク 
BANK 出版 部 


の な た 0S 知 づ ( ま すか ns 。。 


2 フー アツ イ 。 あ つい な あ 。 な ん と か な ら 
ん の か な 一 。 僕 。 実に 盾 っ か き で , TCS 
せ も が で きる ん で すね 。 あ 一 泳ぎ に で も 行 
きた いな ー。 僕 の 下宿 , クー ラー も 扇風機 も 
うち わす ら な いん で す 。 だ か ら カ ナ ワ ン の 
で す よ , 暑 き が 。 こ の 原稿 を 書い だら 扇 風 
機 く らい 買え る か ね ーー, M さん 。 こ の 暑い 
夏 を の りき る に は , まあ , クー ラー と は いわ 
な いま で も , せめ て 扇風機 くら い 欲 し いと 


ころ 。 風 と お し が 悪く , 西 日 の 強い 4 幅 半 
の 貧乏 下宿 を , 少し で も よい 環境 に する ツ 


ー ル が 欲し い 。 クソ ツ 暑 い へ や が 涼し く な れ 
ば , ブロ グラ ミン グ が 効率 的 に 進む ん だ け 
Eus 

ST, 話 は コロ ッ と 変わ り ま す が , クー 
ラー や 扇風機 で は な いけ れ ど , マイ コン ユー 
ザ に 快適 な 使用 環境 を 提供 し て くれ る も の 
に OS (Operating System) と いう も の が 


あり ます 。OS に よっ て , プロ グラ ミン グ 環 


境 は バツ グン に よく な る の で あり ます よ 。 
あな ただ, 知っ て ます か 。 

は は は っ , いき な り 強 引 な 導入 を し て し 
まい まし た 。 今月 は , この 「OS」 を 特集 し 
まし た 。 最後 まで ご ゆる り と お 楽し みく 
だ さい 。 


39: 


OS と は , 簡単 に に っ て し まう と , 周辺 装 
i& (74 A2, プリ ンタ な ど ) を 効率 的 に 
利用 で きる よう に 全体 を 管理 する ソフ トウ 
ェ エグ て あり 。 コン ビ ピュータ を 使い や すく 〈《 す 
る 道具 で す 。OS に より , な ぜ 使 いや すく な 
る の か , これ か ら 説 明 い だ し ます 。 ハイ 。 


真実 


OS ここ DOS は 
※ う 違う の 


$C, 話 を 進め る 前 に , OS と DOS の 違 
い に 触 れ て なおき まし ょ 2 う 。 

OS は Operating System, DOS は Disk 
Operating System*' € t, DOS は , 対象 を 
ディ スク に 限っ つて いる と いっ て も よい で し 
ょ う 。OS の 場合 , オペ レー ショ ン (操作 ) 
の 対象 は , シス テム を 構成 する すべ て の 装 
AT, シス テム 全体 の 効率 的 運用 が 目的 で 
す 。 DOS の 場合 ,、 ディス ク と オペ レー タ の 
間 の み を 重点 的 に みて いま す 。 こ の よう に 
OS t DOS は , シス テム の 規模 と か , 管理 
する 対象 ・ 目 的 が 違い , DOS は OS に ふく 
まれ て し まう も の と いっ て よい で し ょ う 。 
パソ コン で は ,OS と は ほとん どの 場合 , DOS 
を る し て いま す 。 


94 19849 — 


Oh/FM 


ご な を まつ と 
EN 


プロ グラ ム を 組み 合わ 
せ て 使用 で きる 


(9 て は! デム ルド ョ ン パ イラ テ 」 と 
いろ いろ な ソフ トウ ェ ア を 組み 合 
わせ て 使え ます 。 これが な ぜ 便 利 か 説明 し 
FLJ) a 

プロ グラ ム を 実行 する と きのこ と を 考え 
て みて (て だ る さい 。 実行 に は , 次 の 2 つの ス 
テッ プ が 必要 で す 。 
① プ ログ ラム を 打ち 込む 。 
② プ ログ ラム を 実行 する 。 

この よう に 2 段階 で 終わ る の は , 実行 が 
イン タプ リタ に よっ て 行わ れる 場合 で す 。 
ュ ン パイ ラ を 使う 場合 は , ② 以 降 が , 
② ユ ン パ イル する *?。 
③ リ ンク する *3。 
④ 実 行 (ロー ド を 含む ) する 。 

に が か ます この よう に に, プロ ダラ ム を 赴 
ら せ ぜ せる と ゆう の は 。 い くつ か の ステ ッ プ に 
分 ける お 放 き ます 。 パソ コン で は 。 も 
っ と も ポ ピ ュ ラ な BASIC と いう 言語 の 場 
合 , この よう な ステ ッ プ グ 分 けが 上 厳密 に で き 
ませ ん 。 BASIC は , イン タプ リタ 自身 が ① 
の ス え ステップ を 信 ん で いる の で ま 。 REl, 
① の ステ ッ プ は プロ グラ ム を 打ち 込む だ け , 
つま り パ ツ ミ ン : (の ディ スク ) . に 文字 を 書 
き 込 むだ け の 作業 で , これ を 行う プロ グラ 
ム を 「 エ ディ タダ タ 」 な ん ぞ と 申し ます 。 BASIC 
で は 。 エディ イタ が ブログ ラム を 実行 する プ 
ログ ラム (書か れ た プロ グラ ム を 実行 する 
プ ブログ ラム 。 すなわち イン タプ リタ) tv 
っ し ょ に な っ て いる わけ で す 。 

さて , いろ いろ な 言語 の 持つ 特長 を 生か 
LT, それ ぞ れ の 言語 で 書か の れ だ プロ グラ 
ム を 組み 合わ せ て 使い た いと し ます 。 各 言 
語 ご と に エディ タダ タ が 存在 し た ら , 言語 ご と 
に プロ グラ ム の 打ち 込み 方 が 違っ て し まい 


いつ た 。 


ます 。 実際 に は , 何 種 類 ぁ の エディ タ の 使 
い 方 を 習得 する の は 至難 の 技 で し て , うる を 


だ と 思う な ら 6, Mince, WS, ex, ED, vi, | 


EMACS と いっ た エディ タ を すべ て 使っ て 
を お よい で ビビ ま が 

この よう な 不都合 を 避け る た め に , KA 
ナッ グ ご に, 78S hNUHmHio7 
ほう が 便利 な の で す 。 た と えば , 別 の 言語 
を 使い た いと き は ,⑫② の プロ グラ ム (コン 


2342) だ け を 取り 換え れ ば よい わけ で す 。| 
この よう に 各 ス テッ ヴ グ き と に 押 補 し ん プ 


ログ ラム が 存在 する と すれ ば ,「 プ ログ ラム 
を 組み 合わ せ て 使え る ろ る 」 こ と が 必要 な わけ 


POL 


まだ , この 機能 は 同一 の 言語 に 対し て も 
有効 で す 。C と いう 言語 が あり ます 。 こ の 言 
語 は ど 多 く の メ ー カ か ら コ ン パ イラ が 発売 
され て いる も の は あり ませ ん 。 い まま で A 


| 社 の C じ コン パイ ラ を 使っ て いた だ の だ が B 社 


か ら 新 し く 出 た C じ コン パイ ラ の 方 が 実行 が 
速い と いっ た だ 場合, コン パイ ラ を 取り 換 
えて し まえ ば 人 K て . す 。 こ こ て も 上 吉 の 様 
能 が 威力 を 発揮 し ます 。 


言語 に よら すず 基 本 操作 
が 共通 化 さ れる 


DOS を 使用 し た 場合 , 言語 の 種類 に か か 
わら ず デ ィ ス ク の 基本 操作 は 同じ で す 。 基 
本 操作 ほ と は , ロー ド , ディ スク に 入っ て い 
る ファ イル 名 を 見 る (BASIC で は FILES) , 
ファ イル の 内 容 を 表示 , 印刷 す る , 空き 領域 
の 量 を 見 る な ど で す 。 さ る さらに 進化 し た DOS 
で は , ディ レク トリ の サポ ー ト , マル チタ 
スク , マル チュ ユー ザ 関 係 の サポ ー ト な ども 
基本 操作 に 入り ます 。DOS を 使う こと に よ 
り , これ ら の 操作 が 共通 の も の と な り ま す 。 


機種 が 違っ て も 操作 
は 同じ 
パソ コン が 違っ て も , そこ で 動か す DOS 
が 共通 な ら ば , 操作 も 共通 で す 。FM, PC, 
MZ を 問わ ず , 使用 する DOS が 同じ な ら , 


| ユー ザ は 同様 に 扱え を る わけ で す 。 


| 


し か し 残念 な が ら 6, これ は 操作 ・ 使 用 法 
E 関 じ も 名 の みい えん を さま も な の で す 。 た だ たとえ 
ば CP/M-86 と い 5 DOS。 今 まで FM で 使っ 
て いた CP/M-86 の 5 イン チ デ ィ ス ク を PC 
の CP/M-86 で 読も うと し て も , ま っ だく 読 
め ま せ ん 。 これ は 機種 に より ディ スク の フ 
キー マタ トド:(E し く て は ディ スク 上 の き ケ ー 
ショ ン ) が 違う こと に 起因 する 問題 で す 。 
同じ DOS で も , それ が 動い て いる 機種 に よ 
っ て ディ スク の 構造 が 違っ て し まい , ディ 
スク に 互換 性 が な いも の が 多い よう で す 。 
し か し , CP/M の よう に MZ と FM, PC の 
ディ スク が 共通 に 使 を を も の も あり ます 。 

さて 操作 が 共通 たい うこ と は , 別 の メリ 
ッ ト を 生じ る せま す 。 機 種 に よら 6 ず 同 じ DOS 
が 動く の で すか ら ,DOS の も と で 作成 され 
た プロ グラ ム は 機種 を 選ば ず に 走る こと に 
な り ま す 。 つ まり, FMM, PC 用 と いっ た だ 
機種 別 の プロ グラ ム を 作ら 65 ず に すむ の で す 。 
だ だ ディ スク の フォ ー マ ッ ト が ,。 多く の 場 
合 違 っ て いま すか ら , それ ぞ れ の フォ ー マ 
ッ ト 用 に セー ブ し て お か な けれ ば な り ま せ 
ん 。 し か し プロ グラ ム を 作り 直す 必要 は な 
いわ け で すず 5 これ に により) グフ ト 償 ま チ の 
低 価格 化 も 可能 と な り ま す 。 

と いっ て も , ブロ グラ ム は 機種 別 の ハー 
ドウ ェ ア に 依存 し て は な ら な いと いう 制約 
が あり ます 。 だ た と えば グラ フィ ッ ク や サウ 
ンド な どの 機能 は DOS の 制御 下 に な い ** の 
C, 当然 の こと な が ら プ ログ ラム が 何 も か 
も 自分 で 処理 し な けれ ば な り ま せん 。 と い 
うこ と は , その プロ グラ ム は も の ハー ド 
ウェ ア (マッ ソコ ン ) で し か 動作 し な いと い 
5ctLumto 2v, 


DOS 独 自 の サー ビス 
機能 


DOS 自体 の 機能 が 向上 し て きま す と , ユ 
ー ザ に 対す る サー ビス が 増え ます 。 た と え 
ば マル チタ スク 。 こ の よう な 機能 を 持っ て 
くる と DOS と いう より も OS に 近い も の に 
な り ま す 。 これ は 複数 の 仕事 を 見 か け 上 同 
時 に 実行 で きる 機能 で し て , この よう な 


OIFM 


1984-9 35 


機能 は DOS (OS) 独特 の 機能 に な り , 個々 
の プロ グラ ム で は サポ ー ト で きま せん 。 fü 
数 の プロ グラ ム に 対し て の み 有 効 な 機能 だ 
か ら で す 。 だ と えば プリ ンタ に リス ト を 打 
ち 出 す 一 方 で . プロ グラ ム を 実行 する 。 T 
セン ブル する 一 方 で , プロ グラ ム の 修正 を 
行う 。 一 方 で ファ イル の ソー ト を し な が ら 
プロ グラ ム の 入力 を する 。 こ ん な こと が 可 
能 と な る と , ユー ザ は 実に よい 使い 心地 を 
得 ら れ ま す 。 


ソフ トウ エア バス こし て 
の 機能 


か つて DOS は ソフ トウ ェ ア バ ス と し て も 
て は や る れ て いま し だ 。 こ れ は OS 上 の ソフ 
トウ ェ ア が 機種 を 問わ ず 走 る こと を 意味 し 
て いる わけ で す 。 し か し 前 述 の と お り , F 
ィ ス ク の フォ ー マ ッ ト の 相違 な ど に より , 
必ず し も ソフ トウ ェ ア バ ス と は いえ な く な 
っ て お り , 最近 で は この よう に は 呼ば れ な 


く な っ て き て いま す 。 た だ MS-DOS Cu, 


ディ スク の フォ ー マ ッ ト が 共通 に な っ て い 
る 場合 が 多く , この 機能 を 保っ て いま す 。 


O 


さて,OS の 概念 が も う 少 し 整理 で きる よ 
5, OS の 歴史 を ふり 返っ て み ま し ょ 2 う 。 

現在 の コ ユ コンピ ュー タ , これ は ノイ マン 型 
ュ ン ピュ ー タ * と 呼ば れん ます 。 こ の 型 の コン 
ビ ピュー タ は , 1949 年 ケン ブリ ッ ジ 大 学 で 作 


ES 


られ た EDSAC が 最初 に な り ま す 。 日 本 で — 


は 1956 年 通産 省 電 気 試験 所 で , ETL マー ク 
四 が 最初 に 作ら れ ま し た 。 この頃 の コン ピ 


ュー タ に は 補助 記憶 装置 は な く ,OS が 管理 


する 対象 も あり ませ ん で し た 。1950 年 UNI- 
VAC I * で 初め て 磁気 テー プ ブ *?7 が 使用 る れ 
だ の で す 。 記憶 容量 の 増加 に と も な い , 日 


本 で は 1958 年 の HIPAC1*8 を 皮切り に , F | 
ー タ を 磁気 テー プ に と っ て お く な ん て こと 


| 【 ミ まき どれ に し よう か 


も 行わ れる よう に な り ま し た 。 こ の よう に 
周辺 装置 が 増え る に つれ オペ レー タ の 負担 
が 大き く な っ て きま し だ 。 ま ず プ ログ ラム 
の 実行 に 必要 な テー プ を 装置 に モ セット, プ 
ログ ラム を 紙テープ 読み 取り 装置 に か け , 
コン ピュ ー タ を 起動 , 実行 が 終了 すれ ば 紙 
テー プア 磁気 テー プ を し まい , 次 の ブロ グ 
ラム の だめ に 同じ 作業 を 操り 返す ( 図 1)。 
プリ ンタ を 使え ば , それ に と も な う 作 業 も 
必要 で す 。 

と ころ で この 頃 の コ ユ コン ピュ ー タ は 非常 に 
高価 な も の で し た 。 で すか ら 6 有効 に コン ピ 
ュー タ を 使用 し な いと 損 , な る で くむ だ な 
時 間 は 省き た い 。 と な れ ば プロ グラ ム の 実 
行 が 終わ っ て か ら 湊 を 始め る まで の 時 間 は 
短けれ ば 短い ほど いい わけ で す 。 と いう こ 
と か ら 人 間 (オペ レー タ ) の 介入 を 減ら し, 
コン ピュ ー タ が 連続 的 に 処理 で きる よう に 
する プロ グラ ム が 作ら れ ま し た 。 こ れ が OS 
の 最初 で す 。 こ れ は IBM704 の FORTRAN 
モニ タ シ ス テム *9 と し て 1955 年 に 発表 る れ ま 
し た 。 こ れ で 1 つの プロ グラ ム か ら 次 の プ 
ログ ラム 実行 の 時 間 は 大 幅 に 短縮 きれ な た の 
で す 。 し か し まだ むだ が あり ます 。I/O が 時 
間 を 費やし て いる 間 , CPU は 止ま っ て し まう 
の で す 。 た と えば 磁気 テー プ に デー タ を 記 
録 し て いる と き な ど , デー タ を 記録 し 終わ 
る まで コン ピュ ー タ は 何 も せ ず 待 ち 続 け ま 
す 。 一 般 に 1/O の 動作 は コン ピュ ー タ に 比 
べ で 非常 に 遅い も の で すか ら , この 時 間 は 無 
視 で どき ない ほど 大 きい の で す 。 この 様子 が 
図 2 (A) に 示 る され て いま す 。 を そこで, 図 2 


(B) の よう に すれ ば CPU の 空き 時 間 は な 


く 《 く なり ます 。 この 図 か 
ら わ か る と お り , プロ 
グラ ム 1 で 1/O 待ち に 
な り CPU が ヒマ に な る 
と プロ グラ ム 2 が 動き 
ます 。 ジ ログ ラム 2 が 
I/O 待ち に な れ ば ブロ 
A. ラム 9 へ と いう 
HAT, 1/O 処理 の 待 
ち 時 間 を 利用 し て , 複数 


プ 人 グラム 2 


(A) 1 つの GPU で て 1 2070754 


Q? 


の プロ グラ ム を 実行 する わけ で す 。 これ が 
多重 プロ グラ ミン グ と 呼ば れる テク ニッ ク 
T1960 年 に 発表 きれ だ た UNIVAC III で 初め 
て 実用 化 さ きれ まし だ た 。 ここ で 述べ た 方 法 は 
バッ チ 方 式 と いわ れ ま す 。 こ の 他 の 多重 プ 
ログ ラミ ング テク ニッ ク に 実 時 間 方 式 
(real time) や タイ ムシ ェアリング 方 式 
(time sharing) が あり ます 。 

この よう に 大 型 コ ンピュータ の OS は と て 
つも な く (高価 な コン ピュ ー タ を 有効 に 活用 
する た め に 生ま れ 発達 し て きた の で す 。 


大 型 コ ンピュータ こと 
人 バ ソ コン の らら 


歴史 の と ころ て 説明 し た と お り 大 型 コ ン 
ビュ ー タ の OS は コン ピュ ー タ の 「 有効 活 用 」 
の た め に 生ま れ , 現在 も それ が 第 一 の 存在 
意義 に な っ て いま す 。「 資 源 」(resource) と 
いう こと ば が あり ます 。 コ ンピュータ 用 語 
と し て は 「 間 題 を 処理 する の に 必要 な も の 」 
と し て 使わ れ て いま す 。 これ は まあ , えら 
《 す ざい 概念 で し て , CPU, メモ リ ,。 ディ 
RŽ, プリ ンタ 。 ディ スプ レイ 。 キー ボー 
ドブ ログ ラム 。 データ 。 そ し て プロ グラ 
マ や オペ レー タ さ えも 同等 に 資源 と し て 取 
り 扱 っ て し まう の で す 。 現 在 の 大 型 コ ン ピ ビ 
ュー タ の OS は , これ 6 の 資源 すべ て 有効 


時 間 

プ ブログ ラム の 実行 が 終了 する と , 後 し まつ を 

人 間 が する 。 さらに 準備 も 人 間 が 行う 。 コンピ 
ュー タ が 稼動 する の は , 実行 時 だ け 。 


時 間 


(B) 1 つの CPU で た くさ ん の プロ グラ ム 


36 1984-9 


EE 棟 う よう に で きま て で いま すず す 。。 た か よ え ば w 
ログ ラマ , この 資源 を 有効 に 使う た め に は , 
使い や すい 言語 を 提供 し , 扱い や すい エ デ 
ィ タ を , そし て 効率 よく デバ ッ グ を 進め 6 
れる よう な 道具 を 与 を な けれ ば いけ ませ ん 。 
この 資源 を 有効 に 使う こと に よっ て ブロ グ 
ラム と いう 資源 が 速く 完成 する で し ょ うし , 
プロ グラ ム 資 源 の コス ト が 低下 する の で す 。 
Ot, フツ コン の と と た 欠 考 た で みあ み ましょ 
う 。 パ ソコン は 低 価格 で , 使 用 コス ト も 非常 
に 安価 で す 。「 資 源 」 を 有効 に 利用 する こと 
や コス ト は , 大 型 機 の よう な 問題 に は な り 5 
ませ ん 。 と いっ て も 人 間 が 使う 道具 と し て 
考え れ ば , それ が 趣味 で 使わ れる と し て も 
使い や すい ほう が いい の に 決ま っ て いま す 。 
そこ で パソ コン の OS は ,「 フ パソ ユ コン を 人 間 
(ユー ザ ) に と っ て 使い や すい も の に する 」 
こと を 目的 と し て いま す *19。 

すなわち もち, 目的 に な いて 大 型 機 と フ パ ソ コ 
ン の OS は まっ た だ (異な り ま す 。 し か し 「 ユ 
ー ザ に と っ て 使い や すい 環境 を 作る 」 と い 
う の は 「 人 的 資源 を 有効 に 活用 する 」 と 同 
じ 意 味 で ある と いう こと が で き , 現在 , パパ 
ツッコ ユン の OS は 大 型 機 ( ほ いう より も むし ろ 
テコ ツン ト た の 0S9 に 近づい て いる の で す 。 


だ れ の た め の 使 いや 
すさ か 


スバ パリ 、「 ジ ログ ラマ の た だ ため 」 で す 。05S 上 
で 動く ツ ソフトウェア を 使い や すく する た だ め , 
と いう より も 0S 上 で プロ グラ ム を 組み や す 
くす る た め の 便 利き な の で す 。 ど ん な 言語 
を 使う に も エディ タ は 同一 の も の で すみ ま 
す 。 ディスク に 対す る 基本 的 な 操作 は , E 
ん な プロ グラ テラ ム で ぞ で 作ら 6 られ た ラテ アイ ル に し みろ 
共通 で す 。 ディスク や キー ボー ド に 対す る 
入出 力 は 。 アモ ンプ ブラ で プロ グラ ム を 作る 
と き に は 後述 する 「 ス ー パ バイ ザ ュ ユー ル 
(SVC) 」 を 使え ば 一 発 で すみ ます 。FOR- 
TRAN で 作っ た デー タフ ァイル を C で 読む 
よう な こと も で きま す 。 さ 6 に 進ん だ OS で 
は サダ イオ ルレ ルク ショ ンコ ライル タ *9 ディ ォ 
レク トリ の 階層 化 な ども あり ます 。 これ な 


ど は 使い 方 きえ 覚え れ ば プロ グラ マ 以 外 の 
人 で も 便利 な ん で し ょ う が , 使い 方 を 覚え 
る の が だ たいへん で し ょ 2 う 。 

すなわち ,OS の 特長 を 最大 限 に 享受 で き 
る の は , プロ グラ ム を 組む 人 自身 な の で す 。 


SVAL 


FM シリ ー ズ で ディ スク を つけ て いる 状態 
で は ディ スク BASIC を 走ら せる の が 普通 で 
す 。 こ の と き の フ リー エリ ア は 26K バ イト は ほ 
EC, 通常 は これ で 充分 だ と いえ ます 。 し 
か し 他 の 言語 を 走ら せる と き ,。 26K バ イト 
の 中 で すべ て を 行う の は 不可 能 で す 。BASIC 
の 翻訳 部 分 な ど , その と き に は 不 必要 で す 。 
を そこで ディ スク と の 入出 力 部 分 ど だ け を メモ 
リ 上 に も っ て いれ ば 充分 で す 。 プ ログ ラム 
の ディ スク へ の 出し 入れ は 確か に これ で 充 
分 な ん で す が ,。 も う 少 し な まけ を つけ て プ 
リン タ や キー ボー ド ・ デ ィ ス プレ イ を 使う 
の に 必要 最低 限 の も の を 持た せま す 。 ま た , 
ディ スク の 状態 を 監視 し , 基本 的 な 命令 も 
持た せれ ば よい で し ょ う 。 で も これ ら 6 を 一 
気 に メ モリ に 入れ る と 残る メモ リ が 少な 〈 
な り 非 効率 で す 。 常 時 メモ リ に 持っ て いる 
必要 の な いも の は ディ スク に 入れ て お きま 
す 。 こ れ ら メモ リ に 入っ て いる 部 分 。 そし 
て ディ スク に 入っ て いる 部 分 の 総称 が 「DOS」 
で す 。 こ の よう な DOS と し て 有名 な の が CP/ 
M, FLEX, UCSD-p System な ど で す 。 Z 
れ を も う 少 し 拡張 し て ディ スク に 入っ て い 
る コマ ンド が 豊富 に な る と MS-DOS。 こ れ 
に は 階層 ディ レク トリ 図 3 階層 ディ レク トリ 
が つい て いま す 。 きら 6 
に メモ リ 管 理 を し て マ 
ノレ チタ スク 。 マル チュー 
ー ザ な ん て の が つく と , 
さら に 使い 勝手 が よく 
な り ま す 。OS-9, MP/ 
M, コ ンカ レン ト CP/M 


-86 な ど が これ に , さら 6 に 開発 ツー ル が 加 
わり (これ が 重要 で す ), コ ユ コンソ ツー ルコ マン 
ド を 言語 に 近づく まで 発達 きせ れ ば UNIX 
に だ なり ます 。 


- cgo e 


前 述 の と お り DOS は どん どん 機能 が 強化 
され て OS と いう 名 称 に ふる わし いも の に C 進 
化し て いき ます 。 そこ で 進化 の ポイ ント に 
うい て 上 や mw で こよ に し まし ょ う 。 

階層 ディ レク トリ 

ディ レク トリ と は ファ イル を 表す 辞書 の 
こと 。 デ ィ ス ク に どん な ファ イル が 存在 す 
る と か その ファ イル が と どこ に ある と か 。 こ 
うい っ た 情報 を 持っ て いま す 。BASIC で は 

“FILES” T? 27, CP/M, MS-DOS で は 
"dir T, FLEX で は “CAT "あるいは “DSP“ 
で 見 る こと が で きま す 。BASIC の FILES 命 
令 で は すべ て の ファ イル 名 が 出 て きま す が , 
ファ イル が 増え て くる と 多 す ぎ て 何 が 何 や 
ら わ か ら な く な っ て し まい ます 。 容量 の 小 
さい 補助 記憶 装置 を 使っ て いれ ば 問題 は な 
い の で す が , 8 イン チ の 両面 倍 密 ディ スク , 
ハー ド デ ィ スク な ど 1 つの 装置 で 1 M バイ 
ト を 超え る よう に な る と , この 問題 が 生じ 
taij.UbPUL2ry4wvtZXw—9 
し て お け ば 混乱 し た り は し ませ ん 。 同様 な 
ファ イル を グル ー ビ ピン グ し , レベ ル ブ け を 
し た 構造 が 階層 ディ レク トリ で す 。 階層 デ 
ィ レ クト リ の 例 を 図 3 に 示し て お きま す 。 


まだ た だ, ディ レク トリ さえ 異な れ ば , 同一 の 
ファ イル ネー ム を 使っ て も だ いじ ょ うぶ で 
す 。 何 人 か で 1 つの 記憶 装置 を 共有 する よ 
う な 場合 , 必要 不可 欠 な 機能 し いえ る で し 


マル チタ スク 
マル チコ ユー ザ 


OS の 歴史 の と ころ で 書い た 多重 プロ グラ 
ミン グ で の 用 語 で す 。 タ スク と は 独立 し だ 
プロ グラ ム の こと で , 同時 に 何 本 も の プロ 
グラ ム が 走る と いう こと 。 マルチ ュ ユーザ は 
同時 に (ここ で いっ て いる の は 「 見 か け 上 」 
の 同時 性 ) 複数 の ユー ザ が コン ピュ ー タ を 


使え る こと 。 マルチ タ スク の 場合 , 前 の 説 」 


明 の よう に CPU が 空い て いる 時 間 だ け 別 の 


仕事 を すれ ば いい の で す が , マル チュ ユー ザ | 


の 場合 そう は いき ませ ん 。 だ と えば A と い 
う ユ ー ザ が 1I/O を いっ きい 必要 と せ ず 延々 


と CPU を 使い 続け る と , 別 の ユー ザ B は 何 」 


も で き な く な っ て し まい ます 。 を その た だ た め に 
一 定時 間 ご と に CPU が 処理 する 対象 , つ ま 
り ユ ー ザ を 切り 換え て や ら な けれ ば いけ ま 
せん 。 マ ル チ ュ ユー ザ を 実現 する た め に は シ 


ステ ム が タイ マ 割 り 込 み 機構 を 持つ 必要 が 


ある の で す 。 
マル チタ スク より 低 次 元 に スプ ー ル と い 


5 機能 が あり ます 。 これ は Simultaneous | 
Peripheral Operation On-Line の 略 で 周辺 | 


機器 同時 動作 な ど と 申し ます 。 これ は 特定 
の 周辺 機器 に つい て の 機能 な の で , マル チ 
タス ク 機 能 の 一 部 分 と みな せま す 。FLEX は 
シン グル タス ク の OS で す が , プリ ンタ に 対 
する スプ ー ル 機能 は 持っ て いま す 。 


ズー ババ イザ コー ル (⑤VO 


DOS の うち メモ リ に 常駐 する プロ グラ ム 

で プロ グラ ム 和 管理 (前 述 の マル チ プ ログ ラ 
~ シグ に 遇 て きだ た だ パッチ と か タイ ムシ ェ ア 
リン グ な どの 制御 ) や 入出 力 を 行う 部 分 を 
スー パパ バイ ザ (supervisor) と 呼び ます 。CP/ 
M な どの DOS で は たいへん 小さ な も の で す 


OWM 


1984-9 37 


| BEEJ ENTUK H 


D, マル チタ スク , マル チュ ユー ザ の 機能 
提供 する DOS で は か な り 大 きく な っ て いま 
す 。 


的 な 入出 力 ル ー チ ン を 提供 し ます 。 こ の ん ル 
ー チ ン を 呼び 出し 使用 する こと を SVC 
(Super Visor Call) と 呼び . まだ た の 名 を 
ファ ンク ショ ンコ ユ コール,。 は た また シス テム 
ミール な と と 称し ます 。 こ れ に は コン ツー 
ル (ディ スプ レイ ) に 対す る 文字 出力 や , 


ュ ン ソー ル (キー ボー ド ) か ら の 文字 入力 , 


プリ ンタ へ の 出力 , ディス ク へ の 入出 力 , 
きら に 高級 な DOS に な る と 階層 ディ レク ト 
リ や , タス ク の 登録 な ど マ ル チ プ ログ ラミ 
ング に 対す る 機能 が 含ま れ ま す 。 こ れ ら 6 基 
本 的 な 入出 力 を SVC で 行う た め に 機種 , す 


この スー パ バ イザ が ユー ザ に 対し て 基本 | 


な わ ち ハー ドウ ェ ア の 差 が ソフ トウ ェ ア 側 


か ら 見 れ ば な く な り , よっ て 機種 が 違っ て 
も DOS が 同じ で あれ ば 同じ ソフ トウ ェ ア が 
使 を る の で す 。 ま た だ, この こと か ら 6, スー 
パパ バイ ザ は 機種 に よ り 変 更 する 必要 が ある 
と いう こと も お わか り で し ょ 2 う 。 


プリ ヴィ リッ ジ ド モー ド 
(特権 モー ド ) 


一 般 に シス テム が 大 きく な れ ば な る は ほど , 
信頼 性 を 上 げ る 必要 が あり ます 。 と いう の 
も シス テム が 大 きく な り 複 数 の ユー ザ が 同 
ー の シス テム を 使う よう に な る と , だ れ か 
の プロ グラ ム が 他人 の デー タ を 盗ん だ り 誤 
っ て 破壊 し た りす る 可能 性 が 出 て くる か ら 
で す 。 を その だ ため, メモ リ の 保護 機能 が 必要 
と な り ま す が , これ を ユー ザ が 勝手 に いじ 
る と 何 に も な り ま せん 。 そこ で メモ リ の 保 
護 機能 は 特権 を 持っ た も の (OS) し か 持て 
な いよ うに し ます 。 こ の よう な 特権 を 持つ 
の が 。 前 述 の スー パ バ イザ で す 。 80286, 
68000, Z8000 は この モー ド を 持っ て いま す 
が , 8086 に は あり ませ ん 。 


ge 


OS を 知る こと は マニ ア に と っ て は 非常 に 


興味 深 て お も し ろ い こと で す が , 一 般 の 「 使 
う 人 」 で ある ユー ザ に と っ て は どう な の で 
Lx う 。 統合 化 ツ フト ウェ ア と いう 方 式 が 
あり , これ が あれ ば 特に 専門 知識 が な く て 
も (多く の 場合 ) 必要 と る れる ソフ ト を 使 
うこ と が で きま す 。 が , OS も この 方 式 に 近 
づき つつ あり , MS-Windows な ど , その 例 
と の いえ た ましょ う 。 で れれ は これ EE も し もし て. ププ 
グラ マ に と っ て みれ ば UNIX の よう な 居 心 
地 の よ い ソ フト ウェ ア 環 境 が パソ コン で 実 
現 き れる こと が 望ま し いで し ょ う 。 今後 も 
OS は , さら 6 に 進化 し て いく こと と 思わ れ ま 
To 

参考 文献 

1 : 小田 徹 「 コ ンピュータ 史 」( オ ー ム 社 ) 
2 : 高橋 ・ 土 居 ・ 益 田 「 オ ペレ ー テ ィング *・ 
シス テム の 機能 と 構成 」 (岩波 書店 ) 

3 : 江村 潤 朗 「 オ ペレ ー テ ィング シス テム 
入門 」( オ ー ム 社 ) 

4 : Mark Dahmke 3$ 玄 光 男 ・ 中 原 紀 共 
訳 「 マ イコ ユン OS」 (共立 出版 ) 

5・ ア ン ツ ニー チャ ンダ ー 著 坂井 利之 

訳 「 コ ンピュータ 用 語 辞典 」 (講談 社 ) 

6 : 渡辺 茂 監修 「 マ イコ ユン 小 事典 」( 講 談 社 ) 


用 語 説明 

*1)TOS(Tape Operating System) と いう の も 
ある 。 

*2) 言語 を 解釈 し , 機械 語 に 翻訳 し . その 結果 
を ディ スク に セー プ ブ す る 。 

*3 翻訳 され た 機械 語 プ ログ ラム は , £005 
合 ,。 その まま 実行 で き ない 。 リ ング する こと 
に より 実行 可能 な 形式 し な る 。 リ ンク は , 翻訳 
ずみ の プロ グラ ム を 連結 する 。 

*4) スー パ バ イザ が サポ ー ト し て いな いと いう 
こと 。 ス ー パ バイ ザ に つい て は 後述 。 

※* ま 5) メ モリ に 記憶 きる きれ た プロ グラ ム を CPU に 読 
み 出 し , XX, 実行 する 。 

※* ま 6) レ ミン トン ラン ド 社 。 

*7) 磁 気 デ ィ ス ク は か な り 遅 れ て 1958 年 IBM 
305 RAMAC で 最初 に 使わ れ た だ 。 

*8) 基本 素子 は パラ メト ロン 。 

*9) 開発 は ぜ ネ ラル モー ター ス 社 , ノー ス ア メ 
リカ ン エ イヴ ィ エ ーション 人 社 。 

*10) ミ ニュ コン の OS も, これ を 目的 と し て いる 。 
*11) 対 象 と する I/O を 自由 に 変更 で きる 機能 。 
*12) パイ プ と いう 機能 に より , プ ログ ラム の 出 
カカ を 別 の ゲロ グラ ム を と お し て 得 ら 5 れる 。 これ 
を フィ イル タ と いう 。 


こん な に ある 007 
FIMI で 使え 2 ひ S 


oA 
ゆい 


AY. ZX 


昭和 56 年 初夏 。 FM シリ ー ズ 第 1 号 で あ 
る 「 FM-8」 が 発表 きれ まし た (当時 は マ 
イク ロ ・ エ イト と 呼ん で いた )。 漢字 ROM 
を 使っ て の 日 本 語 表示 や 640X200 ド ッ ト の 
フル カラ ー グ ラフ ィ ッ ク だ な ど , 今 で は 当たり 
朋 に な っ て し まい まし た が 発売 当時 は 画 期 
的 な も の で し た 。 も う 1 つ FM-8 の 特徴 と 
し て (話題 の パプ ルカ セッ ト を 補助 記憶 半 
直 と し て 採用 し た こと も そう で す が ), 3 種 
の 流通 DOS。 つま り UCSD p- System, 
FLEX, そし て CP/M を 利用 で きる こと 
が あげ られ ます 。57 年 8 月 に は 星光 電子 か 
b OS-9 が 発表 され, 富士通 か ら は 8088 カ 
ー ド が CP/M-86 付き で 提供 され る よう に 
な り ,FM-8 上 で 走る 0S は 全部 で 5 種類 に な 
まし だ 。 この こと ば パソ ツッコ ロッ 用 と し て 便 
われ る 汎用 0S の すべ で て が 使え る 4, と いう 
こと と ほとん ど 同 じ 意 味 で す 。FM-7 と FM-11 が 
発表 きれ た の は 57 年 の 墓 れ ご ろ で す が , や は 
b 各種 の OS が 走る よう に な っ て いま す 。 

と いう わけ で FM シリ ー ズ で 使え る OS 
を 紹介 する と いう こと は , パ ソコ ユン 用 の OS 
を 紹介 する こと に な っ て し まい ます 。 と こ 
ろ が 成り 立ち ゃ 設計 思想 , CPU も 異な る 0S 
を 同列 に 並べ る の は 在 難 の 技 で す 。 で も 頑 


表 1 


7.8.11EX・AD・ST 
77 

11EX・AD・ST 
11AD2 

77 
7.8.11EX・AD・ST 
7.8.11EX・AD・ST 
7 
8.11EX・AD・ST 
11BS 
11EX・AD・ST 
11BS 
7.8.11EX・AD・ST 
4.1 | 11EX・AD・ST 


ライ ブ を 増設 し た 場合 は , 7 用 が 使え る 。 
*1 7 用 の 8D 版 は な い 。 
まう 11EX は 標準 添付 。 


張っ て 書く こと に し ます 。 読み 終わ っ て 少 
し で も 面白 か っ た だ とか, た だ ため に な っ た と か 思 
っ た 人 は , ぜひ 編集 部 気付 で て はげ ま し の 手 
紙 を 出し まし ょ う 。 女 性 (た だ し 20 歳 以下 ) 
に は ちゃ ん と 返事 を 書き ます か ら 。 

まず は 表 1 を 見 て ,。 FM シリ ー ズ で 走る 
OS を 把握 し て くだ きい 。 


eO e 
Mos 


»OS-9 


モト ロー ラ 社 が 6800 を 発表 し た の が 昭和 
49 年 の こと で す 。 を その後 も 改良 が 進み ,「 究 
極 の 8 ビッ ト 」 と 呼ば れる 6809 が 発表 され 
だ の が 昭和 54 年 で す 。6809 CPU の 開発 
並行 し て , 6809 の 能力 を フル に 引き 出す BA 
S1C 言 語 の 開発 が , 昭和 53 年 か ら 55 年 に か 
け て 行わ れ ま し だ た 。 マ イク ロウ ェ ア 社 と の 
共同 開発 に よる 「BASIC09」 が それ で す 。 


| m m | 7 | wes | 価格 (5 


48.000 

R E 

58,000 

標準 添付 

未定 (400 ラ イン セッ ト 要 ) 
48.000 

Z 80 カ ー ド に 添付 

Z 80 カ ー ド に 添付 
8088 カ ー ド に 添付 *? 
標準 添付 

43.000 

43.000 

98.000 

146,000 


x) 5D は 5 イン チ 両 面 倍 密 。8D は 8 イン チ 両 面 倍 密 。5HD は 5 イン チ 両 面 高密 度 倍 ト ラッ ク .3.5D は 3.5 イ ンチ 両面 倍 密 。7 は 
NEW 7 を 含む 。 ま た . 適応 機種 は 標準 的 な ドラ イブ シス テム を 基準 と し て いる 


し た が っ て 。 た と えば //( に 5 インチ ド 


«0 BASIC を サポ ー ト する 08 *, と 
いう こと で マイ クロ ウェ ア 社 に よっ て 開発 
る され だ た の が 「OS-9」 で す 。 

日 本 で は , 昭和 57 年 に 8 用 の OS-9 V1.1 
が 発売 され , 翌年 に は V1.2 に バー ジョ ン ア 
ッ プ され , 11 用 の レベ ル 2 も 発売 され まし た 。59 
年 に は , 日 本 語 機能 を 強化 し た V1.2J も 発 
表 る さる れ まし た 。 

OS-9 の 特徴 は , 何 じ し いっ て も 「UNIX 
ライ ク な マル チ ユ ー ザ ・ マ ル チ タ スク の 0O 
S て ある 」 と いう こと て し よう 。 9515 
メモ リモ ジュ ー ル の 概念 の 導入 に よる , Y 
フト ウェ ア 開 発 環境 の 向上 も あげ られ る で 
L4 35 


»CP/M 


昭和 48 年 ご ろ , 当時 イン テル 社 の コン サ 
ル タ ン ト を し て いた G. Kildall ( 現 デ ジタル ・ 
リサ ー チ 社 社長 ) が , その 原形 を 開発 し ま 
し た 。 その後 51 年 に な っ て , 自身 で デジ タ 
ル ・ リ サー チ 社 を 設立 し , CP/M V1.4 を 
発表 し まし た 。 当時 , マイ コン の CPU は 
80 系 が 支配 的 で ( 今 で も そう で す が … 残 念 
な が ら ),80 系 の た め の OS で ある CP/M も 
大 変 普及 し まし た 。54 年 に は V2.0 c, 翌 
55 年 に は 現在 の V2.2 に な り ま し た 。 FM 
シリ ー ズ の Z-80 カ ー ド で 走る の は この バー 
ジョ ン で す 。 さ きら に 58 年 に は 。 8 ビッ ト 用 
CP/M の 最終 ボー ジョ ン で ある (と デジ タ 
ル ・ リ サー チ 社 は 言っ て いま す )「CP/M プラ 
ス (CP/M V3.0)」 が 発表 きれ まし た 。 し 
か し お そら 〈 く CP/M プ ラス は , FM シリ ー 
ズ 上 で 走る こと は な いと 思い ます 。 

16 ビ ッ ト CPU の 8086/8088 用 に 開発 され 
だ も の が CP/M-86 で す 。 

CP/M の 特徴 は , 構造 の シン プル さき と, 
利用 で きる ソフ トウ ェ ア の 多 る で は な いで 
し さま うい 


OV 


1984-9 39 


»FELEX 


FLEX は テク ニカ ル ・ 
サル タン ツ (TSC) 社 が 開発 し た 68 系 の O 
S で す 。68 系 の CPU は 80 系 と 異な り , コ 
ー ド レベ ル で の コン パチ ビリ ティ は な い の 
T, 6800FLEX と 6809FLEX の 2 種類 が あ 
り ま す 。 実は 私 の 手元 に は , FLEX の 開発 
経緯 な ど を 書い た 資料 が まっ た だ たく な い の て で 
詳し いこ と は よく わか り ま せん (ご めん な 
Sv), FLEX の シス テム デザ イン が 
明らか に CP/M を 意識 し て 作ら れ て いる の 
T, 6800FLEX が 開発 きれ た の が 昭和 53 年 
ご ろ ,6809FLEX は 55 年 ご ろ に 開発 る され た と 


シス テム ズ 、 ぃ ・ ョ コン 


思わ れ ま す 。FM シ リー ズ で 走る 6809FLEX は , 


V3.xx (マイ ナー チェ ンジ が し ば し ば 行わ 
れ て いる の で , 購入 し た 時 期 に よっ て , X 
x は 異な る ) で す が , 今年 (59 年 ) に な っ て , 
FM-7/8 用 に 「 日 本 語 FLEX V4.01」 が 発表 
きれ きじ な た 。 

FLEX の 特徴 を 一 言 で 言え ば , 6809 上 で 
走る も P/M ラ イク な OS と いう と ころ で し 
k 239; 


»UCSD p-System 


p System は その 名 の と お り , カリ フォ 
ルニア 大 学 サ ン デ ィ エ ゴ 分 校 (UCSD) で 
開発 され まし だ た 。 も と も と Pascal 言語 を 
ミニ ュ コン 上 で 走ら ぜ せる た だ ため の も の で 。 その 
後 マ イコ ン 用 に 移植 る され まし た (VI.4 ) 。 
その 後 , ソフ テッ ク ・ マ イク ロ シ ス テム ズ 
社 が , ライ セン ス を 獲得 する の と は ほ ば 同時 
i, VI.0 が 発表 きれ まし た 。 Apple II 上 
て 走る Apple Pascal も 実は , 
VII.1 の こと で し た 。 昭和 55 年 に な っ て V 
VM.0 に な り 現 在 に 至っ て いま す 。 FM シリ 
ー ズ で 走っ て いる p-System は , V IV.1 で 
14. 

p System の 特徴 は , Pascal で 書か れ た , 
了 本 9 イン ディ ペン デン ト な OS と いう こ 
ELI. 


p-System 


| 【E を どれ に し よう か 


»MS-DOS 


大 型 計 算 機 の 世界 で は 巨人 と いわ れ て い 
る IBM が , パソ コン の 世界 に 殴り 込み を 
か け だ た とき に OS と し て 採用 し た の が MS 
-DOS で す 。 は じ め IBM}, すでに CP/M 
-86 な ど を 開発 し て いた デジ タル ・ リ サー 
チ 社 に 依頼 し た そう で す が , な ぜ か 断ら れ 
で しま いま もし だ た だ 。. を こ で マイ クセ ボド 攻 
に 開発 を 依頼 し まし た 。 マ イク ロ ソ フト 社 
は , ある ソフ ト 会 社 が 開発 し た 8086/ 8088 
用 の OS に 目 れ つけ, ライ セン ス を 買い 上 
げ ま し た 。 これが MS-DOS 誕生 の 経緯 で 
す 。 昭 和 56 年 に 出 た V1.25 は 。 ほとん と C 
P/M と 同じ で し た が , 58 年 に は , V2.0 を 
発表 し まし た 。 こ れ は UNIX の 味つけ が る 
れ て いて , か な り 使 い 勝 手 が 良 く な っ て い 
ます 。11 で 走る MS-DOS は 最新 バー ジョ 
ン の V2.11 て す 。 


各 OS が どの よう に メモ リ や 周辺 機器 を 
管理 し て いる か ,, 
それ ぞ れ の OS の 内 部 構造 に つい て 簡単 に 
調べ て お きま し ょ う 。 説明 の 都合 上 , まず 
CP/M-80 か ら …… o 


> CP/M-80 


CP/M の シス テム ディ スク を ドラ イブ 0 
に 入れ て 電源 スイ ッ チ を 入れ る と , ドラ イ 
ブ が アク セス され て 2-3 秒 で CP/M が 起動 
し ます 。 を の と き の メ イン シス テム の メモ 
リマ ッ プ は 図 1 の よう に な っ て いま す 。 上 
か ら 順 に 見 て いき まし ょ う 。0000 番 地 か ら 
00FF 番地 まで は 。 上 シス テム スク ラッ チエ 
リア 」 と 呼ば れ , CP/M シ ステ ム が 使う ワ 


と いう こと を 知る を だめ に 。 


oS いっ ぱい 


ー ク エリ ア で す 。 こ の エリ ア は ,。 どの 番地 
を 何 に 使う と いう こと が すべ て の CP/M に 
つい て 共通 に 決め られ て いて , CP/M シス 
テム の 汎用 性 を 支え る つの 理由 で も あり 
ます 。0100 番 地 か ら C3FF 番地 まで は ,「 ト 
ラン ジェ ント ブロ ググ ジム みる エ リア (TPA 

と 呼ば れ て いて , 要する に ブロ グラ ム 用 の 
フリ ー エ リア で す 。 C400 番 地 か ら CBFF 番 
地 ま で は 「 コ ユ コン ソー ルコ マン ドブ プロ セッ サ 
(CCP)」, CC00 番 地 か ら D9FF 番 地 ま で 
が 「 ベ ペー シッ ク デ イス クオ ペレ ー テ ィング 
シス テム (BDOS)」, DA00 番 地 以 降 が 「 べ 
ー シ ッ クイ ンプ ッ ト ・ ア ウト ブッ トシ ステ 
ム (BIOS)」 と 呼ば れ て いま す 。 

BIOS は , 15 個 の サブルーチン ヒ と 2 個 の 
ブー ト ベ クト ル を 持つ , CP/M シス テム の 
中 で 唯一 ハー ドウ ェ ア に 依存 する 部 分 で す 。 
BIOS に は , ディ スク の 1 セク タリ ー ド ング 
ライ ト や 。 コン ソー ル 入 出力 と いっ た も っ 
と も 基本 的 な サブ ルー チン が 含ま れ て いま 


4 ( 表 2 参照) 


BDOS は , 7 個 の サブ ルー チン を 持つ , 


ディ スク ドラ イブ の 管理 部 で , CP/M の も 
っ と も 重要 な 部 分 で す ( 表 3 参照 )。 
CCP は , ユー ザ が キー ボー ド か ら 打 ち 込 


40 19849 _ 


ん だ 文字 列 を 読み 取り , コマ ンド ファ イル 


を メモ リ に ロー ド す る こと を BDOS に 依頼 | 


LD, コマ ンド に 渡す パラ メー タダ や を セッ 
ト し た り し ます 。 


> CP/M-86 


CP/M-86 の 内 部 構造 は , 基本 的 に は 前 
述 の CP/M-80 と 同じ で す 。 BDOS, BIOS 
X2 CP/M BIOS 

コー ルド スタ ュー ボド 
ウォ ー ム スタ ー ト 


コン ソー ル READY チ ェ ッ ク 
コン ソー ル か ら の 読み 込み 


CONOUT 
LIST 
PUNCH 
READER 
HOME 
SELDSK 
SETTRK 
SETSEC 
SETDMA 
READ 
WRITE 
LISTST 


SECTRAN 


コン ソー ル 出 力 

プリ ンタ 出力 

パン チャ 出力 

リー ダ か ら の 入力 
Le RS 
ディ スク ドラ イブ 選択 
トラ ッ ク 指 定 

セク タ 指 定 

DMA アド レス 指定 
セク ンダ サマ 

1 セク タラ イ b 

リス ト 状 態 に 戻る 
セク タ 変 換 サ ブ プルー チン 


図 2 CP/M-85 メ モリ マッ プ 


割り 込み |0000:0000 
ベク トル 

シス テム 0000:0400 
通信 領域 


0050:0000 


0050:2500 


0050:74FF 


と も に 拡張 され て いま す ( 図 2 参照 )。 ま 
た , メモ リ 管 理 方 式 も 改善 され, 最大 8 個 
の プロ グラ ム を ロー ド す る こと が で きま す 
H, それ ら が 同時 に 実行 きれ る わけ で は あ 
り ま せん 。 


»MS-DOS 


メモ リマ ッ プ は 図 3 の と お り で す 。CP/M 
-866 と ほ ば 同じ 構造 で , COMMAND.COM 
t CCP», MSDOS.SYS t BDOS が , IO. 
SYS と BIOS が それ ぞ れ 対応 し , 機能 も 対 
応 し て いま す 。 た だ ただし, CP/M-86 に 比べ 
MS-DOS の 方 が , それ ぞ れ 高い 機能 を 持 
っ て いま す 。 と く 〈 に , V2.11 で は UNIX を 
意識 し た 機能 拡張 が 行わ れ , 階層 化 デ ィ レ 
クト リ や 。 パ イプ ライ ン な ども サポ ー ト し 
て いま す 。 
表 3CP/M BDOS 


SEARCH: 名 前 で ファ イル を 探す 
OPEN  : フ ァイル の オー プン 
CLOSE : フ ァイル の クロ ー ズ 
RENAME: ファ イル の 変更 

READ  : フ ァイル の リー ド 
WRITE : フ ァイル の ライ ト 
SELECT: ディ スク ドラ イブ の 選択 


図 3 MS-DOS メ モリ マッ プ 
0000:0000| 割り 込み 
ベク トル 


0000:0400 EM 


»FLEX 


メモ リマ ッ プ は 図 4 の と お り で す 。 他 の 
OS に 比べ る と 多少 ご でも ちゃ ご ちゃ し た 感じ 
が し ます が , 基本 的 に は DOS (ディ スク オ 
ペレ ー テ ィング シス テム ) と FMS( フ ァ イ 
ル マ ネ ジメント シス テム ) に 分 けら れ ま す 。 
DOS の 部 分 に は , 基 本 的 な サブ ルー チン が 
あり , FMS は 文字 どおり, 外部 記憶 装置 


上 の ファ イル を 管理 する 部 分 で す 。 


e 


今 ま で 簡単 に 説明 し た 4 種 の OS は と どれ 
も シン グル ユー ザ ・ シ ング ル タ ス ク の オペ _ 
レー ティ ング シス テム で す 。 これ ら の OS 
の 基本 的 な 機能 は , 外部 記憶 装置 (ディ ス 
ク な ど ) 上 に ある ファ イル を 名 前 で 管理 す 
5, と いう こと で す 。 フ ァイル の 概念 は ち 
ょ っ と 上 難し い の で す が 。 一 言 で 言え ば デー 
タ の 集 ま り で す 。 機械 語 の プロ グラ ム か も 
し れ な いし , BASIC の テキ スト か も し れれ 


4 FLEX メ モリ マッ プ 


スタ ッ ク バ ッ フ ァ 


UCA 


FMS 


デイスク 
ドラ イ バ 


な いし , 日 本 語 ワ ー プ ロ で 作成 し た 文書 の 
の な て し よう 。 こ の うち 。 メス モリ 上 
に ョ ロード し て 実行 する こと の で きる プロ グ ゲ 
ラム (普通 は 機械 語 ) を コマ ンド ファ イル 
と 呼び ます 。 

ST, ファ イル 名 の つけ 方 は を それぞれ の 
O0S に よっ て いく つか の 制約 が あり ます 。 
前 述 の 4 EO OS 共通 の 約束 と し て 拡張 子 


(エク ステ ンション ) が あり ます 。 こ れ は , 


田中 先生 , 山田 部 長 な どの 肩書 き の よ うな 
も の で , その ファ イル が どん な 種類 か を 表 
し て いま す 。 拡張 子 も ファ イル 名 の 1 部 で 


すか ら 自 由 に つけ て いい の で す が 。 AT 


ム て 決め られ て いる も の も 何 種類 か あっ て , 


コマ ンド ファ イル に は COM と か CMD と か 
だ つけ る こと に な っ て 


OI/FM 


| 1984-9 41 


に し よ つ か 


Vs いっ ぱい 


| 1) キー ボー ド か ら GREET と 打ち 込み 
リタ ー ン キー を 押す 。 
2) GREET と いう コマ ンド ファ イル を 
ディ スク が から 探し て , も し 存在 すれ ば 
| メモ リト 上 に ロー ド する 。 
| 3) ロー ド さ れ だ ブロ グラ ム に CPU の 
制御 を 移す 。 
これ て お し まい で す 。 CP/M で FLEX 
て も MS-DOS C$, 働き は これ だ け の こ 
と で す 。 


 >OS-9 


OS-9 は 今 ま で 述べ て きた シン グル タス 
ク の OS と は まっ た く 〈 く 設計 思想 が 異な り ま 


シン グル タス ク と マル チタ スク 


いま す 。 

で は , 上 に 述べ た 4 
種 の OS が どん な 働 
き を する の か 簡単 に 見 
な る も よう ss: デオ スネ 
ク 上 に GREET と いう 


OS 


マル チ 
コマ ンド ファ テオ ル が あ FAPI PAZ 
り 。 これ を 実行 る せる タス ク B 
し ます 。 


図 5 OS-9 L 1 メモ リマ ッ プ 


図 6 OS-9 L2 メ モリ マッ プ 


ディ スク リプ タ 


も . カ ー ネ ル と 呼ば れる 部 分 が 0S- 9 の 中 心 
的 な 部 分 で す が , ここ の 働き は , マル チタ 
スク で 並列 し て 走っ て いる プロ セス の 管理 
で す 。 図 7 に 書い て ある よう に シン グル タ 
スク の OS で は ,。 プ ログ ラム を メモ リ 上 に 
ロー ド し て 実行 し て し まえ ば いい だ け で す 
が 。 マル チタ スク の OS で は , タス ク の 切 
り 換 え を 間違い な 〈 く 行わ ね ば な り ま せん 。 
ディ スク 上 の ファ イル の 管理 な ど は , ファ 
イル マネ ー ジ ャ と いう 部 分 が 担当 し ます 。 


»UCSD p-System 


p-Systemlà, シン グル ユー ザ ・ シ ング 
ル タ ス ク の OS で すか ら , 基本 線 は 他 の シ 


ング ル タ ス ク 0S と 同じ で す 。 ただ, メニ 
ュ 形式 (実行 びき る コマ ンド が , メニ ュ 
形式 で 画面 に 表示 きれ, 一 文字 だ どけ キ ー 入 


カカ すれ ば よい ) に な っ て いる た だ め 。 多少 様 
子 は 異な り ま す 。 p= System は ,p コード 
と 呼ば れる 仮想 的 な 機械 語 で 書か れ て いま 
す 。 こ の 機械 語 を を そ と の まま FM シリ ー ズ の 
CPU て 実行 する こと は で き な い の で , 6809 
や 8086 の 機械 語 で 書か れ た だ た p コ ユー ドイ ンタ ンプ 
リタ が p コー ド を 解釈 し な が ら 実 行 し て い 
きま す 。SYSTEM. PASCAL が 0S の 本 体 
T SYSTEM.INTERP が p コ ー ド の イン 
タプ リタ で す 。 これら が 通常 メモ リ 上 に 常 
駐 し て いま すず す 。 


LN 


各 OS の パッ ケー ジ を 購入 する と , ディ 
スク が 数 枚 と た マニュア ル が 数 冊 は いっ て い 
ます 。 ディスク に は , OS 本体 と 多く の ユ 
ー チ ティ リ テ オ ォ オヨ マシ ド が 入っ て いま すず す 。 ご 
れ ら の コマ ンド は , OS の 一 部 と いう わけ 
で は あり ませ ん が 。 それ ら の コマ ンド (7 
ログ ラム ) が な けれ ば , せっ か く 〈《 の OS も 
使い に くく な っ た り , 事実 上 使 を な く な っ 


42 19849 


だ り し ます (だ た と えば , ディ スク を フォ ー 
マッ ト す る ユー ティ リティ が な いこ と を 想 
像 し て くだ さい 。 新品 の ディ スク を フォ ー 
マッ ト で き な け れ ば , 結局 その OS を 使う 
こと は 不可 能 で す )。 各 コ マン ド の 一 覧 を 表 
4 に 示し まし た 。 だ いた い ど の OS も 似 た 
よう な コマ ンド を 用 意 し て あり ます 。 を の 


中 で , いく つか を 比較 し て み ま し ょ う 。 
ゅ エディタ 
ある 調査 に よる と , コン ピュ ー タ を 使用 


し て いる 時 間 の 99 あ 以上 は , ワー ドブ プロセ 
ッ シ ン グ に 費やさ る れ て いる そう で す 。 bb 
みろ ん, 英文 ワー プロ や 日 本 語 ワ ー プ ロ と し 
て 使っ て いる と きも そう だ し , プロ グラ ム 
を 打ち 込む と きも そう で す 。 つ まり , r7 
ィ タ の 使い 勝手 の 良し 悪し が 作業 の 能率 に 
大 き な 影 響 を 与え る と いう わけ で す 。 エ アデ 
ィ タ の 働き を 大 きく 2 つ に 分 ける と , 

1) BASIC や アセ ンプ ブラ な どの 。 プロ 

グラ ム テ キス ト を 作成 する 。 

2) 手紙 や マニ ュ ア ル な ど , 文章 を 作成 

する 。 
と いう こと に な り ま す 。 前 者 を 「 エ ディ ッ 
ト 」, 後者 を 「 ワ ー ド プロ セッ シン グ 」 と 呼 
ぶ こ と が 多い よう で す 。 一 般 に OS に 付属 
し て いる エディ タ は , (1) の 機能 し か あり ま 
せん 。 も ちろ ん , 手紙 な どの 文章 を 作成 す 
る こと も 不可 能 で は あり ませ ん が 。 
タ の 分 類 の 仕方 で , 

1) ライ ン エ ディ 

2) スク リー ン エ ディ イタ 
と いう 分 け 方 が あり ます 。F-BASIC の エ 
ディ イタ な ど は 。 スク リー ン エ ディ タダ て す 。 

CP/M の ED. COM(.CMD) 

テキ スト 作成 用 の ライ ン エ ディ タ で す 。 
ご 普通 の エディ タ で す が , 割 と 使い や す 
いと 思い ます 。 

OS- 9 の Edit 

や は り , テキ スト 作成 用 の ライ ン エ ディ 
タタ で す 。 機 能 は 豊富 で す が , や や 使い 勝手 
が 悪い よう で す 。 


LFA 


Oh/FM 


FLEX の EDIT. CMD 

テキ スト 作成 用 の ライ ン エ ディ タ で す 。 
TAB ス トッ プ の 位置 を 自由 に 変え られ る な 
と どの 機能 も あり ます 。 

な お 78 用 の 日 本 語 FLEX は 通常 は 日 
語 モ ー ド で す が , 英 数 字 モ ー ド に 切り 換 
える こと が で き , その と き は カー ソル キー 
や DUP キ ー な ど を 用 いた だ た スク リー ン エ ディ イ 
ッ ト が で きま す 。 だ だ し これ は 。 本格 的 な 
スク リー ン エ ディ タ が 搭載 され て いる と い . 
う 意味 で は な く , サブ シス テム の 機能 を 使 


CP/M CP/ M-86 - 


| 
i 


M s 
tm 
Yl 
Ju 
À <i 
ry "s 


Tera 
ES type 
| ren 


copydisk 


の 


T Li 
- 
Re 
^ — 
s 2 
x ] 
の に 4 
yl 
| 
| 
| 
- 


| sysgen Ldcopy 


| Selcode 


prtmode 


usrprt 
ASM86 


ur "EIS r 
LOS" "M Sie EIE. 
T m E 
» à kT 
Gre IO Ea Wa 
A に ^ 
で j 
る E 
^ 
E 
Ev 
tk 
る 
| m 
x 
esr 


delete 
ーー 


っ て いる だ めいろ いろ 制約 が あり ます 。 
MS-DOS の EDLIN. COM 
文字 ぼ お り , テキ スト 作成 用 の ライ ン エ 
ディ タ で す 。CP/M の ED を 意識 し て 作ら 5 れ 
た よう で , サブ コマ ンド も 多く が 共通 で す 。 
p-System の Editor 
文章 作成 も で きる スク リー ン エ ディ タ で 
す 。 こ の エディ タ は 大 変 使い や すい と いう 
定評 が あり ます 。 ち ゃ ん と し た スク リー ン 
エディ タ を 標準 で 持っ て いる OS は p-Sys- 
tem だ け で す 。 ま た , 以前 の バー ジョ ン で 


ig 


cat 
dsp 


rm 


erase 


list — |lst type 


rename rename 


rename 


copy 


chdir 
Win 


format 
ie 


link os9gen 
putldr 

print 

Qcheck 


wA d 
P 


e 
a 


a 


T 


rmdir 


format 


w 
に 1 


diskcopy 
chdisk 


recover 


booter 


シス テバ 人 に 
組み 込み 


pmode 


m 
build 


edit 
build 
debug 


link 
exe2lin 


1984-9 43 


村人 準 の エディ タ で あっ た 。 YALOE と いう 
ラオ シキ ディ イタ も 付い て いま すず す 。 


> アセン フラ 


OS を 使い た い 理 由 の 1 つ に , 機械 語 で 
プロ グラ ム を 開発 し た いと いう こと が ある 
と 思い ます 。 ま だ, も と も と OS は, 機械 
語 ブ ログ ラム 開発 支援 用 に 作ら れ て も いま 
す 。 

CP/M の ASM . COM 

CP/M-80 は , イン テル 8080 用 の , また , 
CP/M-86 は , イン テル 8086 用 の アセ ンプ ブラ 
を 装備 し て いま す 。80 系 の CPU に つい て 
知っ て いる 人 は わか る と 思い ます が , イン 
テル 系 ・ ザ イロ グ 系 の 2 種類 の ニモ ニッ ク 
が あり , CP/M て 採用 し て いる の は , イン 
テル 系 の 方 で す 。8086 用 の ASM 86 の 方 に 
は , コー ド ・ マ クロ 機能 が あり ます 。 

FLEX の ASMB .CMD 

6809 用 の アモ セン ブラ で す 。 当然 マク ロ 機 
能 ち も あり ます 。F-BASIC 上 で 走る 機械 語 
プロ グラ タム の 多く (は, SOFLEX の ア ャ 
ンプ ラ て 開発 きれ た も の て です 。 

OS-9 の Asm 

当然 6809 用 の アセ エン ブラ で す 。 OS-9 で 
は , メモ リモ ジュ ー ル と いう 考え を 導入 し 
て お り , モジ ュー ル ヘ ッ ダ や CRC 値 の 計 
算 な ど が 必要 で ,。 この アセ ンプ ブラ は それら 
を サポ ー ト し て いま す 。 た だ ただ し マク ロ 機 能 
は あり ませ ん 。 

MS-DOS の MASM.EXE 

80860 用 の アモ セン ブラ で , マク ロ 機 能 も あ 
り ま す 。 こ の アセ ンプ ブラ は , リロ ケー タプ 
ルオ オブジェ クト を 出力 し 。 リ ンカ を 用 いて 
他 の コン パイ ラ な と て 作成 し た プロ グラ ム 
と 結合 きせ だ たり する こと も で きま す 。 

p-System の アセ ンプ ラ 

p- System に も 一 応 そ の CPU 用 の アセ 
ツブ プラ が 付属 し て いま すず す 。 プ セン ブラ で 作 
成 し た プロ グラ ム を Pascal の プログ ラム 
か ら , 外部 プロ シ ジ ャ と し て 呼び 出す こと 
も で きま す 。 ただ, 元 来 p- System は , 


Pascal 言語 で プロ グラ ム を 開発 する た め | 


DOST, アセ ンプ ブラ 開発 に は 向い て いま 
せん 。 


現在 ミニ ュ コン の 世界 で は , UNIX ROO 
S が 主流 を 占め て いる と いわ れ て いま す 。 
マイ コン 用 の OS も , と ん と ん UNIX に 近 
づい て いく 〈 く と 思わ れ ま す 。 そ れ は , UNIX が 
非常 に よく で きだ た OS だ か ら な の で す が , 
OS 本 体 の サイ ズ も 大 きく , 高速 の 外部 記 
憶 装置 (5 イン チ や 8 イン チ の ディ スク は 
決し て 高速 で は あり ませ ん ) が つなが っ て 
いる こと が 前 提 た な っ て いて 。 その まま の 
形 で マイ コン に 搭載 する の は 今 の と ころ 和 無 
意味 で す 。 そこ で 各 0S と も , その 思想 や 
特徴 を 導入 し な が ら , 独自 の 形式 で UNIX 
風 の 味 つけ を し て いま す 。 


> CP/M.CP/M-86 


FM シリ ー ズ 上 で 走る CP/M フ ァ ミ リ の 
OS で は , まっ だく UNIX 風 の 味つけ は さる 
れ て いま せん 。 を その 意味 で は , 古い タイ プ 
DOS と 呼ぶ こと が で きる で し ょ う 。 


> FLEX 


入出 力 リ ダイ レク ト に 近い こと が で きま 


す 。 た と えば ,。 “DSP と いう コマ ンド は デ 


ィ レ クト リ を 表示 する も の で す が , iot 
うに 入力 する と , プ リン タ に 出力 され ます 。 
P, DSP 
また だ た, 次 の よう に 打ち 込む と , CATAL 
0G.0UTE と いう ファ イル に , ディ レク トリ 
が 出力 され ます 。 
O, CATALOG, DSP 


|DErJenitudo5 


Q? いっ ぱい 


> ご - ヨ 


も と も と UNIX を 意識 し て 作ら れ て お り , 
入出 力 リ ダイ レク ト や パイ プラ イン な と は 
完璧 に す サポ ー ト る され て いま す 。 

dir p sees プリ ンタ へ 出力 

dir > catalog …… カレ ント デー タデ 
ィ レ クト リ 中 の ファ イル に 出力 


»MS-DOS 


CP/M を 意識 し て 作ら れ た V1.25(- UNIX 
を 意識 し な が ら 追 加 ・ 拡 張 を し た の が V2.0 
で す 。 入 出力 の リダイレクト や パイ プ ブライ 
ン も サポ ー ト し て いま す 。 だ だし, OS-9 な 
どの 「 正 統 派 』」 パ イプ ライ ン が メモ リ 上 に 展 
開き され る の に 対し , MS-DOS で は ディ スク 
上 に 一 時 ファ イル が 作ら れ ま す 。 


UCSD p-System 


入出 力 リ ダイ レク ト を サポ ー ト し て いま す 。 


今 ま で 書い て きだ た OS は, すべ て アノ メリ 
カ で 開発 され た も の で , も と も と 英 数 字 と 


いく つか の 記号 だ け JIS コー ド 表 の , & 


44 1984-9 


OI/FM 


H00 か が から &H7F ま で ) を サポ ー ト し て いま | »OSsS-9 


し た 。 今 で も , CP/M や FLEX 上 で 走る 
ソフ ト の 中 に は , カナ 文字 きえ 使え な いも 
の が あり ます 。 しかし,。 ヨコ ンピュータ の ハ 
ー ド ・ ソ フト の 市 場 と し て 日 本 が 重要 な 位 
置 を 占め て くる よう に な り , 漢字 を 使え る 
か どう か が ポイ ント の 一 つ に な っ て きま し 
Ms 


> CP/M-80 


漢字 を 表示 する 機能 は あり ます 。 しかし, 
テキ スト 中 に 漢字 を 書く こと は で きま せん 。 


»FLEX 


現在 の と ころ ,7/8 用 に の み 日 本 語 FLEX 
が 販売 る され て いま す 。 漢 字 の 入力 は , JIS 第 一 
水準 漢字 一 覧 表 に ある 読み を 1 文字 入力 し , 
「! 」 キ ー を 押す と , 画面 上 部 に 対応 する 
漢字 が 16 個 ずつ 表示 され , その 中 か ら 選 び 
id, 辞書 を 用 いた 変換 は , 将来 サポ ー ト 
る れる 予定 で す 。 プ ブリ ンタ へ の 漢字 へ の 印 
字 は , GP-250F 系 , MP-80 系 , 富士通 ビジ 
ネス プリ ンタ 。 漢字 ゲ プリ ンタ で 可能 で す 。 


RO 日 本 前 機能 の 比較 


V1.2 で は , INS キ ー を 押し た あと , JIS 
漢字 コー ド を 16 進 で 入力 する と , カー ソル 
の と ころ に を の 漢字 が 挿入 る ろ れ ます 。V1.2 J 
で は 。 単 漢字 辞書 に よる 変換 や サポ ー ト 
し て いま す 。 まず, | ctrl|-IK| を 押し , 漢 
字 の 読み を 1 一 5 文字 入力 し , 「 つ 」 キ ー を 押 
し ます 。 す る と カー ソル の と ころ に 漢字 が 
表示 る れ ま す 。 こ の 辞書 に は , 最終 使用 文 
字 学 習 機能 が あり ます 。 


> CP/M-86 


熟語 辞書 を 持ち , 変換 する こと が で きま 
す 。 辞 書 の メン テ ナ ン ス 機能 も あり ます 。 


»MS-DOS 


熟語 辞書 を 持ち , 文節 変換 が 可能 で す 。 
辞書 の メン テ ナ ン ス 機能 も あり ます 。 FM 
シリ ー ズ の OS の 中 で は , も っ と も 優れ た 
変換 機能 を 持っ て いま す 。 

画面 上 に 漢字 を 出力 する こと は で きま す 。 


AT, な る べく 各 OS を 並列 に な いて 
比較 し て きま し た が , や は り そ れ ぞ れ の セ 
ーー ルス ポイ ント や ウイ ー ク ボイン ト は よく 
わか ら な か っ だ の で は な いで し ょ うか 。 そ 
IT, すこ し 無責任 で す が , 思い 入れ を 込 
め て 書い て み だ た いと 思い ます 。 


> CP/M-80 


8 ビッ ト CPU の た め の OS の 中 で は , FI 
用 で きる ソフ ト 量 が ダン ト ツ で す 。FLEX 
や 0S-9 な ど 和 足もと に も 及び ませ ん 。C や 


LISP な どの 言語 な ども, マイ コン 上 で 走 
る 言語 は すべ て CP/M-80 上 で 走り ます 。 
まだ , ソフト の 質 も 8 ビッ ト CPU の 中 で 
は 最高 の も の が 入手 びき ます 。 もちろん, 
お 値段 も 結構 な も の で す が ……。 

だ た だ, 今 と な っ て は 時 代 遅 れ の OS に な 
っ て し まっ た よう な 気 が し ます 。 首 紀 いた 
ば , 80 系 8 ビット CPU で は この 程度 か な 
と も 思い ます 。 


» FLEX 


な ん と な く 〈 く 薄幸 の OS と いう 感じ が し ま 
す 。 む し ろ , モト ロー ラ の 68 系 CPU >W 
幸 の CPU と いえ る か も し れ ま せん 。 どう 
見 て も , 80 系 より も 68 系 の CPU の 方 が 使 
いや すい (も ちろ ん , 用 途 に も より ます が ) 
と 思う の で す が , 登場 が 数 年 遅れ た た め に 
流通 ソフ ト で 大 き 〈《 水 を あけ られ て し まい 
まし た だ た 。 し か し も し あな た だ が, 6809 の 勉強 
を し て 機械 語 プ ログ ラム の 開発 を し よう と 
思う な ら ば , FLEX が ベス ト だ と 思い ます 。 


» OS-9 


「 遅 すず ぎ た 0S」 と いう 感じ が し ます 。 優 
れ た 設計 思想 と CPU の 高い 性 能 と で , 他 
の OS と は 同列 で 比較 する こと が で き な い 
ZE, よく で き て いま す 。 レベ ル 2 を 用 い 
れ ば , 8 ビット CPU の 壁 で ある 64K バ イ 
ト を 楽々 と 破っ て し まい ます 。 た だ だ ,「 8 E 
ッ ト の CPU で ここ まで や る 必要 が ある の 
か 」 と か 「5 イ ンチ ディ イ スク じゃ 遅く て と 
うし よう も な い 」 と か 言わ れる と , 返事 の 
し よう が あり ませ ん 。 また, 初め て OS を 
使う よう な 人 に と っ て は , ちょ っ と 難し す 
ぎる か も し れ ま せん 。 

た だ , FM シリ ー ズ の ユー ザ な ら ば , [f 
っ て みる 値打ち は 充分 ある と 思い ます 。16 
ビッ ト や 32 ビ ッ ト CPU の OS は, お そら 
l? UNIX 系 OS に な る と 思わ れ ま す 。 現在 , 
一 般 の ユー ザ が 入手 で きる 唯一 の UNIX 系 
OS が 0S- 9 で す 。 UNIX に 興味 が ある 人 


や ゃ や, 8 ビット CPU の 能力 を 100 %51 3 1 
し 縛 み だ いと いう よう な 人 に は ほ は 。 お すす め 
ni c 選 い i す o 


UCSD p-System 


Pascal 言 語 の 教育 用 に 作ら れ た OS で すか 
5, Pascal に よる ブロ グラ ム 開 発 に 関し て 
は 大 変 使い や すく で き て いま す 。 ま だ , pad 
ー ド に コン パイ ル さ る され だ た プログラム ば,p 一 
System が 走っ て いる マシ ン な ら ば CPU に 


か か わら ず 走 ら せ る こと が で きま す 。 標準 


A a nN T oO Pascal の 言語 仕様 も 高い レ 
ベル で す 。 価 格 が 他 の OS に 比べ 高い の で す 
が 。Pascal コン パイ ラ 付 き で ある こと を 考 
ETNI, 決し て 高 す ずる と いう ほど で は 
あり ませ ん 。 日 本 で は あま り 普 及 し て いな 


いよ う で す が 。 Pascal 言語 を 勉強 し て みた 


OWM 


| 【 語 大 きど ご れ に し よう か 


い 人 に は お すす めで きま す 。 


»CP/M-88cC 
MS-DOS 


8086/8088 CPU が 出 始め た ころ は , C 
P/M-86 し か な く , 16 ビ ッ ト の 世界 で も , 
CP/M が スタ ンダ ー ド に な る か に 見 えま し 
だ た が, IBM-PC に MS-DOS が 採用 され た だ 
あたり か ら 形 勢 が 変化 し て きた よう で す 。 
高級 言語 や ユー ティ リティ な ど , CP/M-86 
と MS-DOS で は 。 も は や 業 * 質 と も に 券 は 
あり ませ ん 。 OS 自体 を 見 る と ,。 は っ きり 


いっ て CP/M-86 の 方 が 見 劣り し ます 。 た が, 


本 質 的 な 部 分 は 大 差 な い の で 。 今後 デジ タ 
ル ・ リ サー チ 社 が どこ ま て 機能 拡張 する か ,, 


マイ クロ ソフ ト 社 が どこ ま て 逃げ 切れ る が | 


1984-9 45 


が 興味 を 引く と ころ て す 。 


NM 

A AJ 

それ ぞ れ 長所 や 短所 が あり , どれ を 選ん 
で よい の か 難し いと ころ で す 。 OS 選び で 
悩む など と いう の は , FM シリ ー ズ の ユー 
ザ の み が 味 わ を る ぜいたく で は な いで し ょ 
2 か 。 と どれ を 選ん で も, 何 か 得 し だ た よう な 
損し た よう な 気分 に な る も の で す 。 と も か 
《,「 エ イヤ ッ 」 と いう 感じ で , どれ か 一 つ 
を 買っ て き て , 使い こなす と ころ か ら 始 め 
て み ま せ ん か 。 OS の 世界 に 足 を 踏み 入れ 
る こと で ,。 あな だ た の パソ コン も , 新しい 広 
が り を 持つ よう に な り ま す 。 


大 学生 の た め の ソ フト バン ク 就 職 セミ ナー 


レー ソナ ルコ ンピュータ の 現状 と 今後 の 展開 」 


パー ソナ ルコ ン ビ ユー タ の 昨年 国内 出荷 台数 は 約 100 万 台 。 今 年 は 150 万 台 が 見 
こま れ 、 系 績 300 万 台 に も 達し よ つ うと し て いま す 。 つい て は 、 ご これ か ガ ら 社会 人 に 
な る 大 学 4 年 生 を 対象 に 、 パ ソコ ン 市 場 の 展望 、 パ ソコ ン ソ フト 流通 の し くみ 、 
パソ コン 出版 社 の 動向 な ど に 関す る 就職 セミ ナー を 開催 し ます 。 パ ソコ ン 業 界 
に 関心 の ある 諸君 は 、 ご 参加 下さ い 。 


日 時 :9 月 10 日 (月 ・1 7 日 (月 


PM 0:30-—4:00 


場 所 : 日 本 ソフ トバ ンク 本 社会 議 室 
千代 田 区 九段 南 2-3-14 靖国 九段 南 ビ ル 
地下 鉄 九 段 下 駅 より 徒歩 7 分 、 国 鉄 市 ヶ 谷 駅 より 徒歩 12 分 


事前 に 電話 に て 連絡 し て 下さ い 。 


連絡 先 : 日 本 ソフ トバ ンク 社長 室 土橋 
TEL 03(263)3665 


: Oh ! シリ ー ズ 読者 の 大 学 4 年 生 


靖国 神社 地下鉄 九 段 下 駅 
出 


AD どの に は OS-9 が , BS に は CP/M- 86 
が 標準 実装 , 日 本 語 機能 を 持つ OS の 発売 , 
OS-9 の 異常 人 気 な ど OS の 周辺 が が ぜん に 
き や が に な つて きだ 。O 〇 OS を 無視 し て な に が 
ハッ カー が ガ , と いつ わけ で , OS の 達人 を 自 


司会 (長沼 ) 今日 は , OS を 日 頃 使っ て 
いる みな さん に 集まっ て いただき まし た 。OS 
に つい て の 感想 や ご 意見 を 自由 に 出し て い 
だ だ こう と 思い ます 。 まず, みな さん が 使っ 
て きだ OS, ある い は 現在 気にいっ て いる OS 
に つい て 。 ひと 言 ず つ 。 

A488 OS と 言わ れ て も , ば ぼく は 中 型 レ ベ 
ル 以 上 は あま り い じ っ た こと が な く て , 本 
格 的 な OS は 知ら な いん で す 。 マ イコ ン 上 で 
動く OS で は , FLEX を いち ば ん 最初 に 使 
い , 次 に CP/M, CP/M-86 そ し て OS-9 で 
すね 。 と どれ も 甲乙 つけ が だ た だ い の で す が , 気 
に いっ て いる の は FLEX で すね 。 い ちば ん 
最初 の OS と いう こと で 忘れ が た い 。 

青山 大 学 で 大 型 の OS を 使っ た こと は あ 
り ま す が , 非常 に 使い に くく て , 最近 は あ 
まり 使っ て いま せん 。 パ ソコ ン の OS で 最近 
ょ よく 使っ て いる の は MP/M-86, CP/M の 
マル チ ユ ー ザ ・ マ ル チ タ スク で す 。OS- 9 
も ちょ ば ちょ ば 使い 出し た と ころ で す 。MP/ 
M の ほう が , CP/M より いろ いろ な 点 で 便 
利 で すね 。 

ER 大 型 と か ミニ コン で は UNIX を 使 
っ だ こと が あり ます が , 本 格 的 と いう ほど 
で は あり ませ ん 。 マ イコ ン 上 で は FLEX が 
最初 で , 最近 は OS-9 で すね 。CP/M は Word 
Master を 使う と き で らい 。 い ちば ん 使っ た 
の は FLEX で す が , 今 は OS-9 に も っ と も 
興味 が あり ます , 評価 は 別 と し て 。 

兼子 大 学 の VAX-11 UNIX を 使う 許可 
を も ら っ た の で す が , 小文字 が 使え る 端末 
が 手元 に な い の で て で , まだ 使え な いで いる ん 
て す 。 マ イ コン の は ほ は う は , 大 学 に 入っ て か 
6 FM-8 を 買っ た の で , 使い 出し た の は 
FLEX 4 b OS-9 の ほう が 先 で すね 。 V1.1 
の と き で す 。 そ の あと 1 年 くら いた っ て , 


Ha — SUA 
ab. s. 
に ; Cote t 


以下 は その 座談 会 


CP/M-80, CP/M-86 を 使う 機会 を 得 ま し 
だ た 。 い ちば ん 使い や すい の は , 最初 に 使い 
始め た と いう こと で OS-9 で す 。 

阿部 大 型 も ミニ コン も 扱っ た こと は な 


cs も っ ぱら 5 PM-7 て や っ て ます 。 い ちば | 


ん 最初 に 使っ た の は FLEX な ん で す が , Z 
れ は アセ ンプ ブラ を 使う た めで ,OS を 使う と 
いう 目的 で は な いん で す 。 エ ディ タ と アセ 
ンプ ブラ を 使う た め な ん で すね 。OS-9 も 持っ 


て いま す が , これ も OS と し て 使っ た わけ で 


は あり ませ ん 。 た だ ただ, OS-9 に は 興味 が あり 
ます ね 。OS は アプ リケーション を 動か す た だ 


め の も の だ と 考え る と ,OS-9 に し ろ FLEX | 


に し ろ 。 それ ほど アプ リケーション は 貞 て 


いな い の で , 本 格 的 な 評価 が 出る の は これ | 


か ら な ん で は な いで し ょ うか >。 
吉川 大 型 は 一 度 も 使っ た こと は あり ま 
せん 。 ッ パソ ユ コン で CP/M-86 を 最初 に 使っ て 


いて , そ の あと CP/M-80 に ソフ ト が いっ ぱ 


いあ る の で 使っ て みた だ 。 次 いで p-System を 
fiiv, 1 年 前 か 5 MS-DOS を , 最近 は OS 
-9 を 2 一 3 か 月 と いう と ころ で す 。 使 いや す 


認 す る 9 人 に 集まっ て も らい , それ ぞ れ の O 
ら に 対す る 思い 入れ な ご ど ご を 語 つ て も ら つ だ 。 
ポー ト で ある 。 な お , 出 
席 者 お よび 司会 者 の 発言 に は 独断 と 偏見 が 満 
ち 満ち て いる こと を 最初 に お 断り し て お こく 。 


誠司 | 吉川 厚 
千秋 | 田中 明雄 
雅彦 | 平野 OBI 
数 (司会 ) 

A | 長沼 孝仁 


いと いう 点 で は p System が 気にいっ て ま 
To 
田中 パソ コン で は 3 年 ほど 前 に , 仕事 


の 関係 で , 使い た く な か っ だ ん だ けど FLEX 
を 使い まし た 。68000 の クロ ス ア セン ブラ が 
FLEX に し か な か っ だ の で 。 も っ ぱら 今 は 
MS-DOS で すね 。 去 年 は ずっ と CP/M-86 
を 使っ て きた ん で す が , . これ も ゲー ム を 作 
る だ め に し か だ た なく と いう 感じ 。OS-9 は 全 
然 興 味 な いで すか ら 使 っ た こと が あり ませ 
ん 。 い ちば ん 気に入っ て いる の は や は り MS 
-DOS で すね 。 

平野 大 型 も ちょ っ と や っ て みた ん で す 
が すぐ や め て し まっ て ,。 このごろ は , VAX 
上 の UNIX £t, PDP-11 の RT-11 と いう 
FLEX の 元 の 形 み た いな 感じ の モニ タ が あ 
っ て , それ を 仕事 に 使っ て いま す 。 これ は 
すっ きり し て て 使い や すい 。 マ イコ ン 関 係 
で は FLEX と OS-9 を 使っ て いま す 。 ほか 
に は 。 使い た く な か っ た だ ん だ けど ,。 仕事 で 
し か た なく 〈 CP/M-80 を 使っ た こと が あり ま 
3 CX), 


| 【 た 短 雪 どれ に し よう か 


OS は アプ リケーション か を 超え る か 


司会 お 話 を 聞い て る と , どう も 好き で | すか 。 何 に 使う か に よっ て 決ま る 。 


OS を 使っ て いる 人 は いな いみ た いで すね 。 


Z8 正直 いっ て OS の 概念 が あま り よ く 
わか ら な い 。 逆 に そう いう の を 感じ させ な 
い の が OS じゃ な いか と も 思い ます 。 僕 が 
FLEX を 気に入っ て いる と いう の は ,OS と 
か DOS と いう イメ ー ジ で は な く , だ だ アセ 
ンプ ラ と し て 気に入っ て いる わけ で 。 当時 
は 富士 通 か ら ア プ ソ リュ ー ト アセ ンプ ラ と 
か 手頃 な も の が 出 て いま せん で し た か ら 。 

司会 特定 の アプ リケーション ソフ ト を 
使い た か っ だ ,。 と いう こと で すか 。 

本 卿 そう で すね 。 だ か ら , FLEX 上 で 
BASIC を 走ら せ だ た だ, な ん て こと は 一 度 も な 
い 。 

司会 使い た い ア プリ ケー ショ ン が あっ 
た の で ,OS を 使わ な けれ ば な ら な か っ た と 
いう わけ で すね 。 も っ と 積極 的 に OS * HE 
され る 方 は いら っ し ゃ ら な い ? 

青山 OS は 好き で す よ 。 CP/M-86 は い 
いで すね 。JWORD と F-BASIC86 が 付い 
CUT, 

本 郷 付録 に 魅せ られ て 買う と いう , な 
ん か 学研 と か グリ コ と か …( 笑 )。 で も そう 
いう と こっ て あり ます ね , 絶対 に 。 

司会 いち ば ん 使っ て みた だ い O0S の アン 
か ケッ ーー ト ヤ 。 


みた いな 0S 一 一 FLEX を 含め て 一 と , 
0S-9 み だ いな OS と どっ ち が 好 き で すか 。 
兼子 それ は 使い 方 に よる ん じゃ な いで 


NF B 


けっ こう 人 気 が 高 か っ た の は | 
0S-9 だ っ た だ た ん で すね 。 みな さる さん は CP/M 


| 


司会 


ER DOS の 解析 / E) 

阿部 その 前 に CP/M-86 が 好き だ と いう 
A, MS-DOS が 好き だ と いう 人 ,p-System 
が 好き だ と いう 人 と か ,。 いろ ん な 人 が いる 
わけ で す 。 そ の 好き な 理由 を 知り た いで す 
ね 。 

田中 僕 が MS-DOS が 好き な の は , ア プ 
リケーション の は ほし いと 思う の が 何で も あ 
る 。 あ と CP/M-86 に 比べ る と , DOS と し 
て も か な り 洗 練る され て いる か ら で す 。 そう 
いう 意味 で は OS-9 も 同じ で で しょうが, アプ 
リケーション が な い 。 

青山 FM-11 で の CP/M-86 は いい 。 漢 
字 は ある し, 前 の CP/M-80 も Z-80 カー ド 
を 付け れ ば 使え る し ,CP/M-86 は 当然 使え 
て , あ と F-BASIC86 を 付け れ ば F-BASIC 
の ファ イル が 読め る 。 3 種類 に 使え を る と い 
う 2 の で 非常 に いい 。 

司会 p-System は どう で すか >。 

吉川 第 1 に 覚え る 必要 が な い 。 僕 みた 
い に 記 憶 力 の 容量 の 狭い の は 全部 覚え て い 
られ な いん で す よ 。p-System だ と 全部 画面 
に 出 て くる し , 名 前 が 全部 出 て くる か ら 。 
名 前 が ある 程度 わか っ て いれ ば で きま すか 
6 ね 。 画 面 に 始め か ら 6 HELP 機能 が つい て 
いる よう な も ん だ か ら 楽 で す 。 あ と 標準 で 
アセ ンプ ラ と か すべ で て つい て る し 。 そ ん な 
に 欠点 が な い 。 確か に 言語 の 面 で は 少な い 
で す が 。 

本 卿 他 の 機種 で も 同じ に 扱え る , と い 
う 点 で は 確か に p-System は いい で すね 。 
昔 , BASIC に も 飽き て き て , ほか の 高級 言 
語 が 知り た いな っ て いう と き , た また ま 友 
人 が APPLE II を 持っ て いて , 僕 も FM-8 
で p-System を 手 に 入れ て いた だ ん で す 。 そ の 
頃 は お 互い に 基本 的 な も の し か 持っ て いな 
か っ だ た ので, まる っ きり 同じ に 扱え た と い 
うと ころ が 面白 か っ だ 。 た と えば , CP/M な 


OS-9 は 何 に 使っ て いる ん で すか 。| 


ÀS km 


MTI k 


と ど は 機種 ご と に 若 十 の 違い が ある の は , し 
か だ が な いと は 思う けれ ども , な ん の だめ 
の OS か っ て いう こと が 出 て 〈 く る 。 

青山 言語 の 数 の 多 る と いう 点 で は や は 
り CP/M が ナン バー ワン 。 何で も 使え る 。 

兼子 何で も 使え ます か , ご 自分 で 。 

青山 た いて い 使 っ て ます よ 。 

兼子 それ を 使っ て 仕事 を で すか 。 

青山 仕事 は し な い 。 勉強 どけ 。 

司会 今 の 青山 氏 の 発言 に か ら め て , OS 
の アプ リケーション の 多き る は よく 言わ れ ま 
す が , 結局 どれ が それ を 使っ て いる か で す 。 
CP/M も そう だ けど , FORTRAN が 走る 
Pascal が 走る と 言っ て も , いっ た い 誰 が 使 
っ て , 何 に 使う の か な あと 思う の で す が 。 

吉川 その こと で 日 立 の 人 に 嫌味 言わ れ 
まし た だ たよ 。S1 に FLEX と か OS-9 と か 載せ 
る ん で すか , と 聞い た ら 6, 誰か そん な の 使 
える 人 が いる ん で すか っ て 。 ど う せ OS な ん 
か 初め か ら 6 使え な いと いう 感じ で 。 

司会 以前 , CPM-86 上 で FOR- 
TRAN を 使っ た と とき, 文法 は いい ん で すけ 
E 64K の セグ メン ト の 問題 で 配列 が 自由 に 
切れ な い , と いう こと が あっ た ん で す 。 結 
局 , みん な 使え ない から それ が バレ な いで 
存在 し て て ,FORTRAN 2252 t5 xJ2H 
に 結び つい て いる の で は な いか と 思い まし 
だ が 。 

#7 FORTRAN で プロ グラ ム を 書か な 
けれ ば な ら な い 人 が , マイ コン ユー ザ で 
と どれ だ けい る か 。 と いう こと で は な いで す 


48 1984-9 


OMIM 


MEH E 


か 。 だ と えば , 会 社 に ミニ コン が 入っ て い 
T, ある も の し か 走ら な いで , 家 で 勉強 す 
る だ め に と いう な ら わ か る けど と 。BASIC も 
マス タ し て いな いよ うな 人 が , FORTRAN 
J^ COBOL だ 。C だ 上 か いっ て , CP/M 
な ら 何 で も 走り ます と 言わ れ た っ て ね 。 大 
学生 な ら 端 末 で FORTRAN 使っ て れ ば 充 
分 だ し 。 家 で 使う な 6 BASIC で 全然 困ら な 
に だ みあ ろう も し 。 

田中 開発 ツー ル だ っ だ た だら , いっ ぱい あ 
っ だ ほう が いい ん じゃ な いで すか 。 

司会 開発 ツー ル に し た っ て , 要する に 
アゲ セン プラ で し ょ う 。 い い の が 1 つ あ れ ば 
それ で すむ ん じゃ な いで すか 。 

田中 エディ イタ , アセ ンプ ブラ 。 デバッガ 
の いい の が 揃っ て いれ ば いい けど , な い の 
も ある で し ょ う 。 い っ ぱい ある と いう こと 
は , 自分 の は し いも の も ある と いう こと で 
すか ら , 多い に 越し た こと は な く 〈, 少な け 
れ ば いい と いう も の で も な い 。 

阿部 今 , 話 を 聞い て いて もち も,p-System は 
別 と し て も , CPU に 何 を 使う か に よっ て 違 
っ て きま す よ ね 。 た だ と えば 6809 で 使う ん だ 
っ だ ら 6 FLEX と OS-9 し か 今 の と ころ な い 
わけ で , その どちら か と いう こと に な る 。 
80 系 を 使う ん で あれ ば , ここ に いる お 2 人 
と も ,16 ビ ッ ト の CPU を 開発 する た め に 使 
っ て いる 。 そ うい うわ け で 。 分 け て いか な 
いと 。 どの CPU に つい て どう な の か と > 

司会 今回 は CPU の こと は 置い と いて , 
DOS を 中 心 に いき まし ょ う 。 

志 沢 FM な ら カ ー ド を 買え ば 何で も 動く 
か ら あ まり 関係 な いで すね 。 ソ フト の は 2 う 
が 。 むし ろ 高 いで す よ 。 


司会 あら だ た め て アプ リケーション の こ 
と な ん だ けど , 今 ま で 使っ て みて , これ が 
良かっ だ な と いう の が あり ます か 。 

青山 Word Star と か , CONDOR も な 
か な か 捨て が だ い 。 
デー タダ ペー ス も と か ワー デ ョ みみ だい 
だ も の だ と 。 けっ こう アプ リケーション は 
必要 と る れ ま す が ,。 アプ リケーション て で て 気 
に 入っ て る も の は すべ て 言語 以外 の も の 。 
アァ アセン プラ は 言語 だ と は 思え を ませ ん が 。 

吉川 CP/M-80 で 動く ZAP-80 と いう の 
が あり ます 。 デ イス クト ラッ ク の 1 セク タ と 
か 一 つ ひ と つ 読 み 書 きも で きる し , フ ァイル 
と か 全部 直し ちゃ うし , は じ め か ら メ ッ セ 
ー ジ が 出 て くる ん で , まっ た だ く 覚 える 必要 
が な い 。 

兼子 メニ ュ 形 式 は , 慣れ な いう ち は い 
いけ と 。 慣れ て くる と うっ と お し て な る ぁ る 。 

吉川 わずらわし いけ ど , 毎回 , 毎回 忘 
れ て ます か ら 。 
実際 に 使わ れる ユー ティ イリ ティ と 
いう か 。 ア デア ブリ ケー ショ ン ソ フト は 。 どう 
いう DOS が 使い や すい の で し ょ うか 。 ま 
ず 。 エ ディ タ の ほう か ら 。 

本 郷 結局 , 慣れ の 問題 だ と 思う ん で すけ 
Ef, それ ぞ れ に 使い や すい 。 ある 程度 使 
える よう に 考え て 作っ て ある か ら , それ ぞ 
れ の 長所 も ある し , 欠点 も ある 。 正直 な 話 , 
僕 が いち ば ん 気に入っ て いる の は , BASIC 
が 簡単 で いい で すね 。DOS で と いわ れ だ ら よ 
く 使っ た FLEX な ん か よかっ た だ と 思う 。 ライ 
ン エ ディ イタ な ん か …。 ワ ー プ ブロ 的 に も 使え 
M Gs 


司会 


px. ^ 

志 沢 RT-11 の KED と いう エディ タ は 
いい で すね 。 キーボー ド に カバ ー が か ぶせ 
られ て て 。 い い 端 末 だ か ら 。 スクロール も 
SQL. 

平野 スク ロー ル し な いと だ めで す よ ね 。 
BASIC っ て , 1 回 出す と も う 1 度 出し 直 
さき な いと 。 いく 6 スク ロー ル ダ ウ ン き せよ 
うと 思っ て も で き な い て し ょ 。 


司会 


司会 


僕 は スク リー ン エ ディ タ が 好き で 


青山 KED で いい の は 消し た の が 残っ て 
いる …。 

平野 あれ を つけ る の は 簡単 な の に , な 
ん で あん まり な いん だ ろう ね 。 

司会 OS-9 の スク リー ン エ ディ イタ は どう 
で すか 。 

兼子 ある けど 使っ た こと が な い 。 へ ヘル 
プ モ ー ド が あっ て , コマ ンド は 全部 スク リ 
ー ン 上 で 確認 で きる み だ たい です 。 
FLEX な ん か どう な ん で すか 。 
本 卿 スク リー ン エ ディ イタ は ある を そう で 
すけ と ど ね 。 

司会 ほ ば みん な 使っ て な いと いう こと 
は , 普及 し て な いと いう こと か な 。 


司会 


本 郷 日 本 語 FLEX は スク リー ン エ ディ 
々 で すね ね 。 
司会 日 本 語 FLEX は 20 行 で 出 ます か ? 


本 郷 FM-7, FM-8 用 だ け で . 12.5 行 。 

司会 あれ は 英字 モー ド と か いっ て 20 に 
な ら な いん で すか ? 

本 郷 簡単 に 切り 換わり ます よ 。 だ けど 
起動 時 に は アル ファ ベッ ト も 16 ド ッ ト の や 
つが 出 て くる の で , 見 た 瞬間 びっ くり する 。 

兼子 あれ も 1 時 間 で らい じっと 見 て る 
と 慣れ て くる か ら 不 思 議 な も ん で す 。 C, 
横 40 文 字 , 縦 12.5 で ずる ずる スク ロー ル し 
て くる 。 

. 司会 MS-DOS は どう で すか ? 

田中 Word Master で すね わ ね, 使っ て いる 
の は 。Word Star は , いろ いろ な ファ ンク 
ショ ン が あっ て も スピ ー ド が 遅い の で イラ イ 
ラ し て きま す が , その 点 ,Word Master は 単 


純 だ けど 速い ん で す 。 


司会 p-System の エディ イタ は どう な ん で 


ETT 


Ud 

吉川 そり ゃ あ , いい で す 。 

司会 OS は 機械 を 換え て も 一 応 動 く よ う 
に 設計 る され て いる か ら 。 す ごく 遅い 。 
青山 V エ デイ ッ ト と いう エディ タ は サ 
プシ ステ ム で 行 だ け あ ば は る エス ケー デシ 
ー ケ ンス を 使っ て いて 。 一 用 に し て オォ オープ 
ン ラ イン で きる か ら 気 分 が いい 。 

司会 アモ セン ブラ な ん か どう で す 。 
兼子 OS-9 は アセ ンプ ブラ で 書く べき で は 


1984-9 49 


な い 。 
志 沢 アセ モ セン プラ で マル チ ユ ー ザ で や っ 
だ り し た ら 6 よく な いで し ょ う ね 。 ( 突 ) 
兼子 あれ は , BASIC09 が バン ドリ ン 
グ さ る され て いる と いう こと は , それ で 書き ま 
じょう も と いう と も すず ま ( 例 )。 


マル ナ ユ ー ザ … マ レナ タス ク … ウ ツレ チ ナウ イン ドウ 


司会 0S-9 と いう 0S が 今 , 非常 に 話題 
を 呼ん で いま す が , これ が ほん と う の マ ル チ 
ユー ザ な ん で す よ ね 。 だ けど 。 その 辺 が は ほ 


と ん と 理解 で き な い 。 それ 以上 に 何で マル | 


チュ ユ ュー ザ な の か , マル チタ スク な の か わか 
ら な いん で す 。 何で そう いう も の が みん な 
好き な ん で すか ね 。 


EF 打ち 出す の を じっと 待つ の が 嫌 だ | 
が か に ゲサン だ け で な て 。 ディス ク に フ | 


ァイル を 書き だ いと き に 書い と いて , その 
間 に 別 の 仕事 が で きる と か 。 

本 郷 
ルル チタ スク で らい は ね …… 許せ る 。 


兼子 マル ん チタ スク し て て , タス ク に ユ | 


ー ザ 番号 を 2 バイト つけ れ ば いい ん だ か ら 。 


マル チュ ユー ザ と マル チタ スク と 別に 違わ な | 
いで しょ う 。 マル チタ スク で きれ ば マル チ | 


ユー ザ に な っ て る ん で …。 


司会 マル チタ スク 自体 は わっ た ほう が | 


便利 で すか わ ね 。 


EF ある と 使う 。 な きゃ な いで 別に …。 | 


司会 ある と 使い ます か 。 

兼子 使い ます よ 。 せいぜい 2 つ で らい 
で す が 。 レ ベル 1 だ っ た ら 6 2 つが 限度 か な 。 
この 間 の マイ コン ショ ツウ で ,OS-9 上 で 走る 


イン テグ レー テッ ド ソ フト NOA110 と いう の 


は , 要する に , OS-9 の マル チタ スク 機能 

使っ て プリ ンタ で 打ち 出し な が ら で も エディ イ 
ッ ト 作 業 が で どき ます , と や っ て た だ から 。 

司会 プリ ンタ な ん か 遅い 装置 だ か ら , 


マル チュ ユー ザ は 大 げき る に し て も マ | 


それ を 裏 で や れれ ば いい ん で す よ 。 で も デ 
ィ ス ク だ と 。 ディ スク を 使う ジョ ブ グ と 使わ 


な い ジ ョ ブ が 明確 に 分 か れ て いる と いう の | 


は あま りな い 。 そ うな る と 結局 , ディ スク 
待ち に な っ ちゃ っ て , 同時 に 進行 びき な い 
こと も ある て し ょ う ね 。 ブ リシン タ に 関し て 
は 確か に いい と 思う けれ ど , スプ ー ラ が あ 
れ ば 充分 じ や な いか と 思う ん で す 。 

兼子 
必要 な いで し ょ う ね 。 

阿部 スプ ー ラ が で きる よう に すれ ば ば , 
OS-9 で マル チタ スク に な る わけ で す よ 。 マ 


ル チ タ スク で きれ ば , マル チュ ユー ザ に な る 。 


だ か ら 。 必要 だ か ら 作 っ だ た という より も 。 


シス テム の 性 格 だ ろう と 思い ます ね 。 ス プ | 


ー ラ を 効果 的 に や ろう と し だ た 6 ら 6, マル チタ 
スク を サポ ー ト する よう に し た ほう が で き 
る ん じゃ な い だ ろ うか 。 


司会 マル チタ スク は 裏方 と し て それ 以 


上 は 使わ が いと いう , あっ て も な く て も ど 
2 う 2 で も いい と いう こと で すか 。 す る と 商品 
と し て マル チタ スク だ か らい いよ と いう の 
は , 疑問 を 感じ ます ね 。 

兼子 シン グル ユー ザ で 使っ て いる 限り 
は ね 。 聞く と ころ に よる と , FM-11 に 端末 
4 台 で らい つなげ て , ハー ド デ ィ スク つ な 
げ て や っ て る と ころ が ある そう で す よ 。 
阿部 FM パッ コン 祭り で 実際 に や っ て ま 
し だ る 。 

司会 それ に よっ て 得 ら れる メリ ッ ト が 


レベ ル 1 な ら マ ル チ タ スク と か は | 


マイ コン に ある ん で すか 。 

兼子 安い 。 (笑い) 

阿部 シス テム 開発 じゃ , 楽に な る ん で 
は な いで すか が 。: 安 も な る で て で: しょう 。 が だっ て 。 
ファ イル が いっ ぱい ある で し ょ う 。 それ を 
共用 で きる わけ で すか ら 。 

司会 それ に よる メリ ッ ト っ て 大 きい ん 
tU 

阿部 大 きい と 思い ます 。 

志 沢 OS-9 の 場合 は , マル チ ウ イン ドウ 
と 組み 合わ せ た と き に 非常 に 使い や すい 。 た 
と えば , ひと つの プロ グラ ム を 開発 する 場 
合 で も , デバ ッ グ する の に すご く 時 間 が か 
か る の が ある で し ょ う 。 そ れ を 別 の ウイ ン 
ドウ で 動か し て お いて , あと は リス ト を 見 
て と た か > ラフ ロウ と た が で きる 。 

平野 それ と か エディ タ を 速く や ろう と 
思っ た だ たら, ひと つの ファ イル の 長 る を だ い 
だ いる 2。 3 ペー ジ に な る きた て 。 2 パラ スィ パラ に 
し だ ほう が よい 。 そ うい うと き エ ディ タタ を 
いく つも 走ら せ て も いい し 。 

司会 マル ん チ ウ イン ドウ と いう の は , 22 
まで は 有利 で すね 。 

ER 3 つ あ っ て も, 普通 は 2 つ で 使っ 
て いて , 3 つ 目 は ほか の ウイ ンド ツウ に 重ね 
と いて , 非常 の 場合 に 使え る 。 

兼子 ウイ ンド ウツ は 重ね て 使う で し ょ 。 
あれ は 待避 用 の を 作っ て お 〈 LELT 
必ず シス テム に 戻れ る か ら 。 レベ ル 2 は た 
ぶん 大 未 夫 だ と 思う けど 。 


50 1984-9 


HEROS KA 


17340. 
ETU, 
兼子 


と は いえ ハー ド に よる ん じゃ な いで 
ソフ トウ ェ ア 4 シタ ラプ ド が か か っ だ 
フラ グ が 動け ば いい ん だ けど …。 
結局 , スー パ バ イザ モー ド , つま り 


シス テム に 行っ ちゃ っ た と き に 禁 走 し て い | 


る と 変 な こと が 起こ る か ら 。 
志 沢 6809 だ と 6829 が つい て 。 ちゃ ん と 
し た シス テム だ と メモ リ 空 間 が 分 けら れる 


か ら で き る ん だ けど 。 FM-11 じ ゃ で き な い | 


の か な 。 


司会 


OS が いい か , 主観 的 に お 話し くだ さい 。 


AS FM と いう こと を 考え だ たら FLEX | 
か OS-9 で らい を 使わ ざる を 得 な いと 思う ん | 
で す よ 。 OS-9 の 場合 は , 最近 。 富士 通 か ら 出 
て いる 7 用 と か けっ こう 安い で すし 。 そ れ 


に AD 2 な ん か 最初 か が ら つ いて きち ゃ いま 


すし 。 だからこそ 関心 が 集まっ て いる の だ | 
と 思い ます 。 Kov, それ な り の も の を 持 


っ て いる し , 説明 書 ち お ね いっ ぱい つい て 〈 く る 


し 。 を うい う の は ユー ザ か ら 見 た 6 何 か す 


ご そう だ な と いう 感じ で 興味 の 対象 に な る 


ん じゃ な いで し ょ うか 。 僕 は 開発 用 に FLEX 
を よく 使い まし た 。 FLEX は ディ スク が クー 
ラッ シュ しゃ すい と いう 欠点 が あり ます が , | 


それ だ け 除 け ば FLEX は 好き で すね 。11 の 
FLEX は けっ こう 速い で すし , その 上 で 何 


か を 走ら せる と いう こと は な か っ た で す が 。| 


司会 OS-9 人 気 は 異常 だ と 僕 な ん か 思う 
けど 。 や は り 0S-9 が いち ば ん いい か どう 


この 辺 で OS 全体 を 総括 し て , と の | 


OI/FM 


本 郷 そう いう 設計 の も と で , どう し て 
29 は で き な い の ? 

兼子 29 っ て 日 本 に ある の 7? だ っ て こ 
の 間 の マイ コン ショ ウ の モト ロー ラ の ブー 
え ス に 29 だ け な か っ た 。 

司会 そう いっ た ハー ドウ ェ ア の 制約 も 
大 きい で すね 。CPU 自体 が .。 スー パ バ イザ 
と いう も の を 考え て いる も の も ある の に 。 

A88 OS-9 が 出 た と き ,6809 の 限界 に 挑 
戦 し て みよ うか な と いう 感じ で 作っ た の か 
な っ て 思っ た 。 最初 の 設計 思想 に 忠実 に , 
それ だ け で で きだ た の か な と いう 気 が あ り ま 
b. 

EF Not, 開発 が そう で し ょ う 。 
BASIC09 を モト ロー ラ と マイ クロ ウェ ア 
が 作っ て , これ が の る OS が な いか ら っ て 作 
っ だ の が OS-9 だ か 6, 

OS-9 の 特徴 と し て 階層 ディ レク ト 
リ と いう の が ある ん で す が 。 
本 卿 OS-9 の 階層 的 ディ レク トリ と い 


X SBJOSs 


司会 


D's 

阿部 難し いで すね 。 開発 する 立場 か ら 
いえ ば 。 もう 少し ユー ティ リティ が ほし い 。 
星光 さん も 頑張 っ て 作っ て いる よう で すし , 
それ が 出 て くれ ば OS-9 は 使い や すい も の に 
な る と 思い ます 。 

兼子 マル チタ スク と か マル チュ ユー ザ を 
使わ な く て も ね 。 

青山 OS-9 で 今 ま で 出 て な か っ だ けど メ 
モリ モジ ュー ル が 強力 な の ね 。 サ ブル ー チ 
ン を 作っ て お け ば , LOAD す れ ば どれ か ら で 
も 呼べ る と いう の は 強力 だ と 思う 。 

阿部 それ と パイ プラ イン 。 
も 26 イ プラ イン が つい て いる 。 
兼子 イプ は 強力 だ と 思い ます , メモ 
リ さ る さえ あれ ば 。 さっき 言っ た モジ ュー ル 作 
っ て , RUN で 呼び 出す より も , 要する に 上 
か ら 下 に デー タ が 流れ て くる ん だ っ た だら 。, 
パイ プラ イン 使っ て 走ら せ だ ほう が よい 。 
阿部 「 ソ フト ウェ ア 作 法 」 か ら 出 て い 


aay FE 


うけ れ ど も 。 それ を チェ ッ グ ク する ルー チン 
が あっ た ら , 残す ほう の 階層 に つなが っ て 
いく とか, そう いう の が 見 れ だ ら 6 視覚 に 訴 
えて わか りや すい よう な 気 が す る ん で すけ 
Es 

司会 MS-DOS は つい て いま すね 。 ツ リ 
ー。 で も いち ば ん 上 か らし か 見 えな い 。 

兼子 OS-9 の コマ ンド は 使い こなせ な い 
ん て す よ ね 。 あれ も で きる 。 これ も で きる 
と 言っ て も, 誰 も 使っ て いな い 。 

司会 田中 る ん の よう に ハー ド デ ィ スク 
を お 持ち の 方 は いい の で す が ね 。 

本 卿 マイ コン の ハー ド デ ィ スク と いっ 
た ら , 楽し み は あ れ を 持ち 歩い て 見 せ び ら 6 
か すこ と で すか ら 。( 笑 い ) 持ち 運び し や す 
いか ら と , あれ だ け 持 ち 運 ん で いる 人 が い 
まま すま 


る ああ いう や り 方 を 本 格 的 に や ろう と 思っ 
た だ た 6, OS-9 で な か っ だ 6 で き な い だ ろう 
と 思い ます 。 

兼子 確か に , 1/O の リダイレクト が で 
きる の は 強力 で す 。 僕 は 今 , 卒論 の た だ ため に 
コン ピュータ で シミ ュ レ ーション を や っ て 
いる ん で す が , 普通 , 2MB と か 3MB の デ 
ー タ 持っ て き て 解析 する 場合 は 大 型 使わ ざ 
る を 得 な いけ ど , 僕 は 乱数 を 1000 個 と か 2000 
個 発生 きせ て デー タ を と っ て いる の で , マ 
イコ ヨシ レベ ペル で きき る の て すね 。 ず る , 
乱数 を 発生 きせ , それ を 書き 出す プロ グラ 
ム を 作っ て 読み 取っ た や つ を 解析 し て , た 
と えば 平均 出す と か の プロ グラ ム を 作っ て 
プリ ント さる せる と か , 真中 だ け 入 れ 替 えれ 
ば デー タ を 加 王 し で 呈し て くれ る と お 5 を 
れ は 確か に 便利 で す よ ね 。 そ を そう すると, ス 
クリ ー ン 1 枚 で プロ グラ ム が 書け る 。 自分 
で 何 や っ て いる か わか る 。BASIC だ か ら 遅 
いて すず 着物 。 


.. 19949 9i 


司会 そう いう の は CP/M の ほう が よっ 
FERT? J A. 

兼子 マシ ン 語 開発 し よう と 思っ て OS の 
導入 を 考え ,OS-9 を 入れ る と し た ら 気 違い 
じみ て いる けど 。 せ い ぜ い BASIC 程度 の 言 
語 で 書い て 何 か 仕 事 を し た いと いう な ら , 
確か に 慣れ る まで 大 変 で , 僕 な ん か 最初 , 
»4w2PUSBtQUSQTC, どこ に セー 
ププ きれ た の か わか ら な く て と いう こと が あ 
り がり ま も な だ 。 
事 に けっ こう 使え ます ね 。 

阿部 マシ ン 語 で も モジ ュー ル 化 で きま 
す よ ね 。CP/M に し て も MS-DOS に し て も 
一 度 作 っ た も の を アペンド し て , 再 ア セン 
ブル に し な いと だ め な わけ で す 。 それ が メ 
モリ モジ ュー ル 化 で きま すか ら 。 EAE 
ん 呼べ ば で き る 。 

兼子 リン ク が な いと いう こと , それ は 
画 期 的 で し ょ う ね 。 


青山 モジ ュー ル の 1 つ を 新しく 直し て , | 


普通 の だ っ た ら リ ンク し 直 き な いと いけ な 


司会 と ころ で , OS 自体 が 普及 する か と 
う か , 今 の と ころ 疑問 な ん で す 。 今 は BASIC 
で 走る の が 普通 で , それと は 別に OS が ある 
わけ で す 。 そ うい う 形 で も っ て OS と いう も 
の が , BASIC が バン ドリ ング きれ て いる 形 と 


は 別に 普及 する か どう か 。 そ れ ほ ど OS が 必 


要 だ と は 思わ な いし 。BASIC が の っ て いる 
マシ ン と OS が の っ て いる マシ ン を 比較 し て 
どう で すか 。 や っ ぱり OS は 必要 で すか 。 


本 郷 僕 が いち ば ん 最初 に 言っ た みた い に , 」 


意識 きせ な いで と いう こと で OS-9 が 人 気 を 
持っ て いる の は BASIC09 を 積ん で いた り と 


か ,OS と いう こと を 考え な いで も , BASIC09 


で マル チ ウ イン ドウ が で きる ,。 マル チタ スク が 
で きる と か , そう いう 方 面 で みん な が 見 て る 
ん じゃ な いか と 思い ます 。OS と いう イメ ー 
ジ は な いん じゃ な いで すか 。OS-9 を , 使っ て 
みたい OS と は 言っ て ます が , を そう いう ふう 
に は と ら え て な くく て, ソフ ト と いう 意味 で 


し か し 慣れ て し まえ ば 小さ い 仕 


voc, あれ は リン ク し な いで いい 。 も う 
言う こと は な いて すね 。 

司会 ほか の CPU の DOS も 考え て OS- 
9 が 使い や すい と 思い ます か 。 

兼子 16 ビ ッ ト 使 う 必 要 っ て どこ に ある 
ん で すか ね 。 速い ? メモ リ が いっ ぱい あ 
る ? 

司会 僕 は 16 ビ ッ ト 好 き で すね 。 

兼子 16 ビ ッ ト は いい ん だ けど 。, 僕 は 8086 
嫌い で す 。 だ っ て セグ メン ト 間 違え る と ラ 栖 
走 す る ん だ も の 。 まあ, 慣れ の 問題 で すけ 
E d. 

司会 DOS に つい て は , OS-9 の で き は 
いい ん で すか 。 

志 沢 比較 に は な ら な い 。 も の が 違う L, 
あと か ら 出 た ん だ か ら 6 良く な くち ゃ お か し 
い 。 (笑い ) 

兼子 僕 の 友達 で ずっ と CP/M 使っ て た 
ん だ けど , OS-9 を 使わ せ て み だ たら, これ は 
きれ いす ぎる , こん な の マイ コン で 走ら せ 
ちゃ いけ な いと 言っ て , 2 日 で 返し て きま し 


OS の 普及 と 可能 性 


し か と っ て な いん じゃ な いか な 。 

平野 どう いう ふう に 使え る か は 考え て 
いな い 。 

本 郷 ええ , で も そう いう ふう に 意識 る 
せな い OS と し て 広がっ て いっ て も いい の か 
な と いう 気 も し ます ね 。 

司会 OS 自体 は マイ コン 初心 者 に は な じ 
まな いよ と 思う ん て す が 。 

本 卿 そう だ と 思う 。 

司会 dBASE- II み だ たい に いい ソフ ト が あ 
っ て も , それ が OS に の っ て し まっ た 以上 , 
も 5 うお し まい じゃ な いか と いう 気 が し ます 。 

本 郷 dBASE- II を 走ら せる だ め に し か た 
な く と いう 考え 方 の 人 が 多い ん じゃ な いか な 。 
それ も BASIC09 で 何 か や っ て みた いと する 
と OS-9 を 走ら せな けれ ば な ら な いと いう よ 
う に, アプ リケーション 走ら せる だ め に OS 
が ある と いう 感じ で すね 。 

平野 アプ リケーション だ け だ と , 作 表 


Q? 


HE ig 


leds 

司会 アプ リケーション の 多い DOS は 当 
然 あ り ま す 。CP/M は 多い けど , OS-9 は 今 
の と ころ 少な いで すね 。 その 点 , 不便 は な い 
て $4. 

兼子 今 は 不便 で すね 。 ど こま で 富士 通 
な り 星 光 が 力 を 入れ る か で すね 。 


と ワー プロ と デー タベース が 一 緒 に な っ た 
統合 化 ノ フト と いう や つが アメ リカ で 売っ 
て いる 。 そ うな っ て くる と , OS の 意義 は な 
く な っ ちゃ う ね 。 

兼子 OS が ある と , ソ フト 屋 る ん が ちょ 
っ と は 楽 で きる で し ょ う ね 。 

平野 そう する と ,OS-9 が ある か ら と い 
っ て , ツ フト 屋 る ん が OS-9 上 で や ろう と い 
う 動機 は まる で な いん だ , OS-9 は 主 に FM 
シリ ー ズ で し か 動い て いな いん だ か ら 。 そ うす 
る と いく て くら 60S が 出 て き て も 普及 は し な い 。 

兼子 それ は ソフ ト 屋 る ん の 考え し だ い 
で し ょ う ね 。 け っ こう OS-9 も 売れ て きだ か 
ら ,OS-9 上 で 走る ソフ ト を 作っ て も 売れ る 
と 考え る か 。CP/M-86 な ん か で 動く ソフ ト 
C, 98 だ け の 拡張 サー ビス コー ド を 使っ 
て る と か ある で し ょ う 。 そ うす る と どう な 
ん で す 。98 だ け で みれ ば いい けど ,CP/M の 
ソフ トウ ェ ア バ ス と し て の 役割 り は 日 本 で 


52 1984-9 


は な く な っ て き て いる で し ょ う 。 た だ と えば , | 


生 の まま じゃ CP/M-80 で 作っ た ファ イル は 
読め な い 。 ユ ー テ イィ イリ ティ が 出 て いる と い 
うこ と は ば は, それ は ソラ ドウ 系 アパ ス で な 
て な っ て いる と と で し J う キー テディ リ チ 
ィ で 使え る ん だ っ た ら , OS-9 で F-BASIC 
を 読め ます よ 。 

司会 それ で らい の 知識 を 持っ て いな い 
と 手 が 出 せな い 。 

兼子 DOS に 手 を 出す ん じゃ な く , て, DOS 
の 上 で 走る ツ ソフ ト に 手 を 出す 。 

司会 それ で は まま な ら ぬ 。 

吉川 だ か ら や だ ら に 手 を 出し て は いけ 
な い 。 X) 

兼子 残る の は MSX-DOS だ け で すか , 
まだ 出 て は いな いけ ど ね 。 

志 沢 最後 の 救世 主 で すね 。 

兼子 ハー ド も 決め ちゃ っ て る と いう す 
ご い OS 企画 で すか ら 。 


司会 OS は ツ フ トウ ェ ア バ ス と し て の 意 


味 が な く な っ て いる の に , や っ ぱり ソフ ト 
ウェ アバ ス と し て の 中 途 半 端 な 意味 を 持っ 
て いる 。 だ か ら , OS に の っ て いて , グラ フ 
ィ ッ ク を 使う の っ て な いん で す よ 。 グ ラフ 
ィ ッ ク は パパ ツユ コン に と っ て 重要 な 機能 で す 
du 

兼子 グラ フィ ッ ク 使 いた か っ だ ら ス タ 
ンド アロ ン BASIC が ある 。 


阿部 グラ フィ ッ ク で も OS-9 の 場合 は ド 


ライ バ が 書き や すい 。 

兼子 も ちろ ん 自分 の 機械 の 上 で は で き 
る けど , ほか の 機械 の 上 で は 必ず し も 走ら 
な いか ら 。 だ と えば 98 の グラ フィ ッ ク に あ 
わせ た CP/M-86 な り MS-DOS で 走る ツ フ 
トド を 作っ て も し まう と, と どん な に 05 上 て グラ 
フィ ッ ク を サポ ー ト し て て も ,。 72274» 
ク が な い MS-DOS マシ ン じ ゃ 走ら な いと い 
うこ と に な る 。 

吉川 コン カレ ント CP/M は グラ フィ ッ 
ク を サポ ー ト する と いう 話 で す 。 

司会 OS は 結局 マニ ア 以 外 の 人 に は うけ 
な い の に , 何 か そ れ を 錯覚 し て 使い だ た が っ 
て いる 人 が 多 す ぎる と 思う の で す 。OS が 普 


Oh/FM 


及 す る か どう か , 生き 残れ る か どう か は , 
を そう いう と ころ に カギ が ある よう な 気 が し 
ます 。 今 は , 開発 ツー ル と し て の OS と , ア 
プリ ケー ショ ン を 使う た め の OS と が ご っ ち 
ゃ に な っ て いる よう に 思い ます が 。 

阿部 いろ いろ な 論争 が ある の は , ほ と 
ん ど 開 発 者 側 で すか ら ね 。 

Ge コン カレ ント に な る と , マル チ ウ 


イン ドウ を サポ ー ト し て いる OS が 多い ん だ | 


UE, 使い や すく な る ん で すか ね 。 
青山 た ま に 便利 じゃ な いで すか 。 


阿部 マイ コン を ゲー ム マ シン と し て で | 


な 〈 く 使っ て ゆく だ た め に は , や は り OS が あっ 
た は ほう が 開発 側 に と っ て も , ユー ザ に と っ 


て も いい と は 思う ん で す よ 。 多く の 機種 で 
動け る よう に な れ ば 安く な る と は 思う ん で | 


す よ 。 そ りゃ ソフ トウ ェ ア バ ス の 問題 は あ 
り ま すけ と ど ね 。 

青山 少な く と も OS の 思想 が ある パッ ソコ 
ン の ほう が いい と いえ る と 思い ます 。 IBM 
5550 の 古い や つ は , ワー プロ の ファ イル が 


BASIC で 読め ゆな い 。 だ が CP/M-86 な 6 ば | 
J-WORD で 作っ た も の が デー タベース て で 読 


め る 。 そ うい うこ と が で きる か ら 60S の 思想 
は 必要 だ けど, ユー ザ に は 関係 な い 。 


司会 開発 者 の た ゆめ の OS と , アプ リ ケ ー 


ショ ン ユ ー ザ の た だ ため の OS と 分 け て 考え て み 
て b, 開発 者 用 の OS と し て 終わ っ て し まう 


ん で すか ね 。 こ の 頃 の OS の 傾向 は 漢字 を 使 


っ だ り と か 。 ウイ ンド ツウ ツウ を 用 意 し て アビ ピー 
ル し て る ん だ けど , どう で すか ね 。 
兼子 無駄 。 


平野 普通 の ユー ザ に は 関係 な に も ん ね 。 | 


阿部 も と も と OS と いう の は ソフ トウ ェ 
ア 開 発 の 負担 を 減ら す た め に ある わけ で す 
か ら ね 。 


平野 そう な る と 素人 立入 り 禁 止 で すか | 
(笑い )。 Cb, 素人 に も いろ いろ ある 。 機 | 


械 が る われ る 素人 な ら 勉 強 す れ ば わか り ま 


す 。OS だ っ て , 普通 ダイ レク トリ が 見 れ 


て ,。 リス ト が と れ て ,。 エ デ イ ッ ト が で き て , コ 


ン パ イル で きれ ば , それ で 使え な いこ と は 


gv, それと あと ワー プロ が 使え れ ば ね 。 


ユー ティ リティ が よけれ ば 素人 だ っ て 使え 
る て も よう 。 

X3 別に , 素人 に は 使え な いか ら 6 止め 
だ ほう が よい と 心配 し て あげ る 必要 は な い 
ん じゃ な いで すか 。 興味 が ある ん だ っ た ら 6, 
OS-9 を 買っ て , 毎 日 リセ モ セット ボタ ン を 押し 
て 半年 で らい や っ て れ ば , 72872201 
つも 書け る よう に な る だ ろう し 。 マルチ タ 
スク で 自分 の プロ グラ ム が で きれ ば , それ 
は それ で いい ん だ か ら , 誰が 何と いおう と 
や れ ば よい 。 

阿部 使っ て みた だ い 気 持ち が あっ て 小 遺 
ぃ い の あ る 人 は 大 い に 楽 し ん だ らい いと 思い 
ます ね 。 だ けど , fic 27g3120058J)X. 
覚悟 し て ほし い 。 

志 沢 興味 が ある な ら 使 っ て みて , だ め 
だ っ た 6 ら 6 BASIC に 戻れ ば いい じゃ な いで す 
i^. 

青山 で も ,BASIC し か わか ら な いと い 
う 事態 は 避け て ほし いと 思い ます が 。 

田中 これ か ら 6 の OS は , 一 部 の マニ ア が 
俺 は 使っ て いる ん だ と ニタ ニタ 笑い な が ら 
使っ で いで こ と ば 赤間 NE は う 。 

平野 OS を 使う 人 の タイ プ が ある み だ 
v. 思考 型 の , まず マニ ュ ア ル か ら 読 み 始 
め る 人 は まず だ めで , まず , さわ っ て みて 
進め て いく 直感 型 の 人 は うま く な る 可能 性 
が ある よう で す 。 

司会 今日 は どう も あり が と う ご ざ いま 


U 755 


CH0 
グ を EMI で 読む 紀尾井 太郎 


AW 


) | 
り ムシ 


お /M は ソフ ント ウェ アバ スズ ス と 浦 . お も 机 
る よう に , 機種 に 依存 し な いで 動く ブロ 
ゲラ ム を 書く こよ ょ の てき る:08S TF h 
か し 。 ブ ログ ラム を 記録 し て いる 媒体 で 
ある フロ ッ ピ ディ イス ク は 。 8 イン チ の 片面 
単 密 度 の も の 以外 で は フォ ー マ ッ ト が 統一 
さ 衝 て いま せん 。 8. 本 ンチ の ディ キィ: スス 次 が が あお 
QE, 片面 単 密度 の ディ スケット に ファ イ 
ル を 移す こと に より 他 の 機種 で ご も その ファ 
イル を 読み 書き で きる た め , それ ほど 不便 
て は あり ませ ん 。 しかし,。 5 イン チ の ディ 
スク し か 持っ て いな い 人 に と っ て は 。 同じ 
CP/M マ シン と いえ ども ファ イル を 読み と 
れ な く て 不便 な も の で す 。 

PC-9801 と FM-8,11 は , どちら も CP/M 
-86 が 動き ます 。 両 機種 の あい だ で は , 84 
ンチ フロ ッ ピ な ら 両 面 倍 密度 で も 互換 性 が 
あり ます が, 5 イン チ 2D フ ロッ ピ て は 互換 
性 が あり ませ ん 。 そ こ て で て で, CP/M-86 に お ける 
ディ スク の アク セス 方 法 を 説明 し , PC で 
o4 2 f2D2nms$sE P4 AZ IE Jy 
ル を FM で 読み 書き で きる よう に する プロ 
グラ ム を 紹介 し ます 。 


CP/M は ディ スク に 関す る 2 つの テー プ 
ル を , BIOS 内 に 持っ て いま す (0150). 


-- 図 1 ディ スク パラ 


ALV 


BSH, 
BLM 


メー タテ ー プ ブル 


し ダ 


EM 2 WEHLLAT 


(2) デ ィ ス ク バ パラ メー タッ プロ ッ ク 


EN 4 rm 


何 セ クタ を 1 まとまり と 考え る か に よっ て 決ま る 。 ディ スグ を 管理 末 る と ざき は FE と 違い , 
F-BASIC の クラ スタ の よう に いく つか の セク タ を まとめ て 扱っ て NW で , その 値 を デー タプ 


ロッ クア ロケ ーション サイ ズ と いう 。 


ディ スク の 記憶 容量 が 入る 。 


ALO,AL 1 


FM と PC の あい だ の 違い は , ディ スク パラ 
メー タブ ロッ ク の 値 が 違う だ た め に 生じ て い 
ます 。 デ イス ク バ パラ メー タテ ー ブ ル が ディ イ 
スク の 使用 方 法 を 決め て いま す 。 で すか ら 
この テー ブル の 値 を 変え れ ば , 両機 種 間 に 
互換 性 を 持た だ せる こと が で きま す 。 

デイ ィ イス クッ パラメータ ブロ ッ ク の 値 を みる 
t, 図 2 の よう に な っ て いま す 4 ディ 条 ク 
ッ * ラ メー タテ ー ブ ル の 見 方 は ,。 「 デ ィ ス ク 
パラ メー タテ ー ブ ル の 調べ 方 」 を 参照 し て 
くだ さい )。 た と えば , SPT が 0040 と 0020 と 
bis mco P rA C DO 
SPT を 単に 0020 に し た の で は , よく あり ま 
せん 。 と いう の は PC 
で は ディ スク の 表裏 で 
2 トラ ッ ク と し て いる 
の で す が , FM て は 表 
和 事 で 1 トラ ッ ク と な っ 
て いる か ら て す 。OFF 


セク 多 変 換 テ ー ブ ル の アド レス が 入る 。 ディ スク アク セス の 効率 を 上 げ る た め に 順番 に セ 


ディ スク の 記憶 容量 と デー タブ ロッ クア ロケ ーション サイ ズ に よっ て 決ま る 。 


ディ スク に 作れ る ファ イル の 数 を 入れ る 。F-BASIC の ディ レク トリ に は ファ イル の ある 先頭 
の クラ スタ だ けが 入っ て いる が , CP/M で は ディ レク トリ に ファ イル の ある デー タプ ブ ロック 
の 値 が その 数 だ け 入 っ て いる 。 そ の た め フ ァイル の 大 き さ に よっ て ディ レク トリ の 大 き さ も 
変わ っ て くる の で , DRM の 値 だ け フ ァイル が 作れ る わけ で は な い 。 


DRM と デー タブ ロッ ク に よっ て 決ま る 。 


DRM に よっ て 決ま る 。 デ ィ ス ク を 交換 し た こと を 知る た め に ディ レク トリ の チェ ッ ク サ ム を 
BDOS は 持っ て いる 。 交換 する こと の な い ハ ー ド ディ スク や キャ ッシュ ディ スク に は チェ ッ 
クサ ム は 不要 な の で , ここ は 0 に し て お く 。 


ディ スク の 外側 か ら 何 トラ ッ ク を 使わ な いか を 入れ る 。 
ク 上 の 場所 が これ に よっ て 確保 され る 。 


1984-9 53 


IPL プ ログ ラム を 入れ て お くく ディス 


で は ディ スク の 外側 に 2 トラ ッ ク ,PC で は 
1 トラ ッ ク 確 保 き され て いて , 実際 の 確保 済 
み ト ラッ ク の 数 は 違っ て いま す 。 そ を そこで FM 
の OFF を 0001 と し ,SPT を 0040 と する こ 
と で ディ レク トリ が 読み と れる よう に な り 
ます 。 も う 1 つの 違い は DSM で , これ は 単 


に 009B と 書き 直す だ け で す 。 

結局 。 図 3 の よう に デイ スク バ パラメータ 
プ ブロッ ク を を 直し ます 。 

シン グル ドラ オプ に お い : て は こ 般 で も 

か まい ませ ん が , デュ アル ドラ イブ の 場 
f. 一 方 は FM 用 も うぅ 一 方 は 6@ 用 
と する だ め に は これ で は 不 充分 で す 。 こ 


図 2 FM, PC の ディ スク パラ メー タブ ロッ ク の 値 


SPT BSH BLM EXM DSM DRM ALO ALI CKS OFF 
FM:40 00 04 OF 01 
PC:20 00 04 OF 01 


97 00 7F 00 GO 00 20 00 02 00 
9B 00 7F 00 CO 00 20 00 02 00 


] 3 TUE ロッ ク の 修正 値 (FM 用 ) 


が 0002 と いう よう に 同じ 
に な っ で て でぶ TREM 


FM:40 00 OF OF 01 9B 00 


7F 00 cO 00 20 00 01 00. 


54 1984-9 


の まま で は , 2 つと も FM 用 か PC 用 に な 
っ うっ て し まい ます 。 デ イィ イス ク パ ラメ ー ダ ヘッ 
ダ の DPB は , 同じ ディ スク 特性 を も つ ド ライ ブ 
に つい て 同じ デイスク パ ラメ ー タ プ ブロック の ア 
ドレ ス が 入っ て いる か ら で す 。 つ まり 複数 の ド 
ライ ブ が 共通 の テー ブル を 使っ て いる わけ て 

その テー ブル を 書き 換え る と 関係 な い ド ラ 
イブ まで 影響 を 受け て し まい ます 。 で すか 
ら 別 々 の ファ イル タイ プ の フロ ッ ピ を 同時 
に 使う た め に は , も う 1 つ 別 の ディ スク パ 
ラメ ー タ ブロ ッ ク を 用 意 す る 必要 が あり ま 
4, FM の BIOS を 見 る と $40 あたり の 番地 
は 使わ れ て いな いよ うな の で , 
スク ノラ メー タブ ロッ ク を 書く こと に し 。 

も と の デイ スク パラ メー タプ ブロ ッ ク は 書き 
変え ず に 。 DPB が 新しい ディ スク パラ メー 
タブ ロッ ク を 指す よう に 書き 換え る こと に 
し ます 。 こ う 才 る こと で 。 258074 ^£ 
を FM 用 と PC 用 と に 使い 分 ける こと が で 
きる よう に な り ま す 。 以上 の こと を する の 
が 。 リ スト 1 に 示し た プログ ラム で す 。 


e bn ai 


PC と FM の 間 で は 確保 済み トラ ッ ク の 数 
だ けが 違っ て いた だ の で デイ スク フ パラ メー タダ 
ブロ ッ ク だ け 書 き 換え る こと で 済み まし た 
2, MULTI-16 の ファ イル を 読む よう に す 
る に は セク タ 変 換 テ ー ブ ル を 作る 必要 が あ 
り ま す 。 し か し 1 セク タ が 256 バイ ト の デ 
ィ ス ク な ら こ の プログ ラム を 修正 すれ ば , 
た いて い 使え る みよ うに か る は ず で す 。 な 吉 。 
この プログ ラム を PC で その まま 使っ て も 
動き ませ ん 。 OFF と SPT を PC 用 に すれ 
ば 動き ます 。 PC の 方 が 8.K バ イト だ け 容 
量 が 大 きい の で , 普段 は PC の ディ スク フ 


ォ ー マ ッ ト て 使う が いい か も も む 思 ませ 4 


な お FM 用 に 買っ た ソフ ト は 。 FM だ け で 
使う よう に し て 《 だ きい 。 


O — cx Ll 
> ディ スク バラ メー タテ ー ブ ル の 調べ 方 
まず DDT86 を 起動 し ます (下線 部 を 入力 し て くだ さい )。 
A>DDT86 の 
DDT86 1.1 
アセ ンプ ブル コマ ンド を 使っ て BDOS コ ー ル を し ます 。 機能 コー ド の 50 番 を 使っ て , BIOS 
を 呼び 出し ます 。 
— A1000 : 0 の 
1000 : 0000 MOV CL, 32② 一 一 機能 コー ド を レジ スタ CL に セッ ト 。32 は 16 進数 。 


1000 : 0002 MOV_DX, 100② ーー 一 BIOS コ ー ル バラ メー タ の アド レス を レジ スタ DX に セッ ト 。 


1000 : 0005 INT EO ーーBDOS を 呼び 出す 。 

1000 : 0007 の 

セッ トコ マン ド を 使っ て BIOS コー ル パ ラ メー タ を 設定 し , 機能 番号 9 の SELDSK を 呼 
び 出 し ます 。 CX レジ スタ に は ディ スク の ドラ イプ 番号 を 入れ ます 。 ド ライ ブ A な ら 0 
を , D な ら 3 を 入れ ます 。 

— $1000 : 100 の 
1000 : 0100 00 099 
1000 : 0101 00 01€ 
1000 : 0101 00 © _ 
イグ ザ ミ ンコ マン ド を 使っ て レジ スタ を 設定 し ます 。1000:0 か ら ア セン ブル し た の で 
CS レジ スタ に は 1000 を , |P ピ レジ スタ に は 0O を 入れ ます 。BIOS コ ー ル パラ メー タ を 1000 
・100 に 入れ た の で , DS レジ スタ に 1000 を 入れ ます 。 

-Xxcso 

CS 0000 10009 

DS 0000 10009 


ーー この 場合 は ドラ イブ B を 指定 し て いる 。 


SS 0000 〇 
ES 0000 〇 
IP 0000 © 
トレ ー ス コマ ンド を 使っ て 1 命令 を 実行 し て み ま す 。 


AX BXA 0X. DX .SP —BP:-SI Di AP 
— | ———-0000 0000 0000 0000 092C 0000 0000 0000 0000 MOV CL, 32 
* 1000 : 0002 
正しく 実行 され て いる よう な の で , プレ ー ク ポイ ント を 指定 し て ゴー コマ ンド を 実行 し ます 。 


rog ws 
x 1000 : 0007 
イグ ザ ミ ンコ マン ド で レジ スタ を 表示 させ て み ま す 。 
-XƏ 

AX BX OX DX -SP BP: SI D^ OS ;DS.:.SS8 ES IP 
— | ——0000 635B 0004 0000 092C 0000 0000 0000 1000 1000 0050 0050 0007 
ADD [BX-SI], AL 
BX レ ジス タ に は ディ スク パラ メー タ ヘ ッ ダ の アド レス が 入っ て いま す 。 ES レジ スタ が 
50 で すか ら 50 : 635B に ディ スク パラ メー タ ヘ ッ ダ が あり ます 。 
ーD50 : 635B, 635A 
0050 : 635B 00 00 00 00 00 00 00 00 8E 67 4B 64 9D AA BD AA . 
DPB が 644B で すか ら デ ィ ス ク パ ラメ ー タ ブロ ッ ク は 50 : 644B に あり ます 。 
—D644B, 644A の 
0050 : 644B 40 00 04 OF 0197 00 7F 00 c0 002000 02 0068 @ . h 
これ が ディ スク パラ メー タプ ブロ ッ ク で す 。 
最後 に コン トロ ー ル C を 打っ て シス テム に 戻り ます 。 
eS 
A > 


OI/FM 


1984-9 55 


CP/M ASM86 1.1 


992C 
992E 
9939 
9933 
9936 
9939 


993B 
993D 
9949 
9942 


9946 
994A 
994E 
9951 
9953 
9956 
9958 


995B 
005E 
0062 
0064 
0066 


09068 
996C 
0071 


0073 
0076 
0079 
007C 


99 ?F 
9983 
9986 
9988 


998C 
0092 


0094 
009? 
009A 
999D 


99A9 
99A4 
99A6 
99A8 


99AC 
99AE 


8A0E8000 
BE8200 
E8A600 
3C20 
7503 
E9C200 


B499 
A27491 
2C41 
A3B49 1 


E89200 
A2BA91 
3C59 
7407? 
3C46 
7493 
E9A700 


B131 
CDE9. 
B29F 99 
BEA491 
BF 4299 
F 3A4 


B132 
BAB39 1 
CDE9 
891EB801 


268B?F0A 
268B4505 
309700 
7408 
3D9B00 
7403 
E98100 


BA9199 
8B9EB491 
D3E2 
B125 
CDE9 


8B1EB801 
803EBA0146 
7421 


BA6C91 
E86C99 
BA8D9 1 
E86699 


268B479A 
3D4200 
7404 
26434000 


26C7Z479A4299 
EB18 


BA6C91 
E84B00 
BA?601 
E84500 


26514000 
23C9 
7494 
2689479A 


B199 
CUE9 


SOURCE : 


99B9 


991 1 
99D3 


99BGd 


992C 


992C 
990D3 


0094 


99ES5 
99E5 


998C 


99AC 


99E5 
99E5 


99AC 


に し よ つ か 


Q? いっ ぱい 


(01984 T.KIOI 
リス 人 ト 7 
CHDPT . A86 
; コマ ンド 行か ら 1 文字 持っ て くる 
P » B : getch: 
; ディ スク パラ メー タテ ー ブ ル を FM-]11 用 と PC-9801 用 99B9 89F999 cmp c1,9 
5 = > 99B3 741B 99D9 je eof 
; に 書き 換え る 99B5 8A94 nov al,Csil 
P 99BZ 46 inc si 
99B8 FEC9 dec cl 
cseg 99BA 3C20 cmp al, 
99BC 74F2 99B9 je getch 
; ドラ イブ No. を 設定 する 
progress: 
"— cl ,emdla OOBE 80F900 cmp c1,9 
mou si, offset cmdln*2 キッ ren 99CF Je iie act 
11 tch "uet ida d: 
ren 2i 4 99C5 89FC29 cmp ah, 
jnë A 99C8 7405 99CF je exitgetch 
inp rcd 99CA 46 inc si 
indi 99CB FEC9 dec c 1 
— 99CD EBEF 99BE jmps progress 
mov ah ,9 
mou drive,al exitoetch: 
"- pcd 99CF c3 ret 
mov cxreg,ax 
ニル ビュ eof: 
; FM-11 か PC-9801 か を 設定 する 99D9 B929 mou al,' 
0002 C3 ret 
call getch 
mou machine,al errem: 
cmp al, P 99D3 BA9991 mou dx,offset errcmds 
Je setdpb 99D6 E89C99 99E5 call sendmsg 
cmp als F 99D9 E9DOFF 99AC jmp exit 
je setdpb 
jmp errcmd errmini: 
99DC BA3301 mou dx,offset errminis 
E E , - 99DF E80300 99E5 call sendmsg 
; ディ スク パラ メー タブ ロッ ク を BIOS 内 に 書く 99E2 E9C7FF 99AC jmp exit 
setdpb: sendmsg: 
mov eA 99E5 59 push ax 
int 224 99E6 53 push bx 
mou co90 15 99E 7/ SA push Cx 
mov si, offset source 99EB B109 mov c1,9 
mov di, offset newdpb BBEA CDEO int 224 
rep mous al,al ee A pop vb 
pop x 
; 指定 し た ディ スク が 2D ミ ニ フ ロ ッ ピ ディ スク か 調べ る 99EE 58 Pop ax 
i RAE aie T i , 99EF C3 ret 
mov c1,50 
mov dx, offset func dseg 
int 224 
org 80h 
un padni 9989 india. wb 80h 
mov di。es:9ahLbx] — 199h 
kon ee C da 0100 8E67977095FB errcmds db "使用 方 法 CHOPP KII Taa 
and P 9640203A2043 に ; TT 
je mini 484450542020 FM また は PC'. Odh, Oah,’ $ 
cmp ax,009bh 
^» xin 202083688389 
pt riki 8343837596BC 
hin 202020202020 
464D2082DC82 
"S BD82CD205043 
: ディ スク を リセ ッ ト す る 9D9A24 指定 し た ナド ライ ブ は ミニ フロ ッ ピ デ 
0133 8E7792E882B5 errminis db ELE PATIS BERTET 
a ok 82BD83688389 スク で は あり ませ ん ',0dh.0ah,'$ 
sid reri So 8343837582CD 
no c1:37 837E836A8374 
iet 224 838D83628373 
815B83668342 
e - ER - - 8358834E82C5 
E ディ スク パラ メー タテ ー ブ ル に ある ディ スク パラ メー 82CD82A982E8 
3 タプ ロック へ の ポイ ンタ を 設定 する OC 
mov bx,dpt — — 016C 836883898343 donemsg db F217 
cmp machine, F 8375 
je fm 0174 drive rb 1 
" E 0175 24 db $ 
mov XP QUSE onemsg 0176 82CD8265826C donefm db , M 用 に な ! L 7-'.0dh.Oah.' $’ 
call sendmsg 977082C982C8 SEMEEN Y E-L Ea, Voh, 
mov dx, offset donepc 82E882DC82B5 
cal ] sendmsg 82BD9D9A24 
0180 82CD826F8262 donepc db "は PC 用 に な り ま し た ',Odh, Oah,’ $’ 
mou ax。es:9ahLbx] 977082C982C8 í I 
cmp ax,offset neudpb 82E882DC82B5 
Je € 82BD0D0A24 
Vo" es:dpb,ax 91A4 4999949F919B source db 40h, 00h , 94h , fh, 01h, 9bh, 99h, 7fh , 99h 
SARE. . 997F99 
mov i ptr BahLbxJ,offset neudpb 91AD C99929999199 db 9c9h , 99h, 29h , 99h,91h,99h 
jmps exi 
x 0183 09 func db 9 
" 91B4 cxreg rw 1 
mov dx, offset donemsg 91B6 dxreg — 1 
call sendmsg 
mov dx, offset donefm ET sci EUR dia : 
call sendmsg 
org 40h 
mou ax,es:dpb 
and m ie 0040 dpb ru 1 
jz exi 994 
mou es:uord ptr OahLbxJ,ax " nensem nw 49 
exit: ene 
mov cl,0 
int 224 


ees 


サー ビス - 


リク エス ト の 合い 万 ... 


SE 


085-913, BASIC と マシ ン 語 の つなが 
り が F-BASIC よ り も 自然 で す 。F-BASIC 
上 て マシ ン 語 を 使う とき は , BASIC で マ 
シン 語 を せ ロー ド し て こ な 《 て は ほ いけ な い の 
TTH, OS-9 で は 。 OS が マシ ン 語 を デ 
ィ イス ク か ら 呼 び 出 し て くれ ます 。BASIC09 
に は 線 を 引く 命令 は も と も と あり ませ ん が , 
F-BASIC に あっ て BASIC09 に な い 命 令 は , 
RUN LINE と する こと で 線 が 引け る よう 
に 自分 で 作れ ます 。6809 機 械 語 マ スタ 84 で 


Microware OS-9 Assembler 2.1 


本 デン 請 纏 用 史 える よう に な っ た だ ら ,。 OS- 9 
$7 さっ 稚 、 く マシ ン 語 を 使っ て み ま し ょ 
2e € 7208-9 は 持 っ て . ぃ . る U E, F-BASIC 
[上 で 動く 《 く アセン プラ を 持つ て いな いと 各 う 
人 も , BASIC09 だ け を 使 の て いな いで , x 


シン 語 で プロ 用 沈み zE TARF う で 


し よう が か 。 


それ で は まず マン ン 語 の 簡単 な プロ グラ 
ム を リス ト 1 に 紹介 し ます 。 これ は 標準 入 
カフ ァイル か ら の 入力 を 標準 出力 ファ イル 


リス 人 7 


00/00/00 00:03: 38 


pip - OS-9 System Symbol Definitions 


00001 

00002 

00004 

00005 0000 8?CD0O2F 

00006 000D 7?069FO0 name 
00007? 0011 type 
00008 0081 revs 
00009 D 0000 buffer 
00010 D 0001 

00011 D OOFB size 
00012 0010 start 
000135 0010 30C4 

00014 0012 108E0001 

00015 0016 8600 

00016 0018 103F89 nextc 
00017? 0018 2507? 

00018 001D 4C 

00019 001E 103F8A 

00020 0021 4A 

00021 0022 24F4 

00022 0024 C103 exit 
00023 0026 2601 

00024 0028 5F 

00025 0029 103F06 error 
00026 002C 975252 

0002? 002F msize 


00000 erroris» 
00000 warning〈s) 


nam pip 

1fp1l 

endc 

mod msize, name, type, revs,start, size 
fcs /pip/ 
set prgrmtobjct 
set reent*1 
rmb 1 

rmb 250 

equ : 

equ * 

Leax buffer,u 
Ldy H1 

Lda HO 

0s9 i$read 
bcs exit 
inca 

0s9 i$write 
deca 

bcc nextc 
cmpb  He$eof 
bne error 
ELrb 

0s9 f$exit 
emod 

equ X 


$002F 00047 program bytes generated 


$00FB 00251 data bytes allocated 


$23B6 09142 bytes used for symbols 


へ 出力 する も の て す 。 
いっ た いこ れ が 何 の 役 に 立つ の か が と いう 
と 。 これだけ の プロ グラ ム で 。 ラチ メオ ネル が 
EB. —C きま す 。 OS- 9 に は 入出 力 の リ ダ 
人 アクト と いう 機能 が ある の で , 単に 標準 
入力 パス か ら 読 ん だ デー タ を , 標準 出力 パ 
本 へ 人 千 a ご け て ファ イル の コピ ー が で き て 
Ud. d BESDAÁBEÉPU は , INPUT や 
PRINT Ios N ORR- しか, それ 
Thnit $ t Ao BASICOOCiE,VUAZ4v 
クト の 機能 に より , 実行 時 に 変更 で きま お 。 
と ころ が これ を 使っ て ファ イル を CRT に 衣 示 る 
せ て みる と , ラ イン フィ ー ド を 行い ませ ん 。 
BASIC09 で は キャ リッ ジリ ター ン し か 和 行 
の 終わ り に な いか ら で す 。 を そこ で キャ リッ 
ジリ ター ン が 現れ だ ら ラ イン フィ ー ド も 出 
力 き せる よう に 直し て み だ た の が リス ト 2 で 
Fo これ て ジ デ イル が 
CRT に 表示 で きる よ 
に な り ま な だ 49A 
の 指定 方 法 が 違い ます 
33, OS-9 の コマ ンジ ンド 
の COPY と LIST と 同 
じ こ と も お し て いき ます 。 
ÜUXRTTÉSPEULT 
08S-9 で の マシ ン 語 
の 書き 方 に つい て 説明 
し まし ょ よう 。 
OS-91-*i JET 
ログ ラム を 作る た め に 
は 4 つの 規則 に し た が 
わな く て は いけ ませ ん 。 
1 . 絶対 番地 (エク 
ステ ンド アド レッ シ 
ング JMP; JSR) 
を 使わ な い 。 
2. デー タ 領 域 は O 
S-I GEINA 
所 を 使う 。 
3. メモ リモ ジュ ー 
ノレ に する 。 


(01984 C. AOYAMA 


Page 001 


OI/FM 


1984-9 5/ 


4. 入出 力 に は OS- 9 の サー ビス リク エ 
スト を 使う 。 
0S-9 で は プロ グラ ム が メモ リ 上 の と どこ 
に ロー ド さ れる か 決ま っ て いな い の で , J 
MP や JSR を 使え ませ ん し ,6809 で は 使う 必 
要 も あり ませ ん 。 同様 に デー タ 領 域 も わか 
ら な い の で , エ クス テン ドア ドレ ッ シ ン グ も 使 
ぇ えな い の で す 。 
0S-9 は メモ リ 上 に ある 1 つの プロ グラ 
ム を , 複数 の 人 が 同時 に 使え る よう に し た だ 
DT, ブロ グラ ム 領 域 と デー タ 領 域 が 分 離 
され て いま す 。 で すか ら ,。 ブロ グラ ム 領 域 
に デー タ を 書き 込む よう な ブロ グラ ム は マ 
ル チ ユ ー ザ , マル チタ スク で は 使え ませ ん 。 


Microware OS-9 Assembler 2.1 


| bsrdconl-Ud o» 


だ だし, プロ グラ ム 領 域 に 定数 を 書く こと 
は 許 き れ ま す 。 

メモ リモ ジュ ー ル と いう の は , OS- 9 が 
管理 する プロ グラ ム の 単位 で ディ スク 上 の 
ファ イル と 同じ よう な も の で す 。 メ そそ サモ 
ジュ ー ル と する た め に は , モジ ュー ル ヘ ッ 
ダダ と CRC を グロ グラ ム に つけ る の で す が , 
TETIS, QU 5ToDBMUCinzT. 
入出 力 は 直接 1/0 を いじ ら ず に , サー ビ 
スリ クエ スト を 使い は す 。CP/M の BDOS 
コー ル と 同じ よう に し て , サー ビス リク エ 
スト を 呼び 出し ます 。1/O に 関す る 操作 を 
直接 行う と き に は , ドラ イ バ ル ー チ ン を 書 
いて , キャ ラク タフ アァ イルマ ネー ジャ に 登 


RNR 


00700700 00:05:00 


crLf - OS-9 System Symbol Definitions 


00001 

00002 

00004 

00005 0000 8?CD00435 

00006 000D 63726CE6 name 
00007? 0011 type 
00008 0081 revs 
00009 D 0000 buffer 
00010 D 0001 

00011 D OOFB size 
00012 0011 start 
00013 0011 30C4 l 
00014 0013 108E0001 

00015 0017 8600 nextc 
00016 0019 103F89 

00017 001C 2512 

00018 001E 8018 

00019 0020 9600 

00020 0022 810D 

00021 0024 26F1 

00022 0026 860A 

00023 0028 9700 

00024 002A 8DOC 

00025 002C 21E9 

00026 002E 24E7 

00027 0030 C103 exit 
00028 0032 2601 

00029 0034 5F 

00030 0035 103F06 error 
00031 0038 8601 write 
00032 0036 103F8A 

00033 003D 25F1 

00034 003F 39 

00035 0040 DBC35F 

00036 0043 msize 


00000 erroris» 
00000 warning〈s) 


nam crPLT 
ifpl 
endc 


mod msize, name, type, revs, start,size 


fcs ert fz 
set prgrm+objct 
set reent+1 


rmb 1 

rmb 250 

equ , 

equ XK 

Leax buffer,u 
Ldy H1 

Lda HO 


0s9 i$read 
bcs exit 
bsr write 
Lda buffer 


cmpa  H$Od 
bne nextc 
Lda H$0a 


sta buffer 
bsr write 
brn nextc 


bcc nextc 
cmpb  He$eof 
bne error 
に だ だ 

0s9 f$exit 
Lda H1 

0s9 i$write 
bcs exit 
rts 

emod 

equ X 


$0043 00067 program bytes generated 


$00FB 00251 data bytes allocated 


$23C5 09157 bytes used for symbols 


Vs いっ ぱい 


録 し て か ら , その ドラ イ バ を 通じ て 行う 必 
要 が あり ます 。 

で は りえ スト 3 を 見 て 《 だ きい 。 FAFS 
は , リス ト 1 の ジー スゲ ロダ ラム で きす 。 

“nam” E "ttl" 命令 に よっ て ヘッ ダ に 表示 
する 文字 を 変え ます 。 左 上 に "pip と 表示 
され て いる の は , この 命令 を 使っ た か ら で 
す 。 

"ifpl" は 条件 付き アセ ンプ ズル 命令 て , en 
dc" まで の 行 は パス 1 の と きだ け 有 効 , パ 
ス 2 で は 無効 で す 。“ ifpl^ Oft 5 "ifeq', 
"ifne", "iflt" な ど が あり ます 。 ど else′ も 使 
用 で きま す 。 アセ ンプ ガラ は プロ グラ ム る 2 
回 読ん を で マシ ン 語 に 翻訳 し ます が , LH 
を パス 1, 2 回 目 を パ 
ス 2 と いい ます ラバ 区 
1 で は シン ポル テー 汗 
ル (ラベ ル の 値 を 記憶 
し て いる テー ブル ) を 
作り 、 SAALTA 
語 に 翻訳 し た も の を 出 
力 し ます 。 バ パス で は 
不要 と な る 部 分 を , 
“ifp1 k “ende” て は る 
が こと た に より 。 X2 
で 読み と ば す の で , ア 
モン ブル 時 間 が 短縮 き 
fuz. 

リス ト 1 で は 表れ て 
いま せん が 。 ifp1 と 
“ende" の 間 に は , “use” 
命令 が 使わ れ て いま す 。 
“use/d0 /defs/defsfile” 
Tact aE 
"defsfile" が 挿入 られ ま 
す 。“defsfile は シス テ 
ム の シン ボル ん 定義 を し 
て いる の て す 。 で の プ 
ァイル は C の "stdio.h" 
の よう な も の て で, cP/ 
MT BDOS コ ユー ル を す 
る とき に 。 
ョ ン No. を 名 前 で 書け る 


Page 001 


ファ ンジ ンク SS 


58 1984-9 


OWM 


よう に する ため, あらかじめ"equ′" に よっ 
て No を 定義 し て お く よ う な 部 分 が まとまっ 
も かる フ ア デイ ル て す 。 サザ サー ビス リク エエ スト 
を ニモ ニッ ク 名 で 使う た め に は , この ファ 
イル が 必要 で す 。 "mod" に よっ て モジ ュー 
ル ヘ ッ ダ が 作成 され ます 。“mod" の あと に は , 
6 つの 値 が 必要 で す 。 

. モジ ュー ル の 大 きき る 

. モジ ュー ル 名 まで の 相対 アド レス 


. モジ ュー ル の 属性 と 改訂 数 
. モジ ュー ル の 開始 アド レス 

・ モジ ュー ル が 必要 と する 最小 の 作業 
領域 の 大 きき 


それ ぞ れ "msize , "name", "type", “revs”, | 


Q 071 A C N rnm 


“start”, size と いう ラベ ル で 指定 し て い 
i7. 

"msize iX “emod” 命令 の 直後 に 置き ます 。 
"msize equ *" に よっ て モジ ュー ル の 大 き 
きる が わかり ます 。 “※* ま "は, ブログ ラム アド 
レス カウ ンタ の 値 を 志 し て いま す 。 OS- 9 
TI“. に よっ て 示 る れる デー タ ア ドレ ス 
カウ ソン タダ も あり ます 。 プ ログ ラム アド レス 
カウ ンタ は 6809 の 命令 を 発生 する た びに 進 
DGN, デー タ ア ドレ スカ ウン タ は “rmb" 
な どの 命令 に よっ て ,。 デー タ 領 域 が と られ 
る た びに 進み ます 。 た と えば , “ldy #1” 
と いう 命令 に よっ て プロ グラ ム ア ド レス カ 
ウン タ は 2 だ け 増 えま す 。 そ の た め ブ ログ 


. モジ ュー ル の 型 使用 言語 | 


ラム の 最後 に "msize equ * ネ "と 書く こと で | 
モジ ュー ル の 大 き さ が わか る わけ で す 。 | 

"name fcs /pip/" C, モジ ュー ル の 名 前 
が 定義 され ます 。 "pp と いう 文字 列 を モ 
ジュ ー ル に 書き 込ん で 。 プ ログ ラム アド レ 
スカ ウン タ を 進め ます 。“fcs" に よっ て "pip" | 


ト 目 が 1 と な っ て いま す 。 

"type set prgrm 十 objct' C, この モジ ュ 
ー ル が プロ グラ ム モ ジュ ー ル で 6809 の ォ ブ 
ジェ クト コー ド で ある こと を 定義 し ます 。 
"prgrm 。 “objet” "は “defsflle" の な か で (GE | 
確 に は “0S-9 def” の 中 で ) 定義 され て い | 
ます 。 | 


また, revs set reent 十 1" C, リエ ント 
ラン ト て 改訂 数 が 1 で ある と し て いま す 。 
“reent” も "defsfile" で 定義 さ きれ て ます 。 これ を 
つけ な けれ ば 。 リ エン トラ ント で な い ブ ョ 
グラ ム で ある こと を 示し ます か ら , ブロ グ 
ラム 領域 を 書き 直し て も か まわ な いこ と に 
な り ま す が , マル チタ スク で は 使え な く な 
り ま す 。 改訂 数 を 増やす こと で , 同一 の モ 
ジュ ー ル が すでに メモ リ 上 に あっ て も , 古 
い モ ジュ ー ル を 消 き ず に , 使用 で きま す 。 

前 日 上 が 終わ っ て , デー タ の 定義 に 移っ 
を きま し だ 。 

"buffer rmb 1 "て で て, 1 バイト の 領域 が 確 
保 さ れ ま し た 。 
ルド に “D” が つい て いま す (“00009 D 
0000” O"D") この 領域 は デー タ の 入出 力 
時 に 使う もの で す 。 

“rmb 250" C, スタ ッ ク の た め の 領 域 を 
確 休 し て お きま す 。 サ ブル ー チ ン と し て 使 
われ る モジ ュー ル が 。 スタ ッ ク 上 に 変数 領 
域 を と り ま すか ら , これ で らい は 確保 する 
必要 が あり ます 。 

"size equ. て , モ ジュ ー ル の 必要 と する 
最小 デー タ 領 域 が 指定 され ます 。 

さて プログ ダラム の 
説明 に 入り まし ょ う 。 

"start equ *” E "mod" 
に より デ ロ グ ラム は こ 
こ か ら 実 行 る され ます 。 

shell か ' ら 市 件 が 移さ 
れる と レジ スタ は 図 1 
の よう に 設定 され て い 
ます 。 ダ イレ クト アド 
レッ シン グ を 使え ば デ 
ー タ 領域 の 配置 に つい 
て 意識 し な いで 済み ま 
す が 。 ダイ レク ト ア ド 
レッ シン グ を 便 わ な い 
場合 は 。 イン デック ス 


ト ア ドレ ッ シ ン グ を 使 


イン フォ メー ショ ン フ ィ ー 


nam pip 
ifpl 


endc 


rmb 250 
size equ 


Ldy H1 
Lda HO 


bcs exit 
inca 


os? i$write 


deca 
bcc nextc 


bne error 


start equ x 
Leax buffer,u 


レス が メレ ジス タタ に 求 ま り ます 。 こ うす る 
こと に より デー タ 領 域 が メモ リ 上 の どこ に 
割り あて られ て も , プロ グラ ム を 修正 し な 
いで 利用 で きる わけ で す 。Z80 な ど で は こ 
の よう な こと が で き な い の で :。 パシ ンク 甚 .9 
換え を 使っ て , マル チタ スク を 実現 し て い 
Ay M 

"os9 i$read' C, Y レ ジス タ の 値 だ 
け , A レ ジス タ で 示さ れる パス 番号 の パス 
より 。 データ を 読み 込み まる 。 ELTAX 
レジ スタ で 示さ れる と ころ に , 書き 込み ま 
す 。 フ パス 番号 は , “os 9 i$open" を 使っ て 
得 ら れ ま す が , 標準 入力 パス は 0 で 標準 出 
カカ パス は 1 に な っ て いて 。 ファ イル を 改め 


[x] 1 


レジ スタ の 設定 


高位 アド レス 


タイ レク トペ ー ジ 


U,DP 低位 アド レス 


リス トラ 


use /d0/defs/defsfile 


mod msize,name, type, revs, start, size 
name fcs /pip/ 

type set prgrm*objct 

revs set reent-*1 

buffer rmb 1 


nextc os9 i$read 


exit cmpb He$eof 


cLrb 
わな くく て は いけ ませ ん 。 error os9 f$exit 
“ " emod 
leax buffer, u に よ msize equ x 


っ て バッ ファ の 実 ア ド 


OlMFM 


1984-9 59 


て オー ダシ ジ も な (て も 使え ます 。 

リス ト 1 で は "ldy Zi"-"lda £0" 
より , 標準 入力 パス か ら 1 文 字 だ け 入 力 す 
みよ うに し て いま す 。 

エン ド オ ンジ フ アイ ル に な る か 。 ラー が 
生じ る と キャ リー ビッ ト が 1 に な る の で , 
"bes exit" に より ルー プ が 終了 し ます 。 

"inca" て 出力 パス 番号 を 1 に し て , 次 の 
"os9 i$write" C, 標準 出力 パス へ 出力 
する よう に し て いま す 。 

EnS 

ー が な いか ぎり ,。 次 の 
文字 を 読み に いき ます 。 


[17 ka] 
bcc nextc 


Microware OS- 
Isort  DS-9. 


し よう か 


Q? いっ ぱい 


な が いこ と を 示す こと に な っ て いま す 。 

これ て リス ト 1 の し て いる こと が 。 お わ 
か り い だ だ けた だ でしょ うか 。 他 に も 多く の 
サー ビス リク エス ト が あり ます の で 。 マニ 


ュ ア ル を ご ざ ご覧 くだ きい 。 


リス ズ スト 4 


9 Assembler 2.1 00/00/00 00:06:38 
System Symbol Definitions 


00001 nam isort 
そし て "os9 i$write 00002 1fp1 
"OM : . 00004 endc 
て エラ ー が 発生 する か , | 00008 0000 87CD004C mod 
« TTE “ 00006 0021 type set sbrtn*objct 
bes exit に よう cmpb 00007 0081 revs set reent-*1 
Ze$eof'(t, 制御 が 移 00008 000D 69?36F ィ 2 name fcs /isort/ 
" 00009 D 0000 size equ 
っ て きま す 。 B レ ジス 00010 0012 start equ x 
: — 00011 0012 EC62 Ldd 2,s 
和泊 00012 0014 10830001 cmpd #1 
入っ て いる の で 。 エン 00013 0018 262A bne error 
m À 00014 001A 10AE66 Ldy 6,s 
ド オ ブフ ァイル が 発生 し 00015 0010 LoopO 
3d S aos ss - 00016 001D SISE Leay -2.,Y 
だ た か どう か 調べ て お りう, 00017  O01F 2721 beq exit 
“e$ eof" は “defsfile" 00018 0021 8E64 Ldx | 6.s 
Dp 00019 0023 Loop1 
CoEÉd€ o (LC 01 00020 0023 EC81 Ldd OX 
4 00021 0025 104384 cmpd  ,x 
* 00022 0028 2FORa bLe skip 
も し も エン ド オ プ ブフ 00023 OO02 3406 pshs a.b 
00024 002C EC84 Ldd | .x 
アオ ル が お お き て いい だら し 。 00025 002E ED1E std -2.x 
" . - 00026 | 0030 3506 puls a.b 
EFELETT 00027 0032 ED84 std  .x 
! = P 00028 0034 skip 
TEREG; Bie 00029 0034 313E Leay -2.y 
タ を 0 に し ,。 そう で な 00030 0036 26EB bne Loop1 
3b N 00031 0038 10aE66 Ldy 6,s 
い 協 合 は B レ ジス タ は 00022 003B 313E Leay -2,y 
= 、 00033 003D 108F66 sty 6.S 
を の まま に し て お きま 00034 0040 200B bia nlD 
qd, 00035 0042 exit 
。 "TIE 00036 0042 SF cL rb 
os9 fSexit "C, Z 00037 0043 39 rts 
o - 2 00038 0044 error 
人 に) 00039 0044 86FF Lda — H$ff 
C, 制御 を これ を 呼び 00040 0046 1F8A tfr act 
ー 00041 0048 39 rts 
出し た プロ セス に 返し 00042 0049 90270F emod 
TNCS T 00043 004C msize equ * 
ます 。 た だ たいがい の 場合 , 00044 end 
shell に 戻り ます 。 
. 00000 errors» 
B レ ンジ ンス タ に は ステ ー 00000 warning〈s) 


$004C 
$0000 
$23C5 


タス コード を 入れ て 。, 
この 命令 を 呼び 出し ま 
es.0. な ら ば は エラー が 


00076 program bytes generated 
00000 data bytes allocated 
09157 bytes used for symbols 


リ A ト 1 は shell 2 ら 呼び 出 し て 使 う "d 


ログ ラム で し た が , 次 に , BASIC か ら 呼 


Page 001 


msize, name, type, revs, start,size 


60 1984-9 


OI/FM 


び 出 す マ シン 語 サ プル ー チ ン を 紹介 し まし | 
Es | 
リス ト 4 は 整数 型 配列 の デー タ を 昇順 に | 
ソ ジ ソート す る プロ グラ ム で す 。 
マシ ン 語 に よっ て プロ ョ ログ ダグラム を 書 
C, 処理 速度 が 上 が る だ け で な く , 


Ai. 
配列 の 


大 きる や 。 引数 の 数 に よら な い プ ロ シ ー ジ 
ャ を 書く こと が で きま す 。 BASIC09 の 配 


列 の 大 きき は 可変 に で き な い の で , 汎用 の | 
ソー ティ ング プロ シー ジャ を BASIC09 で 
書く こと は で きま せん 。 マ シン 語 で は 引数 
の 大 きる が 利用 で きる の で , 配列 の 大 きき 
に よら な い プ プロシージャ が 書け ます 。 引 数 
が シス テム スタ ッ ク 上 で どの よう に 渡る され | 
る か を 示し た の が 図 2 で す 。 

リス ト 4 は バブ ルソー ト で す 。 リ スト 1 
と の 違い は type が sbrtn に な っ て いる こと | 
が , まず あげ られ ます 。 こ の た め デ ー タ 領 | 


図 3 


ISORTB と ISORT の 実行 時 間 の 比較 
時 間 ( 秒 ) 


ISORTB 1293 


リス ズ スト ら 5 
PROCEDURE stest 

0000 
000C 
0017? 
001A 
002A 
0038 
004B 
0056 
0061 
0064 
0074 
0085 
0095 
0060 
006^ 
00B5 
00B8 


シン チン こみ 


PRINT DaTE$ 
FOR J=1 TO 10 


NEXT I 
NEXT J 
PRINT DATE$ 
FOR J=1 TO 10 


NEXT I 

RUN ISORT(A») 
NEXT J 
PRINT DATE$ 
END 


ISORTB _ 
ISORT ^9/.4 


DIM 4€1000»5:INTEGER 
DIM I.J:INTEGER 


FOR I=1 TO 1000 
ACI»21000-I 


FOR I-1 TO 1000 
&CI»-21000-I 


域 を rmb て 確保 し よう と し て も 実行 時 に は 
確 作る され ませ ん 。 こ の プロ シ ジ ャ の 作業 
領域 は スタ ッ ク 上 に と り ま す 。 
は 特に 使っ て いま せん か が 数 バイ ト 以 上 の 領 
域 を 必要 と し た ら , スタ ッ ク を 下げ て 作業 
右 域 を 作り ます 。 

マン ン 語 や デバ ッ グ する た だめ に は , 普通 
は デバ ッ ガ を 使い ます 。 B レ ジス タ に 値 を 
入れ て 戻る と エラ ー が 生じ た も の と みな さる 
NT, エラ ーー 番号 を 表示 し て , つま り , B 
レジ スタ の 値 を 表示 し て スト ッ プ する こと 
を 利用 し て も デバ ッ グ が で きま す 。 

リス ト 5 は , リス ト 4 を 使っ た ソー ト テ 
スト で す 。.BASIC09 の ゲロ シ ジ ャ で 行っ 
た 場合 (リス ト 6) と 比較 し て みて くだ きる 
v, な お , ISORTB(BASIC09) と ISORT 
(マシ ン 語 ) の 実行 時 間 の 比較 を 図 3 に 載せ て 
お きま す 。 


0000 
000C 
0013 
0024 
0034 
003F 
0042 
004C 
004F 


0000 
000C 
0013 
0014 
0031 
0042 
0058 
0064 
0076 
0086 
0088 
0093 
009E 


リス ト 4 で 


OS- 9 で の マシ ン 語 プロ グラ ム の 書き 方 
i, 以上 で 多少 と も お わか り い だ だ けた と 
思い ます 。 例 と し て あげ た プロ グラ ム は 人 筒 
単 な も の で す が , 実用 性 は あり ます し , X 
良 も あし や すい は ず で す 。 こ れ を 参考 に し て , 
多く の 方 が マシ ン 語 を 使わ れる こと を 期待 
し ます 。 


図 2 引数 の 渡さ れ 方 


n 番 目 の 引 数 の サイ ズ 
n 番 目 の 引 数 の 格納 番地 


1 番目 の 引数 の サイ ズ 
1 番目 の 引数 の 格納 番地 


引き 数 の 数 (n) 
戻り 番地 


ソ ズ 人 


PROCEDURE stestb 


DIM AC1000) : INTEGER 
DIM I:INTEGER 
FOR I=1 TO 1000 
AC I)=1000-I 
NEXT I 
PRINT DATE$ 
RUN ISORTB(A») 
PRINT DRTE$ 
END 


PROCEDURE isortb 


PARAM a〈1000) : INTEGER 
DIM i: INTEGER 
DIM j: INTEGER 
FOR 15999 TO 1 STEP -1 
FOR j=1 TO i 
IF a€j»»a€Cj*15 THEN 
t-aCj» 
aCjozsa(Cj-*1) 
aCj*1»-2t 
ENOIF 
NEXT j 
NEXT i 
END 


バッ ク ナ ン バー 情報 (Vai. 1 84 88230 

Vol.1~6 は 品切れ 。Vol.1~3 は 別冊 「FILES Oh ./ FM」 と し て 合 本 。 

Vol.7 特集 / デ ィ ス ク 活 用 術 , オー ル RAM 活 用 法 , 幕 子 の 住所 録 , 他 

4 月 号 特集 / 躍 取り 専科 , 使 い 勝手 の よい マシ ン 語 モニ タ , FM-11 
BS-AD2, ア ド ベ ンチ ャ ゲー ム 開 発 ツ ー ル , 他 こ 

5 月 号 特集 / 日 本 語 ワ ー プ ロ 徹 底 研究 , FM-7 を 解析 する , レイ ト 

レー シン グ を 用 いた 3 次 元 プ ラフ ィ ッ クス , e 


@ バ ッ ク ナ ン バ ー ご 希望 の 方 は , 


_ FM-11 サ プシ ステ ム の 研究 , 6809 機 械 語 マス タ 84, 他 


689 特集 / エ ンジ ョ イツ FM 音楽 ゴコロ FM- と FM M-NEW. 


7 月 号 特集 / お いし い プ リン タ 大 研究 , B Boo6 コ ん 
キャ ラフ タプ ログ ラム , Ke Ns 
8 月 号 UNION. UC 


REUOREIA LAC, 常備 店 (8 月 号 P. MEER) E ee (EBw 


ce 


em 


この 逆 ア モン プラ は , オブ ジェ クト を デ 
ィ ス ク フ ァ イル か ら 入 力 す る よう に し て あ 
り ま す 。 こ れ は , 逆 ア モン ブラ 本 体 が か な 
り 大 きい た め , メモ リ 上 の モジ ュー ル を 逆 


ア ャ ンプ ブル する よう に 作る と , 逆 ア モン プ | 


ラ 本 体 と 同時 に メモ リ 上 に 置け な いよ うな 
大 き な プ ログ ラム が 逆 ア セン ブル で き な い 
か が ら 6 で す 。 し た が っ て , メモ リ 上 の OS-9 
の シス テム モジ ュー ル (Os9p1, Os9p2, 

SCFMan, RBFMan な ど ) を 逆 ア モン ブル 
し た い 場 合 は , 一 度 , SAVE コマ ンド を 使 


ot, ディ スク 上 の ファ イル に し て お く 〈 必 | 


要 が あり ます 。 


出力 され る ソー スプ ログ ラム に は ラベ ル | 
を 付け られ ます の で , 作業 領域 と し て ラベ 


ル テ ー ブ ル が 必要 で す 。 この 逆 ア セン ブラ 
で は , これ も ディ スク 上 の ファ イル を 使っ 


て いま す 。 し た が っ て , 実行 中 に 頻繁 に デ | 


ィ ス ク を アク セス する の で , 逆 ア モン ブル 
の 遠き は 若干 遅く な っ て いま す 。 まだ, Z 
の ラベ ル テ ー ブ ル は , プロ グラ ム を 簡単 に 
する た だ ため, ラベ ル の 名 前 を 入れ る の で は な 
l 64KB の ファ イル を メモ リ 空 間 に 対 応 き 
せ て , 各 バ イト の デー タ 内 容 で , その アド 
ンス に 対応 する ラベ ル を 示す 構造 に し て い 


ます (「 プ ログ ラム の 説明 」 参 照 )。 し た が | 


っ て , ラ ベル ファ イル で ディ スク を 64KB 使 
と ょ - に に なり ま す 。 出力 形式 は 。 ア セン プ 


OWM «—— 


19849 61 


ラ の ソー スプ ブロ グラ ム 形 式 と , アド レス , 
機械 語 の 付い た アモ セン ブル リ スト 形式 を 選 
ぶ こ と が で きま す 。 当然 パス リス ト で 出力 
先 を 指定 する の で , 寺 ア イル や , A R 
へ も 出力 で どき ます 。 た だ し , »—7 AE 
出力 し て も , 今回 の バー ジョ ン で は その ま 
まで は , アセ モン ブラ に か ける こと は で きま 
せん 。 それ は , プロ グラ ム の 範囲 外 の アド 
ンス を 持つ ラベ ル が 定義 きれ な い だ ため です 。 

iin エク グ クス テン ドア ドレ ッ シ シ ング や , 
イレ クト アド レッ シン グ (JMP, JSR を 
除く ) d, オペ ラン ド に は 表れ ます が , ラ 
ベル フィ ー ル ド に は 出 な いよ うに し て あり 
ます 。 こ れ は , OS-9 の プロ グラ ム は , すべ 
て リロ ケー タブ ル で ある は ず だ か ら 6 で す 。 
将来 は 。 これ ら の ラベ ル は , 出力 ブロ グラ 
ム の 先頭 で EQU 定義 きれ る よう に し た いと 
思い ます 。 

を の ほか , 未定 義 命令 は FCB で 表 る れ , 
モジ ュー メル 定義 の た め の MOD 命令 , EMOD 
命令 も 出さ きれ ます 。OS-9 の シス テム コー ル 

(SWI 2) は os9 疑似 命令 で 出力 され , そ の 
LX OS-9 の シス テム コー ル の ラベ ル が つく 
まう に し て あり ます 。 


À H 
この プロ グラ ム は , テキ スト の 状態 で 約 | 


30KB, パッ ク す る と 約 半 分 に な り ま す 。 
OS-9 レベ ル 1 を 使っ て いる 人 は , いっ ぺん 


に 入力 する こと は 不可 能 な の で , 各 プ ロジ 


アセ ヒン ブフ V10 simto 


OS-9 の 6809 機 械 語 モ ジコ ゴール を 逆 ア セン ブル 
する プロ グラ ム を , BASIC 09 を 使っ て 作り まし 
だ の で 紹介 し ます 。 今回 は , バー ジョ ン 1.0 こじ 
て 発表 し ます 。 最 終 的 に は , OS-9 の アセ ン フ 
ラ (Asm) に か か る よう な アセ ンプ ラ ソ ー ス プロ グ 


ラム を 出力 で きる よう に し だ いと 思っ て いま す 。 
いろ いろ 付加 し だ い 機 能 が あり ます が , R, € 
れ ら を 拡張 する こと を 前 提 と し て 作り まし た だ 。 こ 
りあ え ず 今回 の バー ジョ ン で も , シス テム ブ プログ 
ラ ハ の 解析 に は 使え る と 思い ます 。 


ジャ ご と に 打ち 込ん で ,! セ ー グ し て か ら 
パック し て いき ます 。 そ し て 全部 打ち 込ん 
126, MERGE コマ ンド (これ は BASIC09 
の 命令 で び は あり ませ ん ) で パッ ク さ る れ た 各 
モジ ュー ル を 1 つ に まとめ ,disas と いう 名 
の ファ イル に し て お きま す 。 これ は , 「 複 数 
の モジ ュー ル が まとまっ た モジ ュー ル は , 
を の 中 で 一 番 は じ め に 実行 きれ る モジ ュー 
ル 名 を ファ イル 名 と し て お が な いと いけ な 
い 」 か ら で す 。 も し disas と いう ファ イル 名 
で は 都合 が 悪けれ ば , disas と いう いち ば ん 
は じ め の プロ シ ジ ャ 名 を , 都合 の よい ファ 
イル 名 と 同じ 名 前 に 変え る 必要 が あり ます 
(BASIC09 の RENAME コ マン ド を 使 
の 

FM-11 で OS-9 レ ベル 2 を 使っ て いる 方 
ij, いっ ぺん に 入力 で きま す 。 


e 


1 に 実行 例 を 示し ます 。 

disas⑦ と し て 人 逆 ア モン プラ を 起動 する と 
メニ ュー 形式 で 聞い て きま す 。 

① は じ め に グリ ー テ ィング メ ッ セ ー ジ が 
表示 る れ た あと , 
target file name ・ 
と 聞い て くる の で , 逆 ア モン プル し た い モ 
ジュ ー ル の 入っ て いる ファ イル の パス リス 
ト を 入力 し ます 。 

QRL, 


select label initializing mode 


62 1984-9 


1 …create new file 
2 …update existing file 


3 …re 一 uSe existing file 


と 聞い て きま す 。 これ は , ラベ ルフ ァイル 
を どう 初期 化す る か を 指定 し ます 。 

1 は , 新しい ファ イル を つく っ て , 初期 
IEL 2 T. 

2 は , すでに 存在 する ファ イル を 初期 化 
せ ず に 使い ます 。 

3 は , すでに 存在 し て いる ファ イル を 。, 
初期 化し て 使い ます 。 

③ す る と 次 に , 
label file name : 
LMT: SOT, タラ ベル テー プル と し て 
使う ファ イル の > スリ スト を 入力 し ます 。 

初期 化 の 指定 が あれ ば (② で 1 か 3 を 指 
定 し だ た とき) 
Initializing label file, wait a moment! 
と 表示 し て , ラベ ルフ ァイル の 初期 化 を 行 
いま すず す 。 

QKE, 
select pass type 
ー 1 “exit to 05-9 

0 …simple disassembler (no label) 

1 …label — registration 

2 -label — registration & reference 

3 


-label reference 


と 聞い て きま す 。 

ー 1 は 逆 ア モン プラ を 終了 し ます 。 

0 は ラベ ル 変 換 を 行わ な い 逆 アセ ンプ ブラ 
TTo 

1 は , ラベ ル の 登録 どけ を 行う パス で 
ラベ ルフ ィ ー ル ド に は ラベ ル が 出 ま せん が , 
オペ ラン ド フ ィ ー ル ド に は ラベ ル が 出 ま す 。 

2 は ラベ ル 登 録 を し な が ら 参 照 も 行い , 
ラベ ルフ ィ ー ル ド に も ラベ ル を 出し ます 。 
だ だ し ラベ ル が 前 方 参照 に な っ て いる も の 
は , も ちろ ん 表示 る され ま せん 。 

3 は , すでに 1 か 2 で ラベ ル 登 録 を し た 
後 で 最終 的 に リス ト を 出力 する と き に 使う 
と よい で し ょ う 。 登録 は せ ず 参照 だ け で す 


OH/FM 


が 。 ラベ ルフ イオ イールド, オペ ラン シンド フォ ーー 
ルド と も に ラベ ル が 出力 され ます 。 

is, ラベ ル の 形式 に つい て は 「 ブ ログ 
ラム の 説明 」 で 説明 し ます 。 

⑤ 次 に , 

select output 一 path(path name,null- console) 
と 表示 る され ます 。 これ は , 逆 ア モン プル リ 
スト の 出力 パス の 指定 で す 。 リ ター ン の み 
を 入力 する と 標準 出力 パス が 指定 され ます 
(通常 は CRT), なお, 今 ま で 示し た 表示 
や 今後 述べ る 逆 ア セン ブル リス ト 以 外 の 出 
力も すべ て 標準 出力 パス に 出力 され て いま 
す 。 

⑥ 次 に 


select output — mode 


0 ---only source code 


1 …with address & machine code 


と 表示 る れ ま す 。 

0 を 指定 する と ,。 アセ モン プラ の ソー スプ 
ログ ラム 形式 の 出力 と な り ま す 。 

1 を 指定 する と , アド レス , 機械 語 の 付 


図 1 使用 例 ( 色 文字 を 入力 ) 


0S9:disas(. 


全 全 本 全 人 本 全 全 全 人 本 全 05-9 module-disassembler v.1. 


target file name: /d9/cmds/echo(-) 
select label initializing mode 
1...create neu file 
2...update existing file 
3...re-use existing file 
sik 
label file name : label'.) 
Initializing label file ‚wait a moment! 
select pass-type 
—1...exit to OS-9 


Q...simple disassembler(no label) 


.label-registration 


vi, アセ ンプ ルリ スト 形式 で 出力 きれ る 
よう に な り ま す 。 

⑦ 最 後に 逆 ア モン ブル の 範囲 を 聞い て き 
i37. 
start — address (hex) : 

スタ ー ト アド レス は , 16 進 ('「$」 は 不要 ) 
で 入力 し ます 。 リ ター ン の み を 打つ と スタ 
ー ト アド レス は $0000 と な り ま す 。 
end — address (hex) : 

エン ドア ドレ ス も 16 進 で 入力 し ます 。 リ 
ター シン の みて $FFFF と な り ま す 。 つ まり モ 


| I 
2...label-registration & reference 
Jes 


label reference 
:0 


select output-mode 
Q...only source code 


1...wuith address & machine code 


3 1 

start-address(hex):. 

end-address(hex) :() 

そそ そそ そそ そそ そそ そそ キキ そそ キ キキ そそ キ そ キネ キネ キネ 1 
module type= prog 


language - 6809 
attribute = re-entrant 
revision = $1 


taketake kakake kakake kakake katakataka kokoka kakake kokako] 


9999 87 cd 00 22 00 Od 11 81 0a 00 12 01 c2 


M. eX/ E 99 ee ee 9€* B 
999d 45 FCB $45 
999e 63 68 com 8,s 
0010 ef 05 stu Sox 
0012 1f 02 tfr sY 
0014 86 01 1da #$01 


select output-path(path_name,null..console): ©) 


mod $0022,$000d,$11,$81,$0012,$01c 


ʻE E 
ch 
o. 


Oh/FM 


1984-9 63 


9916 19 3f 8c os9 I$UritLn 
0019 25 01 bcs $001c 
001b 5f clrb 

991c 10 3f 06 os9 F$Exit 

x 

991†f f5 ff 9a emod 

x 


select pass-type 
—1...exit to 05-9 
Q...simple disassembler(no label) 
1...label-registration 
2...label-registration & reference 
3...label reference 


:1 (の 


select output-path(path name,null..console):(.) 


select putput-mode 
Q...only source code 
1...uith address & machine code 
:1Q 
start-address(hex): (2 
end-address(hex) : © 
X X JE ME IE JE JE JE JE JE JE JE E JE ME JE E JE JE ME FE XE XE XXXX 
module type= prog 
language = 6809 
attribute re-entrant 
revision $1 
XX OOCOOOOOOOOCOOOCOOOOOOOCOOOCOCOX 
9999 87 cd 00 22 00 Od 11 81 0a 00 12 01 c2 
812,.4901c2 M. 。。。。。。。。B 


999d 45 FCB $45 
999e 63 68 com 8,s 
0010 ef 05 stu 5,x 
0012 1f 02 tfr d,y 
0014 86 01 lda #$01 
0016 10 3f 8c os9 I$Ur itLn 
0019 25 01 bcs PP 001c 
991b 5f clrb 

991c 10 3f 06 os9 F$Exit 
x 

Q01f f5 ff 9a emod 

x 


select pass-type 
=f. Exit to.0S5-9 
Q...simple disassembler(no label) 
1...label-registration 
2...label-registration & reference 
3...label reference 


1 の 


select output-path(path name,null..console):(.) 


select output-mode 


9...only source code 
_ 1...with address & machine code 
:1( の _ 
start-address(hex):(-) 
end-address(hex) : © 
ト そ そそ そそ そそ そそ そそ そそ そそ そそ キネ そそ そそ そそ そそ ネコ] 
module type- prog 


language - 6809 
attribute = re-entrant 
revision = $1 


akakata keka kakake kaka katoka kakake ka kakake kakake XX X 
0000 87 cd 00 22 00 Od 11 81 0a 00 12 01 c2 
012,$01c2 M ud vsrh 


999d 45 PD_999d FCB $45 
999e 63 68 com 8,s 
0010 ef 05 stu 5,x 
9912 1f 92 PP 0012 tfr d,y 
0014 86 01 lda #$01 
0016 10 3f 8c os9 I$Ur 1tLn 
0019 25 01 bcs PP 001c 
001b 5f clrb 

991c 10 3f 06 PP 001c os9 F$Exit 
x 

991f f5 ff 9a PP 001f emod 

x 


select pass-type 
—1...exit to OS-9 
Q...simple disassembler(no label) 


1...label-registration 
2...label-registration & reference 
E 3...label reference 
:-1(7) 
0859: 


mod PP 001f*3,PD 000d,$11,$81,PP 0 


E E 
ch 


Oo. 


mod PP 9001f*3,PD 000d,$11,$81,PP 0 


E E 
ch 


Q? いっ ぱい 


ジュ ー ル の 全 範 囲 を 逆 ア セン ブル し た けれ 
ば 続け て 2 回 リタ ー ン を 打 て ば よい の で す 。 

(91 2 L,CRT に モジ ュー ル の 属性 が 表 
示さ れ ( 標 準 エラ ー 出 力 パ ス ), その 後 , ⑦ 
で 指定 し た スタ ー ト アド レス か ら 逆 アセ ン 
ブル リス ト ま た は ソー スプ ログ ラム が , fü 
定 し た 情報 ちもと に ⑤ で 指定 し た パス に 出 
力 き れ ま す 。 出 力 ペ ス に CRT を 指定 し た 場 
合 , ター ミナ ルモード が ポー ズ 指 定 に な っ 
て いる と , 25 行 表示 する だ びに 出力 が 停止 
し ます 。 これが いや な と き は , あら か じ め 
shell の 入力 待ち で tmode 一 pause を 実行 し 
て お いて くだ きい 。 逆 アセ ンプ ル は , OT 
指定 し た オプ ジェ クト モジ ュー ルフ ァイル 
の EOF (end of file) を 検出 する か , ⑦ で 
指定 し た エン ドア ドレ ス を 超え る まで 続け 
られ ます 。 

逆 ア モン ブル が 終了 する と , の パス タ 
イプ の 指定 に 戻り ます 。 


ラベル の 出力 形式 


ラベ ル は 次 の よう な 形式 で す 。 


は じ め の 2 文字 は ラベ ル の 属性 を 表し ま 
す 。 ラ ベル の 属性 は , 図 2 の よう に 全部 で 
6 種 に 分 類 ろ され て いま す 。 メ メ お よび へ へ ハム 
へ は ラベ ル の アド ンス (16 進 ) で す 。 ダイ 
レク トモ ー ド は (1) の よう に 2 桁 ,。 その 他 は 
4 桁 で す 。 


ラベル の 選択 出力 


オペ ラン ド フ ィ ー ル ド に は すべ で て の 種類 
の ラベ ル が 出力 きれ ます が , ラベ ルフ ィ ー 
ルド に は , DP, PD, PP の 属性 を 持つ ラベ 


64 1984-9 


OI/FM 


ル の み が 出 力 る され ます 。 こ れ は OS-9 の モジ 
ュー ル は すべ で て リロ ケー タブ ル で あり , € 
ジュ ー ル 内 に ワー クエ リア が 存在 し な いか 
ら で す 。DP の 属性 を 持つ ラベ ル を 出力 する 
の は , OS-9 で て は, ダイレクト ペー ジレ ジス 
タ に ブロ グラ ム 先 頭 の ペー ジ を 入れ て お い 
て ダイ レク トモ ー ド の jmp, jsr 命令 を 使 5 
こと が よく ある か ら で す 。 


> ラベ ルフ ァイル 


ラベ ルフ ァイル は 64KB の 大 きる で , 逆 
アセ ンプ ブル 対象 の モジ ュー ル か ら み た だ アド 
レス 空間 に 対応 する ラベ ルフ ァイル 内 の デ 
ー タ 位置 (バイ ト 単 位 ) に , 属性 を 表す 情 


図 2 ラベ ル の 属性 表示 


アド レッ シン グ 


EZART ITIR 
アド レッ シン グ 
プロ グラ ムカ ウン タ 
リラ ティ ブ 
アド レッ シン グ 


図 3 ラベ ルフ ァイル 内 の 属性 デー タ の ビッ ト 対 応 


MSB 
7 


図 4 


9964 
9968 
996a 


83 00 01 


99a8 
99aa 
99ad 
99ad 


命令 の 途中 に ラベ ル が ある 場合 の 出力 例 


PP_9964 cmpd 


PP_99a8 ldb 
ldx 
PP_99ab EQU 


coma 


報 が 書き 込ま れる よう に な っ て いま す 。 図 
3 に 各 属 性 の ビッ ト 対 応 を 示し ます 。 

っ の SN の — 
>m DORAIN 

— a“ い HA 

ラベ ル が ある 場 台 

命令 の 先頭 アド レス に ラベ ル の アド レス 
が 対応 し て いる の が 普通 で す が ,。 デー タ エ 
リア が 逆 ア モン ブル され て いる 場合 や 。 プ 
ログ ラム トリ ッ ク の ある 場合 で 命令 の 途中 


に ラベ ル が 定義 きれ て し まっ て いる 場合 は , 


その 命令 の 直後 に EQU 疑似 命令 で 図 4 の よ ょ 
う に 出力 され ます 。 


> プログ ラム の 構造 


図 5 に 各 プ ロ シ ジ ャ 
の 関係 を 示し ます 。 

各 プ ロ シ ジ ャ の 働き 
は , 次 に 述べ る よう に 


な っ て い Bu 

@ disas 
Idd £&ED. FFFF l et 
Ida «EP. 0100 この 逆 ア モン ブラ の 


メイ ン ル ー チ ン で 。 A 
ニュ ー 形 式 の コマ ンド 
入力 と , 逆 ア セン プル 
の メイ ン ル ー プ か ら 成 
っ て いま す 。 
@disasm_ 1 line 

1 命令 だ どけ の 逆 ア セ 
ン ブ ル を 行う ゲロ シ ジ 
pT, ニモ ニッ ク と オ 
ペラ ンド ・ を その 他 を 返 
し まず 。 


WED 0001 
PP 00ab 
ノッ ツア 


bhi 


leau 


#$2e 
#ED_c638 
x-2 


@ word immediate, byte immediate, 
direct page indexed, extended, 
short branch, long. branch 
それ ぞ れ , 各 ア ドレ ッ シ ン グモ ー ド の オ 

ペラ ンド を 作成 する ルー チン で , 必要 に 応 

じ て label_manager を 呼ん を で ラベ ル の 登録 

を 行い ます 。 

@ os9 
OS-9 の シス テム コー ル 和 命令 (SWI2) の オォ 

ペラ ンド を 作成 し ます 。 こ れ は , OS9Defs に 

定義 きれ だ た も の と 同一 で す 。 


@ module header 


モジ ュー ル ヘ ッ ダ の 内 容 を 解析 し て , 必 


要 な パラ メー タ は ラベ ル 登 録 し ます 。 ま た , 


その モジ ュー ル の 属性 を 標準 エラ ー 出 力 パ 
REMMI LET, 


@ emod 


モジ ュー ル の 終わ り を 示す emod 命令 の 


処理 で す 。CRC が 正しい か どう か の チェ ッ 


ク は 行っ て い ま せん 。 


@ opcode main 


オペ コー ド を 解析 し て ニモ ニッ ク と アド 


レッ シン グモ ー ド を 返し ます 。 実際 に は プ 


リバ イト の 有無 を 調べ opcode normal, 


opcode pre 10,opcode pre 11 に 処理 


を 振り 分 ける だ け で す 。 


@ opcode pre 10, opcode pre 11 


を それぞれ ブリ バイ ト が $10, $11 の 命令 の 


オペ コー ド を 解析 し て ニモ ニッ ク と ,。 アド 


レッ シン グモ ー ド を 返し ます 。 


@ label initialize 


ラベ ルフ ァイル の オォ オー プン お よび イニ シ 
ャ ライ ズ を 行い ます 。 イ ニシ ャ ライ ズ は , 


すべ で て の デー タバ イト を すべ で て $00 に 書き 換 


えん る だ び で する 


@ label reference 


与え られ だ アド レス か ら ラ ベル ファ イル 
を サー チ し て 次 の ラベ ル を 返し ます 。 


@ label manager 


ラベ ル の 登録 を 行い ます 。 登録 は 属性 バ 
イト の OR を と っ て い 〈 く ので, 同一 アド レン 
ス に 異な る タイ プ の ラベ ル が 対応 し て いて 
も 独立 に 登録 る され ます 。 


@ find attr 

属性 バイ ト の 「1」 の ビッ ト を サー チ す 
る プログ ラム で , label_reference か ら 呼 
ば れ ま す 。 
@ print source | 

逆 ア セン プル 結果 を , 指定 され た フォ ー 
マッ ト で 指定 され た パス に 出力 し ます 。 
@ make mcasc 

マシ ンコ ー ド と その ASCII コー ド を 文字 
列 に し ます 。 
Q make 2hex,make 4hex 

BASIC09 に は HEX$ 関 数 が な い の で , Z 
れ ら の プロ シ ジ ャ を 使っ て いま す 。 

@ get next byte, get next word 
オォ オプ ジェ クト モジ ュー ルフ ァイル か らら, 
それ ぞ れ 1 バイト, 

ロ シ ジ ャ で す 。 
@ byte to. int 


disasm. 1. line 


short. branch 
module. header 


opcode main 
opcode. normal 


その 


2 バイト を 取り 出す プ | 


disas 


long... branch 


opcode. pre. 10 


1984-9 65 


| BEEJ ENTUKSH 


1 バイ ト を 2 の 補 数 表示 と みた と き の 値 
を 計算 し ます 。 
@ int to real | 

この 逆 ア モン ブラ ブロ グラ ム 全 体 を 通じ 
T, アド レス は 整数 型 の 変数 に 入れ て いま 
す が , 整数 型 は 2 の 補 数 表示 な の で , アド 


レス の 比較 の 際 に 困り ます 。 そ を こ で この プ 


ロ シ ジ ャ は , 整数 型 の 値 を , 0 一 65535 の 正 
の 数 と 見 た 場合 の 値 に 変換 し ます 。 


< いい M 


を い 〈 つか 述べ て お き ます 。 
私 は ,。 この 逆 ア モン ブラ の 作成 に あたっ 


label initialize 


psh. pul 


label. manager 


opcode. pre. 11 


他 


label. reference 


find. attr 


Q? いっ ぱい 


て FM-11 の OS-9 レ ベル 2 (V1.1 L2.1) を 
使っ た の で す が , これ に は 若干 の パグ が みあ 
る よう で す 。 ど う も プロ グラ ム の セー プ 中 
に Control-C を 打つ と , ディ スク と デ え ゼ 
クト リ が 破壊 され る こと が ある よう で す 。 
私 は , この プロ グラ ム 作 成 中 に 2 回 被害 に 
Wo Lo 1 回 目 は , 一 晩 か け て ディ レ 
クト リ を 復元 する ハメ に な り ま し た だ (お か 
げ で OS-9 の ディ スク の フォ ー マ ッ ト が よく 
わか り ま し ただ)。 2 回目 は , この 原稿 を 書い 
て いる と き で ', 原稿 提出 が 1 日 遅れ て し ま 
いま し た 。 使っ て いる 人 は 注意 し た ほう が 
いい で す よ 。V11 L22 で は この パグ は と 
れ で いる よう で すず 。 

今回 の プロ グラ ム は , BASIC09 を 使っ て 
は じ め て 書い た まとも な プロ グラ ム な の で , 
いく つか, BASICO に つい て 気付 いた 点 を 
述べ て お きま す 。 


print source 
make. mcase 


ーー — ` こと c 
mm る INAR E E PEMUMCL EM A  BEES E Ru TEX. 
いさ ンタ su Rx Am MOM OIEU UH  N uL SD S Sow od N S n 藻 | $ 時 
7 の =~ œ% Yy ( ーー 2 94e m ~~ WY MY m NJY S NM g ワ NM Ir Y nw E 
(7 8 NX nc m Gi na M C Ww SE irc on oS "Zl E の — CC T 
E WP 5x 6m D X o u qoM JH n d Mog er Dow Pow MOS 9 Cory og Wo S oW m oW bu 
a. s wiy o ーー て 
E x o£ 7 ow ov M ON rc ND BIS Ed mw m B X 5 uc M NM E NC P 
へ oo a 9 Co» ご NI / UH grows Aer E (C Duo C vr oL EM ON S NOM. a n e 
ow Eo oO o9 tk S S8 MB o uo ogg U o M ve NS 0 8 Ww 2 POS 
o p oGROÓ X HE ci 4A TE US oae v eC か ーー 
^ ~rs ここ 4 e> 
cow qu I y 7 99 n80*5Us*53 usi 4 O75 8 
RN VQ 25 M os 9 mE NR LM aS ZEE ev e pons- の WM Nm ore M 
| S. 7 ん JA d e 2 
Ha U RO B CUP TEE ダマ づやの や Woo v oan WO 9x XM 
Em voy / WDR ICI DERI ew DOG ox T TD SN C OB PON c ー 
iz NXM o e KE ぶ ^ dE 3 ATAI Oye 
ZH ghe vw dB HEC Y '" c DW I = ルキ S AS OO moNX vow, esgmuEm 
He ef Mern 9e (Y m cp s x o & B c C BH. oc 0 - Sv vs E "uL 
m $e fu 2 (o さき E NE How m ox i T 
e x Com m je d 9 て — rr 4 Rb x r qox AP E | oos 
M e ロ CODE A ur Sor S ーー $09 "fem cde? w y w T e GR C, 
wi BE 4, 4 と ンク ^4 S dea Gb, x D ep て 
mo ter 本 | へ mno Woo: u-3o-cgto9 aoc, H O Wm 
n g w euS Sd E E NAFX c a | & & g BE Xon wcgE I 
は ーー ©1984 Simple Logic 
2 ん グラ の スト 夫 ーーーー テ ーーーーー 
PRODE PONE ai SaS , 93CE IF pass_type=-1 THEN command, exitzTRUE 
99 DIM obj path,adr:INTEGER; u opc:BOOLEAN; c cnt:INTEGER; m code 93E9 ELSE (W not command xit x) 
99 
(20) :BYTE 93F ラ 2 INPUT "select output-path(path_name,nul 1 . .consol e ):" ,out_path ま 
0022 DIM opc typ:INTEGER; end flag:BOOLEAN; 1$,11$:STRINGL823; m$ 942D IF out pathi$s'' THEN C* standard output path 3X) 
:STRINGES3; op$,com$:STRINGLS0 ] 0453 Gub. fps | 
9958 DIM mod siz,mod nam,exec ofs,st siz: INTEGER 045A ELSE (* user-defined path x) 
996B DIM typ_lng,atr_rev,head_pariBYTE 9474 CREATE &*out fp,out path$:URITE 
007A DIM not_6809 :BOOLEAN ee ENDE We. KP 
0081 DIM loc$:STRINGE4J . Source output pa 
998D DIM file_name ま :STRINGLS9 ] 049A out. mode--1 
0099 DIM address,label address: INTEGER 04A2 UHILE out mode(0 OR out mode»1 DO 
99A4 DIM nkINTEGER:』 hex$:STRINGLS0 1 pen m "select ck "m 
99B6 DIM term:BOOLEAN n iui ps x ce se e - ass 
99BD DIM label file ま :STRINGL32]: label fp:INTEGER i ii ME ...with address machine code 
99CF DIM ascii ま :STRINGL29] €: Wes :',out. mode 
99DB DIM pass. tvpe,label init mode: INTEGER 
99E6 DIM find,command exit:BOOLEAN 0527 (x address range X) m 
99F 1 DIM out_path ま :STRINGL59] 953A INPUT start-address(hex): ,loc$ 
99FD DIM out. mode: INTEGER yn IF ern THEN 
0104 DIM end adr: INTEGER adr= 
919B DIM real_adr,real_end_adr,real_address,real_label_address:REAL 9568 EESE E ry» 
911E DIM out. fp: INTEGER ER RIS N $'*loc$) 
0125 DIM l1 attr,e attr:BYTE ir pop ANN —— is 
0130 DIM emod. adr : INTEGER à enc address(hex $s lloe 
0137 PRINT '4444444^^4 05-9 module-disassembler vo.1.0 444449444^^ 4 IF € Eun 
916F PRINT end adr- 
0171 INPUT "target file name: ',file name$ 95AB ELSE "T 
018B OPEN &obj path,file name$:READ Q5AF end adr-VAL(C'$'«*1loc$) 
0197 (x label file initializing mode X) 95BD ENDIF 
91B9 label init mode--1 95BF RUN int.to.real(end adr,real end adr) 
01C1 WHILE label init mode«1 OR label init. mode»3 DO 95CE end_flag=FALSE 
91D4 PRINT "select label initializing mode' ms Prise cd acia 
91F6 PRINT ' 1...create neu file" — Mcd Fie 
0214 PRINT ' 25 v.update existing file. OSET eile 9^ 
0237 PRINT ' 5 3...re-use existing file 95F4 ge id Si iM d es 
ene Slc UEM, label init. mode も PES gor maed igi sido 
0267 INPUT 'label file name : "label file$ or Herr COME MEN DO 
0281 RUN label initialize(label file$,label fp,label. init mode) ASA HE CORREA 
0295 mod siz-$FFFF ; 
4 ” 063C RUN int_to_real(address,real_address) 
029D emod_adr=$FFFF 964B IF (pass_type=2 OR pass_type=3) AND find=FALSE THEN (* 
0245 command exit-FALSE E KAR siut ior dines 
92AB WHILE command. exit-FAL 
92B6 (X pass type selection X) 067A E S e ic Lcd ota 
92CF pass type--2 s ee_ , Š 
02D? WHILE pass_type<-1 OR pass. tvpe?3 DO 96A2 ENDIF 
92EB PRINT "select pass-type' 96A4 IF find THEN (* more labels " ed 
FF PRINT ' -1...exit to OS-9"' : 96BD RUN int to real(address,real address) 
93 PRINT ' 9...simple disassembler(no label) 96CC RUN int. to real(label address,real label address) 
934C PRINT "' 1...label-registration' 96DB WHILE real address?real label address AND find DO (※ 
0370 PRINT ' 2...label-registration & reference" mysterious label ※) 
03A0 PRINT ' 3...label reference" 0701 RUN make A4hex(address,loc$) "S 
93C1 INPUT ':^,pass tvpe 0710 RUN make mcasc(m code,c cnt,hex$,ascii$) 


93CA ENDMHILE 0729 find-FALSE 


6-86. 99 


W/O 


99FE 
9A99 
9A92 
9A9D 
9A1C 
9A35 


9A71 
9A73 
9A921 
9A97 
9A499 
QA9D 
9AA9 
9AAF 
9AB1 
9AB3 
QAB? 
9ABD 
9AC3 


11$="" 
hex$="" 
| m$="EQU" 
Op まま ="※ー"+TRIM ま (STR$( address-] abe] _address ) ) 
com$-2'xxx"' 
ascii$z2'' i 
RUN print source(loc$,hex$,1$,m$,o0p$,com$,ascii$, 
pass tvpe,out fp,out mode,term) 
RUN label reference(label fp,label address,l1$,find 
> | attr,e attr,emod adr) 


RUN int to real(label address,real label address) 
ENDUHILE 
IF address-label address THEN (* normal label process ※) 
11$21$ 
find-FALSE 
ENDIF 
ELSE (* no label x) 
DE 
ENDIF 
m$z"'"' 
op$-'" 
com$-'"' 
IF pass. type-0 THEN (* no label...label _fp=9 x) 


RUN disasm 1 line(obj path,0,adr,term,u opc,c cnt,m code 
opc typ,end flag,m$,op$,com$,mod siz,mod nam 
,exec ofs,st siz,typ lng,atr reuv,head par,not 6809 
. ;emod. adr) 
ELSE (* label processing X) 
IF pass type-2 OR pass tvype-1 THEN (x resist X) 
RUN disasm 1 line(obj path,label fp,adr,term,u opc 
»c.cnt,m code,opc typ,end flag,m$,op$,com$, 
mod siz,mod nam,exec ofs,st siz,typ lng,atr reu 
;,head par,not 6809,emod adr) 
ELSE (※ pass type-3 x) 
RUN disasm 1 line(obj path,1,adr,term,u opc,c cnt 
,m code,opc. typ,end flag,m$,op$,com$,mod siz 
mod nam,exec ofs,st siz,typ lng,atr reu,head par 
,not 6809,emod adr) 
ENDIF 
ENDIF 
IF end flag-FALSE THEN 
RUN make 4hex(address,loc$) 
RUN make. mcasc(m code,c cnt,hex$,ascii$) 
RUN print source(loc$,hex$,11$,m$,0p$,com$,ascii$,pass type 
out fp,out mode,term) 
ENDIF 
IF real. address?5real end adr THEN (x address over *) 
end flag-TRUE 
ENDIF 
ENDUHILE 
IF out_fp>1 THEN 
CLOSE &out fp 
ENDIF 
ENDIF 
ENDUHILE 
CLOSE &obj path 
CLOSE label fp 
END 


PROCEDURE opcode main 


0000 
991C 
9943 
0069 
998F 


99C8 
99CF 
99DA 
99F9 
9191 
919C 


9125 
9139 


0149 
0154 
91SF 
016A 
0170 
0174 


018D 
3192? 
91A4 
91C1 


(x 999 opcode dispatch 9*v* 


(x 1 byte instruction ... opcode normal 
(x $10 prebyte inst. ... opcode pre 10 
(x $11 prebyte inst. ... opcode pre 11 


PARAM object path no,address:INTEGER; term:BOOLEAN; opcode. type 
: INTEGER; end flag:BOOLEAN; mnemonic$:STRINGL53; uord_opcode 
:BOOLEAN; machine. code( 20) :BYTE 

PARAM emod. adr: INTEGER 

DIM opcode,opcode2:BYTE 

IF emod_adr=address THEN (* end of module x) 
opcode. type--2 
mnemonic$-'emod' 

RUN get next byte(object path. no,address,opcode,end flag) 


IF end flag THEN ¥ ENDIF 
RUN get next byte(object path no,address,opcode2,end flag 
) 


IF end flag THEN \ ENDIF 
machine code(1)-zopcode 
machine. code(2)-0opcode2 
word. opcode- TRUE 
ELSE 
RUN get next byte(object path no,address,opcode,end flag) 


IF end. flag THEN END \ ENDIF 
machine code(1)-opcode i 
IF opcode=$10 OR opcode=$11 OR opcode=$87 THEN 
RUN get next byte(object path no,address,opcodeZ2,end flag 
) 


ら 1D ム 
91E6 
61F1 
91FZ 
0204 
0218 
922C 
0239 
024D 
0251 
025E 
0275 
927F 
9283 
928A 
028C 
028E 
0290 
0294 
029A 
02B3 
02B5 
92BZ 


IF end. flag THEN END ¥ ENDIF 
machine code(2)-2opcode2 
word opcode-TRUE 
IF opcode-$10 THEN 
RUN opcode. pre 10(opcode2,opcode type,mnemonic$) 
ELSE (* opcode-$11 x) 
IF opcode= ま 1 1 THEN 
RUN opcode pre 11(opcode2,opcode type,mnemonic$) 
ELSE 
IF opcode2-$CD THEN 
opcode type--1 ¥(* sync byte X) 
mnemonic$-2'mod' 
ELSE 
opcode. type-0 
ENDIF 
ENDIF 
ENDIF 
ELSE 
word opcode-FALSE 
RUN opcode normal(term,opcode,opcode type,mnemonic$) 
ENDIF 
ENDIF 
END 


PROCEDURE opcode. normal 


9999 
0007 


991F 
002A 
0036 
0046 
0053 
0064 
0071 
998B 
99AC 
99B8 
99BF 
99C1 
99F8 


0130 
914C 
914E 
917B 
0190 
019A 
91B6 
91BA 


91FF 
929B 
9212 
9214 
9216 
9218 


9245 
025B 
025D 
026D 
s tst 
92B8 
92CA 
92CE 
92FS 
9396 
0326 
0328 
032A 


936D 
9389 
0396 
0398 
93A5 
93AB 
93AD 
93C9 
93DB 
93F4 


942B 
942F 
x) 

946D 
9489 


PARAM term:BOOLEAN 
PARAM opcode:BYTE; opcode type:INTEGER; mnemon ic まま :STRING[5] 


DIM high, 1ouiBYTE 
highzopcode/$10 
lou-opcode-high*$10 
IF high>= ま 98 THEN 
opcode_type=MOD(high-8,4 )+2 
IF low<=$0B THEN 
IF kouz3 THEN (* addd,subd ※) 
mnemónic$-MID$( ' subdaddd' ,4x((high-8)/4)*1,4) 
IF opcode_type=2 THEN 
opcode type-1 
ENDIF 
ELSE (* sub,cmp,sbc,and,bit,ld,st,eor,adc,or,add + a,b X) 
mnemonic$-TRIM$C(MID$(C'subcmpsbcxxxandbitld st eoradcor add“ 
,3Xlou*1,3)) 
mnemonic$-2mnemonic$«MID$(C'ab',(high-8)/4-*1,1) 
ENDIF 
ELSE (* cmpx,ldd,bsr, jsr,std,ldx,ldu,stx,stu ※) 
IF opcode-$8D THEN (* bsr ※) 
mnemonic$-'bsr' 
opcode type-zó ¥(* relative(short) *) 
ELSE 
mnemon 1cC ま =TRIM ま (MID ま ("cmpx1dd jsr std ldx ldu stx stu ' 
>4※((high-8 )/4+( 1 ou- ま 9C )※2)+1 。4 ) ) 
IF opcode_type=2 THEN 
opcode type-1 
ENDIF 
ENDIF 
ENDIF 
IF opcode-2$87? OR opcode-$C? OR opcode= ま CD OR opcode= ま 8F OR 
opcode-z$CF THEN 
opcode. type-z0 ¥(* undefined ※) 
ENDIF 
ELSE (x high< ま 8 x) 
IF high=9 OR high>=4 THEN (* neg,com,lsr,ror,asr,asl/lsl,rol,dec,in 
,jmp,clr Xx) 
IF high=9 THEN opcode_type=3 
ELSE 
IF high=4 OR high=5 THEN opcode_type=19 ¥(* inherent X) 
ELSE (* high=6,7 ※) 
opcode モッ pe= ニ highー2 ¥(* indirect,extend ※) 
ENDIF 
ENDIF 
mnemonic$=MID$( 'neg3xxxxxcomlsrxxxrorasrclslroldecxXxxinctstjmpclr' 
;3*lou*1,3) 
IF high=4 OR high=5 THEN 
mnemonic$2mnemonic$*MIDS$('ab',high-3,1) 
ENDIF 
IF low=$0E THEN 
term-TRUE 
ENDIF 
ELSE (* high=1 ,2.3 x) 
"IF high=2 THEN (* branch Bcc x) 
OPCode_ モッ pe=6 *(* short branch ※) 
mnemonic$-'b'«MID$('rarnhilscccsneeaucusplmigeltgtle' 
;1owx2*1,2) 
ELSE 
IF high=1 THEN (* nop,sync,lbra,lbsr,daa,orcc,andcc,sex,exg,tfr 


IF・]1 ou=6 OR 1ou=7 THEN 
opcode type-? \(※ long relative X) 


9 
z 
di 
dn 
Lii 
[t 
= 
," 
C 
9T 
Ul 
d 
o 
J: 
Q i 
C Oo 
ンー N 


949A ECSE 
94?E IF ]ou= も 9A OR lou-$0C THEN 


り 4B3 opcode type-2 ¥(* byte immediate x) 

BACE ELSE 

54D2 IF lou-$0E OR lou-$0F THEN 

04E? opcode_type=9 ¥(* exg,tfr *) 

94FB ELSE 

94FF opcode type-10 ¥(* inherent Xx) 

0514 ENDIF 

0516 ENDIF 

0518 ENDIF 

051A mnemonic$-TRIMS$(MID$(C'3xsesxxxxxxxnop sync XXXxxxxxxxlbra lbsr 


x*XXXXdaa  orcc XXXXXandccsex exg tfr ` 
,5xX1ow*t1,5)) 
957E ELSE (x high=3 Xx) 
958D IF 1ou<=3 THEN 
9599 opcode type-4 ¥(* indirect X) 
Q5AE ELSE 
95B2 IF ]1ou<=7 THEN 
95BE opcode type-8 ¥(* psh,pul X) 
95D2 ELSE 
95D6 IF lou-$0C THEN 
95E3 opcode type-2 ¥(* byte immediate(cuai) X) 
0604 EESE 
9698 opcode type-10 *(* inherent ※) 
0610 ENDIF 
961F ENDIF 
9621 ENDIF 
9623 mnemonic$-TRIM$C(MID$C'leaxleayleasleaupshspulspshupuluXXxXxrts 
abx rti cwaimul ※※※※ ら らい 1 
,4X1ou*1,4)) 
0677 ENDIF 
0679 ENDIF 
967B ENDIF 
967D ENDIF 
967F IF LEFT ま (mnemon ic ま ,1)="※" THEN (x undefined ※) 
969D opcode_ type-0 
96A4 ENDIF 
96A6 IF opcode= ま 39 OR opcode= ま 3B OR opcode-$20 OR opcode-$16 THEN 


96CB term-TRUE 

96D1 ENDIF 

96D3 END 

PROCEDURE opcode. pre. 10 

0000 PARAM opcode:BYTE; opcode. type: INTEGER; mnemonic ま :STRINGL5] 


0018 DIM high, low:BYTE 
0023 high-opcode/$10 
992F low-opcode-high*$10 
993F IF ]1ou>9 THEN 
994B lowzlow-1 
9956 IF high<=7 THEN 
9962 IF high=2 THEN (* long branch X) 
997E opcode. モッ pe ニア 
0085 mnemon ic も =" 1b"+MID ま ("Fnhi 1 scccsneegvcvsplmigeltgtle', 
2X1ou*1,2) 
99BB ELSE 
99BF IF opcode-$3F THEN 
Qacc opcode type-11 ¥(* os9 x) 
99DC mnemonic$-'os9"' 
99E6 ELSE (* undefined X) 
99F8 opcode type-0 
99FF ENDIF 
0101 ENDIF 
0103 ELSE (* cmpd,cmpy,ldy,lds,sty,sts ※) 
0125 opcode_type=MOD(high-8, 4 )+2 
9136 IF opcode_type=2 THEN 
0142 opcode type-í1 X(* word immidiate X) 
015D ENDIF 
915F IF high<=$0B THEN (* cmpd,cmpy,ldy,sty X) 
0182 mnemonic$-TRIM$(OMID$( "xxx X% c mp d X X K E K K I K K E K K E K K K E K K K K K X XX 
xxxcmpy***x]dy sty ' 
,4*1ou*1,4)) 
91D2 ELSE (* lds,sts *) 
01E2 mnemonic$z2MIDS$('x3x33000000( X ) O) OOOOOOOOOOEEXEXXX X X x xxx x x|dssts' 
;3dXlowt1;3) 
0222 ENDIF 
0224 IF opcode= ま 8F OR opcode-$CF OR LEFT$(mnemonic$,1)-2'*' THEN 
(x undefined ※) 
0252 opcode type-0 
0259 ENDIF 
925B ENDIF 
925D ELSE (* ]1ou=9 x) 
926B opcode type-0 
0272 ENDIF 
0274 aed $: 
ROCEDURE opcode_pre_ 
pe PARAM opcode:BYTE; opcode type:INTEGER; mnemonic$:STRINGL5J 


0018 
0023 
0030 
0045 
0050 
0054 
0060 
0070 
997B 
0087? 
998E 
0090 
99A5 
99B9 
99B4 
99CA 
99DS 
99E ァ 7 
99EE 
99F9 
99F2 
99F4 


DIM high, 1ouiBYTE 
IF opcode= ま 3F THEN 
opcode type-10 ¥(* inherent ※) 
mnemonic$-2'sui3' 
ELSE 
high=opcode/ ま 19 
] ou ぃ =opcode-high※ ま 19 
opcode. モッ pe ニ =h 1 ghー6 
IF opcode_type=2 THEN 
opcode. type-1 
ENDIF 
IF louz3 THEN (* cmpu ※) 
mnemonic$-2'cmpu' 
ELSE 
IF low=$0C THEN (* cmps X) 
mnemonic$-2'cmps' 
ELSE (* undefined x) 
opcode. type-0 
ENDIF 
ENDIF 
ENDIF 
END 


6-t861 89 


PROCEDURE word_immediate 


9999 


9933 
9956 


996F 
0078 
007A 
997C 
0099 
00A2 
99AE 
99B2 
99C1 
99CE 
99D9 
99E2 
99F?7 
9192 


PROCEDURE byte immediate 


9999 


992F 
9941 


005A 
0063 
0065 
0067 
0076 
0083 
99A8 
99C2 
99C4 
99D3 
99DE 


PARAM object path no,label fp,address,m code ptr:INTEGER; m code 
(29):BYTE: end flag:BOOLEAN; operand$,comment$:STRING 
[501 
DIM imd. value: INTEGER; hex str$:STRINGL43; label$:STRINGEC8J 
; resist: BOOLEAN 
RUN get next uord(object path no,address,imd value,end flag 
) 
IF end. flag THEN 
END 
ENDIF 
RUN label. manager(label fp,imd value,$20,label$,resist) 
IF resist THEN 
operand$-'&'«label$ 
ELSE 
RUN make. 4Ahex(Cimd value,hex str$) 
operand$-2'4t$'*hex str$ 
ENDIF 
m_code(m_code_ptr+1 )=PEEK( ADDR( imd_val ue ) ) 
m_code(m_code_ptr+2 )=PEEK( ADDR( imd_va 1] ue )+1 ) 
m. code. ptr-zm code ptr-*2 


END 


WiuO 


PARAM object path no,address,m code ptr:INTEGER; m. code(20) 
:BYTE; end flag:BOOLEAN; operand$,comment$:STRINGES0J 


DIM imd value:BYTE; hex str$:STRINGE23 
RUN get next byte(object path. no,address,imd value,end flag 
) 
IF end. flag THEN 
END 
ENDIF 
RUN make. 2hex( imd value,hex str$) 
operand$-2'4f$'*hex str$ 
IF LANDCimd value,$7F)»2$20 THEN (x ascii character X) 
coop ^ ' «CHR$CLANDCimd. value, $7F))«'/" 
m. code(m, code ptr*1)-imd value 
m. code ptrzm code. ptr-*1 


END 


PROCEDURE direct page 


0000 


0033 
0056 


996F 
9978 
007A 
997C 
0095 


99BS 
99C2 


99E2 
99E4 
99ED 
OFO 
99FD 
010C 
0119 
911B 
012A 


PARAM object. path no,label fp,address,m code ptr:INTEGER; m code 
Ea c e end flag:BOOLEAN; operand$,comment$:STRING 
oJ 
DIM dir_value:BYTE; hex_str$:STRINGC2]; label$:STRINGC8]J; resist 
: BOOLEAN 
RUN get next byte(object path no,address,dir value,end flag 
) 
IF end. flag THEN 
END 
ENDIF 
IF m. code(12)-2$0E OR m code(12-2$9D THEN 
RUN label. manager(label fp,dir value*0,-($40),label$,resist 
) 
ELSE (x data ※) 
RUN label manager(label fp,dir value*0,-($80)2,label$,resist 
) 
ENDIF 
IF resist THEN 
operand ま =" く "+] abe] ま 
ELSE 
RUN make 2hex(dir value,hex. str$) 
operand$-'4$'«*hex str$ 
ENDIF 
m code(m code ptr-*1)-2dir value 
m code ptrzm code ptr-*1 


9135 
PROCEDURE extended 


9999 


9933 
9956 


996F 
0078 
007A 
997C 
99AB 
99C8 
BACC 
QQE9 
99EB 
99F4 
0100 
0104 
0113 
0120 
0122 
0134 
0149 
0154 


END 


PARAM object path no,label. fp,address,m code ptr:INTEGER; m code 
(200:BYTE; end flag:BOOLEAN; operand$,comment$:STRING 
[59] 
DIM ext. value: INTEGER; hex_str ま :STRINGL4]: label$:STRINGL8J 
; resist:BOOLEAN 
RUN get next uord(object path no,address,ext value,end. flag 
) 
IF end flag THEN 
END 
ENDIF 
IF m. code(122$7E OR m code(1)-$BD THEN (* jmp(EXT), jsr(EXTO x) 
RUN label manager(label fp,ext value,$10,label$,resist) 
ELSE 
RUN label manager(label fp,ext value,$20,label$,resist) 
ENDIF 
IF resist THEN 
operand$-2'»5'*label$ 
ELSE 
RUN make A4hex(ext value,hex str$) 
operand$-2'»5$'*hex str$ 
ENDIF 
m code(m code ptr-*1)-PEEK(CADDR(Cext, value)? 
m code(m code ptr*2)-PEEK(CADDR(Cext. value)2*1) 
m code ptrzm code ptr-*2 


END 


PROCEDURE short branch 


9999 


9933 
9969 


0079 
0082 
9984 
0086 
0095 
99A1 


OOBE 
99CZ 
99CF 
99D3 
99E2 
99EE 
99F9 
99FF 
010A 


PARAM object path no,label fp,address,m code ptr:INTEGER; m code 
(200:BYTE; end flag:BOOLEAN; operand$,comment$:STRING 

[503 

DIM rel value:BYTE; hex str$:STRINGL43; label$:STRINGL83; resist 
:BOOLEAN; absolute address,offset value: INTEGER 

RUN get next byte(object path no,address,rel value,end flag 
) 

IF end flag THEN 
END 

ENDIF 

RUN byte to int(rel value,offset value) 

absolute address-address*offset value 

RUN label manager(label, fp,absolute address,$04,label$,resist 
) 

IF resist THEN 
operand$-21label$ 

ELSE 
RUN make Ahex(absolute address,hex str$) 
operand$-2'$'-*hex str$ 

ENDIF 

m code(m code ptr*1)-rel value 

m code ptrz2m code ptr-*1 


END 


PROCEDURE long. branch 


0000 


0033 
99S5C 


0075 
007E 
0080 
0082 
008E 


99AB 
99B4 
99BC 
99C9 
99CF 
99DB 
99DD 
99EF 
9194 
919F 


PARAM object path no,label fp,address,m code ptr:INTEGER; m code 
(200:BYTE; end flag:BOOLEAN; operand$,comment$:STRING 

[501 : 

DIM rel value: INTEGER; hex str$:STRINGL43; label$:STRINGL8J 
; resist:BOOLEAN; absolute address: INTEGER 

RUN get next uword(object path no,address,rel value,end flag 
) 

IF end flag THEN 
END 

ENDIF 

absolute address-address*rel value 

RUN label manager(label fp,absolute address,$04,label$,resist 
) 

IF resist THEN 
operand$-]label$ 

ELSE 
RUN make A4hex(absolute address,hex str$) 
operand$2'$'*hex str$ 

ENDIF 

m code(m code ptr*1)-PEEK(CADDR(rel value)? 

m code(m code ptr*2)-PEEK(CADDR(Crcel. value)2*1) 

m code ptrzm code ptr-*2 

END 


PROCEDURE psh. pul 


0000 


0048 
0053 
0059 


0072 
997B 
997D 
997F 
0087 


PARAM object path no,address:INTEGER; term:BOOLEAN; m code ptr 
: INTEGER; m code(20):BYTE; end flag:BOOLEAN; operand$ 
,comment$:STRINGL503; reg$:STRINGL13; illegal:BQOLEAN 

DIM post byte,pb:BYTE 

illegal-FALSE 

RUN get next byte(object path no,address,post byte,end flag 
) 

IF end. flag THEN 
END 

ENDIF 

pb-post byte 

FOR bit=9 TO 7 


0077 
BAB 


99DD 
99EA 
99F9 
99F2 
99F4 
99FF 
919A 
011A 
912C 
913C 
9142 
9144 
915F 
9165 
0167 
0176 
0181 


IF MOD(Cpb,2)=1 THEN 
operand ま =operand ま +TRIM ま (MID ま ("cca b dpx y '*reg$*' pc'。 
bitx2*1,2)0)2-*'," 
IF bit-? THEN 
teFm=TRUE 
ENDIF 
ENDIF 
pb=pb/2 
NEXT bit 
IF RIGHT$Coperand$,12-2',' THEN 
operand$-zMID$(operand$,1,L ENCoperand$)-1) 
ELSE (* illegal ※) 
illegal-TRUE 
ENDIF 
IF m. code(m code. ptr)-$34 OR m. code(m. code ptr)-$36 THEN, 
term-FALSE 
ENDIF . 
m code(m code ptr*1)-post byte 
m code ptr-m code ptr-*í 


END 


PROCEDURE tfr exg 


9999 


993D 
994C 


9965 
996E 
0070 
0072 
007E 
998E 


99E6 


9194 
919A 
010E 
.0125 
912B 
912D 
912F 
913E 
0149 
015E 
0164 
0168 


918D 
0193 
0197 
019D 
912F 
91A1 


PARAM object path no,address:INTEGER; term:BOOLEAN; m code ptr 
:INTEGER; m code(20):BYTE; end flag:BOOLEAN; operand$ 
,comment$:STRINGL501; illegal!:BOOLEAN 

DIM post byte,source,destination:BYTE 

RUN get next byte(object path no,address,post byte,end flag 
) 

IF end flag THEN 
END 

ENDIF 

source-post byte/$10 

destination-post byte-sourcex$10 

operand$-TRIM$(MID$('d x y u s PC※※※※a b ccdp',sourcexX2*1,2 
))*','«TRIMS$(MID$C'd x y u s pcXXXXa b ccdp',destination 
xX24-1,2)" 

IF m. cod« (m. code ptr)-$1E AND (source=5 OR destination-5) THEN 


term-TRUE 
ELSE 
IF m code(m code ptr)-$1F AND destination-5 THEN 
term-TRUE 
ENDIF 
ENDIF 
m. code(m. code ptr*1)-post byte 
m code ptr-2m code ptr-*1 
IF source«$06 AND destination< く まま 96 THEN 
illegal-FALSE 
ELSE 
IF source»-$08 AND destination»5-$08 AND source«-2$0B AND destination 
<=$0B THEN 
illegal-FALSE 
ELSE 
illegal-TRUE 
ENDIF 
ENDIF 
END 


PROCEDURE indexed 


9999 


0039 


998D 
0094 
999A 


99B3 
99BC 
99BE 
99C9 
99CF 
99DA 
99FD 


912A 
9142 
9151 
015D 
016D 
0179 
0189 
0195 
01A5 
01B9 
91DA 
91E6 


PARAM object path no,label fp,address,m code ptr:INTEGER; m code 
(200:BYTE; end flag:BOOLEAN; operand$,comment$:STRING 
[503; illegal:BOOLEAN 

DIM post byte,byte offset,bit 7?,bit 06,reg,bit 04,mode,kind 
:BYTE; uord offset,absolute address: INTEGER; register$ 
:STRINGE131; label$:STRINGL823; hex. str$:STRINGL43; resist 
:BOOLEAN 

DIM plus. byte:BYTE 

illegal-FALSE 

RUN get next byte(object path no,address,post byte,end flag 
) 

IF end flag THEN 

END 

ENDIF 

m code(m code ptr-*1)-post byte 

m code ptrzm code ptr-*i1 

IF post byte-$9F THEN (x extended indirect ※) 

RUN extended(object path no,label fp,address,m code ptr,m. code 
,end flag,operand$,comment$) 

operand$-'L'«*RIGHT$(operand$,LENCoperand$)-12*" 1* 

ELSE (* others ※) 

bit ?-post byte/$80 

bit 06-post byte-bit 7*$80 

reg-bit 06/$20 

bit O04-bit 06-regx*$20 

mode-bit 04/$10 

kind-bit 04-modex*$10 

register$-MID$( ' xyus' ,reg*1,1) 

IF bit 7=1 AND kind-$04 THEN (X* nooffset X) 
operand$-2','*register$ 
plus. byte-0 


SG 


(X: 
2 
(i 
ご 
9r 
Ul 
c 


| こい eO 


V 


MH/IO 


69 6-86! 


91F1 
020E 
021A 
0225 
0229 
0231 
0233 
0244 
924B 
924F 
9274 


928D 
0296 
0298 
029^ 
92A92 
92BA 
92C1 
Q2C5 
92EB 


9394 
939D 
939F 
0311 
0322 
0329 
932D 
1 x) 
935E 
936E 
9375 
0379 
03A2 
93B3 
93BA 
93BE 
nt -1 
Q3EF 
93FC 
0403 
0407 
0431 
943F 
9446 
044A 
x) 
9476 


948F 
0498 
0494 
049C 


94AB 
94B ァ 7 


94E6 


9593 
9519 


952D 
952F 
9538 
0547 
954B 


055A 
056D 
956F 
9576 
957A 


set X) 


Q5A7 


95C9 
95C9 
95CB 
95CD 
95D2 


0508 


0625 
0632 


ELSE 
IF bit 7=9 THEN (x 5 bit offset x) 
IF bit 04»-16 THEN 
word offset-bit 04-32 
ELSE 
word offset-bit 04 
ENDIF 
operand$-STR$(uoord offset)*','*register$ 
plus. byte-0 
ELSE 
IF bit. 7=1 AND kind-$08 THEN (x 8 bit offset x) 
RUN get next byte(object path. no, address,byte offset 


,end flag) 

IF end. flag THEN 
END 

ENDIF 


RUN byte to int(byte offset,uord offset) 
operand$-STR$(uord offset)*','*register$ 
plus byte-1 
ELSE 
IF bit. ?-1 AND kind-$09 THEN (x 16 bit offset *) 
RUN get next word(object path no,address,uord offset 


,end flag) 

IF end flag THEN 
END 

ENDIF 


operand$-STR$(uord offset)*','*register$ 
plus byte-z2 
ELSE 
IF bit ?-1 AND mode=9 AND kind-$00 THEN (* auto increment + 


operand$-2','«*register$*'«"' 
plus. byte-0 


ELSE 
IF bit 7=1 AND kind-$01 THEN (* auto increment +2 ) 
operand$-2','*register$*'««*"' 
plus. byte-0 
ELSE 
IF bit ?-1 AND mode=9 AND kind= も 92 THEN (* auto decreme 
x) 
operand$-2',-'*register$ 
plus byte-0 
ELSE 
IF bit 7=1 AND kind-$03 THEN (* auto decrement -2 X) 
operand$-2',--'*register$ 
plus byte-0 
ELSE 


IF bit. 7-1 AND kind-$0C THEN (* pc_rel 8 bit offset 


RUN get next byte(object path. no,address 
byte offset,end flag) 
IF end flag THEN 
END 
ENDIF 
RUN byte to int(byte offset,uord offset 
) 
absolute address-address*tuord offset 
IF m_code( 1 )= も 6E OR m. code(12-2$AD THEN (※ 
jmp( IND), jer C IND) *) 
RUN label manager(label fp,absolute address 
;$04,label$,resist) 
ELSE (* data ※) 
RUN label manager(label fp,absolute address 
;,$08,label$,resist) 
ENDIF 
IF resist THEN 
operand$zlabel$*',pcr' 
ELSE 
Eu make 4hex(absolute address,hex str$ 


operand$-2'$'«hex str$*',pcr' 
ENDIF 
plus. bytez1 
ELSE 
IF bit ?-1 AND kind-$0D THEN (* pc.rel 16 bit off 


RUN get next. uord(ob ject. path. no, address 
word offset,end flag?) 
IF end flag THEN 
END 
ENDIF 
absolute address-address*uord offset 
IF m. code(12)-2$6E OR m_code( 1 )= も AD THEN 
(x jmp(IND), jer C IND) x) 
RUN label manager(label fp,absolute address 
;,$04,label$,resist) 
ELSE (* data X) 
RUN label manager(label fp,absolute address 


り る 4F 
0621 
965A 
0669 
0 66D 


967C 
968F 
0691 
0698 
969C 
et X) 
96C6 
96D3 
96DA 
96DE 


fset ※) 


9798 
9715 
971C 
9729 


offset x) 


074A 
0757 
075E 
0770 
077? 
077D 
0799 
079B 
079D 
9079F 
97A1 
97A3 
97A5 
97A ァ 7 
97A92 
97AB 
97AD 
97AF 
97B1 
97B3 
97D3 
97E3 
97ES 
97F1 
97FD 
989C 
0817 
982B 
983D 
9852 
085D 
98SF 
9861 
9863 


,$08,label$,resist) 
ENDIF 
IF resist THEN 
operand$-2label$*',pcr' 
ELSE 
RUN make. dhex(absolute address,hex str$ 
) 
operand$2'$'«hex str$-*',pcr' 
ENDIF 
plus byte-2 
ELSE 
IF bit ?-1 AND kind-$06 THEN (x a-register offs 


operand$-'a,'*register$ 
plus. byte-0 
ELSE 
IF bit 7=1 AND kind= も 95 THEN (x b-register of 


operand$-2'b,'*register$ 
plus. byte-0 
ELSE 
IF bit 7-1 AND kind-$0B THEN (x d-register 


operand$-2'd,'*register$ 
plus byte-0 

ELSE (x undefined ※) 
plus byte-0 
illegal-TRUE 


ENOIF 
IF mode=1 AND bit ?-1 THEN (* indirect ※) 
operand$-2'L['*operand$-*']' 
ENDIF 
IF plus byte?»0 THEN 
IF plus. byte-1 THEN 
m code(m code ptr*1)-byte offset 
m. code. ptrzm code. ptr*1 
ELSE (x plus byte-2 ※) 
m. code(m. code. ptr*1) ZPEEK CADDRCuord, of fset)) 
m. code(m. code. ptr *2) ZPEEKCADDR(Cuord, of fset)*1) 
m. code. ptrzm. code. ptr*2 
ENDIF 
ENDIF 
ENDIF 
END 


PROCEDURE make_2hex 


9999 
9912 
991D 
9924 
992C 
993E 
994A 
995A 
997E 
0089 


PARAM a:BYTE; hex ま :STRINGL2] 
DIM b,nibble:BYTE 


hex$2'"' 
b=a 
FOR i=9 TO 1 


nibblezb/$10 
bzMOD(b,$10)x$10 
hex$-hex$«-MID$('0123456789abcdef ' ,nibble*1,1) 
NEXT i 
ENO 


PROCEDURE make. 4hex 


9999 
9912 
9924 
992B 
993D 
994E 
005D 
0069 
0074 


PARAM a: INTEGER; hex ま :STRINGL4] 
DIM h$:STRINGL223; byt:BYTE 
hex$-'"' 
FOR 120 TO 1 
by tzPEEK(CADOR(Ca) *i) 
. RUN make. 2hex(byt,h$) 
hex$-hex$-*h$ 
NEXT i 
END 


PROCEDURE get next byte 


9999 


0017 
001E 
002D 
0037 
9949 
994B 
9955 


PARAM object_path_no,address:INTEGERj value:BYTE; end flag: 
BOOLEAN 
DIM real. adr : REAL 
RUN int to real(address,real adr) 
SEEK $*object path no,real. adr 
end. flag-EOF (ob ject. path. no?) 
IF end flag-FALSE THEN 
GET *object path no,value 
address-address-*1 


6-096. 0/ 


Mi/IO 


9969 ENDIF 


9962 END 
PROCEDURE get next word 
0000 PARAM object path no,address,value: INTEGER; end flag:BOOLEAN 
0015 DIM h. val,1.val:BYTE 
0020 RUN get next byte(object path no,address,h val,end flag) 
0039 IF end. flag- TRUE THEN 
9944 END 
9946 ELSE 
004A RUN get next byte(object path no,address,l val,end flag) 
0063 POKE ADDR( va 1 ue ) , h_va ] 
996E POKE ADDR(Cvalue)*1,]. val 
997C ENDIF 
997E END 
PROCEDURE os9 
9999 PARAM object path no,address:INTEGER; term:BOOLEAN; m_code_ptr 
: INTEGER; m. code(20):BYTE; end flag:BOOLEAN; operand$ 
;comment$:STRINGLS50 ] 
0037? DIM sys$:STRINGEC25613; post byte:BYTE 
0049 RUN get next byte(object path no,address,post byte,end flag 
) 
0062 IF post byte«$1F THEN (* user mode function request X) 
998E operand ま =TRIM ま ("F ま "+MID ま ("Link Load UnLinkFork Wait Chain Exit 


Mem Send Icpt Sleep SSpd ID SPriorSSUI PErr  PrsNamCmpNamSchBitAllBitD 
elBitTime STime CRC GPrDscGBlkMpGModDrCpyMemSUser UnLoadKanji ' 
»post bytex6-*1,6)) 


0161 ELSE 

0165 IF post byte»-$28 AND post byte«-$4E THEN (* system mode function r 
equest X) 

019B sys$-'SRaMemSRtMemIRQ IOQu AProc NProc VModulFindó4Al1l64 Ret64 


SSuc IODel SLink Boot BtMem GProcPMove  A]l1RAMA1 1] ImgDe | IngSetImgFreeLBFreeHBA 
11TskDe1TskSetTskResTskRe 1 TskDATLogDATTmpLDAXY LDAXYPLDDDXYLDABX STABX Al 1PrcDse 1 
PrcELink FModu1 " 


028C operand ま =TRIM ま ( 'F$"+MID$(sys$,(post_byte-$28)*6+1,6)) 

92AA ELSE 

92AE IF post. byte»-$80 AND post byte4-2$90 THEN (x I/O service request 
x) 

82DB operand$-TRIM$C'I$'«MID$C'AttachDetachDup CreateOpen  MakDirC 


hgDirDeleteSeek Read Write ReadLnUritLnGetSttSetSttClose DeletX' 
; (post byte-$80)*x641,6)) 


035E ELSE (* undefined service request X) 

0380 ENDIF 

0382 ENDIF 

0384 ENDIF 

0386 IF post byte-$05 OR post byte-$06 OR post byte-$04 OR post byte 
-$0A OR post byte-$2D THEN 

93B3 term=TRUE 

93B9 ENDIF 

93BB m. code(m, code. ptr*1)-post byte 

93CA m. code ptrzm code ptr-*1 

93D5 END 

PROCEDURE module_header 

0000 PARAM object path no,label fp,address,m code ptr:INTEGER; m code 
(200:BYTE; end flag:BOOLEAN; operand$,comment$:STRING 
[503 

0033 PARAM module size,module. name offset,execute offset,parmanent storage 

size 
: INTEGER; type language,attr rev,header parity:BYTE 

0054 PARAM not. 6809 :BOOLEAN 

995B PARAM emod_adr: INTEGER 

9962 DIM label$:STRINGL83; resist:BOOLEAN 

0074 DIM hex str2$:STRINGL23; hex. str4$ :STRINGE4J 

998B RUN get_next 上 _uord(ob ject_path_no,address,module_size,end_f]ag 
) 

99A4 IF end_flag THEN 

99AD END 

99AF ENDIF 

99B1 RUN get next uord(object. path. no, address,module. name offset 
,end flag) 

99CA IF end flag THEN 

99D3 END 

99D5 ENDIF 

99D? RUN get next byte(object path no,address,type language,end flag 
) 

99F9 IF end flag THEN 

99F9 END 

99FB ENDIF 

99FD RUN get next byte(object path no,address,attr revu,end flag) 

0116 IF end. flag THEN 

911F END 

9121 ENDIF 

0123 RUN get next byte(object path no,address,header parity ,end flag 
) 

913C IF end_flag THEN 

9145 END 

0147 ENDIF 


0149 RUN get next word(object path. no,address,execute offset,end flag 
) 


0162 
916B 
916D 
916F 


9188 
0191 
0193 
0195 
91B4 


IF end. flag THEN 
END 

ENDIF 

RUN get next uord(object path no,address,parmanent storage size 
,end flag) 

IF end. flag THEN 


END 
ENDIF 
PRINT "'seexxx xx X x axxxxxxxxxxxx' 
PRINT ' module type= '; MID ま ("any progsubrmul tdata33333J93000000(000(0€X 


X33000000XXsys fmanddroddsc ' 


0220 


025C 
026B 


92AB 
92C8 
92E7 
92F 2 


0311 
031A 
0328 
932C 
933B 
934F 
9351 


936E 
0377 
0387 
938B 
039A 
93AE 
93B9 
93BF 
93D3 
93E2 
93F6 


9413 
941C 
942C 
0430 
943F 
0453 
0455 
9464 
9474 
9486 
942B 
94AD 
94C2 
94D1 
94E9 
94EF 
0501 
9516 
0528 
953D 
9548 


9563 
0569 
957F 
9585 
0587 


;,4XINT(type. language/$10)2*41,4) 

PRINT "' language = "; MID$C'any 6809IcodPcodCob! ' , 4«MOD 
(type. language, $10)2*41,4) 

RUN. make. 2hex(attr. reuv,hex str2$) 


PRINT " attribute = '; MID$('non re-entre-entrant',10XxINT 
(attr, reu/$80)*1,10) 
PRINT ' revision = $"; RIGHT$(hex str2$,1) 


PRINT "'ssx«« x xxyvix00000O00XXXXXXxx' 
emod. adr-module. size-3 
RUN label manager(label. fp,module size-3,$04,label$,resist) 


IF resist THEN 
operand$-21label$-*4'43,' 
ELSE 
RUN make. 4hex(module. size,hex str4$) 
operand$-operand$-*'$'«hex str4$-*',"' 
ENDIF 
RUN label manager(label,. fp,module. name. offset,$0B,label$,resist 
) 
IF resist THEN 
operand$-operand$*label$-',"' 
ELSE 
RUN make. 4hex(module, name. offset,hex str4$) 
operand$-operand$*'$'*hex strá$-',"' 
ENDIF 
RUN make. 2hex(type language,hex str2$) 
operand$-operand$*'$'«hex str2$-',' 
RUN make. 2hex(attr. reu,hex str2$) 
operand$-operand$*'$'«hex str2$-4',"' 
RUN label. manager(label. fp,execute offset,$04,label$,resist 
) 
IF resist THEN 
operand$-operand$*label$-«',"' 
ELSE 
RUN make. dhex(execute offset,hex str4$) 
operand$-operand$*'$'«hex str4$-4'," 
ENDIF 
RUN make 4hex(parmanent storage size,hex str4$) 
operand$-operand$*'$'*hex str4$ 
m. code(m, code. ptr *1)-PEEKCADDR(module. size?) 
m. code(m, code. ptr *2? -PEEK C ADDR( module. size)*1) 
m. code(m, code. ptr * 3) ZPEEK CADDR(Cmodul e. name offset)) 
m. code(m, code. ptr *4) ZPEEK CADDR(module. name. offset)*41) 
m. code(m. code. ptr*5)-type language 
m. code(m. code. ptr*ó)-attr reu 
m. code(m. code. ptr*?)-header parity 
m. code(m, code. ptr * 8) ZxPEEKCADDR(Cexecute. offset)) 
m. code(m, code. ptr*9) PEEKCADDR(Cexecute. offset)*1) 
m. code(m code. ptr*10) -PEEK(ADDR(Cparmanent, storage. size?) 
m. code(m, code ptr*11)-PEEK(CADDR(parmanent. storage size)*1) 
m. code. ptr-m. code ptr-*11 
IF MOD(type_language , ま 19 )=1 OR MOD(type language,$10)2-0 THEN 


not 6809-FALSE 

ELSE (* not 6809 code x) 
not 6809-TRUE 

ENDIF 

END 


PROCEDURE byte. to int 


9999 
999D 
09019 
0021 
09030 
993C 
993E 


PARAM a:BYTE; b:INTEGER 
IF a<128 THEN 
b=a 
ELSE (* a>=128 x) 
b-a-256 
ENDIF 
END 


PROCEDURE int to real 


9999 
999D 
0019 
0022 
09030 
9949 
9942 


PARAM int value:INTEGER; real value:REAL 
IF int value»-0 THEN 

real valuezint value 
ELSE (* minus ※) 

real value-FLOAT(Cint value)*65536. 
ENDIF 
END 


PROCEDURE label initialize 


9999 


PARAM filename$:STRINGL3223; fpiINTEGER 


9 

= 
E 
Ein 
A 
(X 
ご 
$ 
= 
9T 
Ut 
c 
d P 
BM . 
j ME 
9. o 
JE | こ 


9912 
0019 
0020 
992C 
994C 
9956 
9963 
0067 
9973 
0075 
998F 
992B 
99C6 
990D? 
99E2 
99ED 
99FD 
0107 
0112 
0114 


PARAM init mode: INTEGER 
DIM i:INTEGER 
DIM inidata(256):BYTE 
IF init mode-1 THEN (* create neu file ※) 

CREATE $fp,filename$ 

SEEK fp , 65535 . 
ELSE 

OPEN &fp,filename$:UPDATE 
ENDIF 
SEEK *fp,.0 \(%※ restore X) 
IF init_mode< く >2 THEN 

PRINT "Initializing label file ,uait a moment!" 

FOR i=1 TO 256 

inidata( 1 )=9 
NEXT i 
FOR i-0 TO 255 
PUT *fp,inidata 

NEXT i 
ENDIF 
END 


PROCEDURE label manager 


0000 
0007 


0023 
002A 
0041 
0048 
994F 
995B 
9961 
0065 
0071 
0080 
008A 
0094 
009E 
99A9 
99BB 
88C7 


99DF 
QQE9 
99EB 
99FA 


9146 
015B 
0167 
0173 
017D 
917F 
918E 


91C2 
91C4 
91CA 
91CC 


PARAM label. fpe: INTEGER 
PARAM ref address,ref type:INTEGER; label$:STRINGL823; resist 
: BOOLEAN 
DIM addr. real:REAL 
DIM hex2$:STRINGE223; hex4$:STRINGL4J 
DIM neu. type:BYTE 
DIM old type:BYTE 
IF label fp-z0 THEN 
resist-FALSE 
ELSE 
IF label. fpX»1 THEN 
RUN int to real(ref, address,addr. real) 
SEEK *label fp,addr real 
GET &label. fp,old. type 
SEEK &*label fp,addr real 
ENDIF 
IF ref type»-0 THEN (x not direct ※) 
IF label. fpX»1 THEN 
neu. type-LOR(LANDCLORCold, type,ref type)?),$FC),LAND(ref. type 
,$03)) 
PUT label fp,neu type 
ENDIF 
RUN make. Ahex(ref address,hex4$) 
label$-2MID$C'??IDIPEDEPPDPP' , 2xSUBSTRCCHR$CLAND(Cref. type 
,SFC)),CHR$(C($80)* CHR$( $40) * CHR$C 20) * CHR$C S10) * CHR$ 
($08)*CHR$($04))*1,2)*' '*hex4$ 
ELSE (x direct label x) 
IF label fp4»1 THEN 
neu type-LOR(old. type,ref type) 
PUT 8label fp,neu type 
ENDIF 
RUN make. dhex(ref. address,hex4$) 
label$2MID$('??DDDP' , 2*SUBSTR( CHR ま (LAND(-(ref_type ) , ま C9 
) ) , CHR ま ( ま 89 )+CHR ま ( ま 49 ) )+1 , 2 う +" '*RIGHT$(hex4$,2) 
ENDIF 
resist-TRUE 
ENDIF 
END 


PROCEDURE label reference 


0000 
9997 
991F 
9926 
002D 
0034 
993B 
004? 
994E 
9955 
995C 
9984 
998A 
998E 
99AB 
99B6 
99B8 
99CZ 
99D6 
99DC 
99F3 
99FD 
0107 
0113 
911F 
9121 


0143 


PARAM label. fp: INTEGER 
PARAM label address:INTEGER; label$:STRINGL83; find:BOOLEAN 
PARAM | attr:BYTE 
PARAM e attr:BYTE 
PARAM max address: INTEGER 
DIM addr real:REAL 
DIM hex4 ま :STRINGL4] 
DIM ref type:BYTE 
DIM n:INTEGER 
DIM real max address:REAL 
IF max address-$FFFF THEN (* first access... ignore ※) 
find-FALSE 
ELSE 
IF l attr-0 THEN (* next address ※) 
label address-1-*label address 
ENDIF 
RUN int to real(label address,addr real) 
RUN int to real(max address,real max address) 
find-FALSE 
WHILE find=FALSE AND addr real(real max address-*1 DO 
SEEK &label fp,addr real 
GET label fp,ref type 
IF ] attr-0 THEN 
l attr-LAND(ref type,e attr) 
ENDIF 
IF LAND(LAND(ref_type, ま FC ) ,LAND(e_attr ,。 ] _a モ tr) ) く >9 THEN 
(x found X) 
find-TRUE 


0149 
0158 
0167 
918B 
0196 
0198 
91BF 
91C1 
91D9 
91DB 
91DF 
91EA 
91EC 


RUN make 4A4hex(label address,hex4$) 
RUN find attr(]l attr,n) 
IF n=1 OR n=2 THEN (* direct mode x) 
he x4 ま =RIGHT ま (hex4 ま ,2 ) 
ENDIF 
label$2MID$C'DDDPEDEPPDPP',2xn-1,20*' '«hex4$ 
ENDIF 
addr real-1.*addr. real 
label. address-1-*label. address 
ENDUHILE 
label address-label address-1 
ENDIF 
END 


PROCEDURE disasm 1.]line 


0000 
991F 
9926 
992D 
003A 


997F 


99A6 
99AD 
99B4 
99BB 
99CZ 
99CE 
99DS 
99DC 
99E2 


9114 
911D 
911F 
9121 
912C 
9133 
0137? 
013E 
0140 
015A 
015E 
017E 


ointer 


91AB 
91AF 
91CE 


91F6 
91FA 
9216 


pointer 


0243 
0247? 
92SF 


inter 


0291 
929C 
92A3 
92A5 
0249 
92C2 


pointer 


92EF 
92F3 
9319 


933D 
0341 
035D 


038A 
938E 
93A8 


93CF 


(x 9999 disassemble 1 line Ye 

PARAM object path. no: INTEGER 

PARAM label. fp: INTEGER 

PARAM address: INTEGER; term:BOOLEAN 

PARAM uord. opcode: BOOLEAN; code count:INTEGER; machine. code 
(29):BYTE: opcode type:INTEGER; end flag:BOOLEAN; mnemonic$ 
:STRINGL53; operand$:STRINGL503; comment$:STRINGLS0J 

PARAM mod. siz,mod. nam,exec. ofs,st siz:INTEGER; typ lng,atr revu 
;head par:BYTE; not. 6809: BOOLEAN 

PARAM emod. adr: INTEGER 

DIM machine. code. pointer: INTEGER 

DIM illegal!:BOOLEAN 

DIM hex2$:STRINGEL23 

mnemonic$-'"' 

opcode$-'"' 

comment$-"'"' 

term-FALSE 

RUN opcode main(object. path. no, address, term,opcode. type,end flag 
,mnemonic$,uord opcode,machine. code, emod, adr) 

IF end. flag THEN 
END 

ENDIF 

IF uord. opcode- TRUE THEN 
machine. code pointer-2 


ELSE 
machine. code pointer-1í 
ENDIF 
IF opcode_type=9 THEN (x undefined ※) 
ELSE 


IF opcode type-1 THEN (x word immediate X) 
RUN uord immediate(object path no,label. fp,address,machine. code p 


,machine. code,end flag,operand$,comment$) 
ELSE 
IF opcode_type=2 THEN (* byte immediate ※) 
RUN byte immediate(object path no,address,machine. code. pointer 
machine. code,end. flag,operand$,comment$) 
ELSE 
IF opcode type-3 THEN (* direct page X) 
RUN direct page(object path no,label. fp,address,machine code. 


machine. code,end. flag,operand$,comment$) 
ELSE 
IF opcode_type=4 THEN (* indexed ※) 
RUN indexed(object. path. no, label. fp,address,machine code po 


machine. code,end flag,operand$,comment$,illegal 
) 

IF illegal=TRUE THEN 
opcode. モッ pe=9 

ENDIF 

ELSE 

IF opcode type-5 THEN (x extended ※) 

RUN extended(object path no,label. fp,address,machine. code 


,machine code,end flag,operand$,comment$) 


ELSE 
IF opcode_type=6 THEN (x short branch x) 

RUN short branch(object path no,label fp,address 
,machine code pointer,machine code,end flag 
,operand$,comment$) 

ELSE 

IF opcode_type=7 THEN (* long branch X) 

RUN long. branch(ob ject path no,label fp,address 
machine code pointer,machine code,end flag 
,operand$,comment$) 

ELSE 

IF opcode_type=8 THEN (* push pull x) 

IF machine code(1)2$34 OR machine code(1) 
2$35 THEN (X* pshs,puls x) 
RUN psh pul(object path no,address,term 
,machine. code pointer,machine. code 
,end flag,operand$,comment$,'u',illegal 


6-586. 24. 


MH/IO 


ELSE (* pshu,pulu ※) 


PROCEDURE print source 


0417? RUN psh. pul(ob ject path. no, address, term 9999 PARAM loc$:STRINGE43J 
,machine. code. pointer,machine code ・ 999C PARAM hex ま :STRINGL'59 ] 
,end flag,operand$,comment$,'s',illegal 0018 PARAM 1 1$:STRINGL8] 
) 9924 PARAM m$:STRINGC5J 
944D ENDIF 9939 PARAM op$:STRINGCS0J 
944F IF illegal-TRUE THEN 993C PARAM com ま :STRINGL59] 
945A opcode type-0 0048 PARAM ascii ま :STRINGL29] 
9461 ENDIF 9954 PARAM pass. type: INTEGER 
0463 ELSE 995B PARAM out fp:INTEGER 
0467 IF opcode type-9 THEN (x tfr exg X) 0062 PARAM out. mode: INTEGER 
947F RUN tfr exg(object path no,address,term 0069 PARAM term:BOOLEAN 
machine. code. pointer,machine code 0070 IF out mode-1 THEN (* assemble list format x) 
rend. fuum at e EX UE Leo] 9995 PRINT #out_fp, loc$; , "d TABCÓ); hex$; . Sis TAB(24); 11$; = 
; TAB(32); m$; ° '; TAB(38); $i. 4 ; 
94B1 IF illegal-TRUE THEN ; " "3-TAB(55); asciis deat on PETS. cont 
94BC opcode. type-0 99E ァ 7 ELSE (* source file format x) 
94C3 ENDIF 9192 PRINT 4out fp,l1$; ' '; m$; ' '; op$; ' '; com$ 
94C5 ELSE l 0124 ENDIF 
94C9 IF opcode_type=19 THEN (* inherent X) 0126 IF term THEN (* end of program block X) 
94E2 (X do none ※) 9148 PRINT $*out. fp,'x' 
94EF ELSE 9152 term= ニ FALSE 
94F3 IF opcode_type=11 THEN (* os9 x) 0158 ENDIF 
0507 RUN os9(object path no,address,term 015A END 
,machine. code. pointer,machine. code PROCEDURE find attr 
,end flag,operand$,comment$) 9999 PARAM: aiBYTE 
9534 ELSE 9997 PARAM n:INTEGER 
0538 IF opcode type--1 THEN (* sync byte X) 999E DIM b:BYTE 
0553 RUN module header(object,. path, no, 0015 IF a<>9 THEN 
label fp,address,machine. code. pointe 09021 n=1 
machine. code,end flag,operand$ 0028 b-$80 
この 部 分 は BASIC09 の | ,comment$,mod siz,mod nam,exec ofs 09030 WHILE LAND(a,b)=9 DO 
ve AT, a^ St size,typ lng,atr reu,head par 0040 b=INT(b/2) ` 
け て し まい ます が B| ^ mot 6809,emod adr) 994D n=n+1 
95AD ELSE 9958 ENDMHILE 
Q5B1 IF opcode type--2 THEN (* emod ※) 995C a=LAND(a,LNOT(b) ) 
95C7 RUN emod(object_path_no, address 0069 ELSE (x a-0 x) 
,term,machine. code pointer 9975 nz 
machine. code,end, flag,operand$ 997C ENDIF 
,comment$) 997E END 
95F4 ELSE PROCEDURE emod 
95F8 ERROR 1 \(x system error X) 0000 PARAM object. path. no: INTEGER 
969E ENDIF 0007 PARAM address: INTEGER ie, 
0610 ENDIF 999E PARAM term:BOOLEAN 
9612 ENDIF 9915 PARAM machine_code_pointer: INTEGER ーー | 
0614 ENDIF 991C PARAM machrne_code(29 ) :BYTE = 
0616 ENDIF 0028 PARAM end. flag: BOOLEAN 
0618 ENDIF 992F PARAM operand ま $:STRINGL59] 
961A ENDIF 993B PARAM comment ま :STRINGL59] 
961C ENDIF 09047? DIM a:BYTE 
961E ENDIF 994E RUN get next byte(object path no,address,a,end flag) 
0620 ENDIF 0067? IF end. flag THEN 
0622 ENDIF 0070 END 
0624 ENDIF 0072 ENDIF 
0626 ENDIF 0074 machine. code(machine. code pointer*1)-a 
0628 ENDIF 0083 machine. code. pointerzmachine. code pointer*1 
062A IF opcode_type=9 THEN (* undefined instruction ※) 998E term=TRUE zn 
0651 mnemonic$-'FCB' 9094 operand$- 
96SB RUN make_2hex(machine_code( 1 ) , hex2$ ) 992B END E 
966C operand ま = " ま "+hex2 ま 
9678 IF LAND(machine_code( 1 ) , ま 7F ) >= ま も 29 THEN (* ascii char. X) a" 
969B comment$-comment$-' ^ '*CHRS$CLAND(Cmachine. code(12,$7F))2* » 
06B? ENDIF co 
96B9 code. count-1 ran 
96C9 address-address-machine code. pointer*1 
96CF ELSE 6 
96D3 code. countzmachine. code. pointer 
96DB ENDIF n 
96DD END Ut 
PROCEDURE make. mcasc 
0000 PARAM m. code(20) :BYTE c 
999C PARAM c. cnt: INTEGER 
0013 PARAM hex$:STRINGL50J 
991F PARAM ascii ま :STRINGL29] : 
992B DIM h$:STRINGE23 
0037? hex$-2'"' e 
993E ascii$-2'' d D 
0045 FOR n=1 TO c. ent 
0058 RUN make. 2hex(m. code(n),h$) 
996B he x ま =he x ま +h ま +" ' 
997B IF LAND(m_code(n ) , ま 7F ) >= ま 29 THEN T à 2 
0090 ascii$-ascii$*CHR$(LAND(Cm. code(n),$7F)) © 
99A5 ELSE J bud 
99A9 ascii$-ascii$-*',' Qt 
99B5 ENDIF 9 十 © 
99B7 NEXT n c N 
99C2 END 一 C3 


74 1984-9 


for FM-78,11 


アマ グラ マヤ 講座 


OI/FM 


あな た が 作る 手作り 学習 ブロ グラ ム 人 PV | 


国 重 S 
は じ め に 


ーー 学習 用 ソフ ト の 現状 一 一 

市 販 の 学習 用 ソフ ト も 最近 ぼ つ ぼ つ と 良 
いも の が 発売 され , 割 と 使え を る も の が 出 回 
る よう に な っ て き て いま す 。 と 〈 に 英語 学 
慣用 の も の は 解答 入力 も 容易 だ し , 画面 表 
示 も アル ファ ベッ ト 中 心 で 見 や すく , 開発 
も 盛ん で す 。 中学 用 の も の は 各 学 校 で 採択 
る され て いる 教科 書 別 , 進度 別に 編集 きれ た 
も の も 出 て いま す の で , 実際 に 成績 向上 に 
つなが る よう な 良質 の も の も 多く な っ て き 
て いる と 思い ます 。 

た だ , 今 の と ころ 反復 練習 型 ソ フト が 中 
心 で 思考 型 ・ 推 理 型 の ぁ あの が 今ひとつ な の 
TFH, それ は や む を 得 な いと ころ が ある 
の で は な いで し ょ うか 。 と いう の は , 今 の 
学校 の 実情 が 多かれ 少な か れ 受 験 勉強 中 心 
で すし , 受験 勉強 し いう の は 結局 知識 の 量 
が 問題 に な っ て きま す 。 成績 も 中 学 ・ 高 校 
な ど で は , 努力 し た 生徒 より 知識 量 の 多い 
生徒 の ほう に 良い 点 を つけ ざる を 得 な いよ 
うに な っ て いま す 。 ですから, 生徒 の 側 に 
し て も て っ と り 早 〈 成 績 を 上 げ る た め に は 
知識 量 を ふやす こと , そ し て その だ た め に は , 
暗記 と 反復 練習 に ウエ イト を 置く こと が , 
短 時 間 で 効果 が 大 きい と いう こと に な っ て 
いる よう で す 。 

広く 浅く 知識 の ある 人 が 成績 が 良く 〈 て, 
思い が け な い 人 の 成績 が 悪かっ だ りす る の 
は 実例 に 事 欠 き ませ ん 。 た だ たとえば, 外国 帰 9 
で 英語 ペラ ペラ の 生徒 が , 文法 の 変 な 規則 
の と ころ で つま ずい て 。 ペー パテ スト の 成 
績 が 今ひとつ で , 英語 の 成績 が 五 段 階 評価 
の 「3」 程 度 ど っ た り , オリ ン ピ ッ ク 級 の 
スポ ー ツ 選手 が 体育 の 成績 が 悪かっ だ りな 
ど と いう の は よく あり ます 。 

思考 力 ・ 創 造 力も , 受験 体制 の 前 で は 二 
義 的 な も の に な っ て し まっ て いる よう で す 。 
一 流 校 と いわ れる よう な 学校 (と くに 私 立 


中 学 な ど ) の 入試 問題 は , 短 時 間 で た くき 
ん の 間 題 を 解 か な けれ ば な ら な いよ うに な 
っ て いま すか が ら 。 思考 力 テ スト な ど と いっ 
て も 実は その 場 で じっくり 考え て いる よう 
な ヒマ は あり ませ ん 。 間 題 を 一 目 見 た だ け 
T, 解答 が ピン と くる よう で な いと 高 得点 
は と れ な い の で す 。 つ まり 。 じっくり 考え ぇ 
る 力 で は な く , 日 頃 ど れ だ け 数 多く いろ い 
ろ な 間 題 を 解い て いる か , どれ だ け ト レー 
ニン グ を 積ん で いる か に よっ て 差 が つ 〈 く よ 
うな テス ト な の で す 。 し た が っ て , 一 流 進 
学校 と いわ れる よう な 学校 へ は , 家庭 教師 
を つけ て も ら っ た り 進 学 塾 へ 通わ せ て も ら 
っ だ り し て いる 生徒 が 多く 合格 する よう な 
傾向 に な っ て いる と 思い ます 。 

パソ コン を 受験 勉強 中 心 の 学習 に 役立た 
せ て , 直接 の 効果 を あげ る た め に 使う の な 
ら ば , どう し て も 反復 練習 型 中 心 に な ら ざ 
る を 得 ま せん が , それ は パソ コン の 責任 で 
は な さく, 受験 体制 その も の に 問題 が あり そ 
う て す 。 

受験 や 成績 に 直接 結び つく と いう も の で 
は な い が , 思考 力 を 試す た と いう ソフ ト で 教 
育 性 の ある も の と し て は , パズル 型 や 思考 
烈 の ゲー ム プ ログ ラム に 結構 興味 深い も の 
が あり ます 。 シミ ュ レ ーション 型 の ゲー ム 
の よう に, 思考 力 を 要求 きれ る ゲー ム で は 。, 
成績 に か か わら ず 熱 中 する 生徒 と , お も し 
ろ る が わか る 前 に 投げ 出し て し まう 生徒 が 
いる よう で す 。 ゲー ム と いえ ども も の に よ 
っ て は 単純 な 教育 ツ ソフ ト よ り も 教育 性 が あ 
り ま す が 。 そう いう 教育 性 を 学校 教育 に と 
う 連結 きせ て いく か が , これから の 課題 で 
は な いで し ょ うか 。 

ぃ いずれ に せよ , 最近 20 年 間 の テレ ビ の 普 
及 が 日 本 人 の 思考 パタ ー ン を 変え た よう に , 
て で は な く ) 普及 すれ ば , また 社会 たのも 
の の 思考 パタ ー ン が 変化 し て くる と 思い ま 
す 。 テ レビ の 普及 は 娯楽 面 で は 一 定 の 役割 


を 困 た し て いる よう で する 文英 他 的 に は , 
「 一 億 総 日 痴 化 」 な ど と 言わ れ ど う も 良い 
方 面 に は 変え な か っ だ た よう で す 。 Erb 
パソ コン の 普及 は , 個人 の デー タ 処 理 能力 
を 飛躍 的 に 向上 きる きせ て くれ る は ず で す 。 や 
が て INS (情報 網 シ ステ ム ) が 進み 。 いろ 
ん な VAN (付加 価値 通信 網 ) サー ビス を 誰 
で も 受け られ る よう に な れ ば 。 どれ だ け の 
デー タ を いか に 活用 で きる か が 21 世 紀 の 社 
会 的 能力 の 1 つと し て 重視 され る よう に な 
っ て 《 く る の で は な いで し ょ うか 。 

アマ グラ マ と し て は , 細か い 小 手先 の テ 
クニ ッ ク に と ら わ れず ,。 近い 未来 を 見 通す 
目 を 持ち , 巨視 的 な 方 向 性 だ け は 正しく 把 


握 し て お な おく よ うに 心がけ よう で は あり ませ 
た ん か:。 


1]. グラフィック 命令 


前 置き が 長く な り ま し た が , 実際 の プロ 
グラ ム 例 を みて いく こと に じ ま も 5 記 人 
回 は グラ フィ ッ ク 関 係 の 命令 を 使っ た 学習 
プロ グラ ム に 取り 組ん で み ま す 。 

グラ フィ ッ ク 関 係 の 命令 は , 
L C, 

LINE (ライ ン ) 直線 また は 長方形 を 描く 
CIRCLE (サー クル ) 円 ・ 椿 円 を 描く 
CONNECT( コ ネ ク ト ) 点 か ら 点 へ 線 を 結ぶ 


リス ト | に 1 


EE な も の と 


19 CES 
20 LINE (9。9)-(6392。1292) 。PSET 。 
30 END 

カラ ー コ ー ド 6 は 黄色 で す 


図 1-1 リス ト 1-1 の 実行 例 


(0,0 


(639, 199) 


PAINT (ペイ ント ) 人 色 を 塗る 

な ど が あり ます が , これ で 折れ 線 グ ラフ や 棒 
グラ フ な どの グラ フ を 描い た り , 図 を 描い 
だ りす る こと が で きま す 。 さる ら に 。 GET@ 
や PUT@, PSET, パレ ッ ト 機 能 な ど を 活 
用 する と , ディ スプ レイ を キャ ン バ ス 代わ 
り に し て ,。 C.G. を 楽し ん だ り , アニ メ を 作 
うな : が て きる も わけ で す 。 

各 命 令 の 詳し い 内 容 は マニ ュ ア ル を 参照 
ETORRI ELT, グラ フォ ックス を 描く 
と き に 留意 し な けれ ば な ら な い 点 を いく つ 
か みて いき まし ょ う 。 

a. リ スト 1 一 1 と その 実行 例 ( 図 1 一 1 ) 
を みて 〈 く だ さい 。 画 面 の 左上 スミ [座標 (0, 
0 )] か ら 右 下 ス ミ 〔 座 標 (639,199)〕 ~ H 
色 【 カ ラー コー ド 6] で 線 が 引か れ ま す 。 
20 行 目 の (0,0) 一 (639,199) に 注意 し て くだ 
GU. グラフィック 命令 で は , ドッ ト 単 位 
の 座標 を 指定 する 必要 が あり ます 。 

リス ト 1-2 


18. CLS 
30 END 
長方形 を 描き ます 


図 1-2 リス ト 1-2 の 実行 例 


(0.0 


(639,199) 


リズ スト に 3 


18 CLS 
20 LINE (0,0)-(100,100)2,PSET,5,B 
30 END i 


横 , た て 共 座 標 は 100 な の に 正方 形 に な り ま せん 


図 1-3 リス ト 1-3 の 実行 例 


(0.0 


(100, 100) 


OI/FM 


b リス ト 1 一 2 と その 実行 例 ( 図 1 一 2 ) 
で は , (0, 0) と (639, 199) を 対角線 の 
頂点 と する 長方形 を 描い て いま す 。LINE 文 
は , 直線 を 描く だ け で な く , 長方形 を 描い 
だ り 塗 りつ ぶし だ た りす る こと も で きる の で す 。 

c. リ スト 1 一 3 は, (0,0)— (100, 100) の 
四角 形 を 描き ます 。 横 101 ド ッ ト , 縦 101 ド 
ッ ト と 一 辺 の ドッ ト 数 が 同じ だ か ら 6 正方形 に 
な り そ う な も の で す が , ディ スプ レイ の ド 
ッ ト 数 の 縦横 の 比率 が 違う の で ずい ぶん 縦 
長 の 長方形 に な り ま す 。 

d. リ スト 1 一 4 で は , 比率 を 調整 し て い 
ます 。 横 , 縦 の ドッ ト 比 率 は 約 20:9 な の で , 
それ に 合わ せ て 座標 を と る と , ほ ば 正方 形 
に な り ま す 。 つまり, 座標 を とっ て いき な 
が ら 図 を 描く とき に は , いび つ に な ら な い 
ょ うに 横 縦 の ドッ ト 比 率 に 常に 留意 する 必 
要 が あり ます 。 

e. リ スト 1 一 5 は , リス ト 1 一 4 の 正方 


10 CLS 
20 LINE (9,9)-(299,99 ) ,PSET,4,B 
30 END ! 

横 と 縦 を 20:9 に する と , ほぼ 正方 形 に な り ま す 


図 1-4 リス ト 1-4 の 実行 例 


(0.0 


(200.90) 


19 CLS 
20 LINE (9,9)-(299,99 ) , PSET , 4 ,B 
30 PAINT (59,59 ) , 2 , 4 


図 1-5 リス ト 1-5 の 実行 例 


(0.0 


1984-9 /5 


形 を PAINT 文 で 塗り つぶ し て いま す 。 色 を 
赤 ( 2 ), 境 界 色 を 緑 (4 ) に 指定 し た の で , ワ 
ク が 緑 で 中 が 赤 に な っ て いま す 。 リ スト 1 
ー4 の 最後 を BF に する と や は り 塗 りつ ぶし 
た 四角 形 が 描け ます が , その と き は ワク と 
中 味 が 同じ 色 に な っ て し まい ます 。 

以上 の こと を まとめ る と , 次 の よう に な 

J 

(1) グラ フィ ッ ク 命 令 は , 要する に ディ 
スプ レイ の 画面 を ドッ ト 単 位 で 表現 す 
る た だめ の 命令 で す 。 

(2) ドッ ト 数 は , 横 640, $2000) 81128000 
個 あ り ま す 。 こ の 一 つ ひ と つ に カラ ー を 
HELT, C.G. を 描い た りす る こと が 
可能 で す 。 

(3) ディ スプ レイ 上 で は , ドッ ト 比 率 が 
BR : 縦 が 約 20:9 な の で , 図形 を 描く と 
き に は を その 分 を 調整 し て や る 必要 が あ 
り ま す 。 

(4) 機能 の 部 分 は , 図 の 重なり や 線 の 交 
点 の 色 な ど に 影響 し ます 。 

これ ら の こと に 留意 し て , 実際 に プロ グ 

フミ シグ し で いく 《 うと だ し まし ょ う 。 


. 線 描 サ フル ー チ ン 


リス ト 2 は, CONNECTX t READ—D 
ATA を 使っ て , 線 描 図 を 描く プロ グラ ム で 
Fo グラフィック 命令 いろ いろ 使っ て 実 
際 に ディ スプ レイ 上 で 絵 を 描い て みる と , 
CONNECT 文 が 意外 に 便利 で 実用 的 だ と 思 
われ ます 。 リ スト 2 は 北海 道 の 地図 を 描く 
プロ グラ ム で , 独立 し た 形 に な っ て いま す 
が 。 ふつ うこ れ を サブ ルー チン の 形 に し て 
お く と, いろ ん な 用 途 に 活用 で きる と 思い 
ます 。 主 な 座標 だ び け を デー タ に し て お いて 
線 描 し , 必 要 に 応じ て PAINT す れ ば 結構 い 
ろ い ろ な 絵 が 描け ます し , 画面 いじ いっ ぱい の 
大 き な 絵 の と き で も , GET@, PUT@ など 
に 比 し て メモ リ が 少な く て すみ ます 。RES 
TORE 文 で DATA の 先頭 を 指定 し て サブ ル 
ー チ ン に 飛ぶ こと に よっ て , 任意 の 図 が 描 
け ま すし , 場合 に よっ て は , LINE 文 や CI 


76 1984-9 


RCLE 文 を 使わ な く て も 代用 で きる ほど で 
す 。CIRCLE 文 は , H7277: 0E ei t 
き は 便利 で す が , 半径 の 小さ な 円 を 描く と 
き は , ドッ ト の 関係 で 円 周 の な め ら か る が 
な く な っ て きま す 。 半径 11 程 度 だ と , 円 と 
いう より 六角 形 で す 。 を それ に CIRCLE は 中 
心 の 座標 は 把握 で き て も , 円 周 部 の 座標 を 
把握 する の は わり と 面倒 で , 部 分 的 に 使っ 
て つない で いく の は 手間 が か か る の で す 。 

リス ト 2 の プロ グラ ム の 構造 は , 30 行 目 
の READ 文 で , 10 個 ずつ (つま り 5 個 の 座 
標 ) の デー タ を 読み 取り , 順 次 40 行 目 の CON 
NECT 文 で つない で いく よう に な っ て いま 
す 。 北 海道 の 場合 、 デ ー タ 数 が 70 個 で す の 
T, それ を 7 回 繰り 返し て いま す 。 

デー タ を いろ いろ 変え る と , 地図 だ け で 
は な くい ろ い ろ な 図 を 表示 する こと が で き 
ます 。 こ の プロ グラ ム の デー タ は , 画面 の 
比率 に 合わ せ て 座標 を と っ て いま す が , 方 
眼 紙 に 絵 を 書い て , デー タ 化 する 場合 は , 
HAMO IT— ROWEROMUIY. i 


リス ト 2 


10 ' ホ ゅ カイト“ ウ 
20 FOR I-1TO ? 


30 READ A1,4A2,4A3,4A4,A5,A6,A47,48,59,A10 


OWM — 


は 0.4495 を か け て か ら , CONNECT す る と 
ゆがみ の な い 図 に な り ま す 。 

ラー を いあ いろ 本 ん えて み だ り 。 デー タ 
を いろ いろ 処理 し て か ら CONNECT す る よ 
うに する と , 拡大 ・ 縮 小 , 位置 自由 , 反転 
な ども 可能 で す 。 三角 関数 と 組み 合わ せる 
と 三次 元 グ ラフ ィ ッ クス に も な る わけ で す 。 
法 初 の ダー タ 取 り が 少し や っ か いで すか が , 
それ を こなし て し まう と か な り 自 由 に , 機 
能 的 に 使え る と 思い ます 。 


d. 日 本 地図 表示 プロ グラ ム 


リス ト 3 は, リス ト 2 の プロ グラ ム を サ 
ブル ー チ ン 化 し て , 日 本 地図 を いろ ん な ふ 
うに 描け る よう に し た プログ ラム で す 。 

RUN さ せる と , 30 一 90 行 で メニ ュ が 表示 
され ます 。 ど れ か を 指定 す る と , 180 行 の ON 


ーGOTO 文 で 190 一 240 行 に 飛ぶ わけ で す が , 


その 前 に 130 一 160 行 で 位置 や 拡大 率 , カラ 
ー な ど を 選べ る よう に な っ て いま す 。 


メニ ュ 1 で , 全体 を 選び , 位置 (0 ,0) 
拡大 率 1, カラ ー は 任意 で 実行 し , 日 本 
地図 を 描い て みて くだ さい 。 こ の 図 が 基 
本 図 に な っ て いま す 。 こ の 図 を も と に し 
T, (0, 0) を 起点 と し て 拡大 ・ 縮 小 , 位 
置 決 めし て いま す 。 これだけ で , 縦 に は ほ 
ぼ い っ ぱい に と っ て いる の で , 実は 全体 図 
な ど は ほとんど 抜 大 は で きま せん 。 縮 小 ( 拡 
大 率 0 一 1) は 自由 で す 。 位置 な と も , 

( 0.0 ) 一 (639,199) の ワク を は み 出 し て し ま 
うぅ と, 形 が 崩れ だ り エ ラー が 出 た だ た り し ます 。 

拡大 率 や 位置 の 許容 範囲 は , メニ ュ に よっ 
て 異な る の で す が , 試行 錯 議 的 に た めし て 
みて くだ るい (実行 例 参 照 )。 

デー タ 部 が 多く て 恐縮 で びす が. リ スト 2, 
3. 4 の デー タ は 共通 し て 使え ます の て 
順次 追加 し て いけ ば よい よう に な っ て いま 
す 。 リ スト 3 の デー タ を 入力 すれ ば , リス 
ト 4 の 入力 は 楽に な り ま す の て 頑張 っ て く 


だ る きい 。 


C)1984 H.KUNISHIGE 


デー タ 数 が 70 で す の で , 7 度 繰 り 返 し ます 


デー タ は 10 個 ずつ 読み , つなぐ 座標 は 5 個 ず つ で す 


40 CONNECT (A1,4A2)-CA3,A40-(A5,A60-CA7,A8)-CA9,A4100,1 一 1 は 青色 で す 


っ 9 NEXT I 
69 END 


70 DATA 300,0,292,2,295,17,288,28,270,27? 
80 DATA 270,27,271,33,259,37,259,41,267,45 
90 DATA 267,45,264,50,272,51,280,46,291,47? 
100 DATA 291,46,280,42,272,40,276,36,285,39 
110 DATA 286,39,305,35,339,43,345,31,384,25 
120 DATA 384,25,386,22,378,23,371,18,373,11 
130 DATA 373,11,362,16,326,12,300,0, 


O BASIC 
CONNECT (コネ クト ) 座 標 を 順次 つない 
で いき ます 。 


O 改 造 の ポイ ント 

(|) デ ー タ を 変え る と いろ いろ な 図 が 描け ま 
Ta 

PAINT 文 と 組み 合わ せる と 5K バ イト 分 ほ 
どの メモ リ で か な り 複 雑 な 絵 を 描く こと 
が で きま す 。 

(2) サ ブル ー チ ン と し て 活用 で きま す 。 


写真 1 


座標 は 35 で す の で 
デー タ 数 は 70 で す 


座標 は 34 で 済ん だ の で す が 


デー タ 数 を 合わ せる た め に 同じ も の を 
2 つ 続 け て いま す 


リス ト 2 の 実行 例 (写真 拡大 ) 


BASIC チ ェ ッ クサ ム 


LINE-*Q *1 492 49 £4 3 t6 tf. SUM 
10 00 78 79 54 88 D? 4E BF :A8 
90 BB BE BE BB 2B 00 00 00 :1D 


99 o0 99 99 99 OO 99 OO :00 
99 99 OO 99 99 OO 99 99 :99 
89 OO QO 99 OO 99 99 99 :00 


iov Mov Mov Mov Meo Lov Me Ew 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 
© 


Oh/FM 1984-9 77 


リス ト 3 日 本 地図 表示 プロ グラ ム 


10 “チズ ス " 
20 MIDTH49 , 20 . 
30 PRINT "ニホン チ ス " ヲ カキ マス 。 1-6 ヲ 1277"72"94 


40 PRINT 't"*"7234«------ 1 

50 PRINT "本 ゅ カイ ト " ウーーーー2" 

60 PRINT "ホン シュ ウーーーーーー 3 メニ ュ 表 示 
70 PRINT "シコ クーーーーーーーー 4" 

80 PRINT "キュ ウシ ュ ウ ーーーーー 2. 

90 PRINT "トト "ウフ ケン ーーーー6" 

100 PRINT 1 行 あけ る 
110 INPUT '1-6 ? I?7"';P X — 2 ER 
120 PRINT 1 行 あ ける 


130 PRINT "イチ " de 
140 INPUT '33---';V:INPUT'45---';Uy ——————————————————— 位置 指定 
150 INPUT "カク タ " イ リツ "3K ーー 拡大 率 
160 INPUT "カラ ー・・・1-7" :CO ーー カラ ー 
179 CLS 
189 ON P GO TO 190,208,210, 220,230,249 — 
190 Q-50:RESTORE 390:GO0SUB260 : GO 31422 ーー m 
200 Q-7:RESTORE 390 :GOSUB260:G0 TO 250:" ホ 9 カイ ト " ウ 7 メニ ュ に より 。 デ ー タ の 位置 
210 Q-21:RESTORE 470:GO0SUB260:GO TO 259: "ホン シュ 9 21 数 を 指定 し て , サブ ルー チン に 
220 Q-5:RESTORE 690 :GOSUB260:GO TO 259: "コク 5 飛び ます 。 最 後 の 数 字 は 
230 Q-8:RESTORE 750:G0SUB260:G0 TO 259: "キュ 9 ミュ 9 8 デー タ 数 で す ( x 10) 
240 Q-88:RESTORE 390:G60SUB260:GO0 TO 250: "サッサ "カイ 38+59 
250 END 
260 ° 2"574"2 97" 
270 FOR I-1TO Q 
280 READ A1,42,43,44,45,46,47,48,49,A10 
290 A1=(A1+V)xK:A2=(A2+M ) xK . 
300 A3=(A3+V) xK: A4=(A4+M )xK 
310 A5=(A5+V ) xK : A6=(A6+U) XK Vari erii Rai 
320 A7=(A7+V ) xK : A8=( A8+M ) xK h 
330 A9=(A9+V)*K:A10=(A10+W)*K 
340 CONNECT (A1,A2)-(A3,A4)-(A5,A6)-(A7,A8)-(A9,A10),CO 
350 NEXT I 
360 RETURN 
370 '7*-3 
380 / ホウ 9 カ イト "9 
390 DATA 300,0,292,2,295,17,288,28,270,27 
400 DATA 270,27,271,33,259,37,259,41,267,45 
リス ト 2 の | 410 DATA 267,45,264,50,272,51,280,46,291,47 
70— 130/7 | 420 DATA 291 ,46,289 , 42, 272 40 , 276 , 36 , 285 , 39 
430 DATA 286,39,305,35,339,43,345,31,384,25 
440 DATA 384,25,386,22,378,23,371,18,373,11 
450 DATA 373,11,362,16,326,12,300,0,300,0 
460 “ホン シュウ 
479 DATA 287,49,284,53,292,52,291,
…[truncated]