aboutsummaryrefslogtreecommitdiff
path: root/src/cpu/irq.c
diff options
context:
space:
mode:
authorChristian Cunningham <cc@localhost>2022-02-01 19:39:36 -0700
committerChristian Cunningham <cc@localhost>2022-02-01 19:39:36 -0700
commit98793badc1c1d3e4bfd735fdecd3d2d731701ab3 (patch)
tree3406220e55b0e7cce3895817796f75bf754da6d9 /src/cpu/irq.c
parent33e35caf1104cdf5b8e1470112677f78b5e8dc59 (diff)
Syscall to get timer value
Diffstat (limited to 'src/cpu/irq.c')
-rw-r--r--src/cpu/irq.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/cpu/irq.c b/src/cpu/irq.c
index 24a809c..612b6d8 100644
--- a/src/cpu/irq.c
+++ b/src/cpu/irq.c
@@ -11,6 +11,7 @@
#include <util/status.h>
#include <util/time.h>
+void utime(void);
void testfxn(void);
void handle_data(unsigned char);
@@ -109,6 +110,8 @@ void handle_data(unsigned char data)
add_thread(uart_scheduler, 0, 2);
} else if (data == 0x63) {
add_thread(heap_info, 0, 2);
+ } else if (data == 0x64) {
+ add_thread(utime, 0, 2);
} else {
}
g_Drawer.x = 0;
@@ -120,6 +123,16 @@ void handle_data(unsigned char data)
write_string(&g_Drawer, "> ");
}
+void utime(void)
+{
+ unsigned long thi, tlo;
+ unsigned long long t = get_sys_time();
+ thi = t >> 32;
+ tlo = t;
+ uart_hex(thi);
+ uart_hexn(tlo);
+}
+
void testfxn2(void)
{
uart_string("Ran testfxn2\n");