Commit 41b0cd05 authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Resolve allocation clash with RISCOS Ltd

Detail:
  Some cross-checking against the RISC OS Select documentation revealed that ScreenModes_ReadInfo 1 had already been claimed by ROL for the purpose of reading the monitor's supported DMPS state, causing a clash with our recently-introduced usage of reading the monitor speaker mask.
  Implement ScreenModes_ReadInfo 1 as per ROL's spec, and change the "read speaker mask" call to ScreenModes_ReadInfo 2.
  File changes:
  - c/ScrModes, hdr/ScrModes - as above
Admin:
  Tested on Raspberry Pi


Version 0.58. Tagged as 'ScrModes-0_58'
parent e1d639d1
/* (0.57)
/* (0.58)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 0.57
#define Module_MajorVersion_CMHG 0.58
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 06 Aug 2016
#define Module_Date_CMHG 26 Nov 2016
#define Module_MajorVersion "0.57"
#define Module_Version 57
#define Module_MajorVersion "0.58"
#define Module_Version 58
#define Module_MinorVersion ""
#define Module_Date "06 Aug 2016"
#define Module_Date "26 Nov 2016"
#define Module_ApplicationDate "06-Aug-16"
#define Module_ApplicationDate "26-Nov-16"
#define Module_ComponentName "ScrModes"
#define Module_ComponentPath "castle/RiscOS/Sources/Video/UserI/ScrModes"
#define Module_FullVersion "0.57"
#define Module_HelpVersion "0.57 (06 Aug 2016)"
#define Module_LibraryVersionInfo "0:57"
#define Module_FullVersion "0.58"
#define Module_HelpVersion "0.58 (26 Nov 2016)"
#define Module_LibraryVersionInfo "0:58"
......@@ -1357,6 +1357,19 @@ _kernel_oserror *ScreenModes_swihandler(int swi_no, _kernel_swi_regs *r, void *p
}
break;
case ScreenModes_ReadInfo_DPMS: /* Read supported DPMS state of monitor */
if (current_monitor)
{
r->r[0] = current_monitor->dpms_state;
result = NULL;
}
else
{
/* No monitor description file loaded */
result = error(ERR_NOMODEFILE, 0, 0, 0);
}
break;
case ScreenModes_ReadInfo_SpeakerMask: /* Read monitor speaker mask */
if (current_monitor)
{
......
......@@ -36,6 +36,7 @@ SWIClass SETS ScreenModesSWI_Name
; ScreenModes_ReadInfo reason codes
^ 0
ScreenModes_ReadInfo_MonitorName # 1
ScreenModes_ReadInfo_DPMS # 1
ScreenModes_ReadInfo_SpeakerMask # 1
OPT OldOpt
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment