System time: Difference between revisions

error correction arm assembly
(Add task to ARM assembly Raspberry pi)
(error correction arm assembly)
Line 318:
ldr r0,iAdrstTVal
ldr r1,[r0,#timeval_sec] @ timestemp in second
//ldr r1,iTStest1
//ldr r1,iTStest2
//ldr r1,iTStest3
ldr r2,iSecJan2020
sub r0,r1,r2 @ total secondes to 01/01/2020
Line 333 ⟶ 336:
mov r0,r2
mov r11,r0
mov r1,#(365 * 4 + 1)/4
bl division
lsl r9,r2,#2 @ multiply by 4 = year1
mulmov r10,r9,r1,#(365 * 4 + 1)
submov r10r0,r11,r10
bl division
mov r10,r3
ldr r1,iAdrtbDayMonthYear
mov r2,#3
Line 352 ⟶ 357:
mov r5,#11
mul r4,r3,r2
lsl r4,#2
add r4,r1
3:
Line 360 ⟶ 366:
bne 3b
4: @ r5 = month - 1
submul r0r11,r10r3,r12r2
add r11,r5
ldr r1,iAdrtbDayMonthYear
ldr r3,[r1,r11,lsl #2]
sub r0,r10,r3
 
add r0,r0,#1 @ final compute day
ldr r1,iAdrsZoneConv
Line 445 ⟶ 456:
iAdrtbDayMonthYear: .int tbDayMonthYear
iYearStart: .int 2020
iTStest1: .int 1609508339 @ 01/01/2021
iTStest2: .int 1657805939 @ 14/07/2022
iTStest3: .int 1767221999 @ 31/12/2025
/***************************************************/
/* ROUTINES INCLUDE */