summaryrefslogtreecommitdiff
path: root/libs/JSystem/src/JAudio2/JASTrackPort.cpp
diff options
context:
space:
mode:
authorLuke Street <luke@street.dev>2026-03-01 15:35:36 -0700
committerGitHub <noreply@github.com>2026-03-01 14:35:36 -0800
commit9649319ec4926457ef85e6094f8207474c977c2d (patch)
tree1c5cd4c7cc4c1aee03f28921213da47f2775444d /libs/JSystem/src/JAudio2/JASTrackPort.cpp
parent6e149819e13b1f70ecbf8a4c66b030c17ffed2bb (diff)
Reorganize library code into `libs/` (#3119)
* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN} * Update configure.py and project.py for new libs structure * Refactor `#include <dolphin/x.h>` -> `<x.h>` * Remove `__REVOLUTION_SDK__` forwards from dolphin * Fix dolphin/ references in revolution * Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__` * Always build TRK against dolphin headers * Resolve revolution SDK header resolution issues
Diffstat (limited to 'libs/JSystem/src/JAudio2/JASTrackPort.cpp')
-rw-r--r--libs/JSystem/src/JAudio2/JASTrackPort.cpp43
1 files changed, 43 insertions, 0 deletions
diff --git a/libs/JSystem/src/JAudio2/JASTrackPort.cpp b/libs/JSystem/src/JAudio2/JASTrackPort.cpp
new file mode 100644
index 0000000000..e822212ec9
--- /dev/null
+++ b/libs/JSystem/src/JAudio2/JASTrackPort.cpp
@@ -0,0 +1,43 @@
+#include "JSystem/JSystem.h" // IWYU pragma: keep
+
+#include "JSystem/JAudio2/JASTrackPort.h"
+
+void JASTrackPort::init() {
+ for (int i = 0; i < 16; i++) {
+ field_0x4[i] = 0;
+ }
+ field_0x0 = 0;
+ field_0x2 = 0;
+}
+
+u16 JASTrackPort::readImport(u32 port_num) {
+ JUT_ASSERT(27, port_num < MAX_PORTS);
+ field_0x0 = field_0x0 & ~(1 << port_num);
+ return field_0x4[port_num];
+}
+
+u16 JASTrackPort::readExport(u32 port_num) {
+ JUT_ASSERT(34, port_num < MAX_PORTS);
+ field_0x2 = field_0x2 & ~(1 << port_num);
+ return field_0x4[port_num];
+}
+
+void JASTrackPort::writeImport(u32 port_num, u16 param_1) {
+ JUT_ASSERT(41, port_num < MAX_PORTS);
+ field_0x0 = field_0x0 | (1 << port_num);
+ field_0x4[port_num] = param_1;
+}
+
+void JASTrackPort::writeExport(u32 port_num, u16 param_1) {
+ JUT_ASSERT(47, port_num < MAX_PORTS);
+ field_0x2 = field_0x2 | (1 << port_num);
+ field_0x4[port_num] = param_1;
+}
+
+u32 JASTrackPort::checkImport(u32 param_0) const {
+ return field_0x0 & 1 << param_0 ? 1 : 0;
+}
+
+u32 JASTrackPort::checkExport(u32 param_0) const {
+ return field_0x2 & 1 << param_0 ? 1 : 0;
+}