* A user-defined FAT value of 0 will cause it to calculate
* The second buffer shouldn't be part of the GetLegth returned value
* Rounded the GetLength values up and aligned to 4 bytes (sample size)
* Implemented ai_busy and changed the behavior of ai_full
* Changed the second buffer behavior
It seems that zilmar would rather use the sizeof() operator repeatedly than to declare a new constant or use macros to show array sizes. Since I have already centralized the usage of all sizeof() operators to the new high-level function I declared, I think that there is no longer use for the `STRING_SIZE` constant which Lioncash contributed.
In RSP interpreter, it is DisplayError and I feel like it's an important
message, so it should be DisplayError in RSP recompiler as well, in my
opinion.
the & 0xFFC was missing, which caused it to return true when it should
have returned false. This means that LLE audio should be more optimized
now.
I also made it do delay slot, incase the delay slot instruction writes
to accumulator. Minor optimization here.
As for JAL, I made it do break instead of return FALSE because in Battle
For Naboo, it actually does come back and continue an existing
calculation. I think it is only an issue if you do a separate analysis
for the Low Accumulator and Mid/High Accumulators. It's still better to
be safe, just incase I or someone else actually implement a separate
analysis for the Accumulators later down the road.
Due to the newer spec design in PJ64 2.x, CloseDLL() doesn't get called
as often. So there are instances where it calls AllocateMemory()
multiple times without ever calling FreeMemory().
sizeof(wchar_t) is a size of 2 (or 4 if in a Linux environment). With the previous code, it would be trying to insert the null terminator at index 511 on Windows, which is incorrect.
Interpolated Platform and Configuration values to avoid case-by-case
condition validation.
(This could allow for future configurations and platforms without
additional modifications to VCXPROJ files).
I previously made a commit to fix a reordering issue, but did not
realize it needed that COPO_MF_Instruction flag for branching. This
should fix the Ogre Battle issue.
This fixes the losing audio after loading a save state issue with
certain plugins in certain games. I was hesitant to submit this, since
the fault is the audio plugin itself, but this also fixes bad save
states. This will not fix games like Top Gear Rally.
Any plugin that initially had this problem, can still lose audio at any
given time, due to flaws in the audio plugin itself. It is best to
simply use a plugin that doesn't have this issue to begin with, for such
games.