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

Make CallBackBank reentrant #7

Open
ytmytm opened this issue Nov 8, 2022 · 0 comments
Open

Make CallBackBank reentrant #7

ytmytm opened this issue Nov 8, 2022 · 0 comments

Comments

@ytmytm
Copy link
Owner

ytmytm commented Nov 8, 2022

CallBackBank procedure stores current RAM config from PIA_PORTB in a fixed location. Because of this:

  • bank0 procedures can't be used for functions called from interrupts (an interrupt might happen while bank0 procedure (e.g. Rectangle) is running)
  • bank0 procedure can call another bank0 procedure only directly in bank0, not via jump table that might route it through CallBankBank

This limits the kind of code that can be moved to bank0 - there is still about 1-2K available there, assuming 4K reserved for SIO driver.

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