PC-6000,6600情報誌 SAVE第16号特別版
今号の内容
・バグのお知らせ
・PC−6000ハード&ユーティリティ
・MUSICコーナー
・P6なんでもコーナー
・お知らせ
・編集後記
季節が変わればめっきりと寒くなり、各地で初雪の便りが出て
くるのもこのころです。今年の初雪は異常に遅く、札幌では11
月10日と史上まれにみる遅さでした。北海道はこれから長い冬
がやってくるのです。受験生も気がしまっていよいよラストスパ
ートといった感じですね。
10月は風邪がはやった月でした。みなさんも風邪にはくれぐ
れも注意して下さい。
[SAVEバックナンバーのバグのお知らせ]
今ごろになって気が付いたのですが、電算化されたSAVE5
号、6号にバグがありましたのでお知らせします。
・5号 P1.7行目「北海道はようやく雪がBB」、アンダー
ライン部を付け足し
・5号 P2.下から4行目「さきほど一ヶ月にBB」
P5.下から11行目「PoKE&HE8CF,&HB
B」
・6号 P1.10行目「変わったのは御存知だと思います。そ
してP6が登場して早くもBB」、以上アンダーライン
部を訂正
[MUSICコーナー]
前回はごめんなさい。原稿を書く暇がなかったものですから。
14号ではノイズの出し方を説明したわけですが、わかってい
ただけましたか。とりあえず、ここではドラムについてはあれだ
けです。音は自分の努力によって作り出して下さい。
ドラムパートでSコマンドとMコマンドを使ってしまうと、他
のパートでMSは使えなくなります。まあ、使えないことはない
のですが、全パート同じエンベロープになってしまうのでものす
ごくきたない音楽になることはまちがいないでしょう。他のパー
トではソフトエンベロープをつかいましょう。その前にエンベロ
ープとは何か?
PSGでは音を鳴らすと同じ音量で鳴り続けます。自分でため
してみるとわかりますが、ものすごく単調になってしまうので、
最初に出した音より大きくなったり、小さくなったりさせるとよ
く聞こえます。この大きくなったり小さくなったりする波形をエ
ンベロープといいます。
ソフトエンベロープとは、プログラムの中で自分で波形を作れ
ということなのです。例えば、
PLAY”C1”
では単なる「ドー」となります。それをソフトエンベロープを使
ってみると、
PLAY”L8 V15C V13C V11C V9C V
7C V5C V3C V1C”
とすると、同じ1分音符でも違うのです。こういう味付けをする
と音楽もかっこよくなるでしょう。
前回のノイズと今回のエンベロープを使って何か作ってみて下
さい。自分の力で作ったものは気持ちがよいものです。さあがん
ばりましょう。
それでは次に前号から約束したとうりサウンドLSIモニタ特
集をします。これを読みながらお手持ちのプログラムを実行させ
てサウンドLSIについて理解して下さい。
まず、このサウンドLSIモニタの起動方法ですが、モードは
1,2,4を選びます。ページ数は3か4、モード1の場合は2
です。なお、ページ3のVRAMが存在するとき、以後ページ3
をスクリーンモード3か4にしないように注意して下さい。そし
てRUNで実行します。コマンドは以下のコマンドが使えます。
・SoUND RUN
・SoUND SToP
・SoUND CoNT(END)
・SoUND NEW
・SoUND SCREEN
各コマンドの説明
{SoUND RUN(ページ番号)(,表示ページ番号)}
ページ番号で指定されたVRAMを使用して、サウンドLSI
の状態のリアルタイム表示を開始する。ページは1以外を指定す
る。つまり、SoUNDRUNを実行後、音楽プログラムを実行
すると、サウンドLSIの様子がリアルタイムで画面に表示され
る。
{SoUND SToP(SoUND END)}
SoUND RUNによって行われているリアルタイム表示活
動を停止する。
{SoUND CoNT}
SoUND SToP(END)によって行われている表示活
動を即時再開する。
{SoUND NEW}
LSIモニタ自体をすべてリセットする。LSIモニタ始動前
の状態へBASICシステムを復元する。再始動には
EXEC&HD800
を行う。
とりあえず実行例を示します。まず、13号か14号のSoU
ND文プログラム集のどれかを使って例えば、13号P7,8の
電話の呼び出し音のプログラムを使います。行番号5に
5 SoUNDRUN
と付け足します。そしてRUNします。
RUNするとSoUND文実行中の各レジスタが刻々と変化し
ていきます。カッコの中は各レジスタ番号、その上の16進数は
そのレジスタの値です。実行するとレジスタ0,2,4,8,9
,10の値が変化しているはずです。8,9,10の値は0AH
になったり00Hになったりしていますね。これは、音量を表し
0AHは10進数で10なのでSoUND8,10:SoUND
9,10:SoUND10,10を表しています。ここで、ST
oPキーを押して、PAGEキーを押してさきほどの画面を出し
てください。レジスタ0に55Hが入っていますね。これはベル
の音の値です。確認のために
SoUND8,15
とダイレクト入力してPAGEキーを押して下さい。ピーと鳴っ
てレジスタ8の値が0FHになってましたね。これを見ることに
よりどのレジスタに何の値が入っているかが一目でわかります。
このようにして使います。もっといろいろなプログラムで実験し
てみてください。ただPSGで音を鳴らすよりこの画面を見なが
ら鳴っているとけっこう楽しいものです。
画面を見ながらこれらの値を自分で操作したいというために次
の SoUND SCREEN というコマンドがあります。こ
のコマンドをダイレクト実行すると、レジスタ内容をエディトす
ることができます。これらの説明については次号で説明します。
まずはSoUNDRUNに慣れて、画面の意味をよく理解してく
ださい。
最後に、この画面の大まかな説明をします。表示は5つの部分
に分かれています。
・ToNEBBBBBBBBBBB音程(3チャンネル)
・VoICEBBBBBBBBBB音量(3チャンネル)
・NoISEBBBBBBBBBB雑音の音質
・MIXERBBBBBBBBBBToNE,NoISEの混合
・ENV.(ENVELoPE)B音量の周期的変化
それぞれのブロックの状態を示すものは次の3種類あります。
・レジスタ番号Bかっこ内の10進数
・データBBBB小さめの数字2桁で表された16進数
・棒グラフBBデータの量的イメージ
§ToNE
レジスタ番号0と1,2と3,4と5の3組のペアレジスタで
3種の音程を指定するものです。ペアレジスタというのは、16
進数2桁のレジスタを2つでひとまとめに考えるものです。
ですから、レジスタとしては6つありますが、数値として扱う
のは3つということになります。それぞれの数値は小さいほど高
い音になります。
§VoICE
ToNEの3種の音程をそれぞれ別々の音量にして送り出しま
す。数値が大きいほど大きな音になります。
§MIXER
ところで、VoICEで「どれほどの音を出そうか」と考える
前に、まず、「出すか出さないか」を決めないといけません。こ
れがMIXERの6つのゲートです。右3つがそれぞれのToN
Eを「出す(つながっている)」か「出さない(切れている)」
かを示します。
さて、これでひととおりの音の出し方が分かりました。ToN
Eで音程を決め、MIXERのゲートを接続し、さらにVoIC
Eでボリュームを上げるわけです。
MIXERの残り3つのゲートは雑音(「シャー」)を、それ
ぞれ3つのVoICEに与えるかどうかを決めます。
§ENVELoPE
VoICEの3つの数値は0〜15が与えられて音量を決めま
すが、数値に(厳密には第4ビットに1)が与えられると音量は
一定ではなく、時間的に変化するようになります。その音量変化
の形状がENVELoPEのレジスタに支配されます。
形状を定めるレジスタと、変化の周期の長さを決めるペアレジ
スタとから成っています。エンベロープ形状はP6のマニュアル
に載っていますのでそちらを参照してください。
今回はここまでです。次回はサウンドスクリーンエディタにつ
して説明します。なお、サウンドLSIモニタを持っていない方
は何がなんだかわからないかもしれませんがこれらはサウンドL
SIモニタを実行させながら見ないとわかりませんので御了承く
ださい。このサウンドLSIモニタのプログラムは非常に長いの
でSAVEでは完成したプログラムをおわけしています。要領は
15号のこのコーナーをごらんください。
[PC−6000ハード&ユーティリティ]
前回のジャンプテーブルの続きです。
アドレス(H) 予約語 コード 処理アドレス
FAE5,E6 SGN D4H 3898H
FAE7,E8 INT D5H 39E7H
FAE9,EA ABS D6H 38B9H
FAEB,EC USR D7H 0755H
FAED,EE FRE D8H 32DEH
FAEF,F0 INP D9H 0DCCH
FAF1,F2 LPoS DAH 0D22H
FAF3,F4 PoS DBH 0D27H
FAF5,F6 SQR DCH 3F92H
FAF7,F8 RND DDH 3BA5H
FAF9,FA LoG DEH 3EA5H
FAFB,FC EXP DFH 3E21H
FAFD,FE CoS E0H 3F51H
FAFF,00 SIN E1H 3F57H
FB01,02 TAN E2H 3FD3H
FB03,04 PEEK E3H 6286H
FB03,04 PEEK(60モード )E3H 0DF3H
FB05,06 LEN E4H 3229H
FB07,08 HEX$ E5H 4A3FH
FB09,0A STR$ E6H 305BH
FB0B,0C VAL E7H 32BAH
FB0D,0E ASC E8H 3238H
FB0F,10 CHR$ E9H 3249H
FB11,12 LEFT$ EAH 3257H
FB13,14 RIGHT$ EBH 3286H
FB15,16 MID$ ECH 328FH
FB17,18 PoINT EDH 2D55H
FB19,1A CSRLIN EEH 0D30H
FB1B,1C STICK EFH 2236H
FB1D,1E STRIG F0H 2256H
FB1F,20 TIME F1H 1E83H
FB21,22 PAD F2H 4708H
FB23,24 DSKI$ F3H 5A1FH
FB25,26 LoF F4H 5D9CH
FB27,28 LoC F5H 5D7AH
FB29,2A EoF F6H 5DB1H
FB2B,2C DSKF F7H 5D54H
FB2D,2E CVS F8H 579AH
FB2F,30 MKS$ F9H 5789H
N60モードはP6シリーズすべての機種で使えます。そのた
め次回はN60モードに関することを紹介します。
[P6なんでもコーナー]
今回はゲーム必勝法、「ちゃっくんぽっぷで必ず2万点ボーナ
スがもらえる方法を紹介します。しかし、この必勝法には欠点が
あり、一匹犠牲にしなければならないのです。しかし、2万点ボ
ーナスがはいると同時に一匹増えるから相殺されていいのでは。
まず、スタートすると速攻でハートが閉じ込められているオリを
爆弾で破壊します。ハートがオリから出たと判断したと同時に卵
に当たらないように適当に爆弾を投げ、それに自分が当たって自
爆します。
次の一匹が出たら速攻で出口に行きハートがくるのを待ってい
ます。そしてゴールすると敵を全く殺さずにゴールでき、2万点
ボーナスがもらえます。この方法は5面位まで通用できます。
みなさんもこのコーナーでどんどん情報交換をしましょう。自
分のP6ゲームテクニックなどをこの場で披露してください。
[お知らせ]
・SAVEでは20号以降の会誌について大改革をする予定です
がその内容について会員からの意見を募集しています。ああして
ほしい、こうしてほしいといった内容に関する意見があればSA
VEまでお知らせください。ベーマガもついにランダムコーナー
入りしてしまうので、P6情報で頼れるものといったらこのよう
な私設サークルに頼るしかないのです。また、会員の中でSAV
Eの他に別のP6サークルに入っている方がいれば紹介してくだ
さい。SAVEの会員数が徐々に減ってきていて、会員数が10
を切ると定期的会誌発行が難しくなります。今、SAVEは鉄道
にたとえると廃止対象路線に入っています。廃止になるか存続に
になるかは会員次第です。どんどんSAVEに情報をください。
・RS−232Cの件について資料が不足しています。どなたか
RS−232Cについての資料、実際にRS−232Cボードを
持っている方がいればSAVEまで御一報ください。
編 集 後 記
1990年ももうすぐおわりです。風邪などひかぬようよいお年
をお過ごしください。ちょっとコメントが早過ぎたでしょうか。
(代表)
SAVEの会誌発行予定日が多少ずれます。これはデータ入力が
休み中できないからです。したがって、20号までの今後のSA
VE発行予定日は次の通りです。
17号B1月、18号B4月、19号B6月、20号B7月
(編集担当)
SAVE第17号は1991年1月下旬発行予定です。
15号に戻る
17号に行く