Commit cd0be6a7 authored by David Cotton's avatar David Cotton
Browse files

New OS_NVMemory reason code added.

Detail:
    OS_NVMemory 5 - read / write value of NVRamWriteSize
    in:  R0 = 5
         R1 = new value of NVRamWriteSize (in bytes, multiple of 256), or -1
              to return size.
    out: R1 = value of NVRamWriteSize
    This can be used to read and set the size of the protected area of NVRAM.
This is needed for Customer A 2, where there is a need to deprotect the protected
area so that NVRAM tags can be written.

Admin:
    Code by MStephens. Built and checked in by me ;-)

Version 5.41. Tagged as 'Kernel-5_41'
parent ccf39a14
......@@ -11,14 +11,14 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.40"
Module_Version SETA 540
Module_MajorVersion SETS "5.41"
Module_Version SETA 541
Module_MinorVersion SETS ""
Module_Date SETS "02 Apr 2001"
Module_ApplicationDate2 SETS "02-Apr-01"
Module_ApplicationDate4 SETS "02-Apr-2001"
Module_Date SETS "10 Apr 2001"
Module_ApplicationDate2 SETS "10-Apr-01"
Module_ApplicationDate4 SETS "10-Apr-2001"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "RiscOS/Sources/Kernel"
Module_FullVersion SETS "5.40"
Module_HelpVersion SETS "5.40 (02 Apr 2001)"
Module_FullVersion SETS "5.41"
Module_HelpVersion SETS "5.41 (10 Apr 2001)"
END
/* (5.40)
/* (5.41)
*
* This file is automatically maintained by srccommit, do not edit manually.
*
*/
#define Module_MajorVersion_CMHG 5.40
#define Module_MajorVersion_CMHG 5.41
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 02 Apr 2001
#define Module_Date_CMHG 10 Apr 2001
#define Module_MajorVersion "5.40"
#define Module_Version 540
#define Module_MajorVersion "5.41"
#define Module_Version 541
#define Module_MinorVersion ""
#define Module_Date "02 Apr 2001"
#define Module_Date "10 Apr 2001"
#define Module_ApplicationDate2 "02-Apr-01"
#define Module_ApplicationDate4 "02-Apr-2001"
#define Module_ApplicationDate2 "10-Apr-01"
#define Module_ApplicationDate4 "10-Apr-2001"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "RiscOS/Sources/Kernel"
#define Module_FullVersion "5.40"
#define Module_HelpVersion "5.40 (02 Apr 2001)"
#define Module_FullVersion "5.41"
#define Module_HelpVersion "5.41 (10 Apr 2001)"
......@@ -1901,6 +1901,9 @@ NVMemorySub
B NVMemory_Write
B NVMemory_ReadBlock
B NVMemory_WriteBlock
[ E2ROMSupport
B NVMemory_WriteSize
]
NVMemory_Unknown
ADRL R0, ErrorBlock_HeapBadReason
......@@ -2025,4 +2028,25 @@ NVMemory_WriteBlock ROUT
msr ,CPSR_cf, R4 ; restore interrupt state
EXIT
; -----------------------------------------------------------------------------
; OS_NVMemory 5 - read/write value of NVRamWriteSize
;
; in: R0 = 5
; R1 = new value of NVRamWriteSize (in bytes, multiple of 256), or -1 to read
; out: R1 = value of NVRamWriteSize (in bytes)
;
[ E2ROMSupport
NVMemory_WriteSize ROUT
ENTRY "R2"
MOV R2, #0
CMP R1, #-1
LDREQB R1, [R2, #NVRamWriteSize]
MOVNE R1, R1, LSR #8
STRNEB R1, [R2, #NVRamWriteSize]
MOV R1, R1, LSL #8 ; convert to bytes
EXIT
] ; E2ROMSupport
END
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