|
![](/i/fill.gif) |
On 26/03/2013 11:20 AM, scott wrote:
>> Under sufficiently heavy CPU load, the mouse pointer became slightly
>> less responsive. There's no reason for that to happen if it's all
>> implemented in hardware.
>
> On the Acorn there was no concept of CPU load as we have today - the CPU
> was always running at 100%. The OS just gave control to each running
> program in turn, when it had done all of them it started again. It was
> up to each program to give control back to the OS when it was done. If
> you didn't you got to use 100% CPU, which is what most full-screen games
> did and the default for simple programs.
The AmigaOS was pre-emptive. There is no "yield" command; when your
quantum is up, you get suspended and the next task gets to run. Nothing
you can do about it.
(Well, no, I lie. You can ask the OS to turn off pre-emption. If you
forget to tell it to turn pre-emption back on, basically the system
hangs... Needless to say, this is a rarely-used feature. Except for
games programming.)
> IIRC the mouse pointer was updated by interrupt, so unless you
> deliberately disabled interrupts or wrote some buggy interrupt handler
> you never got any issue with pointer responsiveness.
I'm almost certain AmigaOS drove the mouse pointer with a simple
interrupt handler too.
Post a reply to this message
|
![](/i/fill.gif) |