Giter Site home page Giter Site logo

gameboy-emu's People

Contributors

ignite1771 avatar jserv avatar rsysz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

gameboy-emu's Issues

Galaga & Galaxian 顯示錯誤

執行的ROM:
Galaga & Galaxian (J) [S].gb
遇到的狀況:
在進入遊戲後,畫面遇到下述異常:

  • Galaga畫面會全白,但是操作仍有反應且聲音正常,戰鬥過程中只能看到移動中的物件

  • Galaxian類似於Galaga,但一開始會看到異常的READY字樣(如下圖所示)
    Screenshot from 2020-11-25 20-02-21

可能原因推測:

  1. 關於一片白:
  • Galaga & Galaxian為了要突破sprite個數限制,使用了一個特殊技巧,將大部分的物件交由bg顯示,僅有玩家與攻擊中的敵人會將該區域內的bg map清除後改由OAM控制的sprite繪製

  • Galaxian更進一步的加上了ScrollX暫存器的操作,實現快速平移多個物件

  • 僅能看到移動中的物件是因為他們是sprite

透過觀察,可以得知顯示異常的皆為bg相關的圖形,因此可以將bug可能發生的範圍限縮

2.異常的READY字樣:

  • READY是sprite不是bg

  • LCD相關的除錯總離不開對各區域記憶體進行觀察,我們可以透過bgb觀察tile:

    Screenshot from 2020-11-25 20-20-17

  • 我們可以發現顯示錯誤的字母(E A Y)都剛剛好差了一個tile,且剛剛好又出現在正下方,因此可以懷疑OAM的解析出現問題,

    導致讀取到錯誤的tile number和可能觸發了8*16模式

塞爾達傳說 織夢島 無法建立角色資料

執行的ROM:
塞爾達傳說 織夢島(The Legend of Zelda: Link's Awakening)

遇到的狀況:
在正式進入遊戲後,在建立存檔介面輸入完玩家姓名後,隨即回到存檔選擇介面,但沒有建立存檔,因此無法開始劇情

可能原因推測:
我猜應該是跟mbc1的存檔寫入有點關聯,畢竟模擬器本身已經通過instruction test了,可以排除掉branch指令實作錯誤的可能性

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.