懐かしの「火時計」、Scratchのリスト配列を利用した仮想VRAMの実験


大昔フリーソフトで「火時計」というスクリーンセーバを作ったところ、かなりヒットしまして、当時の各種コンピュータ雑誌に掲載されました。おかげで1年間ほど無料で沢山の雑誌が届きました。

そんなことを思い出して、Scratchのリスト配列を利用した仮想VRAMの実験をやってみました。
処理能力的には厳しいですが、昔懐かしい「火時計」に近いものが再現できたと思います。
かなりちっちゃいですが・・・(笑)

Fire Clock
https://scratch.mit.edu/projects/91891373/

簡単な処理の流れです。
・リストに仮想VRAM用の40*30の配列を用意します。
・リストに炎のパレット色(白→黄→赤→黒)256段階を用意します。
・リストに7セグ用のドットイメージのデータを用意します。
・リストに画像処理用のパラメータを用意します。
・1秒間隔で割り込み処理を行い、リアル時間(時分秒)を取得して7セグの描画ビットとして仮想VRAMに書き込みます。
・炎のボカシ処理としてブレンド用パラメーターで仮想VRAMを画像処理します。
・仮想VRAMのメモリ値から炎のパレット色に変換してペンを使って描画します。

https://youtu.be/-BiN5Jy-iHI

もう少し高解像度にしたかったのですが、FPS値的にこの程度が限界です。
この程度の解像度なら、ある程度の負荷がかかるリアルタイムレンダリング処理は可能だと思います。
利用用途が難しいですが・・・