Zarchos wrote:dilwyn wrote:I think SLUG works by putting delays in keyboard read systems IIRC, whereas Slowgold is written to use interrupts or scheduler lists IIRC (haven't got the sources to hand to check), so it's quite possible that both might be of use in situations where some software needs to be slowed down.
No way on the QL to do some consuming time CPU operations, triggered by a timer interrupt, synced to whatever the screen mode sync is ?
That is exactly what is hidden behind the "scheduler list" concept mentioned above - The scheduler is driven by basically the same 50/60Hz timer that also drives the vertical blank interrupt. Same concept, other name. A scheduler list is a routine address you hand over to the OS to be called during the 50Hz interrupt.
More differences: Because the scheduler lists also (obviously) fuel the scheduler (that is, a lot of code runs triggered from these lists), you cannot expect the same amount of predictability from this timer than you would expect from a system that has an otherwise unused VBI. A lot of game programmers on the original QL worked around this by effectively stopping the scheduler and running their game in supervisor mode. Whether this is beneficial (or needed) on the Q68 needs to be explored, as it also makes it difficult to call OS routines.
On the original QL, because of its OS (and, thus, the trap vectors) living in ROM, there is no other way to redirect the VBI to your own code. The Q68, having the vectors in RAM, could in fact do differently.