(一時的に記事のタイトルを削除しています)
DSソフトの不正コピーの実態が盛んに報じられるようになり、知名度の上昇とともに風当たりも強くなってきたマジコン。
何のためのマジコン販売禁止なのだろうか - wiseler : WAR IS PEACE
はてな界隈ではこの記事を契機にいろいろ盛り上がっているような時に何を言ってるんだと思われるかもしれませんが、マジコンがほしいです(特にGBA用)。
自分がマジコンを知ったのは多分2006年の初めのころ、ゲームボーイアドバンス用ソフトのMOTHER3について2chを読んでる中で色々目にするようになっていたと思います。そのころは明らかに不正コピーをダウンロードして実機で実行するための機械、という認識だったので特に興味は持ちませんでしたが、その後、GBA等のゲーム機を対象とした自主制作ソフト、所謂homebrewを知って自分でも何か作ってみたいと思うようになりました。と言っても実際にはほとんど何もやってないんですけどね。
2007年に、大学の授業でプロセッサについて調べて、それで動くプログラムとともに発表しろ、という課題があったので、せっかくなのでGBAのプロセッサであるARMを選択して、ちょっとだけプログラムも書いてみました。*1
.text .align 2 .global main main: mov r0, #0x04000000 mov r1, #1 << 7 strh r1, [r0, #0x84] @ Enable sound mvn r1, #0x88 @ r1 = 0b1111111101110111 = (0xff << 8) | (0x07 << 4) | 0x07 strh r1, [r0, #0x80] @ Enable SOUND1-4 LR & Set volume L7 R7 mov r1, #0x02 strh r1, [r0, #0x82] @ DMG sound output volume(100%) mov r1, #0x08 strh r1, [r0, #0x60] @ SOUND1 sweep off mov r2, #16384 add r1, r2, #128 strh r1, [r0, #0x62] @ SOUND1 control mvn r1, #30976 @ r1 = 0b000011011111111 sub r1, r1, #41 @ r1 = 1750 strh r1, [r0, #0x64] @ SOUND1 freq strh r2, [r0, #0x68] @ SOUND2 control sub r1, r1, #215 @ r1 = 1535 sub r1, r1, #83 @ r1 = 1452 strh r1, [r0, #0x6d] @ SOUND2 freq WaitVB: swi 0x05 << 16 @ VBlankIntrWait b WaitVB
これをdevkitProというGBA、DS用の開発環境を使ってGBAで実行させるためのバイナリを作ってエミュレータで実行してやると、PSG音源の音が鳴ります。ただそれだけです。本当に鳴ったときは感動したなあ。エミュレータ上でだけど。
GBAについては開発だけならエミュレータがあれば十分ですし、前述の通り別に熱心にやっていた訳ではないので、実機で動かすためにすぐにマジコンをほしいと思わなかったまま今に至っているわけですが、昨今風当たりが強くなって来た事でもはや小心者の自分はマジコンを買うことはできなくなり、どうせなら今に比べたら比較的あまり話題になってない2007年のうちに手に入れておけばよかったな、しくじったなという思いがあるのです。
もちろん販売規制には大賛成ですよ。別にマジコンを正当化しようとこの記事を書いた訳ではありませんので(そもそも自主制作ソフトをゲーム機で動かすのはライセンス違反らしい)。