summaryrefslogtreecommitdiff
path: root/include/ultra64
diff options
context:
space:
mode:
authorTharo <tharo10600@gmail.com>2026-08-02 15:27:33 +0100
committerGitHub <noreply@github.com>2026-08-02 16:27:33 +0200
commitda4a1f661cc87c8a31b65310f8940a5c5f0927d6 (patch)
tree3ec5f051015b043c943f47736c37aaf1476fc522 /include/ultra64
parent32b88f90a86a024dae0af0dc28a2c5e023fd193a (diff)
[rsp] Introduce microcode build process, disassemble and build both rspboot versions (#2764)HEADmain
* [rsp] Introduce microcode build process, disassemble and build both rspboot versions * Suggested changes * Check-in tool for generating armips.cpp from upstream sources, regen armips.cpp against a newer commit * License armips_gen.py, add notice that armips.cpp is automatically generated * Qualify comment with X105 * Clarify the assumed purpose of rspboot releasing SP_SEMAPHORE
Diffstat (limited to 'include/ultra64')
-rw-r--r--include/ultra64/sptask.h10
-rw-r--r--include/ultra64/sptaskoff.h23
2 files changed, 33 insertions, 0 deletions
diff --git a/include/ultra64/sptask.h b/include/ultra64/sptask.h
index 5218c64ca..56e3a306a 100644
--- a/include/ultra64/sptask.h
+++ b/include/ultra64/sptask.h
@@ -28,6 +28,14 @@
#define OS_YIELD_DATA_SIZE 0xC00
+#ifdef _LANGUAGE_ASSEMBLY
+#include "sptaskoff.h"
+#endif
+
+#ifdef _LANGUAGE_C
+
+#include "ultratypes.h"
+
typedef struct OSTask_t {
/* 0x00 */ u32 type;
/* 0x04 */ u32 flags;
@@ -66,3 +74,5 @@ typedef u32 OSYieldResult;
osSpTaskStartGo(p);
#endif
+
+#endif
diff --git a/include/ultra64/sptaskoff.h b/include/ultra64/sptaskoff.h
new file mode 100644
index 000000000..172b720fa
--- /dev/null
+++ b/include/ultra64/sptaskoff.h
@@ -0,0 +1,23 @@
+#ifndef ULTRA64_SPTASKOFF_H
+#define ULTRA64_SPTASKOFF_H
+
+#define OS_TASK_SIZE 0x40 /* sizeof(OSTask) */
+
+#define OS_TASK_OFF_TYPE 0x00
+#define OS_TASK_OFF_FLAGS 0x04
+#define OS_TASK_OFF_UBOOT 0x08
+#define OS_TASK_OFF_UBOOT_SZ 0x0C
+#define OS_TASK_OFF_UCODE 0x10
+#define OS_TASK_OFF_UCODE_SZ 0x14
+#define OS_TASK_OFF_UDATA 0x18
+#define OS_TASK_OFF_UDATA_SZ 0x1C
+#define OS_TASK_OFF_STACK 0x20
+#define OS_TASK_OFF_STACK_SZ 0x24
+#define OS_TASK_OFF_OUTBUFF 0x28
+#define OS_TASK_OFF_OUTBUFF_SZ 0x2C
+#define OS_TASK_OFF_DATA 0x30
+#define OS_TASK_OFF_DATA_SZ 0x34
+#define OS_TASK_OFF_YIELD 0x38
+#define OS_TASK_OFF_YIELD_SZ 0x3C
+
+#endif