;vector_handler_42
;------------------
;Reset number of centiseconds since power on PRM1-446

;R11 - pointer to VARS

.vector_handler_42
 LDR     R14, [R11, #MonotonicTime - VARS]	;load the time offset
 TEQ     R14, #0			;did we reset monotonic time?
 BEQ     vector_handler_forward		;NO, forward to OS

 BL      pre_SWI_veneer			;call SWI that follows
 SWI     XOS_ReadMonotonicTime
 BL      post_SWI_veneer
 LDR     R14, [R11, #MonotonicTime - VARS]	;load the time offset
 SUB     R0, R0, R14			;subtract from real time
B       exit_SWI_veneer
