summaryrefslogtreecommitdiff
path: root/ui/daemon/ui.c
diff options
context:
space:
mode:
authorPaul Oliver <contact@pauloliver.dev>2026-07-14 17:29:02 +0200
committerPaul Oliver <contact@pauloliver.dev>2026-07-30 04:47:22 +0200
commitf2c34b1d2c18270a0327fb4896fa307fae098770 (patch)
treeaf3b7fb569d6b0a702a5a6e3b3bf8773513d21f1 /ui/daemon/ui.c
Initial
Diffstat (limited to 'ui/daemon/ui.c')
-rw-r--r--ui/daemon/ui.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/ui/daemon/ui.c b/ui/daemon/ui.c
new file mode 100644
index 0000000..4fea1ef
--- /dev/null
+++ b/ui/daemon/ui.c
@@ -0,0 +1,39 @@
+// file : ui/daemon/ui.c
+// project : Salis-VM
+// author : Paul Oliver <contact@pauloliver.dev>
+
+#include <signal.h>
+#include <stdbool.h>
+#include <stdint.h>
+#include <threads.h>
+#include <zlib.h>
+
+#include "arch_spec.h"
+#include "compress.h"
+#include "logger.h"
+#include "salis.h"
+
+static void quit(int signo) {
+ log_attention("Signal %d received, will stop simulator soon", signo);
+ salis_signal_stop();
+}
+
+int main(void) {
+ log_info("Initializing daemon UI");
+ log_info("Installing signal handlers");
+ signal(SIGINT, quit);
+ signal(SIGTERM, quit);
+
+#if defined(COMMAND_NEW)
+ salis_init();
+#endif
+
+#if defined(COMMAND_LOAD)
+ salis_load();
+#endif
+
+ salis_start();
+ salis_join();
+ salis_free();
+ return 0;
+}