Commit 4ca0d4bb authored by Robert Sprowson's avatar Robert Sprowson
Browse files

Little kernel patches

hdr/ExportVals: the copyright header insertion got a bit confused with some of the file contents
TickEvents.s: a bad merge from Ursula branch 4.1.4.2 to trunk 4.2 left behind unmatched push/pull where TickIrqReenter had been removed
hdr/Options & NewIRQs.s: collapse remaining TickIrqReenter switches
osinit.s: when ZeroPage is in a top bit set address only the last buffer pointer would get zeroed

Tip offs from eagle eyed Tim Baldwin.

Version 5.35, 4.79.2.201. Tagged as 'Kernel-5_35-4_79_2_201'
parent 04a4b880
......@@ -13,11 +13,11 @@
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.35"
Module_Version SETA 535
Module_MinorVersion SETS "4.79.2.200"
Module_Date SETS "28 Oct 2013"
Module_ApplicationDate SETS "28-Oct-13"
Module_MinorVersion SETS "4.79.2.201"
Module_Date SETS "16 Nov 2013"
Module_ApplicationDate SETS "16-Nov-13"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "castle/RiscOS/Sources/Kernel"
Module_FullVersion SETS "5.35 (4.79.2.200)"
Module_HelpVersion SETS "5.35 (28 Oct 2013) 4.79.2.200"
Module_FullVersion SETS "5.35 (4.79.2.201)"
Module_HelpVersion SETS "5.35 (16 Nov 2013) 4.79.2.201"
END
......@@ -5,19 +5,19 @@
*
*/
#define Module_MajorVersion_CMHG 5.35
#define Module_MinorVersion_CMHG 4.79.2.200
#define Module_Date_CMHG 28 Oct 2013
#define Module_MinorVersion_CMHG 4.79.2.201
#define Module_Date_CMHG 16 Nov 2013
#define Module_MajorVersion "5.35"
#define Module_Version 535
#define Module_MinorVersion "4.79.2.200"
#define Module_Date "28 Oct 2013"
#define Module_MinorVersion "4.79.2.201"
#define Module_Date "16 Nov 2013"
#define Module_ApplicationDate "28-Oct-13"
#define Module_ApplicationDate "16-Nov-13"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "castle/RiscOS/Sources/Kernel"
#define Module_FullVersion "5.35 (4.79.2.200)"
#define Module_HelpVersion "5.35 (28 Oct 2013) 4.79.2.200"
#define Module_FullVersion "5.35 (4.79.2.201)"
#define Module_HelpVersion "5.35 (16 Nov 2013) 4.79.2.201"
#define Module_LibraryVersionInfo "5:35"
......@@ -126,9 +126,6 @@ MouseBufferManager SETL {TRUE}
GBLL IrqsInClaimRelease ; Whether OS_Claim/Release restore IRQ's before releasing heap node
IrqsInClaimRelease SETL {TRUE}
GBLL TickIrqReenter ; Whether TickEventChain processing re-enables IRQ's
TickIrqReenter SETL {TRUE}
GBLL SoftResets ; If false, always force a hard reset
SoftResets SETL {FALSE}
......
......@@ -746,17 +746,11 @@ TickOne ROUT
Push R10
[ TickIrqReenter
MOV R10, #TickerV ; call 100Hz vector
BL CallVector ; IRQ's still disabled
BL ProcessTickEventChain ; Re-enables IRQs
|
BL ProcessTickEventChain
MOV R10, #TickerV ; call 100Hz vector
BL CallVector
]
Pull "R10,PC"
; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
......
......@@ -57,10 +57,12 @@ ByteVarInitLoop
LDR R0, =ZeroPage+4*(NBuffers-1) ; index to pointer
MOV R1, #0 ; value to store
MOV R2, #NBuffers-1
BuffPtrInitLoop
STR R1, [R0, #BuffInPtrs]
STR R1, [R0, #BuffOutPtrs]
SUBS R0, R0, #4
SUB R0, R0, #4
SUBS R2, R2, #1
BPL BuffPtrInitLoop
; mark printer as dormant
......
......@@ -148,11 +148,9 @@ ProcessTickEventChain ROUT
MOVNE pc, lr ; nothing to call yet (was MOVPL)
Push "lr" ; save IRQ_lr
[ TickIrqReenter
WritePSRc SVC_mode+I_bit, r10 ; switch to SVC mode, IRQ's off
NOP
Push "lr" ; save SVC_lr
]
01
LDMIA r1, {r2, r10, r11, r12} ; load next ptr, redo state,
; address and R12val
......
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