aboutsummaryrefslogtreecommitdiffstats
path: root/src/uxn-core.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/uxn-core.c')
-rw-r--r--src/uxn-core.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/uxn-core.c b/src/uxn-core.c
new file mode 100644
index 0000000..8a2c971
--- /dev/null
+++ b/src/uxn-core.c
@@ -0,0 +1,36 @@
1extern void uxn_eval_asm(u16 pc);
2
3// Stacks (On IWRAM).
4extern u8 wst[256];
5extern u8 rst[256];
6extern uintptr_t wst_ptr;
7extern uintptr_t rst_ptr;
8
9// DEO/DEI mapping functiosn and device data (On IWRAM).
10extern uintptr_t deo_map[16];
11extern uintptr_t dei_map[16];
12extern u8 device_data[256];
13
14// DEBUG: ONLY
15// extern u8 device_0[16];
16// extern u8 device_1[16];
17// extern u8 device_2[16];
18// extern u8 device_3[16];
19// extern u8 device_4[16];
20// extern u8 device_5[16];
21// extern u8 device_6[16];
22// extern u8 device_7[16];
23// extern u8 device_8[16];
24// extern u8 device_a[16];
25// extern u8 device_b[16];
26// extern u8 device_c[16];
27// extern u8 device_d[16];
28// extern u8 device_e[16];
29// extern u8 device_f[16];
30
31EWRAM_BSS
32u8 uxn_ram[KB(64)];
33
34#define PAGE_PROGRAM 0x0100
35#define POKE2(d, v) do { (d)[0] = (v) >> 8; (d)[1] = (v); } while(0)
36#define PEEK2(d) ((d)[0] << 8 | (d)[1])