• Ben Avison's avatar
    Bugfixes to OS_Bytes 13 and 14. · 799120d5
    Ben Avison authored
    Detail:
      Event numbers greater than 31 are possible, it's just that OS_GenerateEvent
      doesn't bother cheking the event semaphores for them. However, the value
      returned in R1 from these OS_Bytes always indicated that such events were
      disabled. This suggests that OS_GenerateEvent was not always so, but the
      initials in comments there suggest the change was about RISC OS 3.0.
      The OS_Bytes now correctly reflect OS_GenerateEvent behaviour.
      Another bug fix is that once the event semaphores had saturated at 255,
      OS_Byte 13 was still happy to decrement the semaphore, so for example 256
      enables followed by 255 disables would have disabled the event.
    Admin:
      Not tested.
    
    Version 5.35, 4.79.2.70. Tagged as 'Kernel-5_35-4_79_2_70'
    799120d5
osbyte 36.7 KB