44 export |time_of_last_poll|
45 time_of_last_poll
: dcd
0
55 stmfd sp
!,{ar4-ar10
,lk
}
56 orr ar10
,ar0
,#1<<17 ;always use the X form
62 swi
0x6f ; OS_CallASWI
65 ldmvcfd sp
!,{ar4-ar10
,pc
}^
66 ; report the error
and quit on Cancel
69 swi
0x400df ; Wimp_ReportError
70 cmp r1,#1 ;OK selected?
71 ldmeqfd sp
!,{ar4-ar10
,pc
}^ ;yes
- try to continue
72 swi
0x11 ;no
- die
(OS_Exit
)
74 = "Nasty error - Cancel to quit"
83 stmfd sp
!,{ar4-ar10
,lk
}
84 orr ar10
,ar0
,#1<<17 ;always use the X form
90 swi
0x6f ; OS_CallASWI
95 ldmfd sp
!,{ar4-ar10
,pc
}^
100 ; The Wimp_Poll swis have to
be done specially because
,
101 ; for some reason
, r13 sometimes gets corrupted by Wimp_Poll
102 ;
(eg when running FileFind
)
105 import |time_of_last_poll|
111 swi
0x400c7 ; Wimp_Poll
115 swi
0x42 ; OS_ReadMonotonicTime
121 wfs ar2 ; Write floating point status. Needed?
125 export |wimp_pollidle|
130 swi
0x400e1 ; Wimp_PollIdle
134 swi
0x42 ; OS_ReadMonotonicTime
140 wfs ar2 ; Write floating point status. Needed?
143 addr_time
: dcd time_of_last_poll