MSXファイルその2 AUTOEXEC メニューなどが変わります | MSXさいたま仮想鉄道ブログ

MSXさいたま仮想鉄道ブログ

A列車で行こう9の仮想鉄道ブログです。

こんにちはFULLMSXです。今回は5月分の予定を書きます。
4月のアップデートに伴うダウンロードは予定していません。
代り映えしないのでグラフィック関連を加えてみました。
まず、5月のMSXBASICの環境からです。
 

◆MSX-DOS2からおいおいMSX-DOSに戻します

階層ディレクトリのないMSX-DOSなりますが、
速度が落ちるので階層ディレクトリ使わないでこのままいきます。
AディスクをAドライブ、BディスクをBドライブ構成にします。
Aをプログラム、Bをデータディスクでディスク交換するならBドライブになります。
BlueMSX、WebMSXの2ドライブ構成にならいます。
2ドライブ合わせて合計で1.44MBで2HDディスクのような感じになりますね。

まず、正しくBディスクが働くかのチェックの仕組みです。
1ドライブでは「ディスク Bをいれてください:」のような表示が必要です。
2ドライブでは自動で行うかわりに最初にチェックします。

最初に次のコマンドを入力します。ラインエディタになります。
ctrl+zで書き込みます。copy con b:2023-05b.volと同様です。
仮想でボリュームラベルを設定します。
MSXBASICでは拡張子を自由に決められるのでVOLファイルにします。
MSX-DOSはボリュームラベルがないのでVOLファイルにしました。

COPY"con"TO"b:2023-05b.vol"
2023-05b
^z
Ok

Bドライブに書き込みます。
次にAUTOEXEC.BASにこのプログラムを作ります。



File not foundのエラーが出なければOKです。
エラーが出た場合はBドライブが正しくセットされていないことになります。
アクセスするときにb:を追加することで有効になります。
DISKBASICはAドライブ上で動作しているのでドライブ指定してロードします。
次にアクセスランプです。BlueMSXは右上、WebMSXは左下に点灯します。

FDDやディスクマークが点灯している場合はウインドウを閉じないでください。
画像を読み込んでいる途中などデータが壊れる場合があります。
プログラムを止める場合はctrl+stopでプログラムを中断してください。
DISKBASICをうまく使いましょう。

MSXパソコンの1ドライブでAディスク入れたり、Bディスク入れたりする
2ドライブシミュレーションは今のところはなしです。
もし、7月号は起動が遅くなった場合に5月号のプログラムで7月号のデータを起動できるような
拡張性もありますが今のところはなしwです。


■AUTOEXECを本格組み込み

 

AUTOEXEC.BASはBドライブチェックプログラムを実行して
今までどおりMENU10.BASを起動することになりました。

 

■万年カレンダーについて
 

AUTOEXEC.BASはMSX-DOS(MS-DOS3相当)の機能を検討した結果、
カレンダーと日付の変更を加えていきたかったのですが、
起動が遅すぎるのでカレンダーは個別のプログラムになりました。

画像を読み込むのに5秒くらいかかります;


絵も見たいし文字を見たいので半透過処理をMSXでやってしまいました。
インタレースではなく小数点単位のコピーです。



まず、TPSETですべてカレンダーを透過コピーを1回してから
2回目はラインで普通のコピーでSTEP値を1.5と書きます。
何かゲームとかに使ってみてください。

というか保存ができなくてゼロからやっています;

blueMSXの注意点は
ディレクトリ挿入ではメモリに保存できてもDSKファイルに書き込みしないので
気合で一気に作り上げてしまう場合とか注意してくださいね;
追加でBSキーの上のキーとctrlを押すと強制終了されてる場合やバグもあります?
ゲームでステータス保存されたとしても
×ボタンをクリックしてBlueMSXを終了しないかぎり保存されていません
ディスクやドライブを変更したりする事象について詳しく調査していませんが、
念のためプログラミングでは段階的に保存して終了することをおすすめします。

 

せっかくなのでテキストとグラフィックの違いをレクチャーしています。
クロックICの拡張命令も使用しています。
絵を描いたり音楽を鳴らしたりするほうが気力がありそうですが、

プログラミングなるとだんだん気力が下がるんですね;
今のところは予定(え!)です。がんばってみます。

■メニューとプログラム

音作りのヒントになればと起動BGMを戻しました。
和音を鳴らしているだけのものですが基本はこれでいいと思います。
先月の音楽再生機能のついたメニューはMENUのBディスクしておきます。



タイトルのvalue部分の表記を’DISC A'と'DISC B"に変えます。
また少し変わります。MENU10からMENU11にバージョンアップします。
 

・MENU11に変わります

 

文字ばかりなので32ドットのイラストを入れてみました。
古いデータばかりなので新たに加えています。
あまり作りこみすぎるとドットでわからなくなるので
女性はとにかく丸く丸く描いてショートの笑顔でごまかしました。
黄色で塗りつぶすと顔が見えなくなるのでタイル技法を使っています。
元データのラフがIDOL32B.CP5にあるので比べてみてください。
 

MSXturboRからMSX2+に変わるのでリンク機能が加わります。
MNU11_<分類番号><バージョンコード>.BASに変わります。
バージョンコード末尾はリビジョンで11のGなどのコードになります。
そこまでアップデートしませんがZ以降は1に戻るようになります。
menu11はファンクションキーは文字数が限られているため、
MNU11を呼び出すためのプログラムとして使います。

スクリプトは不要でファイル名をB:MENU11.BASに変えるだけです。
DISC Bのプログラムは頭にB:を加えます。

 

◆SCREEN8のグラフィックプログラムの追加

とりあえずMSXマガジン表紙のグラフィックができるように
2020年から3年も作っていないので
SCREEN8のグラフィックプログラムを追加します。

下の画面はたしか元は西東社から出版されていた
MSXBASICパソコン入門の中のグラフィックプログラムの
デザインを「保存できるように変えてみようかなプロジェクト」で

保存できるようにしてみます。


さらに昨年からテキストモードとグラフィックモードを連携したものにして
PRINTとINPUTを使えば誰でもコマンドを作れるように考えています。
今のところ隠しコマンドにしていますが;
マウスとキーボードで動きます。
 

ctrlキーを押すと高速カーソル移動ができます。
こんなふうにWindowsアプリから画像を取り込むこともできます。
カレンダーがSCREEN8用なのでカレンダーの壁紙にすることもできます。
あと、やっぱり線が汚いのでCADを作ろうかなと昨年と全く違う感じで
ゼロから考えていましたがMSX2+で実行するとかなり遅いので
MSXらしい方法を考えています。

16ビットで処理が速くても8ビットでは難しいです。
今は拡張機能のプログラムをしらみつぶしに調べていますがわかりませんね。
これが基本プログラムに影響が出るかもしれないのでやっています。
まだ途中経過なのですが、ここまで気力があるので続けていけそうです。

あと、FULLMSXサイトでは当時にタイムスリップしそうな感じでYoutubeから
音楽曲をチョイスして再生しながらノスタルジーに浸る企画も考えています。
こういう使い方をすれば業界全体が盛り上がってくると感じております。
これこそ!「MSXのプログラムDJ!」>旧アスキー編
5月分は5月15日ごろを予定しています。新企画に期待してください。では。

 

FC2:FULLMSXのホームページ