Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document the use of shadow registers like hLCDC and hBGP. #20

Open
nitro2k01 opened this issue Apr 11, 2024 · 0 comments
Open

Document the use of shadow registers like hLCDC and hBGP. #20

nitro2k01 opened this issue Apr 11, 2024 · 0 comments

Comments

@nitro2k01
Copy link

I've seen two people on the Discord confused about the use of shadow registers just in the last week. The first person had the problem that the LCD was immediately disabled after enabling it. The issue turned out to be that the shadow register handler wrote the value of hLCDC (00) on the next VBlank. The second user noted that changes to rBGP would only work, as they put it, if you wrote to the register in an infinite loop.

I would suggest documenting how the shadow registers work and the caveats around using the code included in the gb-starter-kit, so there's a single place to point to if the question arises again. This should probably be mentioned briefly, maybe with an appropriate link, in intro.asm which is likely where a new user will look when using the project for the first time.

I've looked both in the GB ASM style guide and GB ASM tutorial in case anything about it was mentioned there, but nothing as far as I could see.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant