mirror of
https://github.com/cc65/cc65.git
synced 2025-04-07 11:38:02 +00:00
Interrupt problems
git-svn-id: svn://svn.cc65.org/cc65/trunk@2812 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
97494bc1f3
commit
16f312a9ae
@ -229,6 +229,16 @@ While this simplifies things, it should be noted that the wrappers do have
|
||||
quite an impact on performance: A cross bank call has an extra 300µs
|
||||
penalty added by the wrapper.
|
||||
|
||||
<sect1>Interrupts<p>
|
||||
|
||||
Compiled programs contain an interrupt handler that runs in the program bank.
|
||||
This has several advantages, one of them being performance (see cross bank
|
||||
call overhead mentioned above). However, this introduces one problem:
|
||||
Interrupts are lost while the CPU executes code in the kernal bank. As a
|
||||
result, the clock may go wrong and (worse) serial interrupts may get lost.
|
||||
|
||||
Since the cc65 runtime does only call the kernal for disk I/O, this means that
|
||||
a program should not do file I/O while it depends on interrupts.
|
||||
|
||||
|
||||
<sect>Other hints<p>
|
||||
|
Loading…
x
Reference in New Issue
Block a user