MSX2でマップエディタ? MSX2機能を使ってみる 6月24日21:00より公開 | MSXさいたま仮想鉄道ブログ

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

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

 今回はワールドマップエディタの延長線上にある機能の話です。
実はMSX2のBASICでスタンプのように画像のコピーができます。
DISKBASICにあるCOPYコマンドはディスク操作はもちろん
VRAMの画像のコピーまでできます。

1でファイル名を指定して、17のコピーを選択します。

 



テストプログラムとして16ドットのカーソルを移動できましたが、
この操作を使ってRETURNキーでコピーできるようになります。
厳密に言えばDOSでもCON(文字の入出力)は可能でしたが、
グラフィックができるのはMSX2の特徴でもあります。

MSX2では前期にはMSXの互換性を加味してMSX2も対応できる
ROM版のSCREEN5が主流でしたが
後期ではMSX2のディスク版が多くなり
SCREEN8を使っているものがありましたね、
代表的なものは英雄伝説とかちょっと感動しました。
だからあのセリフがドラクエにあるのかなwと考えてしまいました。


さておき、そんな感じでWRD00000.WR8のファイルを読み込んだところです。
画像データをコピーしたりできるので、
作成した地形データを移動やコピーすることができます。
VRAMなのでMSXの自作ロゴの画像が残っていますが、
こんなふうにデータの空き領域で面データを作成できたりします。
とりあえず地形パーツを見るのでテストしています。
 

作り方は前回の16ドットエディタで16x16pxの地形データを作っていきます。
そして、保存するドット範囲を指定します。
0,0-255,192の範囲をWR8ファイルのデータ形式として決めました。
COPY(0,0)-(255,192)TO"ERD00000.WR8"と入力したので
この形式に保存できるようになりました。
sで保存します。
また編集したいパーツ上でreturnキーを押すと再編集できます。


あとは裏技でロゴをロードできるようにしました。
この画面はSCREEN□です。この□をロゴの画面で該当するキーを押せば、
メニューへ飛ばずにすぐにプログラムが起動する仕掛けです。2023 Julyで有効です。

おさらいとしてもう1回説明するとRETURNキーを押して
カーソルを赤に変えて16ドットをコピーしていくと

こんなふうにできます。
これをランダムにコピーしてコピー元を消していけば、
ガラスが割れたようなエフェクトができる感じがしますね。

スプライトのほうはエディタは既にありますが、
動作確認はしていません。
ドットエディタDEの3タイプセレクト版から16ドットを選び、
起動したらMENUを選んでESCキーを押してSPRコマンドで
1色ごとのスプライトパターンチェインデータ(MSXI-SP.DAT)を生成します。
生成したら別のアプリ(MSXI-SP.BAS)でこのデータをロードして動かすことが
できるようになります。
そのデータでマインクラフトで遊んだりしました。

 


ちょっとこのあたりの制作記憶(2006年)があまりないです。
FULLMSXforBLOGのほうにちょこっと書いてあります。

 

FULLMSXアクセス解析 マシン語講座は効果があった 1chipMSX不具合 DE105d - [FM]FULLMSX for BLOG (goo.ne.jp)

 

fullmsx.comのweb講座のバックアップにありました。

----

本格的なスプライトエディタを作ろう:色を合成させてスプライトを表示する 
 前回作ったスプライトデータを今回は表示させてみました。
たった、これだけ・・・なんですけど、ここまでのことをするのにかなりのプログラミングをしました。
 できるだろうとわかっていても、本当にできるのか不安な毎日でした。
さて、今回からは数分でエディタから作ることができるようになりました。
 これは試しの4色刷りなんですけど、最大で何と14色(理論値)まで可能です!

「話しているのも何なので、カーソルで移動して遊んでください。」

文字のところに移動したり、下の方へ移動したりしてみましょう。
スプライトというのはグラフィック、文字ではなくてマウスのポインターなど最前面に表示されるものです。
 今回は4方向で+1座標ずつ移動させるようにしています。
もちろん、領域判定していますのでエラーは出ません。
プログラムはスプライトを定義番号1~4番まで使用しています。
 今回のダウンロードはスプライトの表示と移動のプログラムのみです。
実行には19回目のデータが必要になります。
 次回はまた、エディト画面に戻り、モーション設定をしたいと思います。
----
MSXi-SPと19回目のデータを入れてみることにしました。

LZHファイルでアップロードしていたので
再パックしました。LOAD"MSXI-SP.BAS"でロードできます。
スプライトが表示されます。
とまぁ、こんなふうにDEの拡張機能の説明をブログでしたいと思います。

MSXのスプライトパターン番号は0~31までありますが、
これは8x8ドットの場合で16ドットでは4面使うので
実際の理論値は8までだろうと思います。


拡張して動きをつけるなら
定義パターンが足りないのでマシン語で高速転送させることになりそうですね。

公開の日取りが決まりました。6月24日21:00より公開します。
詳しくはホームページでお知らせします。
FC2:FULLMSXのホームページ