Commit a330bf0c authored by Stewart Brodie's avatar Stewart Brodie
Browse files

32-bit compatibility added.

  Removed some MOVNV instructions (replaced by NOP (MOV r0,r0))
Admin:
  Tested build on Phoebe & 32 machine builds.

Version 0.08. Tagged as 'RTCAdjust-0_08'
parent df4e1bf8
;
; This file is automatically maintained by srccommit, do not edit manually.
;
GBLS Module_MajorVersion
GBLA Module_Version
GBLS Module_MinorVersion
GBLS Module_Date
GBLS Module_FullVersion
Module_MajorVersion SETS "0.07"
Module_Version SETA 7
Module_MinorVersion SETS ""
Module_Date SETS "17 Aug 1999"
Module_FullVersion SETS "0.07"
GBLS Module_MajorVersion
GBLA Module_Version
GBLS Module_MinorVersion
GBLS Module_Date
GBLS Module_FullVersion
Module_MajorVersion SETS "0.08"
Module_Version SETA 8
Module_MinorVersion SETS ""
Module_Date SETS "13 Dec 1999"
Module_FullVersion SETS "0.08"
END
/* (0.07)
/* (0.08)
*
* This file is automatically maintained by srccommit, do not edit manually.
*
*/
#define Module_MajorVersion_CMHG 0.07
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 17 Aug 1999
#define Module_MajorVersion_CMHG 0.08
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 13 Dec 1999
#define Module_MajorVersion "0.07"
#define Module_Version 7
#define Module_MinorVersion ""
#define Module_Date "17 Aug 1999"
#define Module_MajorVersion "0.08"
#define Module_Version 8
#define Module_MinorVersion ""
#define Module_Date "13 Dec 1999"
#define Module_FullVersion "0.07"
#define Module_FullVersion "0.08"
......@@ -130,9 +130,13 @@ Module_BaseAddr
DCD RTC_HelpStr -Module_BaseAddr
DCD RTC_HC_Table-Module_BaseAddr
DCD 0 ; RTCSWI * Module_SWIChunkSize
[ :LNOT: No32bitCode
DCD 0 ; RTC_SWIHandler-Module_BaseAddr
DCD 0 ; RTC_SWINameTable-Module_BaseAddr
DCD 0 ; Code to manually decode swi name (not needed)
DCD 0 ; International messages
DCD RTC_Flags -Module_BaseAddr
]
RTC_Title
= "RTCAdjust", 0
......@@ -201,6 +205,10 @@ UService
BL DoInit
Pull "R0-R6,PC"
[ :LNOT: No32bitCode
RTC_Flags DCD 1 ; 32-bit compatible
]
; **************************************************************************
;
; RTC_Die - Die entry
......@@ -208,9 +216,7 @@ UService
RTC_Die ENTRY
LDR R12, [R12]
MOV R6, PC
ORR R0, R6, #I_bit
TEQP R0, #0 ; disable IRQs round this bit
PHPSEI R5, R0 ; disable IRQs round this bit
LDR R0, CallBackPending
TEQ R0, #0
......@@ -225,7 +231,7 @@ RTC_Die ENTRY
MOV R1, R12
SWI XOS_RemoveTickerEvent
TEQP R6, #0 ; restore IRQ status - it's safe!
PLP R5 ; restore IRQ status - it's safe!
BL GetOffWordV
......@@ -236,6 +242,7 @@ RTC_Die ENTRY
EXIT
10
PLP R5
ADR R0, NotNowImBusy
BL CopyError
EXIT
......@@ -305,7 +312,7 @@ InitVars ENTRY
; out: PSR preserved
;
GetOffWordV ENTRY
GetOffWordV EntryS
MOV R0, #WordV
ADR R1, MyWordV
MOV R2, R12
......@@ -330,17 +337,17 @@ MyWordV ROUT
;
MyCallEvery ENTRY "R0,R1,R8,R9"
MOV R9, PC ; save old processor mode
ORR R8, R9, #SVC_mode ; make SVC mode
TEQP R8, #0
MOVNV R0, R0
SavePSR R9
ORR R8, R9, #SVC_mode ; IRQ->SVC (32-bit mode independent)
RestPSR R8,,c ; change mode
NOP
Push R14
ADR R0, Recalibrate
MOV R1, R12
SWI XOS_AddCallBack
Pull R14
TEQP R9, #0 ; restore old processor mode
MOVNV R0, R0
RestPSR R9,,c ; restore old processor mode
NOP
LDR R0, CallBackPending
ADD R0, R0, #1 ; indicate another pending CallBack
......
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