透過程式設計初代 Gameboy 學習組合語言

Game Boy 程式設計:組合語言、圖形、音訊、多人遊戲和真實硬體

從這 23 小時的課程,你會學到

  • 從零開始使用組合語言為任天堂 Game Boy (DMG) 編寫程式
  • 理解彙編指令、記憶體、暫存器、中斷、圖塊圖形、精靈和聲音硬體
  • 從頭開始建立完整的 Game Boy 應用程式和類似 Flappy Bird 的遊戲
  • 學習經典掌上電腦的機器級工作原理,並將這些概念應用於現代系統
  • 了解程式設計師如何運用巧妙的技巧和硬體感知設計,克服嚴重的技術限制,創造出令人印象深刻的遊戲

要求

  • 對程式設計概念(變數、迴圈和函數)的基本理解會有所幫助,但無需組合語言或 Game Boy 經驗。本課程涵蓋入門所需的一切知識。
  • 部分示範使用了Python作為影像處理工具,但無需事先掌握Python。

課程說明

DMG 程式設計:學習任天堂Game Boy的組合語言和遊戲開發

任天堂 Game Boy,又稱 DMG,是有史以來最具影響力的掌上型遊戲機之一。儘管它的處理能力遠不及現代設備,但它仍然是學習電腦、遊戲和硬體工作原理的最佳平台之一。

在本課程中,你將學習如何使用組合語言從零開始編寫 Game Boy 程式。我們將從CPU和記憶體架構的基礎知識入手,逐步培養創建圖形、處理玩家輸入、製作精靈動畫、檢測碰撞、生成聲音、透過連接線進行通訊、與外部設備互動等技能,最終開發出可以在真實硬體上運行的完整應用程式和遊戲。

本課程著重實作。我們不會只專注於理論,而是會一步一步地建立實際專案,包括一個完整的類似 Flappy Bird 的遊戲。在這個過程中,我們將探索 DMG 硬體的諸多面向:

  • 組合語言程式設計
  • 圖形和基於圖塊的渲染
  • 精靈和 OAM 管理
  • 輸入處理
  • 碰撞偵測
  • DMA 傳輸
  • 隨機數生成
  • 音訊程式設計
  • 定時器和中斷
  • 序列通訊
  • Game Boy 印表機
  • Game Boy 相機
  • MIDI 整合
  • 實際硬體測試和偵錯( debug )

你還將學習如何使用 RGBDS 和 RGBGFX 等現代開發工具,將你自己的圖像轉換為可在 DMG 上使用的格式,從 MIDI 文件生成音樂數據,以及創建既能在模擬器上運行也能在原版硬體上運​​行的軟體。

與許多入門課程不同,本課程並非止於程式編譯完成。我們將使用真正的 Game Boy 測試我們的專案,分析硬體特有的錯誤,並了解為什麼即使在今天,真實的硬體驗證仍然至關重要。

在此過程中,我們也將更廣泛地了解掌上電腦和遊戲的發展歷程。我們將 DMG 與 MicroVision 等早期系統進行比較,研究 20 世紀 70 年代和 80 年代的經典電子玩具,拆解一台真正的 Game Boy 以了解其內部架構,並探索僅透過軟體就能將一台可編程機器變成多種不同機器的理念。

課程結束時,你不僅會掌握如何為 Game Boy 開發軟體,還會理解許多驅動現代電腦、遊戲機、智慧型手機和嵌入式系統的基本概念。

無論你對復古程式設計、遊戲開發、電腦體系結構、嵌入式系統感興趣,還是僅僅想了解電腦的底層工作原理,本課程都將帶你親身實踐,探索有史以來最優雅、最易用的計算平台之一。

因為歸根究底,現代掌機和 Game Boy 的共同點比你想像的還要多。

一個每秒渲染數百萬個帶有紋理的三角形。

另一個繪製圖塊。

兩者都是計算機,執行指令,在記憶體中移動數據,並將這些數據轉化為體驗。

規模變了。

原理沒變。

你將建構什麼

  • 一款完整的 Flappy Bird 風格遊戲
  • 基於精靈的演示
  • 碰撞系統
  • 音訊播放系統
  • MIDI 控制的音樂實驗
  • 串口通訊演示
  • 多人連接線纜應用
  • Game Boy 印表機專案
  • 實際硬體演示

這門課為哪些人製作

  • 想學習底層程式設計的程式設計師
  • 對復古硬體有興趣的遊戲開發者
  • 對電腦體系結構有興趣的電腦科學專業的學生
  • 嵌入式系統愛好者
  • 復古電腦愛好者
  • 任何曾經好奇現代引擎出現之前遊戲如何運作的人

無需任何組合語言經驗。本課程從基礎知識入手,逐步深入,最終實現完整的應用程式和遊戲開發。

歡迎來到 DMG — 通用玩具機!

目標受眾

從復古遊戲愛好者到專業軟體開發人員,任何對電腦、遊戲機和掌上設備的內部工作原理感到好奇的人都可以閱讀。

講師簡介

Julio Seaman 遊戲引擎程式設計師

Julio Seaman 是一位軟體工程師和遊戲程式設計師,在電玩產業擁有豐富的專業經驗。他的職業生涯涵蓋了遊戲引擎、物理系統、網路技術和底層程式設計等領域。

Julio 對電腦體系結構和復古運算充滿熱情,他喜歡探索經典系統的工作原理,並以此為基礎教授基礎程式設計概念。他的專案包括涵蓋Game Boy開發、復古硬體以及連接經典電腦和現代系統的原理等教育內容。

透過這門課程,他旨在幫助學生不僅理解如何編寫 Game Boy 程式,還能理解現代抽象技術之下電腦的工作原理。

字幕:英文

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

  • Udemy 永久擁有課程 🍀 大多課程約 NT350 (點擊看優惠)
  • 年訂閱每月 NT350 優惠 ( ⏳現在訂閱有更惠價價 NT262/月 ) 🌈悠遊 Udemy 的 28000+ 門課,最大化學習 ( 原價 NT635/月 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

由 WordPress.com 建置.

Up ↑

探索更多來自 Soft & Share 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

繼續閱讀