diff options
author | Test_User <hax@andrewyu.org> | 2023-01-05 03:29:26 -0500 |
---|---|---|
committer | Test_User <hax@andrewyu.org> | 2023-01-05 03:29:26 -0500 |
commit | 0d290b91117fb0002e247b7a48a38eb40fc48fbd (patch) | |
tree | 5e36c882826194853835c1d1fc056bcbe7f01717 /cpu/interrupts/execution.txt | |
parent | b0ca4d17f93970881edf05f3cff206d47b7fa564 (diff) | |
download | specification-0d290b91117fb0002e247b7a48a38eb40fc48fbd.tar.gz specification-0d290b91117fb0002e247b7a48a38eb40fc48fbd.zip |
Add hardware task switching, get rid of software interrupts
Diffstat (limited to 'cpu/interrupts/execution.txt')
-rw-r--r-- | cpu/interrupts/execution.txt | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/cpu/interrupts/execution.txt b/cpu/interrupts/execution.txt new file mode 100644 index 0000000..858334c --- /dev/null +++ b/cpu/interrupts/execution.txt @@ -0,0 +1,10 @@ +When an interrupt occurs: + OPRI gets set to the PR from the previous code running + OIPI gets set to the IP from the previous code running + PR is set to all 1s + +The next interrupt will not occur until after the current processing has been finished via `ireti` + +When returning via ireth: + PR is set to OPRI + Execution jumps to OIPI |