diff options
author | Paul Oliver <contact@pauloliver.dev> | 2024-02-29 01:50:44 +0100 |
---|---|---|
committer | Paul Oliver <contact@pauloliver.dev> | 2024-02-29 01:50:44 +0100 |
commit | 2dc9d118efb64de6ea54a5a9eb4474f8e5ef3145 (patch) | |
tree | 74039957b10390da4875d676303a781bd0792e45 /include/memory.h |
Initial commit
Diffstat (limited to 'include/memory.h')
-rw-r--r-- | include/memory.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/include/memory.h b/include/memory.h new file mode 100644 index 0000000..a36a2ff --- /dev/null +++ b/include/memory.h @@ -0,0 +1,30 @@ +#ifndef SALIS_MEMORY_H
+#define SALIS_MEMORY_H
+
+void sm_init (sword order);
+void sm_quit (void);
+void sm_load (FILE *file);
+void sm_save (FILE *file);
+
+sbool sm_isInit (void);
+sword sm_getOrder (void);
+sword sm_getSize (void);
+sword sm_getMemBlockCount (void);
+sword sm_getAllocated (void);
+sword sm_getCap (void);
+
+sbool sm_isOverCap (void);
+sbool sm_isValidAt (sword addr);
+sbool sm_isMemBlockStartAt (sword addr);
+sbool sm_isAllocatedAt (sword addr);
+
+void sm_setMemBlockStartAt (sword addr);
+void sm_unsetMemBlockStartAt (sword addr);
+void sm_allocateAt (sword addr);
+void sm_freeAt (sword addr);
+sbyte sm_getInstAt (sword addr);
+void sm_setInstAt (sword addr, sbyte inst);
+sbyte sm_getByteAt (sword addr);
+void sm_setByteAt (sword addr, sbyte byte);
+
+#endif
|