; 1. 初期化(パレットモードを指定するため、screen 0 の第4引数は無し)
; 本来はフルカラー環境ですが、あえてパレットモードを意識して書きます
screen 0, 640, 480
cls 4 ; 黒でクリア
; 2. 仮想画面(buffer 1)に画像を読み込む。(256色ビットマップ形式)
buffer 1, 640, 480, 1
picload "256色.bmp"
; 3. パレット命令を並べる(仮想画面 1 に対して適用)
gsel 1
palette 28, 0, 255, 0, 0 ; 体
palette 21, 255, 0, 0, 0 ; 口
palette 255, 255, 255, 255, 1 ; 更新フラグを1にして反映
; 4. 【重要】書き換えたパレットを使って表画面に再描画
gsel 0
pos 0, 0
gcopy 1, 0, 0, 640, 480
redraw 1
stop
実際には緑や赤ではなく、全然違う色が表示されてしまいます。
palette命令の使い方が間違っているのか、それともbufferからgcopyする際に
パレット情報が壊れてしまうのでしょうか?
どなたかアドバイスをいただけると助かります。よろしくお願いします。



