PICO-8の隠されたパレット

開発

PICO-8関連のツイートで、このような情報を目撃しました。

プログラムが走っている最中に、明度を落とした感じのパレットの色に変更しています。
驚きを隠せません。

具体的なコード

for i=0,15 do
poke(0x5f10+i,128+i)
end

poke()などを使用して0x5f10~0x5f1fまで128以上の値をセットします。
すると今まで使っていた16色が切り替わっています。

また

poke(0x5f2e,1)

を設定することでプログラムが終了したあともパレットを維持することができるようです。

PICO-8は32色持っていた

ただし、同時発色数は16色であり、今の所16より多くの色を同時に出力する手段は見つかっていません。(高速に点滅させて擬似的に色を表現することはできます)

128~143の数値が別の16色パレットであって、既存の16色と入れ替えることができるということだと思います。
32色あるうち、16色を選ぼう!

EDGE2用パレットファイル(fanbox)

PICO8はmemoryを弄ることでAPIにはない機能を引き出せます。

今回は既知のアドレスで新しい設定値を発見したということですが、まだ明らかになっていないアドレスも存在します。
これらが明らかになる日がくるのか、どんな機能が隠されているのか、探すこともPICO-8の楽しみ方でもあります。

(ScreenDataの更新をラインで制御できたら限定的に32色同時発色できそうに思えましたが、見つかってないです)

コメント

タイトルとURLをコピーしました