Windowsではテキストエディタ機能のある開発ツールでプログラミングしています。
そして、コンパイルをして実行というふうになりますね。
プログラムしたものはパソコンはわからないので、翻訳してオペコードなどに変換します。
この処理が速ければ問題はありませんが、MSXでは数秒~数十秒もかかります。
そこで、入力中にオペコードなどに変換させればすぐに実行できます。
この方法を逆アセンブラ方式と呼びます。
とまぁある程度は固まってきているのですが、
やはり流行りの機能が使えないとモチベーションが上がらないですね。
MSXは8ドットスクロールなど、やっとこさ動くスクロールで1ドットスクロールは夢のようですね。
ipadなどは画像がスルスル動きます。ちょっとわからない方もいるかもしれませんが、
アナログテレビで垂直同期調整つまみで画面をグルグル回したり遊んだことがあります。
どういえばMSX-FANで垂直同期の調整のように画面ごとグルグル回るプログラムがありましたね。
あんなスルっとした動きを体感するとどうしてもやりたいです。
全体移動は無理でも、文字をスプライト化してスルスルできないのか考えてみたいです。
全ての文字を動かすことも難しいので16進数でA304hという文字と区切り線を動かして、
プルアップ移動させて遊んでみようかなと思います。
5文字ですから、40×8ドットのスプライト移動になります。
一旦はhを含む16+1パターンの文字スプライトを作ってみます。
画像はBlueMSXから取り込んでみました。結果はMSXturboR以降なら、よい感じです。
MSX2はVRAMが遅いので線の引く命令が遅さを引きずっています。
スプライトのみならば感じとしてはMSXのKonamiの旧ロゴのスクロールのような感じになります。
前回の講座ではチョコっとかじっています。
スプライトを定義(SPRITE$(1)=)したらVRAMをBSAVEして、
次回BLOADすれば読み込みは数十秒が3秒程度で最速になります。
移動させるならVRAMの数値を書き換えるだけで、
プログラムが最速というふうになります。
MSX2グラフィックプログラミング講座:
http://www.geocities.jp/fullmsx2/u-yan/msxi-hi4.html
調整するなら、区切り線の移動処理をカットして移動後に表示するともうちょっと速くなるかなと。
スプライトだけでBASIC5ドット移動くらいがエフェクトとしてちょうどいい感じです。
この部分をチョコとマシン語でやればスルッといきますね。
ただ単にスプライト座標数値を変えるものですが、ちょっとおもしろいかもしれない。
テキストエディタはとりあえずはアセンブラデータとマシン語データを同期させるようにしたいですね。
次回あたりにソースで組んでみようかなと思います。
こんなことも★
Windowsのフォントはたくさんあります。でも、文字で見映えをよくする方法はあまりありません。
MSXではドットを右にずらして表示させる、太字処理をして表示すると見映えがよくなります。
このような8ビットで培った技術を使うともっといい感じのアプリができます。
JPEGで表示されているので、鮮明ではありませんが、
このようにインパクトのある表示ができます。
ユーザーに次の操作がわかるように太字で表示させたり
「何も持っていません」「登録が必要です」など
次に何をすればいいのかという
操作を補助させる方法に使うとグッとわかりやすくなります。
--GraphicWorksのFullHDモードのテスト--
最近はご無沙汰になっているGraohicWorksですが、
フルHDでGraphicWorksのテストしています。
今まで800×600でどんなディスプレイでも表示できる解像度に設定していましたが、
地デジもスタートしたことで1920×1080のフルHDが主流になりつつあります。
そこでHybridResolutionというどちらの解像度でも使える機能を考えています。
そして今回はフルHDで1064×988の画像を描いてみました。
ブラウザでは画像が入りきれませんね><まだバグあるなぁ^^;
まだちょっと見せられないところですが、ネタとしてチョコっと書きます。
そして、このモードでは既存の表示では数値と括弧だけで一見わからなかったのですが、
表示と表記をわかりやすくしてみました。
ノートパソコンでフルHDもできるのですが、線がつながっているのか、
つながっていないかという判断が難しくなります。こういう場合に
この画面でドット形状を見ることができます。
またフリーソフトの新グレードとしてLiteというグレード表記にしたいです。
Liteでは基本機能のみをフリーウェアとして
PROでは応用機能も含んだシェアウェアとしていきます。
現在はテスト中でGraphicWorksLiteというグレード名で
フリーソフトで6月末~7月中にダウンロードできるようにしていこうと思います。
★