mirror of
https://github.com/irmen/prog8.git
synced 2026-04-21 17:16:33 +00:00
cx16: added sys.waitirq() that just does a WAI like waitvsync() but it is explicit about its behavior
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
|
||||
Prog8 compiler v12.2-SNAPSHOT by Irmen de Jong (irmen@razorvine.net)
|
||||
Prerelease version from git commit d720eeae in branch master
|
||||
Prerelease version from git commit 3b687412 in branch master
|
||||
This software is licensed under the GNU GPL 3.0, see https://www.gnu.org/licenses/gpl.html
|
||||
|
||||
Compiling program import-all-cx16.p8
|
||||
@@ -1513,6 +1513,7 @@ sys {
|
||||
set_rasterline (uword line @AY)
|
||||
update_rasterirq (uword handler @AY, uword rasterpos @R0) clobbers (A)
|
||||
wait (uword jiffies @AY) clobbers (X)
|
||||
waitirq ()
|
||||
waitrasterline (uword line @AY)
|
||||
waitvsync ()
|
||||
}
|
||||
|
||||
@@ -1455,6 +1455,9 @@ miscellaneous
|
||||
If this is is not possible (for instance because your program is running its own irq handler logic *and* no longer calls
|
||||
the kernal's handler routine), you'll have to write your own wait routine instead.
|
||||
|
||||
``waitirq ()`` (cx16 only)
|
||||
efficiently wait until the next interrupt has occurred (any source). It uses the 65C02 'wai' instruction for this.
|
||||
|
||||
``waitvsync ()``
|
||||
busy wait till the next vsync has occurred (approximately), without depending on custom irq handling.
|
||||
can be used to avoid screen flicker/tearing when updating screen contents.
|
||||
|
||||
@@ -17,6 +17,7 @@ Weird Heisenbug
|
||||
|
||||
Future Things and Ideas
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
- symboldump: some sort of javadocs generated from the p8 source files (instead of just the function signatures). Use markdown for formatting.
|
||||
- if floats are only used in constants and never end up as actual value for a variable or expression, don't complain about the "floats not enabled" if %option enable_floats is missing
|
||||
- why are (interned) strings stored as initialization value in the SymbolTable AND as string nodes in the interned string block? Something seems redundant here?
|
||||
- add @private to variables and subroutines declared in a scope to make them invisible from outside that scope?
|
||||
|
||||
Reference in New Issue
Block a user