Commit 1273e4ff authored by Robert Sprowson's avatar Robert Sprowson
Browse files

Expose CLREX via OS_PlatformFeatures

Except on all 26 bit CPUs there's no need, so we just return 0 for compatibility.

Version 0.17. Tagged as 'CallASWI-0_17'
parent 7569ffe7
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "0.16"
Module_Version SETA 16
Module_MajorVersion SETS "0.17"
Module_Version SETA 17
Module_MinorVersion SETS ""
Module_Date SETS "30 Jun 2016"
Module_ApplicationDate SETS "30-Jun-16"
Module_Date SETS "09 Feb 2017"
Module_ApplicationDate SETS "09-Feb-17"
Module_ComponentName SETS "CallASWI"
Module_ComponentPath SETS "castle/RiscOS/Sources/Utilities/Patches/CallASWI"
Module_FullVersion SETS "0.16"
Module_HelpVersion SETS "0.16 (30 Jun 2016)"
Module_FullVersion SETS "0.17"
Module_HelpVersion SETS "0.17 (09 Feb 2017)"
END
/* (0.16)
/* (0.17)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 0.16
#define Module_MajorVersion_CMHG 0.17
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 30 Jun 2016
#define Module_Date_CMHG 09 Feb 2017
#define Module_MajorVersion "0.16"
#define Module_Version 16
#define Module_MajorVersion "0.17"
#define Module_Version 17
#define Module_MinorVersion ""
#define Module_Date "30 Jun 2016"
#define Module_Date "09 Feb 2017"
#define Module_ApplicationDate "30-Jun-16"
#define Module_ApplicationDate "09-Feb-17"
#define Module_ComponentName "CallASWI"
#define Module_ComponentPath "castle/RiscOS/Sources/Utilities/Patches/CallASWI"
#define Module_FullVersion "0.16"
#define Module_HelpVersion "0.16 (30 Jun 2016)"
#define Module_LibraryVersionInfo "0:16"
#define Module_FullVersion "0.17"
#define Module_HelpVersion "0.17 (09 Feb 2017)"
#define Module_LibraryVersionInfo "0:17"
......@@ -312,14 +312,20 @@ Our_PlatformFeatures ROUT
Push "LR"
CMP R0, #OSPlatformFeatures_ReadCPUFeatures
BEQ PlatFeatSWI_ReadCPUFeatures
CMP R0, #OSPlatformFeatures_ReadClearExclusive
BEQ %FT40
CMP R0, #OSPlatformFeatures_ReadCodeFeatures ; Is it a known reason code?
BNE %FT50 ; No, so send out a service call
BNE %FT50 ; No, so error
; OK, it's the 'code_features' reason code.
ADR LR, platfeat0
LDMIA LR, {R0,R1}
Pull "LR"
B SLVK ; Return
40
MOV R1, #0 ; 26 bit world, definitely no exclusive monitor
Pull "LR"
B SLVK
50
; If running on RISC OS 3.8+, pass unknown reason codes on to the kernel
; If 3.7X or older, there's either no kernel OS_PlatformFeatures
......
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