User Tools

Site Tools


base:efficient_tod_initialisation

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
base:efficient_tod_initialisation [2020-04-09 21:36] – Added credis for the article directly under the heading ftcbase:efficient_tod_initialisation [2020-10-27 02:31] (current) – [Proper solution] silverdr
Line 53: Line 53:
   * Short and fast   * Short and fast
  
-Please also note that we use CIA #2 and not CIA #1. CIA #2 is chosen because it timers are by default not used by the system. Moreover KERNAL initialises those timers according to its needs, whenever it wants to use them. This saves us a few bytes, which would otherwise be needed to preserve original settings. Last and least we do not disable NMIs as it is assumed that checking/setting the params will be done as part of application initialisation, before any IRQ/NMI handlers are set.+Please also note that we use CIA #2 and not CIA #1. CIA #2 is chosen because its timers are by default not used by the system. Moreover KERNAL initialises those timers according to its needs, whenever it wants to use them. This saves us a few bytes, which would otherwise be needed to preserve original settings. Last and least we do not disable NMIs as it is assumed that checking/setting the params will be done as part of application initialisation, before any IRQ/NMI handlers are set.
 ===== Dual purpose ===== ===== Dual purpose =====
 I mentioned before that this routine can serve also another purpose and give us potentially even more savings. Yes, with addition of only a few bytes: I mentioned before that this routine can serve also another purpose and give us potentially even more savings. Yes, with addition of only a few bytes:
base/efficient_tod_initialisation.txt · Last modified: 2020-10-27 02:31 by silverdr