Commit 9fe47897 authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Fix bug when creating code variables via OS_SetVarVal (HAL branch)

Detail:
  OS_SetVarVal was failing to call XOS_SynchroniseCodeAreas after copying the code variables code block into the system heap. This has now been fixed.
Admin:
  Fix tested in Cortex branch on rev C2 beagleboard. Debugger module now shows the right register names instead of ofla!


Version 5.35, 4.79.2.106. Tagged as 'Kernel-5_35-4_79_2_106'
parent 62fb1997
......@@ -13,11 +13,11 @@
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.35"
Module_Version SETA 535
Module_MinorVersion SETS "4.79.2.105"
Module_Date SETS "28 Oct 2009"
Module_ApplicationDate SETS "28-Oct-09"
Module_MinorVersion SETS "4.79.2.106"
Module_Date SETS "06 Nov 2009"
Module_ApplicationDate SETS "06-Nov-09"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "castle/RiscOS/Sources/Kernel"
Module_FullVersion SETS "5.35 (4.79.2.105)"
Module_HelpVersion SETS "5.35 (28 Oct 2009) 4.79.2.105"
Module_FullVersion SETS "5.35 (4.79.2.106)"
Module_HelpVersion SETS "5.35 (06 Nov 2009) 4.79.2.106"
END
......@@ -5,19 +5,19 @@
*
*/
#define Module_MajorVersion_CMHG 5.35
#define Module_MinorVersion_CMHG 4.79.2.105
#define Module_Date_CMHG 28 Oct 2009
#define Module_MinorVersion_CMHG 4.79.2.106
#define Module_Date_CMHG 06 Nov 2009
#define Module_MajorVersion "5.35"
#define Module_Version 535
#define Module_MinorVersion "4.79.2.105"
#define Module_Date "28 Oct 2009"
#define Module_MinorVersion "4.79.2.106"
#define Module_Date "06 Nov 2009"
#define Module_ApplicationDate "28-Oct-09"
#define Module_ApplicationDate "06-Nov-09"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "castle/RiscOS/Sources/Kernel"
#define Module_FullVersion "5.35 (4.79.2.105)"
#define Module_HelpVersion "5.35 (28 Oct 2009) 4.79.2.105"
#define Module_FullVersion "5.35 (4.79.2.106)"
#define Module_HelpVersion "5.35 (06 Nov 2009) 4.79.2.106"
#define Module_LibraryVersionInfo "5:35"
......@@ -1485,6 +1485,7 @@ SetVarVal_GotInitialLength
TEQ r10, #VarType_Code
ADDEQ r4, r4, #3
BICEQ r4, r4, #3
Push "r4",EQ ; Remember start of code block for code variables
TEQNE r10, #VarType_Number
BEQ SetVarVal_CopyR1BytesToR4
......@@ -1499,15 +1500,24 @@ SetVarVal_GotInitialLength
MOV r1, r1, ROR #16
ADDEQ r1, r1, #1 ; undo ghastly fudge
SetVarVal_CopyR1BytesToR4
B %FT35
30
LDRB lr, [r5], #1
STRB lr, [r4], #1
35
SetVarVal_CopyR1BytesToR4
SUBS r1, r1, #1
BHS %BT30
TEQ r10, #VarType_Code
BNE SetVarVal_NewNodeReady
Pull "r1" ; Grab pointer to start of code block
Push "r0,r2"
MOV r0,#1
MOV r1,r4
SWI XOS_SynchroniseCodeAreas
Pull "r0,r2"
B SetVarVal_NewNodeReady
SetVarVal_FillInString
......
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