segtter の電子工作ルーズリーフ / AVR で動くデモシーン“Craft”を観賞する

AVR で動くデモシーン“Craft”を観賞する

8 bit ワンチップマイコンによる驚異的なデモシーンに感動.

初出 2013-05-07
最終更新 2013-05-07

概要

Craft”[1] は Linus Åkesson (lft) 氏が 2008 年に公開した AVR マイコンによる自作ハードウェア上で動作するデモシーンである.この作品は 2008 年にドイツのビンゲンで開催されたデモシーン・パーティー“Breakpoint 2008”の Wild demo 部門コンペに出展され,13 作品中 1 位を獲得した.
デモシーン中のすべての映像と音声は,AVR マイコン ATmega88 単体でリアルタイム生成される.映像は RGB 各 2bit,音声は 6bit の R-2R ラダーで出力する.ソフトウェアはすべてアセンブラで記述され,VGA 信号の垂直ブランキング期間に音声のサンプル生成を行うという非常にトリッキーな内容となっている.

このデモシーンのソースコードと回路図は作者によって公開されており,しかも高価な部品は全く使われていないため,自分でも組み立てて観賞することにした.

写真

クリックで拡大写真をご覧になれます.

雑感

映像や音楽は往年のホーム・コンピュータ,コモドール 64 に近い趣きがあるものとなっている.20 MHz で動く ATmega88 は CPU として見れば当時のものよりも高性能なのだが,アナログ出力を含めたすべての処理をワンチップでソフトウェア処理しているという点で,技術的評価が高い.各々の映像中のエフェクトは,昔ながらの 2D デモシーンとしては比較的「定番どころ」が多いが,実際にはこれらの処理は描画ルーチンの合間の時間で用意されていることを考えると,(アセンブラによるコーディングに一度挫折した経験のある身としては) 驚異的の一言に尽きる.

部品表

番号種別品番数量備考
U1AVR マイコンATmega88-20PU1
Q1PNP トランジスタ2N3906 など1
R1-3, R5-7, R9-11金属被膜抵抗470 Ω,1%9
R4, R8, R12金属被膜抵抗220 Ω,1%3
R13-19金属被膜抵抗2.0 kΩ,1%7
R20-24金属被膜抵抗1.0 kΩ,1%5
R25カーボン抵抗1.0 kΩ1
R26カーボン抵抗10 kΩ1(追加) U1: RESET 端子のプルアップ
VR1半固定抵抗1.0 kΩ1
C1電解コンデンサ10 uF1
C2, C3積層セラミックコンデンサ22 pF2
C4積層セラミックコンデンサ0.1 uF1(追加) U1: VCC-GND
D1-3小信号用ダイオード1N4148 など3
X1水晶発振子20 MHz1
SW1押しボタン1(追加) リセット用
CN13.5 mm フォーンコネクタAE-PHONE-JACK-DIP1
CN2VGA コネクタ1aitendo
CN3USB Mini-B コネクタAE-USB-MINI-B-D15 V 電源供給用

外部リンク

  1. Craft
    http://www.linusakesson.net/scene/craft/
もどる