画像加工
MSXの画像処理をさらに向上させる、さまざまな画像加工機能です。
CALL CELLO
[機能] VRAMの矩形範囲の色成分を変更します。[書式] CALL CELLO(x0,y0)-(x1,y1)[,n0][,n1][,n2]
[解説] 座標0と座標1で示す矩形領域の色成分を変更します。
座標1はSTEP指定が可能です。
SCREEN 4以下のスクリーンモードでは利用できません。
SCREEN 5〜7では、カラー番号n0をn1に変換します。(0〜15)
SCREEN 8では、n0,n1,n2が「赤」「緑」「青」の輝度に対応します。(-7〜+7)
SCREEN 10〜12では、n0がy成分に対応します。(-31〜+31)
CALL HMMM
[機能] VRAMの矩形範囲を他のVRAMの領域に高速転送します。[書式] CALL HMMM(x0,y0)-(x1,y1) TO(x2,y2)
[解説] 機能的には“COPY”文と同等ですが、この命令はVDPを直接制御しており、COPY文よりも高速な処理が可能です。
座標1はSTEP指定が可能です。
アクティブページ・ビジュアルページに関係なくY座標0は常にページ0の最上位ラインを指し、以後ページ毎に+256したY座標を指定します。
ロジカルオペレーションはありません。ロジカルオペレーションを指定するには、CALL LMMMを利用してください。
SCREEN 4以下のスクリーンモードでは利用できません。 SCREEN 10〜12では、n0がy成分に対応します。(-31〜+31)
CALL HMMV
[機能] VRAMの矩形範囲をバイト単位のデータで塗りつぶします。[書式] CALL HMMV(x0,y0)-(x1,y1),<色コード>
[解説] <色コード>は1バイトの整数で、スクリーンモードによって動作が変わります。
SCREEN 4以下のスクリーンモードでは利用できません。
SCREEN 5,7では、2ドット単位で塗りつぶせます。
SCREEN 6では、4ドット単位で塗りつぶせます。
SCREEN 8では、1ドット単位で塗りつぶせます。
SCREEN 10〜12では、色化けを生じる場合があります。
座標1はSTEP指定が可能です。
アクティブページ・ビジュアルページに関係なくY座標0は常にページ0の最上位ラインを指し、以後ページ毎に+256したY座標を指定します。
ロジカルオペレーションはありません。ロジカルオペレーションを指定するには、CALL LMMVを利用してください。
CALL LMMM
[機能] VRAMの矩形範囲を他のVRAMの領域に論理転送します。[書式] CALL LMMM(x0,y0)-(x1,y1) TO(x2,y2)[,<ロジカルオペレーション>]
[解説] 機能的には“COPY”文と同等です。
座標1はSTEP指定が可能です。
アクティブページ・ビジュアルページに関係なくY座標0は常にページ0の最上位ラインを指し、以後ページ毎に+256したY座標を指定します。
<ロジカルオペレーション>は省略すると“PSET”で表示します。
SCREEN 4以下のスクリーンモードでは利用できません。
CALL LMMV
[機能] VRAMの矩形範囲をバイト単位のデータで塗りつぶします。[書式] CALL HMMM(x0,y0)-(x1,y1),<色コード>[,<ロジカルオペレーション>
[解説] <色コード>は1バイトの整数で、スクリーンモードによって解釈が変わります。
SCREEN 4以下のスクリーンモードでは利用できません。
SCREEN 5,7では、2ドット単位で塗りつぶせます。
SCREEN 6では、4ドット単位で塗りつぶせます。
SCREEN 8では、1ドット単位で塗りつぶせます。
SCREEN 10以上では、色化けを生じる場合があります。
座標1はSTEP指定が可能です。
アクティブページ・ビジュアルページに関係なくY座標0は常にページ0の最上位ラインを指し、以後ページ毎に+256したY座標を指定します。
<ロジカルオペレーション>は省略すると“PSET”で表示します。
CALL YMMM
[機能] VRAMの矩形範囲を他のVRAMの領域に高速転送します。[書式] CALL LMMM(x0,y0)-(x1,y1) TO(x2,y2)
[解説] この命令はY軸方向への転送に限られますので、座標0と座標1で異なるX座標を指定しても実際は同じ座標で転送します。
座標1はSTEP指定が可能です。
アクティブページ・ビジュアルページに関係なくY座標0は常にページ0の最上位ラインを指し、以後ページ毎に+256したY座標を指定します。
ロジカルオペレーションはありません。
SCREEN 4以下のスクリーンモードでは利用できません。
CALL VCOPY
[機能] 画像の拡大・縮小・回転・反転を行います。[書式] CALL VCOPY(x0,y0)-(x1,y1)[,<ページ>] TO(x2,y2)-(x3, y3 )[,<ページ>][,<角度>][ON(x4,y4)][,<ロジカルオペレーション>]
[解説] 座標0と座標1で指定された矩形領域を、座標2と座標3で指定された領域にコピーします。2つの領域の大きさが異なる場合には、自動的に拡大縮小されます。また、<角度>を指定していると、座標4を中心に<角度>で指定された角度分だけ回転した範囲にコピーします。
座標1と座標3はSTEP指定が可能です。
<ページ>は省略するとアクティブページを選択します。
<角度>は省略すると“0(回転なし)”となります。単位は“度”で、右回りとなります。
中心座標4は省略すると、座標2を中心に回転コピーします。
<ロジカルオペレーション>は省略すると“PSET”で表示します。
【不具合のお詫び】システム最新版(DS2INST.DAT 2001年11月24日版)において、SCREEN5以上のビットマップモードで、横幅256pxを超える拡大指示を行うと意図しない画像が現れる不具合が確認されました。システム改修されるまで当面の間は横幅の最大値は255pxにしてください。申し訳ございません。不具合詳細リンク:https://twitter.com/nf_ban/status/1819235170857504974
Copyright © 2024 Gigamix, All rights reserved.