今天為大家帶來一個很有趣的游戲模擬器GoBoy
GoBoy
GoBoy是一個可以在多平台運行的任天堂GameBoy和GameBoy Color的模擬器,目前這個模擬器可以運行大多數的GameBoy游戲和一部分GameBoy Color的游戲。同時還有聲音和顏色的支持,是不是很多80后小時候偷偷玩GameBoy的回憶涌上心頭了?
這個模擬器是作者當初作為一個開發練習用的項目,目前仍然在不斷更新中。
模擬器包含了調試函數,便於使用者理解該如何使用操作這個模擬器,方便自己個性化的寫一個類似的模擬器出來。
這些調試函數會將每一步的操作碼及數值打到控制台顯示,不過這個可是會降低模擬器速度的喲。
是不是很心動?趕緊來看下具體怎么弄!
如何安裝
想知道怎么用嗎?首先我們要去github上下載一個最新版本的GoBoy,地址如下:
https://github.com/Humpheh/goboy/releases/tag/v0.5
安裝go后,可以通過運行以下命令將GoBoy安裝到自己的go bin中:
go get github.com/Humpheh/goboy/cmd/goboy
如果你有1.11.版本的Go,你也可以這么做
git clone https://github.com/Humpheh/goboy.git
cd goboy
go build -o goboy cmd/goboy/main.go
GoBoy可以在MacOS、windows、linux多個平台上運行,不過需要注意的是在win10上運行需要安裝MinGW ,在Linux上安裝則需要安裝gtk。
GoBoy使用go的庫像素進行控件的綁定和圖形渲染,所以需要安裝OpenGL。
用法
goboy zelda.gb
控制鍵有: ← ↑ ↓ → Z X Enter Backspace;在DMG模式下調色板可以被=循環調用,游戲時可以用F切換為全屏顯示。
另外,一些要知道的設置命令:
-dmg
set to force dmg mode
-mute
mute sound output
調試或者實驗的設置命令:
-cpuprofile string
write cpu profile to file (debugging)
-disableVsync
set to disable vsync (debugging)
-stepthrough
step through opcodes (debugging)
-unlocked
if to unlock the cpu speed (debugging)
調試
有一些很有用的鍵盤快捷鍵用於調試:
Q-強制切換背景
W-強制切換精靈
A-打印gb背景調色板數據(cgb)
S-打印精靈調色板數據(cgb)
D-打印背景地圖到日志
E-切換操作碼打印到控制台(將減慢執行速度)
7,8,9,0-切換聲道1到4。
本文首發一個可以在多平台運行的任天堂GameBoy的模擬器,轉載清著名出處。
保存
如果加載的游戲rom是支持電池存儲的,則記住要用<rom name>.sav
(例如:塞爾達.gb.sav
)文件,和加載的rom放在一起保存,其中會包含盒帶中RAM的轉儲。
程序中會默認循環在游戲運行時每秒更新一次這個保存文件。
測試
GoBoy目前通過了Blargg的“cpu指令”和“指令定時”測試ROM中的所有測試。
最后
整個項目的地址如下:https://github.com/Humpheh/goboy
如果你還想深入了解,這里有一些關於GameBoy的資料供參考:
- http://www.codeslinger.co.uk/pages/projects/gameboy/files/GB.pdf
- https://github.com/retrio/gb-test-roms
- http://www.codeslinger.co.uk/pages/projects/gameboy/beginning.html
- http://bgb.bircd.org/ - invaluable for debugging
- https://github.com/AntonioND/giibiiadvance/tree/master/docs
- https://github.com/trekawek/coffee-gb
歡迎關注我的公眾號:程序猿DD,獲得獨家整理的免費學習資源助力你的Java學習之路!另每周贈書不停哦~