Showing changes from revision #4 to #5:
Added | Removed | Changed
Entry | |
---|---|
R0 | Reason |
R1 | 222 (&DE) |
R2 | New display number |
R3 | Sub-reason: |
0 = Mode will be changed | |
1 = (for Reason 0) read and load EDID derived modes immediately | |
128 = Mode will not be changed |
# | Hex # | Action |
---|---|---|
0 | &00 | Display is in process of being changed |
1 | &01 | Display change complete |
128 | &80 | Display change about to begin |
This service call is issued by OS_ScreenMode 11 when the OS is switching to a different video driver, or when the kernel receives a Service_DisplayStatus ‘configuration changing’ service call for the current GraphicsV driver.
Under RISC OS 5 the service call is issued three times, for three different stages of the operation:
For all the stages, R2 contains the new display number (i.e. GraphicsV driver number).
If activation of the new driver fails for any reason, the kernel will attempt to restore the previous driver. This will result in a sequence of four service calls instead of the usual three; reasons 128 and 0 will be issued with R2 set to the new driver, followed by 0 and 1 for the original driver.
The value of R3 is a sub-reason code. Sub-reason code 0 is used from within OS_ScreenMode 11 to indicate that the operation is going to result in the screen mode being changed. Sub-reason code 1 128 is used to from enable within theEDID definitions read in reason code 0 to be made current. Sub-reason code 128 is used from within Service_DisplayStatus to indicate that the screen mode isn’t going to change. Other sub-reason codes may be defined in future.
Under RISC OS 5, the display number in R2 corresponds to the GraphicsV driver number.
Under RISC OS Select, the display number in R2 corresponds to the VideoV? driver number.