TLを見ていたらVectrexで東方シリーズPVで有名な「Bad Apple!!」を再生している動画が紹介されていた。
うわーベクタースキャンでの再現を先にやられたかー!(言うだけ番長)、X-Yレーザーで再現は海外で大分前にやってるので、ベクタースキャンと相性良いのは分かってるんです
で、動画自体は帰ってから(ついでに言うと一回寝てから)見たんだけど、おかしい。Vectrex本体とマルチカートで実現してるらしいが、とてもこんなデータを置く場所がないぞ、しかも音楽も実機で再生してるとかどうなってるんだ、と思ったら同じ作者が「DOOM」を動かしていて仰け反った。い…一体何が!
んで調べたら、マルチカート上にコプロを載せてる事が判明。いわばカセットビジョン状態みたいな?(汗)件のマルチカートの解説はコレ。
[Sprites mods – Extreme Vectrex multicart – Introduction](http://spritesmods.com/?art=veccart “Sprites mods – Extreme Vectrex multicart – Introduction”)
ST STM32F411が載ってる、メモリなんて16MBぶら下がっててUSBのIFも付いてる。PCでメモリ書き換えるわけね。って調べたら割と最近のチップじゃないですか。
[スマートフォン等のさらなる省電力化に貢献する最新のSTM32 Dynamic Efficiency(TM)マイコンを発表|STマイクロエレクトロニクスのプレスリリース](http://prtimes.jp/main/html/rd/p/000000518.000001337.html “スマートフォン等のさらなる省電力化に貢献する最新のSTM32 Dynamic Efficiency(TM)マイコンを発表|STマイクロエレクトロニクスのプレスリリース”)
さらにVectrexのカートリッジピンアウトはコレ、アドレスバス15bitのデータバス8bit、R/W双方向、NMIとIRQ付き。つまりはVectrexのCPUから見ると完全に別バンクのメモリなんだねコレ。
[Vectrex Cartridge – HwB](http://www.hardwarebook.info/Vectrex_Cartridge “Vectrex Cartridge – HwB”)
マルチカートの説明を拙い英語力で解読してみる。「Bad Apple!!」の場合、Vectrex側でカートリッジ上のアドレスを毎回読んで表示するだけのシンプルなプログラムを書いて、カートリッジ側ではVectrexが1フレーム表示を終わる度に、STM32F411がそのアドレス内容を随時書き換えている。という認識でいいんだろうか。しかしあんな描画速度出るもんなのね。単にメモリを読んで表示するだけなら高速には出来るだろうけど。
さらに音楽だ。Vectrexではベクトル描画用に8bit DACが載ってるけど、それは実はオーディオアンプに出力をリダイレクト出来る。ってどういう設計なんだこれ。つまりはDACの出力先がMonitor X/Y以外にAUXもあるって事なの? んで描画時間以外はそこにサンプリングデータをリダイレクトさせて音楽を再生させる。
読み出し内容はカートリッジ側で書き換えてるからコレも一種のストリーム再生って事になるのか。また凄い発想だ…。
と、ここまで書いておいてなんだけど、何分英語力が致命的なんで根本的に間違ってる可能性もあります、ご了承を。あと文章力酷いせいで分かりづらいね。
そいやVectrex環境のニュースは以前はGoogleGroupのrec.games.vectrexで拾ってたけど、GoogleReader死亡とともにRSS吐かなくなって見てないのよ、今見たらまだあるけど活動大分薄くなってるなあ。今回の「Bad Apple!!」も記事に載ってない。どこのサイトを巡回すればいいのかな…。今一番更新が活発なのはここらしいけど、RSS吐いてないなあ。
[www.vectrex.co.uk](http://www.vectrex.co.uk/ “www.vectrex.co.uk”)