読者です 読者をやめる 読者になる 読者になる

ポルノは取り扱っておりません

近況

SFCMMLコンパイラ/ドライバ qSPC2

土日がっつりやろうと思ったが土曜は頭痛がひどくて実質一日稼動。
旧バージョンもそうだけど、以下の3つの処理系が連携しているので

まずこれらを連携させる作業をして、ドライバ本体を……ちょっと触ったところで終了。今週末には簡単な演奏ができるかな?

Nintendo Switch

予約していないので、フィーバーが収まるのを待っている状態。
ただ待ってるのもなんなので、VCでゼルダでもやりましょう。
f:id:gyuque:20170306150801j:plain
ゼルダというかリンクの冒険。一作目みたいなアクションRPGかと思ったらほぼ完全なアクションゲームなのねこれ。しかもロックマンも真っ青(ロックマンだけに)の激烈な難しさ。ディスクシステムのソフトはちょっとおかしいやつが多いのか?マリオ2とか……

広告を非表示にする

進捗

MMLコンパイラ

f:id:gyuque:20170228021633p:plain

シーケンスデータ、音色関係の各テーブル、BRR本体、と出力関係の実装が揃ったので、ようやくドライバ(SPC700側)の開発に戻れるかなというところ。3月中にアルバム機能までいければ上出来かな?

せっかくパーサの実装を綺麗にしたので、余裕があればパラメータ付きマクロなんかも入れたい(これがあるとピコカキコの曲を楽に突っ込めるので)
でもピコカキコってFlash使ってるしそろそろ死にそうだよね。さすがに投稿データまで消したら袋叩きだろうから、それは残ると思うけど。

広告を非表示にする

進捗

MMLコンパイラ(qSPC2)

土日でまあまあがっつり、進めた。
シーケンスデータをドライバへの埋め込む部分を主に実装し、次は音色データ周り。

ここは大きく変えようと思っている部分で、なぜかというと旧版は「insts」という固定のフォルダにbrr(SFC用の音声サンプリングデータ)を入れておくとそれが使われる、という仕様だったけど、これだと楽器セットを変えようと思うとフォルダの中身を丸ごと入れ替えないといけない。

よく考えると楽器セットは曲に付随するものなので、曲データの中から自由に指定できた方がいいなということで

#using "jazz"
@0 cdefgab

などとすると「jazz」フォルダの中にあるbrr一式(+設定ファイル)が使われるという仕様にした。ADSR等をMML中に無理に書く必要もないなということで、設定ファイルの中に移動。

とりあえず音が出るところまで進めたら、曲を複数持って入れ替える機能(アルバム機能と呼んでいる)の設計をするという流れで。

広告を非表示にする

進捗

MMLコンパイラ

エラー処理を実装し、旧バージョンよりまともなエラーメッセージが出てくるように。

cde2{aaa{a}} 

などと入力すると

At line 1, column 9
連符を多重にすることはできません 

といった具合。どうせ当面日本人しか使わないんだし日本語にしといた。ロケールで英語に切り替えるとかもできるけど……まあ後でいいでしょう。

あとは、シーケンスデータをドライバに埋め込む時に、ドライバのソース(Originの指定)を見て埋め込み位置を拾うようにした。せっかくregex使えるんだからこれぐらい気の利いたことをやっていいだろうと。ただ最終的には、ドライバじゃなくてホスト(S-CPU)側のプログラムにシーケンスを持たせて、動的にSPCに送り込むようにしないといけないんだよね。そうしないと複数の曲を鳴らせないので……

広告を非表示にする

現況

スーファミ開発

f:id:gyuque:20170131225459p:plain
MMLパーサ、最低限できたので次はドライバへのデータ埋め込み部分の改良へ。さすがに2回目の実装なので今のところ綺麗にできている(マクロとか入れたら汚れるかも)

絵を自動で塗る例のやつ

http://paintschainer.preferred.tech/
せっかく絵の練習してるんだし投入してみた。NEW GAME!の涼風青葉です。

f:id:gyuque:20170131225328p:plain

ご存知の通り、本当はこういう色
f:id:gyuque:20170131234138p:plain

金髪にされてしまった。

思うに、涼風青葉の生来の髪色は金髪だったんだけど、長年まんがタイムきららを読み続けて一千数百億個あった脳細胞が三十個ぐらいまで減ってしまった人達でも名前を覚えやすいよう、髪を青っぽく染め、青いスーツで「どうも、私が涼風葉です」とやっているわけだ。なんという優しさ。でも人工知能はそんな心配りを微塵も理解しないので無粋に「お前金髪だよな?」とか言うわけ。

という理由かどうかはともかく、面白いので敢えてこれに従ってヒント情報付加+手作業での修正を経て、なかなかそれらしい結果を得た。

f:id:gyuque:20170131225420p:plain

鉛筆で描いた絵がこうなるなら便利かも。本当に慣れてる人は同じ時間で手塗りしちゃうかもしれないけど。

広告を非表示にする

現況

スーファミ開発

リハビリして久々にがっつりやった。といってもSNES/SPC側のコードではなくて、Windows側で動くMMLコンパイラの方。
lexerだけじゃなくて、各コマンドの書式(トークンの並び順)チェックも正規表現で定義して std::regex に投げてしまったので、随分と野蛮さは減ったと思う。

exerbみたいなのがもっと流行ってればRubyで書いてもいいんだけど。

マリオランを結局買った

いや、素人とはいえゲーム作ってる人間の端くれだし一応全部見とこうかと思って……

広告を非表示にする

近況:正月の思い出

姪と遊び人間らしさを取り戻す

年末にインフルエンザに罹ったことで精神が疲れ切った状態で帰省したが、姪二人の相手をしていたらなんとか人間として生きている実感が湧いてきた。インフルエンザの症状がつらくてというより、症状が少し収まって頭がクリアな状態で一日寝ていたら永遠のように長い賢者タイムのような物が訪れて、様々なことを反省してしまったというか、まあそんな感じ。

さて、上の姪はともかく、下の方は人見知りが激しく、なんか知らん奴が家にいるぞと警戒して奥の部屋に隠れてしまう(そこ昔は私の部屋だったんですがね……)
そこで一昨年あたりからぼちぼち練習していた絵である。ダイソーのらくがき帳にプリパラの絵を描いてみる。何枚か描いたが下のが個人的には出来が良かった(出来が良いというかフカンとか付けてないから簡単ってだけだ)

一気に興味を示すお子二人。やはり子供には絵が強い。完全に絵の時代が来た。次はプリキュアを描いてほしいと言われた。やっぱりプリキュアか……プリパラやアイスタと比べるといまいち大人が見ても面白くないので、最近は全然見てないんだけど、堀江由衣が出てることぐらいは知ってるし、資料を見ながら描けばまあ関係ない。

とはいえ最近の子供はiPadなんてものを持っているので、絵に飽きるとユーチューブを見始めてしまう。それで、ユーチューバーどもがスーパーマリオワールドの歌(歌詞なんてあったか?)を歌ったりするので、彼らは見たこともない筈のスーパーファミコン版マリオのBGMを知っているのである。ユーチューバーになりたいなんて子供が出てくるわけだ。ユーチューバーをなめとったらあかん。尚、歌詞は「ニートがいっぱい」ではなかったと思う。

ミニファミコンを譲る

その姪の母、つまり私の姉なんだけど、ミニファミコンを置いて遊んでいたら、どこを探しても見つからないので定価で譲ってくれと言われた。どうせ実家に置いてくるつもりだったので、半額でいいわと言って定価/2でミニファミコンは姉のものになった。
何回か書いているようにファミコンには思い入れが無いので、私としては今年出ると見込んでいるミニスーファミが本命なのである。ハード的には多分ミニファミコン全くそのままでスーファミエミュレータが動くだろうし、他メーカーとの交渉などソフト面はファミコンでの実績をベースにスムーズに出来るだろうし、ビジネス的にミニスーファミはオイシイと思うんだけど、どう?絶対出すでしょ (都合のいいことを並べました)

iPhoneが膨らむ

iPhoneは膨らむものであるというのは有名な話だが、我がiPhone 3GSにもとうとうおめでたがやって来てしまった。

f:id:gyuque:20170112154719j:plain

去年の暮れあたりから急激に電池の持ちが悪くなり、流石にもう寿命かーと思って上着のポケットに入れてしばらく放置していたらこうなっていた。時々ポンッとか音を立てるので完全に危険物だ。こんな物を家に置いておくわけにはいかない。早く放逐しなくては。ということで(私物ではないので)これ機種変できます?と相談したところあっさりOKが出た。こんなに簡単ならさっさとしておけばよかった気もするけど、まあインターネットは私物のiPadで見るし、電話受けるだけなら3GSで十分なんだよ。破裂さえしなければ。

広告を非表示にする