commit 50eb9fe
Devine Lu Linvega
·
2024-11-11 18:43:50 +0000 UTC
parent e055fd0
Cleaning up uxncli
1 files changed,
+10,
-19
+10,
-19
1@@ -8,7 +8,7 @@
2 #include "devices/datetime.h"
3
4 /*
5-Copyright (c) 2021-2023 Devine Lu Linvega, Andrew Alderwick
6+Copyright (c) 2021-2024 Devine Lu Linvega, Andrew Alderwick
7
8 Permission to use, copy, modify, and distribute this software for any
9 purpose with or without fee is hereby granted, provided that the above
10@@ -19,6 +19,7 @@ WITH REGARD TO THIS SOFTWARE.
11 */
12
13 Uxn uxn;
14+Uint8 ram[0x10000 * RAM_PAGES];
15
16 Uint8
17 emu_dei(Uint8 addr)
18@@ -56,28 +57,18 @@ emu_run(void)
19 }
20 }
21
22-static int
23-emu_end(void)
24-{
25- free(uxn.ram);
26- return uxn.dev[0x0f] & 0x7f;
27-}
28-
29 int
30 main(int argc, char **argv)
31 {
32 int i = 1;
33- char *rom;
34- if(i != argc && argv[i][0] == '-' && argv[i][1] == 'v') {
35+ if(i != argc && argv[i][0] == '-' && argv[i][1] == 'v')
36 fprintf(stdout, "Uxn11(cli) - Varvara Emulator, 11 Nov 2024.\n");
37- exit(0);
38- }
39- rom = i == argc ? "boot.rom" : argv[i++];
40- if(!system_boot((Uint8 *)calloc(0x10000 * RAM_PAGES, sizeof(Uint8)), rom))
41+ else if(argc == i || !system_boot(ram, argv[i++]))
42 return !fprintf(stdout, "usage: %s [-v] file.rom [args..]\n", argv[0]);
43- /* Event Loop */
44- uxn.dev[0x17] = argc - i;
45- if(uxn_eval(PAGE_PROGRAM) && PEEK2(uxn.dev + 0x10))
46- console_listen(i, argc, argv), emu_run();
47- return emu_end();
48+ else {
49+ uxn.dev[0x17] = argc - i;
50+ if(uxn_eval(PAGE_PROGRAM) && PEEK2(uxn.dev + 0x10))
51+ console_listen(i, argc, argv), emu_run();
52+ }
53+ return uxn.dev[0x0f] & 0x7f;
54 }