today::エンジニアに憧れる非エンジニア

今のところは、エンジニアとは言えないところの職種です。しかしエンジニア的なものの考え方に興味津津。

【まとめ】#ssmjp 2019年7月…にらたま氏「プチコン4でスライド作ってみた」

\突然の8ビット/懐かしきビットマップフォントが現れました。のっけからファミコン世代ホイホイのビジュアルです。

そもそもプチコン4とは

Nintendo Switch上でプログラミング環境を実現するためのソフトウェアです。

プチコンシリーズ

「4」という番号から連想できるように、プチコンはシリーズ化されたソフトウェアです。これまで以下の作品がリリースされています。

タイトル 対応ハード リリース時期
プチコン ニンテンドーDSi 2011年3月9日
プチコンmkII ニンテンドーDSi 2012年3月14日
プチコン3号 ニンテンドー3DS 2014年11月19日
プチコンBIG Wii U 2016年12月14日
プチコン4 SmileBASIC Nintendo Switch 2019年5月23日

BASICとは

手続き型プログラミング言語の一種です。1964年、米ダートマス大学からその歴史が始まりました。名称はbeginner's all-purpose symbolic instruction code(初心者向け汎用記号命令コード)のバクロニムです。1980年代には、マイコンブームの中枢を担う技術として注目を集めていました。

プチコンシリーズでは、SmileBASICをプログラミング言語として用いています。SmileBASICは、プチコンシリーズのリリース元であるスマイルブーム社らにより独自に実装されたBASIC派生言語です。

どうやってプチコン4とPCを接続するのか

Arduinoオープンソースのワンボードマイコンシステム)互換のワンボードマイコンプチコン4をUSBで接続し、ワンボードマイコンとPCをシリアルで接続する」という手法が採用されていました。にらたま氏曰く、「PCからのキーボード入力をシリアルでワンボードマイコンに転送し、ワンボードマイコンからキーボード入力をしたように見せかけてプチコン4に転送する」というメカニズムだそうです。シリアル接続というのも、8ビットコンピューターを思い起こさせる接続手法ですよね。実際にキーボード入力の内容がプチコン4に反映されるのにかかる時間も、昔のパソコン通信を彷彿とさせるものでした。

プチコン4でできないこと

  • 外部と直接データをやり取りすること
  • 音声での入力

この発表にあたり、発表者が製作したツール

  • データ転送用のハードウェア環境構築一式
  • PCとプチコン4の間でデータをやり取りするために必要なツール一式
    • PCからプチコン4にバイナリを流し込むためのツール(にらたま氏はPerlで書いたそうです)
    • プチコン4内部で用いられる)UTF-16と(PCで用いる)UTF-8の変換ツール
    • Base64のデコードツール

…なんだかんだしていたら、結局プレゼンテーションそのものを作るために要した時間よりツール類を作るために要した時間のほうが長くなってしまったそうです。