From 75ff89e8c7ff2befd77d512818d70aa032d73db6 Mon Sep 17 00:00:00 2001 From: Pokechu22 Date: Mon, 13 Jun 2022 23:07:14 -0700 Subject: [PATCH] UnitTests: Edit wait_for_dsp_mail in HermesText to match HermesBinary I don't know what happened here, unfortunately. The version of dsp_mixer.s added to libogc on Nov 14, 2008 in https://github.com/devkitPro/libogc/commit/c76d8b851fafc11b0a5debc0b40842929d5a5825 uses andcf and jlz here, and the version we have matches the one from Feb 5, 2009 in https://github.com/devkitPro/libogc/commit/ae5c3a5fb5aa4ccf1e1374b6e4f6be1aac118693 exactly (prior to the fixes in my previous commit). I can't see any reason why wait_for_dsp_mail would be changed like this. ANDCF and ANDF were previously swapped and JNE/JEQ/JZR/JNZ became JNZ/JZ/JLNZ/JLZ on Apr 3, 2009 in 7c4e6542533f7cef929ce86117b156c714820618, corresponding to a change Hermes made on Nov 10, 2008 in https://github.com/devkitPro/gamecube-tools/commit/2cea6d99ad518c963e24c3e28834473ff5312e69. But these predate the test being added. The only other information I can find is that ASNDLIB 1.0 released on November 11, 2008, at https://web.archive.org/web/20120326145022/http://www.entuwii.net/foro/viewtopic.php?f=6&t=87 (but there aren't any surviving links from there). --- Source/UnitTests/Core/DSP/HermesText.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/UnitTests/Core/DSP/HermesText.cpp b/Source/UnitTests/Core/DSP/HermesText.cpp index fd59677d35..f7f83a9737 100644 --- a/Source/UnitTests/Core/DSP/HermesText.cpp +++ b/Source/UnitTests/Core/DSP/HermesText.cpp @@ -967,8 +967,8 @@ wait_dma: wait_for_dsp_mail: lrs $ACM1, @DMBH - andf $ACM1, #0x8000 - jnz wait_for_dsp_mail + andcf $ACM1, #0x8000 + jlz wait_for_dsp_mail ret wait_for_cpu_mail: