Embedded Swiftの登場により、Swiftで組み込み機器向けのプログラミングが可能になりました。
AppleがSecure Enclaveの開発でEmbedded Swiftを使っていたり、去年のiOSDC JapanでもRaspberry Pi PicoやPlaydate、ゲームボーイアドバンスをEmbedded Swiftでプログラミングをするトークがあったりと、とても注目の領域です。
私もそれに触発されてゲームボーイアドバンスのプログラミングをはじめました。しかし、"Safe"が売りのSwiftで、組み込みプログラミングに特有の"Unsafe"な手続きをどう実装したらいいか、かなり試行錯誤しました。
C言語やObjective-Cを使えば簡単なのはわかっています。でも、私はなるべくSwiftだけでプログラミングしたい! なぜならSwiftが好きだから!
このトークでは、ゲームボーイアドバンスでのプログラミング例と共に、「アドレス指定のメモリアクセス」「レジスタ操作」「関数ポインタによる割り込み処理」「_attribute_の利用」「インラインアセンブラ」に挑戦した結果を紹介します。
Embedded Swiftの可能性と「危なさ」を体感してください!