マイコンBASIC Magazine DELUXE MSX/MSX2/MSX2+ゲーム・ミュージック・プログラム大全集 PSGバージョン

マイコンBASIC Magazine DELUXE MSX/MSX2/MSX2+ゲーム・ミュージック・プログラム大全集」に掲載されているゲームミュージックプログラムのうち、「PSGバージョン」として掲載されているPSG用のプログラムの打ち込みが完了し、曲を録音してMP3にしたのでまとめました。

曲のMP3については、「Panasonic FS-A1ST(MSXturboR)」でプログラムを実行して演奏し、A1STのオーディオ端子からの音を録音して音量を調整(+6dB)したうえでMP3化しています。
すべての曲は同じ条件で録音しているので音量のバラツキがあります。また、すべてBASICのプログラムによる演奏のため多少のモタリが発生しており、それについては言及しません。
画像は「MSXPLAYer2005」で実行したものを使用しています。


「アーケード版 グラディウス STAGE 4 BGM」
本誌の最初に掲載されているのは大好きなグラディウス4面BGM「Free Flyer」!

「ファミコン版 ドラゴンクエスト ラダトーム城のBGM」

「アーケード版 ドラゴンスピリット Area 3のBoss」
なぜか作曲がすぎやまこういち先生と記載されていますw

1つ前のドラゴンクエストの曲には記載がないので、こちらに記載するはずだったものを誤って記載してしまったのだと思われます(*'ω'*)

「PC88版 シーナ Function Area」

「アーケード版 スクランブルフォーメーション テストバージョンI」

「MSX版 ザナドゥ エンディング・テーマ」

「アーケード版 沙羅曼蛇 STAGE 2 BGM」

「アーケード版 ギャラガ88 Waltz」

通常だとWaltzだけが演奏されますが、曲の終わりの辺りでタイミングよく大文字の「B」を押すとパーフェクトボーナスの曲が続けて演奏されます(*'▽')

掲載されているリストには文字化けしているところがあるので、PC-8001のキャラクタコード表と見比べて解読してみました( ゚Д゚)
100行は「しょき せってい」

420行は「Play するのだっ」

890行は「にゅうりょく おつかれさん」
900行は「○○の せんせい の まね」

もっとも曲の演奏には全く影響がないので修正はしてもしなくてもよいかと思います(・∀・)

「アーケード版 大列車強盗 イーアルカンフー
大列車強盗 ネーム入れ
イーアルカンフー(BGM)

「MSX版 イース Fly with me」
MSXPLAYer2005で演奏すると音の一部がうまく鳴らない不具合があります。
リストの740行に余分な文字が入っているのでこの部分は打ち込まないようにしましょう(*''▽'')

「ファミコン版 グラディウスII STAGE 3 BGM」

「MSX版 パロディウス クライム・オブ・センチュリー」

「アーケード版 ドラゴンスピリット エリア 3 BGM」
MSXPLAYer2005で演奏すると音の一部がうまく鳴らない不具合があります。

「アーケード版 悪魔城ドラキュラ 十字架を胸に~」

「PC88版 イースII サルモンの神殿」

「アーケード版 グラディウス STAGE 1 BGM」
MSXグラディウス2 STAGE 2,3,4 エリアスタート BGM」
STAGE 3 BGM(本誌ではSTAGE 2 BGMと誤表記)
STAGE 2 BGM(本誌ではSTAGE 3 BGMと誤表記)
エリアスタート BGM
STAGE 4 BGM
リスト2が「STAGE 2」、リスト3が「STAGE 3」となっていますが、リスト2は「STAGE 3」、リスト3は「STAGE 2」だと思われます。

「FM7版 イース ENDING 2 BGM」

ファミコンドラゴンクエストIII おおぞらをとぶ/そして伝説へ」
おおぞらをとぶ
そして伝説へ
音数と曲の良し悪しとは関係ないということを改めて認識させられるすばらしい曲!

「PC88版 イースII 本ボス・ダーム トゥー・フル・ウィズ・ラブ」
本ボス・ダーム
音がノイジーですが仕様です。
トゥー・フル・ウィズ・ラブ(本誌ではファウンテン・オブ・ラブと誤表記)
タイトルが「ファウンテン・オブ・ラブ」となっていますが、「トゥー・フル・ウィズ・ラブ」だと思われます。(「ファウンテン・オブ・ラブ」はイースIの曲)

「ファミコン版 中山美穂のトキメキハイスクール オープニングBGM」

マシン語ルーチンによりBASICで演奏されているとは思えないくらいスゴイ!曲もさわやかで良いです。なお音量が極小なのは仕様ですw

MSX2ドラゴンスレイヤーIV ゼムン,メイア,タラチュネス,アークウインガーのテーマ」
ゼムンのテーマ
メイアのテーマ
タラチュネスのテーマ
アークウインガーのテーマ

4曲のほかにリスト5として「コーラス効果プログラム」が掲載されており、プログラムの解説に使い方も載っています。

「ファミコン版 パルテナの鏡 オーケストラバージョン」
プログラムが約16Kバイトもある大作!


本誌は1989年11月に電波新聞社から発売され、MSX用のゲームミュージックプログラムが、PSG用が22タイトル、MSX-AUDIO用が10タイトル、FM-PAC(MSX-MUSIC)用が49タイトル、合計81タイトル掲載されています。
ちなみに本誌には私がベーマガに投稿したPSG用のプログラムを掲載していただいており、手元にあるものは電波新聞社から掲載料8,000円の為替とともに頂いた私の宝物です(*'▽')

MSX-AUDIO用のプログラムはすでに打ち込みましたので、
parupu.hatenablog.com
今回は目次に「PSGバージョン」として掲載されているPSG用のプログラムを打ち込みました。

私が投稿したプログラムももちろん含まれていますが、さてどれでしょうw

プログラムはA1STを使ってフロッピーディスクに掲載順に収めました。

インデックスも作ってすべて完了!


引き続き打ち込みを進めていきます。

Official髭男dism Pretender(通常盤)

(PCCA-04785 2019/05/15発売 ASIN:B07Q44XDZV

2年前の「 I LOVE...」がとても好きな曲でよく聞いてますが、最近何回かこの曲がラジオで流れていたのを聞いて、今度の新曲もいい曲だなあと思ってCDを探したら3年も前のシングルでしたw

parupu.hatenablog.com
5月発売の曲ですが、私的には冬から春にかけての季節に合う感じのすてきな曲だと思います(*'▽')

ダブルターゲット シンシアの眠り「STAGE5」

カルテットのセガ・マークIIIへの移植作であるダブルターゲット。
原曲はDCSGで演奏されているので矩形波3音+ノイズですが、カルテットの(音楽的なものを含めた)世界観に完全に準規した超カッコイイ曲( ゚Д゚)


HPに掲載しております。
Triple Multiple - MIDI&MP3 - PC&Consumer Game
制作方法についてはCD「SDI & カルテット ~SEGA SYSTEM 16 COLLECTION~ オリジナル サウンドトラック」に収録の音源を耳コピしました。

ついでにダブルターゲットのカセットの写真もどぞう(=゚ω゚)ノ


MSXplayでも聞いていただけます。
矩形波3音はSCCで、ノイズはPSGで鳴らしています。
f.msxplay.com


MSX実機用のMGSDRV v3用MGS/MUSファイルとMGSDRV v2用MGS/MUSファイル、MSXPLAYer2005用のMGSDRV v2.35用MGS/MUSファイルを以下にまとめてあります。
http://parupu.chu.jp/hatena/mgsdrv/double_target.zip
実機で聞く場合は機種ごとに各音源の音量バランスが違うため、掲載しているMP3やMSXplayの音とは異なることがありますのでご了承ください。

A-JAX「RANKING(ランキング)」

激しく時には不条理な敵の攻撃の中を勇敢に戦ってランキングされたプレイヤーを称えるすばらしい曲。2021年を戦い抜いたみなさまへ( ^^) _旦~~


【2022/01/01更新】
テンポが234なのでMGSDRV v2.35ではテンポずれが発生するためMSXplayを使って作りました。v2.35への移植は調整が必要なため後日します。
f.msxplay.com
制作方法についてはCD「KONAMI SHOOTING COLLECTION DISC 07」と「コナミゲーム・ミュージック VOL.4 ~A-JAX~」に収録の音源を耳コピしました。


【2022/01/01追加】
【2023/04/30更新】音量バランスを調整しました。
MGSDRV v2.35用にテンポの補正や音量バランスの調整をして移植し、MSXPLAYer2005で演奏して録音したMP3をHPに掲載しております。
Triple Multiple - MIDI&MP3 - Arcade Game - Konami


【2022/01/01追加】
【2023/04/30更新】v2.35用MGSファイルの音量バランスを調整しました。
MSXplayで調整したMGSDRV v3用MGS/MUSファイルと、MSXPLAYer2005で調整したMGSDRV v2.35用MGS/MUSファイルを以下にまとめてあります。
http://parupu.chu.jp/hatena/mgsdrv/a-jax.zip
実機で聞く場合は機種ごとに各音源の音量バランスが違うため、掲載しているMP3やMSXplayの音とは異なることがありますのでご了承ください。

MSXポケットバンク⑥ トランプゲーム集

MSXポケットバンク⑥ トランプゲーム集」に掲載されているすべてのプログラムの打ち込みが完了したのでまとめました。

ポケットバンクシリーズはMSXの機能についての教本的な意味合いが強いものだけではなく、ゲームなどのプログラムが中心に載っているものもあります。

本誌にはトランプゲームのプログラム7本と関連するプログラムが掲載されていますので紹介していきます(*'ω'*)

MSXマガジンに掲載されたバグ情報や不具合が出るプログラムについての修正方法なども掲載してあります。
なお、MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」には本誌に掲載の4つのプログラムについて修正情報が掲載されていますので、あらかじめ該当部分を修正しておくとよいでしょう。

画像は「MSXPLAYer2005」で実行したものを使用しています。


「カード・ルーチン」
トランプの54枚のカードを描画するためのルーチンで、単独では動作しません。

入力後はアスキーセーブしておき、以降に掲載されているプログラムとマージして使用します(*'ω'*)

「カードテスト」
カード・ルーチンの確認用のプログラム。全54枚のカードが描画されます。

「インデアン・ポーカー」
MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」にこのプログラム(P16)の印刷かすれについての情報が掲載されていますので、入力の際は注意しましょう(*'ω'*)

カード・ルーチンのサンプルプログラム。コンピューターのカードと比べて自分のカードが大きいか小さいかをカーソルの上下キーを押して当てます。

1回の勝負ごとに命中率が表示されます。

勝負はプログラムを止めない限り延々と続きますよ(・∀・)

「おまけのプログラム」
プログラムでは表示する文字を暗号化していますが、

リストのとおり入力すると正しく表示されません。

MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」にこの部分(P17)修正情報がありますが、

このとおり修正しても修正した文字がカタカナで表示されてしまいますw

リストの空白部分(正誤表では「♠」の部分)をキャラクタコード160で入力すると正しく表示されますが、通常では入力できない文字のためファンクションキーに「KEY 1,CHR$(160)」として登録し、空白部分にファンクションキーを押して入力するとよいでしょう(*'ω'*)

おまけなので内容は引いたカードを表示するデモ的なプログラムのようです(゚∀゚)

トランプゲーム・ライブラリ
「1人占い」
運が7割、テクニックが3割、という占いトランプゲーム。
台札のエース4枚と残りの48枚が横6×縦2×4枚で場札として並べられるので、

場札にあるカードは台札の上に順番になるように置き、

台札に置けない場合でも場札にあるカードの同じマークの1だけ大きいカードに置くことができます。

カードがどこにも置くことができなくなったら「オワリ」を選択すると配り直しされ、

右下のカードの山からとなりのカードの山の上に順番に置いて集め、再び左上から順番に4枚づつ置かれます。

配り直しをしてもどこにもカードを置くことができなくなったときなど、カードを1枚も動かさずに「オワリ」を選択すると、

メッセージが表示されて終了。メッセージは台札にどれだけ場札を順に置くことができたかで判断される全5種類(゚∀゚)

すべてのカードを台札に置くことができると「オヌシハ バカヅキ」のメッセージが表示されますが、なかなかうまくいかないのでかなり難しいです(*''ω''*)

「神経衰弱」
トランプゲームとしてはおなじみの神経衰弱。1人から6人で遊べるようになっていて、ここでは1人でプレイ。名前を入力しないとゴンベさんになります(*''ω''*)

同じカードをめくって取っていきます。得点はカードの数字と同じなので、複数人で遊ぶ場合は重要な戦略となるはず(゚∀゚)

最後のペアを取りました。連続で取るとボウリングの得点と同じように加算されて得点がもらえます。

得点が表示されて終了~。

「99」
MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」にこのプログラム(P42)の印刷かすれについての情報が掲載されていますので、入力の際は注意しましょう(*'ω'*)

5人のプレイヤーが順番にカードを出し、合計が99を超えたときにそのカードを出したプレイヤーが負けになります。

順番にカードを出していきます。

カードのうち「A」「8」「9」「10」の4種類は役札と呼ばれ、

本誌の説明のとおり特別な動きをします。

順番が回ってきましたが、99を超えないように出せるカードが無く絶体絶命です(;''∀'')

ゲームオーバーw

ブラックジャック
MSXマガジン等での訂正情報の掲載はありませんが、130行と1020行に文字の抜けがあるよう見えますので、


130行は文尾に「"」、1020行はSCOREの直前のスペース部分に「'」を入力しておくとよいかもしれません。

130行の文尾の「"」は入れなくてもまったく問題ないですが、他の行のPRINT文では必ず文尾に「"」が入っており、該当行は掲載ページの最下部にあって改行により行頭に入っていたものを気付かず消してしまったと思われるため入れておくことにしました(*''ω''*)

言わずと知れたブラックジャック

掛け金を入力するとカードが2枚配られるので、合計点を考えてドローするかどうか判断します。

2枚ドローして合計が21点に!!!

と思ったら相手ディーラーも合計が21点に!同点の場合はディーラーが勝ちになるようです(;゚Д゚)

そして掛け金が無くなりゲームオーバーw

「ダブルアップ・ポーカー」
得点倍々ゲーム付きのポーカー(゚∀゚)
まずはカードが裏向きに5枚配られているので、

掛け金を入力するとカードがめくられ、

残したいカードを1~5のキーで指定し、

リターンキーを押すと新たなカードが配られて結果が右下の枠に表示されます。
ハンド(役)があるとダブルアップするかどうか聞いてきますので、

「Y」を押してダブルアップに挑戦する場合は表示されたカードより上か下かを予想してカーソルの上下キーを押します。

下と予想して「↓」を押しましたがハズレました(;''∀'')

持ち金が無くなって唐突に終了してプロンプトに戻りましたww

掛け金の入力の指示や説明も無く、そのほかキー操作の説明も無いので少し作りが荒い印象( ゚Д゚)

「スピード」
MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」にこのプログラム(P77)の印刷かすれについての情報が掲載されていますので、入力の際は注意しましょう(*'ω'*)

反射神経が求められるスピード( ゚Д゚)
まずはコンピューターの強さと手札の色を選択します。

「¥」でゲームスタート。

台札が2枚置かれるので、

F1~F4キーで自分の場札を選択し、左右のキーを押して場札のカードを台札に置きます。

場札が双方半分くらいになっていい勝負ですが、キーの反応が少し鈍くてカードが出しにくい気がするw

2枚残して負けてしまいました(;''∀'')

大貧民
パーティートランプゲームの定番。大富豪と呼んでいるところもあるかも(*'▽')
ゲームスタート~。数字を押して手札を出していきます。

数字が同じカードを複数枚出す場合は一番左のカードの数字を押します。戦略からカードを残す場合は残すカードの右側のカードの数字を押します。

どんどんカードを出して進めていきましょう(*'ω'*)

順調にカードを減らして大富豪になりました!

次のゲームが始まり階級に基づいてカード搾取。大富豪は最も弱いカード2枚を大貧民に渡し、大貧民から最も強いカード2枚をもらいます。

順調にカードを減らしてこのゲームでも大富豪になりましたよ(=゚ω゚)ノ

そして夜が更けてもゲームは続くのでした・・・( ̄▽ ̄)


現在手元にある本誌はかなり後になって購入し直したもので、当時は実際に購入してトランプゲームのプログラムを入力して遊びました。

プログラムはA1STを使ってフロッピーディスクに掲載順に収めました。

インデックスも作ってすべて完了!


引き続き打ち込みを進めていきます。

MSXポケットバンク⑨ グラフィックス秘伝

MSXポケットバンク⑨ グラフィックス秘伝」に掲載されているサンプルプログラム等を含むすべてのプログラムの打ち込みが完了したのでまとめました。

ポケットバンクシリーズはゲームなどのプログラムが中心に載っているものだけではなく、MSXの機能についての教本的な意味合いが強いものもあります。

本誌はVDPの制御方法などを解説しながら実際のプログラムで活用していますので、それらのプログラムの画面を掲載しながら紹介していきます(*'▽')

MSXマガジンに掲載されたバグ情報や不具合が出るプログラムについての修正方法なども掲載してあります。
画像は「MSXPLAYer2005」で実行したものを使用しています。


「リスト2-1」
ファンクションキーの表示位置が「❤」で埋まります。

PRINT文ではなくVPOKE命令とBASE関数を使用して文字を表示しています。

「リスト2-2」
SCREEN 0の名称テーブルに表示位置のアドレスをオフセット指定し、文字コードを直接書き込んで表示させます。

リスト2-1と同じくVPOKE命令とBASE関数を使用して文字を表示しています。

「リスト2-3」
パターンジェネレータ・テーブル内の「A」のデータを市松模様に書き換えて表示させています。

「リスト2-4」
パターンジェネレータ・テーブル内の各文字のフォントデータを文字コード順に1文字づつずらします。

たとえば「1」は「2」、「A」は「B」と表示されるというとても厄介なプログラム(*''ω''*)

「リスト2-5」
SCREEN 0の文字の色と背景画面の色を、指定したカラーコードをカラーテーブルに直接書き込んで変えます。

「リスト2-6」
SCREEN 1のカラーテーブルに直接カラーコードを書き込んで変えています。

SCREEN 1の場合は通常だと8文字ごとに色が変えられます。

「リスト2-7」
すべての文字を表示させてカラーテーブルにランダムなカラーコードをどんどん書き込んで表示しています。

やはり8文字ごとになっていて、通常のSCREEN 1のカラーテーブルの様子がよくわかるプログラム(゚∀゚)

「リスト2-8」
SCREEN 2の名称テーブルの内容を操作して複数の木の絵を同時に描画します。

「リスト2-9」
SCREEN 2に2つの円を描画したあと、カラーテーブルの横一列ごとにランダムなカラーコードを書き込んで色を変えています。

「リスト2-10」
SCREEN 3に規則正しく描画された点を名称テーブルを書き換えて縦横違う方向に動かしています。

解説では青い点と赤い点が動くと書いてありますが、プログラムでは2つの点を同じ青色で描画しているので青い点しが表示されていません(*''ω''*)

「リスト2-11」
カラーコードを2から15まで順に変化させながらスプライトを表示していますが、

カラーコードが2に戻るときにECビットを同時に書き変えて32ドット左にシフトさせて表示しています。

「リスト2-12」
スプライトが表示されていますが、

スペースキーを押している間はVDPに直接値を書き込んで拡大したスプライトを表示させています。

「リスト2-13」
SCREEN 2でのスプライトプレーンの座標とカラーコードを知るための関数定義の例、とのことです。

プログラムでは単に座標とカラーコードが順に表示されるだけですが、いろいろな応用が考えられる、とのことです。

「リスト3-1」
プログラムではSCREEN 1に設定していますが、実行するとSCREEN 0になります。

SCREEN命令ではなくBIOSを呼び出してSCREEN 0に変えています。

「リスト3-2」
実行するとカーソルが意表をついた場所に現れます。

カーソルの縦座標のワークエリアにランダムな値を書き込んで表示位置を変えています。

「リスト3-3」
キャラクタコード65から90までのフォントを変えますが、データが足りないため「A」と「B」のフォントを変えてエラーになります。

フォントパターンはP47とP48に掲載されているもので、これをもとにキャラクタコード48~57の数字やこれに載っていない小文字等を含めて補完すれば巻頭のようなリスト画面を表示させることも可能!(゚∀゚)

「リスト3-4」
リスト2-4と同じくキャラクタコードが1文字づつズレて表示されますが、ワークエリアにあるフォントデータの先頭番地を書き換えているためSCREEN文などを実行しても元に戻りません(;''∀'')

「リスト3-5」
ダイレクトモードでのPOKE文のみのためプログラムはありません。
通常のフォントデータが格納されている先頭番地はメインROMの0004H~0005Hに入っているので、それをワークエリアにあるフォントデータの先頭番地に書き込みます。

この2文を実行すればリスト3-4で変更されてしまったフォントを元に戻すことができます(*''▽'')

「リスト3-6」
リスト3-8「フォント・エディタ」のUSR1を実行したときと同じ動作をするプログラムです。

RAMに置かれているフォントデータを初期化するルーチンだと思われます。

「リスト3-7 「文字を回転させる!」」
フォントが横向きで表示されるようになります(*'ω'*)

「リスト3-8 「フォント・エディタ」」
マシン語プログラムの後に格納されているフォントデータがディスクのワークエリアにかかってしまうため、マシン語プログラムとフォントデータのそれぞれの先頭アドレスを無難な位置に変更しておくとよいかもしれません。

まずは編集したデータを初期化するか聞かれるので、新たにフォントデータを作る場合は「Y」を、以前の続きをする場合は「N」を押すと、

エディット画面が表示されます。

「C」を押してエディットしたい文字のキャラクタコードを入力し、

「G」を押すと登録されているフォントデータが表示されます。

エディット画面ではスペースキーでドットを打ち、リターンキーでドットを消します。出来上がったら「P」を押して登録します。

各文字のエディットが終わったら「S」を押してディスクにセーブしましょう。

始まりと終わりのキャラクタコードを入力して、

セーブが終了すると、

エディット画面に戻るので、他にエディットするフォントがなければ「E」を押して終了しましょう。

SCREEN1 にしてリストを表示。ここでは数字のフォントをいわゆるアタリフォントにエディットしてみました(*''▽'')

「リスト3-9 「点が動く!」」
MSXマガジン等での訂正情報の掲載はありませんが、100行に文字化けがあります。

PC-8001のキャラクタコード表と見比べると「●」ではないかと思いますが、実際の実行画面が無いので正しいかどうかは不明です(=゚ω゚)ノ

VRAMのテーブル構成に12枚のページを設定して次々に切り替え、多数の点がらせん状にグルグル動いて回っているように見せています。

MSX2以降で実行すると7枚目のページに画像のとおり謎の文字が入ります(・∀・)

「リスト3-10 「立体迷路ゲーム」」
6階建ての迷路から抜け出します。

迷路上には上下の階に通じる階段があってそこを通って迷路を脱出しますが、画面上には表示されておらず、このままだと激ムズでまったく先に進めません(;''∀'')

そういったことを見越してなのか本誌には階段のある位置に矢印を表示させる方法が載っているのでこれを利用してゲームを進めます(*'ω'*)

1階。階段の位置に矢印が表示されています!

2階。階が変わるとページング操作で一瞬で迷路を表示!

3階。アスキーw

4階。

5階。

6階。出口に到着!

エンディング。音楽が流れる中で1~6階の迷路が順に表示されていきます。

音楽が終わると脱出までの時間を表示して終了(*'ω'*)

「リスト3-11 「15パズルゲーム」」
マシン語データやパズルの絵柄データをディスクのワークエリアに置いているため、ディスクを使用する場合はマシン語等のデータの場所を無難な位置に変更しておくとよいかもしれません。
ここではマシン語等の先頭アドレスをCD00Hに変更し、それに伴ってマシン語内の各アドレスと表示するデバイス名を変更しています。
また、MSXマガジン等での訂正情報の掲載はありませんが、画面を壊さずSCREEN 3に変える際、5020行でスクリーンモードのワークエリアに書き込む数値が間違っているので修正しておくとよいでしょう。

最初にパズルの絵柄をどうするのかのメニューが表示されますので、通常は1でスタートしましょう。

まずは完成状態が表示され、

バラバラになったところでゲームスタート~。
カーソルを動かしてスペースキーでプレートを開いているところに移動します。複数のプレートを同時に移動させることもできます。

半分くらいできました。MSXポケットバンク⑤ ゲームキャラクタ操縦法 - Triple Multiple - ぱるぷ日記(仮)に掲載の15パズルでは絵柄のプレートにスプライトを使用していますが、こちらはSCREEN 3の名称テーブルの内容を変えることでプレートを移動しているとのことです(*'▽')

そして完成!

完成までの時間が表示されたあと、そのままの色でメニューに戻ります。

最初のメニューで2を押すとオリジナルの絵柄を作ることができるデザインモードになります。

操作は本誌に掲載されているとおり(=゚ω゚)ノ

エディットが終わったらセーブもできますよ。


現在手元にある本誌はかなり後になって購入し直したもので、当時は実際に購入してプログラムを入力しました。

特にフォントが変えられるというのが魅力的で、フォントエディタでアタリフォントやオリジナルのフォントを作ったりしてました(*'▽')

プログラムはA1STを使ってフロッピーディスクに掲載順に収めました。

インデックスも作ってすべて完了!


引き続き打ち込みを進めていきます。

MSXポケットバンク⑫ アクションゲーム38

MSXポケットバンク⑫ アクションゲーム38」に掲載されているすべてのプログラムの打ち込みが完了したのでまとめました。

ポケットバンクシリーズはMSXの機能についての教本的な意味合いが強いものだけではなく、ゲームなどのプログラムが中心に載っているものもあります。

本誌には1ページで収まるような比較的短いアクションゲームのプログラムが38本掲載されていますので紹介していきますが、数がとても多いため基本的には実行したときの画像1枚の掲載のみとします(*'ω'*)

MSXマガジンに掲載されたバグ情報や不具合が出るプログラムについての修正方法なども掲載してあります。
また、MSXマガジン1985年6月号に掲載の「MSX通信 ポケットバンクバグ情報その10」には掲載リストにおけるカンマとピリオドの区別についての注意喚起情報が掲載されていますので、入力の際には十分注意しましょう(*'ω'*)

画像は「MSXPLAYer2005」で実行したものを使用しています。


「放火魔」
MSXPLAYer2005ではパトカーが画面外に出るとゲームオーバーになってしまう不具合があります。

「スカイダイビング」
MSXPLAYer2005ではうまく動作しない不具合があります。

「バンク・パニック」

「酒樽ころりん」

「磁石の惑星」

「手榴弾を投げろ!!」

「タンク-2」
2人用のゲームなので2Pの操作にジョイスティックが必要です。

「BOMB-X」
MSXPLAYer2005ではB-52が画面の右端まで進むとミサイルが都市に命中したことになってしまう不具合があります。

「星間大戦争

「追撃、戦車戦!」

ベルリンの壁

「ハンティングゲーム」
MSXマガジン等での訂正情報の掲載はありませんが、510行のデータに明らかな誤植があります。

照準のスプライトデータなので「p0」ではなく「80」が正しいと思われますが、特に訂正しなくてもエラーにはなりません(*'ω'*)

「JUMP-JUMP」

「風船の襲来」

「鍾乳洞」

ドライブゲーム

「気球野郎、大冒険」

「スキーゲームPART1」

「スキーゲームPART2」
MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」に誤植についての情報がありますので修正しておきましょう(*'ω'*)
(所有しているものは誤植されてなかったので重版によっては修正済みの場合があるようです。)

「やぶから棒」

ブラックホールの掃除人」

「パッシング・ロード」

「緊急入港ゲーム」

万里の長城

「横断大作戦」

「人間ハンティング」

モグラくんの1日」

「ヘビ使い」

「ベクトルゲーム」
2人用のゲームなので2Pの操作にジョイスティックが必要です。

「旗上げゲーム」

「100m走」

「押しずもう」

「自動車レース」

「ダイヤモンド探し」

「ブロック攻撃」

平城京の闘い」

「ブロック軍団の逆襲」

「テニスゲーム」


現在手元にある本誌はかなり後になって購入し直したもので、当時は実際に購入してプログラムを入力しました。

しかし当時使用していたカセットテープに収められていたプログラムは「ブロック攻撃」のみ。
parupu.hatenablog.com
なんとなく残っている記憶によると、本誌に掲載されているプログラムのゲームはかなりライトなものばかりなうえに打ち込むのも大変なので、との判断から「ブロック攻撃」しか打ち込まなかったのだとw

プログラムはA1STを使ってフロッピーディスクに掲載順に収めました。

インデックスも作ってすべて完了!


引き続き打ち込みを進めていきます。

MSXポケットバンク⑤ ゲームキャラクタ操縦法

MSXポケットバンク⑤ ゲームキャラクタ操縦法」に掲載されているサンプルプログラム等を含むすべてのプログラムの打ち込みが完了したのでまとめました。

ポケットバンクシリーズはゲームなどのプログラムが中心に載っているものだけではなく、MSXの機能についての教本的な意味合いが強いものもあります。

本誌はスプライトの使い方などを解説しながら実際のプログラムで活用していますので、それらのプログラムの画面を掲載しながら紹介していきます(*'▽')

MSXマガジンに掲載されたバグ情報や不具合が出るプログラムについての修正方法なども掲載してあります。
画像は「MSXPLAYer2005」で実行したものを使用しています。


「リスト1-1」
スプライトで作られたMSXの文字が画面を動き回ります。

解説にもあるとおり比較的簡単にキャラクターを動かせるのはスプライトの便利な特徴のひとつ!(゚∀゚)

「リスト1-2」
コード名の上にカーソルを合わせてスペースキーを押すとコード名の和音が鳴ります。

カーソルにはもちろんスプライトを使用しています。ゲームのキャラクターに使われるだけでなく、このような「道具」としても手軽に使用できます(゚∀゚)

「リスト1-3 15パズルプログラム」
絵柄にスプライトを使用したおなじみな15パズル。

バラバラになった絵を元に戻していきますよ。

なんとなく完成に近づいてきた。

完成したのでスペースキーを押しましょう。

完成までの時間が表示されて終了(*'ω'*)

「リスト2-1」
小さいキャラが変化しながら動いていきます。

スプライトは8×8の場合は256パターン、16×16の場合は64パターン定義できるので、このようなアニメーションっぽい動きを作るのも比較的簡単(゚∀゚)

「リスト2-2」
実行するとエラーになります。
スプライトのプレーンは32枚まで表示でき、0~31の番号を指定して表示させますが、30行で32を指定して33枚目を表示させようとしているので当然エラーになりますw

それを修正して実行すると一瞬だけ■を表示して、

メッセージを表示して終了(・∀・)

「リスト2-3」
32枚のスプライトをフルに表示させています。もちろん横方向には4つまでしか表示できません(゚∀゚)

「リスト3-1」
実行するとエラーになりますが、エラーが出た60行ではなく10行のSCREEN文がエラーの原因。
スプライトはSCREEN 0では使えないので、関連する命令を使ってもエラーになるようです。

修正して実行しました(*'▽')

「リスト3-2」
SCREEN 2でのグラフィックの表示例です。

「リスト3-3」
2進数でのスプライトパターンの定義・表示例です。


2進数だと簡単でわかりやすいですが、データ量が多くなりますよね(*'ω'*)

「リスト3-4(a)」「リスト3-4(b)」
リスト3-4(a)

リスト3-4(b)

(a)と(b)は同じように飛行機が右から左下に移動するプログラムですが、(b)の方が速く動きます。

(a)は座標の移動に計算式を使っていますが、(b)は計算式を使わずSTEPを使って座標を移動させているので早いようです( ゚Д゚)

「リスト3-5」
スプライトのプレーンとパターンは独立しているため、異なった複数のプレーンに同じパターンを表示している、という例です。

「リスト3-6」
スプライトのパターンを登録するときにはデータを文字列の形で与えているので、リスト3-3のパターンの横8ドット分のデータを1文字のキャラクターに変換して8文字で構成されたデータにし、それを2進数に変換して表示しています。

100行がそのデータで、この方法でスプライトのパターンを定義するとデータが非常に小さくなります。

「リスト3-7」「リスト3-8」
この2つのプログラムは単独で実行するとエラーになるので、2つを合わせて実行しましょう。

リスト3-6の方法だとコントロールコードは文字列に変換できないので「^」を使って回避するプログラムです。

データ量は少ないですが、プログラムでの計算式等は複雑になっています(;'∀')

「リスト3-9」
16×16ドットのキャラクターの2進数でのスプライトパターンの定義・表示例です。


8×8ドットのスプライトパターンを①↓②↗③↓④の順で4つ並べて1枚のスプライトプレーンで表示している感じだと思います。

「リスト3-10」
16×16ドットのスプライトパターンデータをリスト3-7やリスト3-8と同じように文字列の形で与えていて、それを大量に表示させています

「リスト3-11 スロットマシンプログラム」
絵柄をスプライトで表示しています。

絵柄が1つもそろわず減点w

絵柄が2つ揃いました(*'▽')

今度は3つ!

しかしこのゲーム、絵柄が1つもそろわないことが少ないのでどんどん得点が増える一方ですw

普通にプレイするとまず終わらないゲームですが、いちおう得点が0になるとゲームオーバーになります(=゚ω゚)ノ

「リスト4-1」
ボールが画面上を動き、画面の端に当たるとバウンドして動いていきます。

「リスト4-2」
リスト4-1に加えて画面の中ほどに障害物が表示されていますが、これに当たってもバウンドして動いていきます。

「リスト4-3」
四角いボールが放物線を描いて飛んでいきます。

「リスト4-4」
描かれている正弦波の上をスプライトを使った棒がきれいに移動していきます。

「リスト4-5」
カーソルが円を描いて動きます。

写真ではわかりにくいですが、このような軌跡に沿って動いています。

「リスト4-6」
リスト4-5より複雑な軌跡でカーソルが動きます。

写真ではわかりにくいですが、いわゆるリサージュと言われる図形の軌跡に沿って動いています。

リスト4-5とリスト4-6の軌跡の点は本誌の解説に書かれている方法で表示させています。

リスト4-3~6のプログラムではスプライトを表示する座標を先に計算して変数に格納し、それを順番に参照してスプライトを表示しています。この方法だと座標を演算しながら表示させるよりはるかに早く動かせますよね(*'▽')

「リスト4-7」
円の周りを四角いカーソルが回りますが、円の裏に周ると隠れて見えなくなるのであたかも人工衛星が周っているかのように見えます(*'ω'*)

スプライトのy座標には特別な意味を持つ値があるので、それを用意した変数の範囲に代入し、その範囲だけはスプライトを表示させないようにしているとのことです。

見えなくする範囲を条件式で判定して表示させないようにするより早くて簡単ですよね(*'ω'*)

「リスト4-8」
インベーダーゲームのような砲台がカーソルキーで左右に動きます。

「リスト4-9」
単独で実行するとエラーが出ますが、リスト4-8に加えて実行することでスペースキーでミサイルを打つことができるようになります(*'▽')

「リスト4-10」
キャラが画面上を動きますが、5つのファンクションキーを押すとそれぞれのキーに設定された角度に動きが変わります。

「リスト4-11 アミダくじプログラム」
はじめは横線が書かれていませんが、

ファンクションキーでルートを選ぶと横線が書かれて、

線に沿ってカーソルが動いていきます。

結果は大キチ!

「リスト5-1」
スプライトを重ねて多色キャラを表示させています。

当然スプライトは横方向に4枚しか表示できないので、あまり多色にするのは実用的ではありません(*''ω''*)

「リスト5-2」
2種類のスプライトパターンを異なる動きで動かしています。

1つのキャラクターを複数のパターンを使って多色にするより、パターンの種類を増やして複数のキャラを動かした方が見栄えが良くなるのでMSX的には好都合、ということのようです。

「リスト5-3」
リスト4-7とプログラム構造は同じということですが、円の周りを回る四角いカーソルが2つになっています。2つのプレーンを同じ座標テーブルの位置をずらして表示させているとのことです。

さらに260行を本誌に記載されているように変えると、

同じ座標テーブルを使用しているのに違う軌道で回るため、表現のバリエーションが増えた感じになっています(*'ω'*)

「リスト5-4」
スプライトで表示された16匹のインベーダーが動いていきます。

実際のインベーダーゲームは横方向にもっとたくさんキャラが並んでいるので、横に4枚までという制限があるMSXのスプライトでは・・・

「リスト5-5」
尺取り虫のようなキャラが動きを変化させながら横に動いていきます。

定義しているパターンは8×8ドットで、表示しているキャラは横8ドットを越えている部分がありますが、越えている部分は別に用意したパターンを横に並べて横8ドット以上のキャラを表示させているとのことです(゚∀゚)

「リスト6-1」
スプライトパターンを作成できるスプライトパターンツールです。
まずは大きさを決めると、

作成画面が表示されるので、カーソルを動かしてスペースキーを押してドットを打っていきます。

そのほか小文字の「w・z・a・s」を押すとローテイトし、大文字の「W・Z・A・S」を押すとシフトします。
そしてどこかで見たことがあるキャラが完成(=゚ω゚)ノ

SELECTキーを押すと等倍で表示されます。1色でもそれなりに見えるかも(*''ω''*)

さらにSELECTキーを押すと2倍で表示され、さらにSELECTキーを押すと元の作成画面に戻ります。

完成したら作成画面でリターンキーを押すと行番号とともにスプライトのデータが表示されます。
ただしテキストでデータが表示されているだけなので、最上段の行から4回リターンキーを押してプログラムの1部にして利用しましょう(*''▽'')

「リスト7-1」

リスト5-2と同じに見えますが、スプライトが重なった時に ON SPRITE GOSUB が発動してそれぞれのパターンの色が入れ替わって反発して動いていきます。

「リスト7-2 ピンボールプログラム」
MSXマガジン1985年3月号に掲載の「MSX通信 ポケットバンク全正誤表」に印刷のかすれについての情報がありますので注意して入力しましょう。


リターンキーを押すとボールが発射されてスタート。


スペースキーを押してフリッパーを動かしてボールを打ち返します。ただしフリッパーは左右同時に動きます(゚∀゚)

フリッパーの間にボールが来てしまってミスに・・・

フリッパーはスペースキーを押し続けても元の位置に戻ってしまうのでボールを止めておくことはできませんよw

そうこうしているうちにボールが無くなってゲームオーバー(;'∀')


ポケットバンクシリーズのナンバリングがある16冊の中で最初に購入したのが本誌でした。現在手元にある本誌はかなり後になって購入し直したものですが、当時は実際にプログラムを打ち込んで内容を熟読し、スプライトについての命令等はだいたい理解して使えるようになっていたと思います。

しかしそれを活用してゲームなどを作るというところまでは至っていません。ゲームを作るのには構成力とかセンスとかが必要なので(;''∀'')

プログラムはA1STを使ってフロッピーディスクに掲載順に収めました。

インデックスも作ってすべて完了!


引き続き打ち込みを進めていきます。

マイコンBASICマガジン 1988年12月号 BM特選プログラム・コーナー(MSX2)


「HIP-DUMP」
プログラムは4つに分かれていますので、本誌の解説どおりに作業して保存しておきましょう(*''▽'')
なおMSXPLAYerではキャラのアタリ判定がおかしく、下降中に敵をすりぬけてしまって倒せないときがありますw

探検家HIP-DUMPを操作して変な生き物をつぶしてアマゾンの奥地から脱出します。

フィールド上の茶色の通路にある矢印で止まるとその矢印の方向に動きます。ただし通路の一番上に矢印がある場合は下降します。

茶色の通路を下降中。

矢印に当たると矢印の方向に進んで矢印は反転します。ただし一番上に矢印がある場合は変わりません。

下降しているときに敵をつぶせます。ハリネズミみたいな敵(1面には居ません)以外をすべて倒せば面クリア。

2面。ゆっくり動くハリネズミみたいな敵は倒せないのでうまく除けて攻略しましょう。

4面。スライムみたいな敵も同じように倒していきます。

問題の5面。ここでは敵が最上部から降りこないので普通の方法では敵を倒せません。

上昇中の茶色の通路の一番の上の矢印部分で一瞬止まり、そこから下降するときに真横にいる敵を倒すことができます。
しかし敵が動いてくるタイミングをシビアに見極めないといけないので鬼ムズ(゚∀゚)

そんな感じで全21面を攻略していきます。

そして21面をクリア~!

エンディング!アマゾンの奥地から脱出することができました~。

5面のようにクリアが非常に難しい面があるのがちょっと残念なところです(;'∀')

マイコンBASICマガジン 1988年11月号 BM特選プログラム・コーナー(MSX2)


「ふうせん3」
半魚人を操作してふうせんを全部取ったり割ったりしてドアまで行き、全15面をクリアして塔の屋上から脱出します。

キャラがカワイイ(*''▽'')

ゲームスタート~。

地面やはしごが無い場所では1マスずつ下に降りていきます。ふうせんを水中では1個、地上では3個以上持っていれば上昇するのでうまく利用してドアを目指します。

水中でふうせんを1個とって上昇中ですが・・・

とげに当たると割れてしまいます。しかしふうせんを割らないと全部のふうせんがとれずにクリアできなくなるので、計画的に割っていかなければなりません(*''ω''*)

はしごの上ではふうせんを持っていても上昇しません。

ちなみにとげの上側にふうせんがある場合は割れません。クリア不能になった場合はリターンキーでギブアップできます。

はしごを利用して斜め上方にあるふうせんを取っていきます。


ふうせんを3つ持っているので地上を上昇。

ドアに入って面クリア~。各面をクリアするとパスワードが表示されるのでコンティニューもできます。

FLOORは全15面あります。

ふうせんを取る順番や通るルートをよく考えることが必要です(*''ω''*)

全15面をクリアしてエンディング!

各面のパスワードです。ネタバレ注意!

マイコンBASICマガジン 1988年10月号 BM特選プログラム・コーナー(MSX2)


赤ずきん -おおかみ退治伝説-」
赤ずきんちゃんがおばあさんを助けるために冒険して謎を解いて悪いおおかみを倒す、というロールプレイングゲーム

フィールドはロマンシア風で横に拡がっていて、最初のフィールドには宿屋があります。

画面上で動いているモンスターに触れると戦闘モードに。

コマンドもキーを押しっぱなしでOK。

敵を倒して経験値とゴールドをゲット。ちなみに死んでしまった場合でもお金が0になるだけで、レベルや謎解きの過程はそのまま引き継がれる親切設計(*'▽')

敵と戦って経験値とお金を稼ぎ、体力が少なくなったら宿屋で回復(*'ω'*)

経験値が貯まってレベルアップ!

フィールドの先に進むほど敵が強くなるので、レベルが上がれば先に進んでいっても心配が少なくなります。
そして点在する家などに入って謎を解くための情報収集&フラグ立てwをしていきましょう(*'▽')



正解のボタンを押したら画面がスクロールして仙人のイベント発生!


敵との戦闘中には魔法が使えますが、ここでは魔法が2の「けろりん」しか使えません。

仙人を倒して「ぎんのかぎ」をゲット!

フィールドの先にあった扉がこれで通れます。

さらなる謎解き。

ここのフィールドには武器屋と宿屋があります。


長くなるのでまとめますよ。

おうじょのイベントは上から降ってくるレンガをよけるミニゲーム(*''ω''*)

ミニゲームをクリアして「きんのかぎ」をゲット!


フィールドの先にある「きんのかぎ」が無いと通れない扉を通ると・・・

おおかみ出現!しかし・・・

扉の前に戻されました。何かフラグが足りないようですな。

またまたまとめます。おおかみを倒してもまだ終わらない!?

なんと真のボス登場w

真のボスはまたもおおかみ。さすがに強い。

倒した!これでゲームクリア!

終盤で入手した「ずきん」が発動して赤くなってエンディング!

フィールドと敵のまとめ。一番強い敵でも最後の方は一発で倒せるザコになりますよw

ゲーム中にいろいろな謎を解いきますが基本的に簡単なのでサクサク進み、ゲームを飽きさせないイベントもあるのでたいへん楽しく遊べます(*'▽')

ちなみに本誌のCKECKER FLAGによるとプログラムが長すぎで誌面が足りなくなるのでストーリーがカットされているとのことです。

主人公は赤ずきんのはずなのになぜか最初から白いずきんであることなどいろいろな謎の理由は掲載をカットされてしまったストーリー内にあったのかもですが、真相は作者さましかわからないようです(;'∀')

マイコンBASICマガジン 1988年9月号 BM特選プログラム・コーナー(MSX2)


「Put'n」
将棋・オセロに続く新しい思考型ゲーム!?

2人用のゲームなので、1Pはカーソルで赤タルクを、2Pはジョイスティックで青タルクを操作します。

タルクを移動させて敵のキングタルクに到達させるのがこのゲームの目的。

タルクは3枚まで重ねることができ、重なりの数はタルクの色の濃さで判別できます。重ねたタルクを移動させると増殖します。

本来は2人用なのでこのようになることはありえませんが、1人でひたすら画面一杯にタルクを増殖させているだけで心が安らぎます(何

タルクをキレイに整地できました(そうじゃないw

整地はあきらめて()相手のタルクの陣地を攻撃し、キングタルクに到達して青が勝利。負けた方はなぜかピースします(/・ω・)/

本誌のCHECKER FLAGではDr.Dが市販してもおかしくないくらいと絶賛していました(*'▽')

マイコンBASICマガジン 1988年8月号 BM特選プログラム・コーナー(MSX2)


表紙はやぶれてはずれてしまっています(;'∀')

ページ割れもしてしまってもうボロボロです。しかしこれも当時読み倒していた証拠 ( *¯ ω¯*)フンス

プログラムの応募カードが切り取られています。たぶんゲームミュージックのプログラムを投稿したのだと思います ( *¯ ω¯*)フンスフンス


揚子江」(要漢字ROM)
麻雀をすごく簡単にしたようなゲーム。

対戦相手はおらず、牌は萬子と字牌しかありません。

牌の山から牌を1枚づつ取って役を作っていきます。

あと一枚でアガリになったのでリーチ!

牌を30個捨てると流局に・・・

実際の麻雀と違ってテンパイしていても点を引かれますw

再びリーチ!

今度はアガれました!「門前清」は順子と刻子を2:1または1:2で揃えた基本的な役です。

画面上部に「盗牌」とありますが、これと同じ牌をツモるとコンピューター()が牌の山から牌をひとつ勝手に捨ててしまいます(;'∀')

そのほかのアガリ役はこんな感じ。最強の役は「揚子江」。いわゆる大三元

役が揃わないまま上がるともちろんチョンボw

ルールも簡単で制限時間も無いのでひたすら楽しく遊べます(*'▽')

この「揚子江」は要漢字ROMのため当時打ち込んでいなかったので今回新たに打ち込んだものですが、リスト誌面には鉛筆で行番号付近をマークしてそれを消しゴムで消してある跡がありました。もしかすると当時途中まで打ち込んでいたのかも。まったく記憶にはありませんがw

マイコンBASICマガジン 1988年7月号 BM特選プログラム・コーナー(MSX2)


「HORROR OF 1/2」
全部で13ある部屋のボール型安全装置が壊れたので「だいじょぶ君」を操作してボールを緑色の穴へ運びます。

左が自機、真ん中がボール、右が敵。自機はボールと敵のどちらに当たってもライフが減ります。自機の動きには慣性があるので操作は慎重に(*'ω'*)

自機をボールにぶつけると互いの移動量が交換されるので、これを利用してボールを動かしますます。

うまく緑色の穴に当たって面クリア~。

ボールのあるところや緑色の穴までのルートに狭いところが多いです(;'∀')

緑色の穴付近にかけて敵がうろうろしてジャマなので、先に排除してルートを確保しました。スペースキーでライフと引き換えに敵を足止めすることもできます。

低速かつ垂直水平にボールを移動させれば狭いルートでも楽勝!?

そんな戦いが13面続きますw

各面のクリア時の様子。ちなみに面を描画しているときにESCキーを押すと9面までは次の面に飛ぶことができます。

13面をクリアすると何事もなかったように1面にもどったのでここで終了します~。

どの面もとても凝っていて見ていて楽しいですね(*'▽')