Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ゲームボーイアプリ開発の始め方
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kimkim0106
January 27, 2024
Programming
15
0
Share
ゲームボーイアプリ開発の始め方
2024/01/27 エンジニア集会 LT会 #4 にて発表
kimkim0106
January 27, 2024
More Decks by kimkim0106
See All by kimkim0106
奥深いゲームボーイ周辺機器の世界
kimkim0106
1
60
なぜ令和の今ゲームボーイを触るのか
kimkim0106
0
260
ゲームボーイでいろいろ「つながった」
kimkim0106
0
100
ゲームボーイでLT
kimkim0106
0
210
レトロゲームから学ぶ通信技術の歴史
kimkim0106
0
280
レトロゲームから学ぶ半導体の歴史
kimkim0106
0
60
Perlでゲームボーイアセンブラプログラミング
kimkim0106
0
110
ゲームボーイに画像表示させよう!
kimkim0106
0
18
ゲームボーイのアーキテクチャ
kimkim0106
0
13
Other Decks in Programming
See All in Programming
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
560
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
340
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
290
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
510
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
230
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
200
KagglerがMixSeekを触ってみた
morim
0
370
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
440
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
830
iOS機能開発のAI環境と起きた変化
ryunakayama
0
150
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
300
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
510
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
500
Prompt Engineering for Job Search
mfonobong
0
250
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The Limits of Empathy - UXLibs8
cassininazir
1
290
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
WENDY [Excerpt]
tessaabrams
9
37k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
230
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
Transcript
ゲームボーイアプリ 開発の始め方 kimkim0106 2024/01/27 @ エンジニア作業飲み集会
おしながき - ゲームボーイとは? - ゲームボーイの特徴 - ハードウェアについて - ゲームボーイ開発に必要なもの -
開発環境 - エミュレーター - Flashカートリッジ - 実際にやってみた 2
自己紹介 Webエンジニア kimkim0106 VRChat : kimkim0106 Website : https://kimkim0106.net X(Twitter)
: @kimkim0106_3218 3
こんなことをやっています 4
ゲームボーイとは? 任天堂の携帯型ゲーム機 - 1989年発売 - 当初はモノクロ画面 - 後にカラーモデルが登場 - 販売台数は1億1869万台
- ちなみに... - DS: 1億5402万台 - Switch: 1億3246万台 5
ゲームボーイの特徴 - 長時間遊べる - 単3電池4本で35時間、ただし画面はモノクロ - 競合機種はカラーだが、単3電池6本で3~4時間 - 乾電池で動く -
入手性がよく、交換もしやすい - 持ち運びしやすい - 初代はちょっと重くて大きいけど... - ポケット以降は小さくなった 6
ゲームボーイのハードウェア 7 ゲームボーイ(DMG-01) ゲームボーイカラー CPU SHARP 8-bit CPU (8080 like)
@ 4.19 MHz SHARP 8-bit CPU (8080 like) @ 4.19 MHz, 8.39 MHz WRAM 8 KiB 32 KiB VRAM 8 KiB 16 KiB Screen モノクロ4階調 液晶 160 x 144 32768色カラー TFT液晶 160 x 144 Sound 4チャンネル ステレオ出力 4チャンネル ステレオ出力 Power DC 6V 0.7W (単3電池 x 4) DC 3V 0.6W (単3電池 x 2) CPU WRAM VRAM
非公式だが、一通り揃っている - 最低限必要なのは... - 開発環境 - エミュレータ - 実機で動かすなら... -
Flash カートリッジ - その他 - ハードウェア仕様書 ゲームボーイ開発に必要なもの 8
開発環境 - Windows・macOS・Linux なんでもOK! - ツールによってはコーディング不要! - プログラミングするなら、C言語もしくはアセンブラ言語 - ハードウェアの制約が大きいので、そこは頑張りましょう
- ROMが小さい - グラフィックも自由に書けるわけではない 9
GB イメージビューワーコンバーター - 画像を表示させるならコンバーターを使えばOK - 画像をアップロードするだけ - ただし4色に減色される 10
GB Studio - ゲームをドラッグ&ドロップだけで作れる - RPGツクール的なソフトだが、RPG以外も作れるっぽい - Windows・Linux・Mac版あり - 割と何でもできそう
- 曲作りもできる 11
GBDK-2020 12 - Cプログラミングするならこれ - 全部入りのクロスコンパイル開発環境 - ライブラリ・ツールチェイン・コンパイラ - サンプルも充実
- ZGBを使えばちょっと楽に書けそう - 便利な関数が用意されている
RGBDS - アセンブラ・リンカのパッケージ - Windows・macOS・Linux対応 - Arch Linux なら公式リポジトリにある -
macOSもHomebrewから入れられる 13
エミュレータ なんでもいいがデバッグしやすいものがよさそう - bgb - Windows のみだが、Wineでも動く - かなり正確 -
デバッグ機能付き - 他にも色々ある - Sameboy (Windows・macOS) - VisualBoyAdvance-M (Windows・macOS・Linux) 14
実機で動かしたい Flashカートリッジとリーダーライターが必要 - 市販品 - 同人サークル「CUBIC STYLE」のものがBoothで買える - GBカートフラッシャー開発セット -
大容量・RAM付きなど色々ある - 他にも海外製品が色々ある - 自作 - 基板データなど公開されている 15
ハードウェア仕様書 - ゲームボーイのハードウェアはかなり解析済み - CPUからシリコンを取り出して回路まで解析されようとしている - 周辺機器も解析されているので使える - ポケットカメラ -
ポケットプリンタ - モバイルアダプタGB - 大抵のドキュメントはインターネット上にある - 割りとなんでも出てくる 16
実際にやってみた - ゲームボーイにグラフィックを表示させるプログラム - といいつつ、文章なんですが - 英数字であれば、GBDKでprintfするだけで表示できる - やること -
データを用意 - 今回は漢字 - 並べる - 文章になるように並べる - ビルドする 17
①タイルデータを作成 8x8 もしくは 8x16 でタイルデータを作成 18
②マップデータ(背景)を作成 タイルをしきつめていく 19
③mainを記述 GBDKに便利な関数があるのでこれだけでいい 20
④ビルドする ROMイメージが生成されるので、これを実行する 21
まとめ - ゲームボーイはまだまだアツい! - 最近、中古価格が高騰しててつらい... - 画面の劣化もつらい... - 持っている人は大事にしましょう -
みんなもゲームボーイソフト開発をしよう! - 自分もがんばります - (次のリアルVketまでになにかできるといいな) 22
リンク - GB イメージビューワーコンバーター https://cubic-style.jp/gbiv/ - GB Studio https://www.gbstudio.dev/ -
GBDK-2020 | gbdk-2020 https://gbdk-2020.github.io/gbdk-2020/ - Welcome! | RGBDS https://rgbds.gbdev.io/ - BGB GameBoy Emulator https://bgb.bircd.org/ - SameBoy https://sameboy.github.io/ - CUBIC STYLE - BOOTH https://cubic-style.booth.pm/ - Projects | gbdev.io https://gbdev.io/ - Game Boy: Complete Technical Reference https://gekkio.fi/files/gb-docs/gbctr.pdf 23
参考文献 - 株主・投資家向け情報:業績・財務情報 - ゲーム専用機販売実績 https://www.nintendo.co.jp/ir/finance/hard_soft/index.html - ゲームボーイ全機種仕様対比表 https://www.nintendo.co.jp/n02/dmg/hardware/gbtaihi/index.html -
ゲームギア |セガ SEGA https://www.sega.jp/history/hard/gamegear/index.html - Specifications - Pan Docs https://gbdev.io/pandocs/Specifications.html - Game Boy (DMG) - Game Boy hardware database https://gbhwdb.gekkio.fi/consoles/dmg/ 24
おわり ご清聴ありがとうございました 資料はWebsiteにて公開します! https://kimkim0106.net 25