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

Interrupts idea #275

Open
tomhea opened this issue Aug 19, 2024 · 0 comments
Open

Interrupts idea #275

tomhea opened this issue Aug 19, 2024 · 0 comments
Labels
backlog This should be worked on, someday.. enhancement New feature or request

Comments

@tomhea
Copy link
Owner

tomhea commented Aug 19, 2024

Each Device can have an interrupt address, which you configure as the first w bits you send it.
Then, if an interrupt occurs, the device will throw you to that address.

To return from an interrupt, the address can appear on 5w, on an address configured in the device manager. It can be a command from the device manager ("output 1111 for iret"). It can be a input from the device manager (that way you can save it for later and do "context switches").

Any way is great.

I love the last way, as it allows you to both save it for later, or jump to it right now. It will take w@ ops to read the address (or w@/4 for hex If I choose that), which is 320 at best, which is pretty expensive.
The one before the last - feels a bit like cheating. Yet, the first two feels too - as the address "magically appears" there each time.

A bit of cheating is important.
A cheating can also be "configure a hex.vec w/4 address to be configured to be filled by the return value each time.
Maybe what triggers me is the 1/100 timer interrupt. Flipjump might not be built for such a short interval.

Need to think this through.

@tomhea tomhea added enhancement New feature or request backlog This should be worked on, someday.. labels Aug 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog This should be worked on, someday.. enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant