mirror of
https://github.com/OpenDriver2/REDRIVER2.git
synced 2024-11-25 03:42:34 +01:00
c40d40bd22
- moved necessary data to new sources - running intro with TOMB5 HLE emulator
71 lines
2.0 KiB
Plaintext
71 lines
2.0 KiB
Plaintext
// WARNING: This file's extension ('.MIP') indicates that it may not have been a C or C++ file.
|
|
// It should contain Ghidra's best effort at decompiling the machine language to C,
|
|
// but TDR does not currently attempt to handle assembly language or other non-C/C++ code differently,
|
|
// so any decompiled code below may not reflect the original project source code for this file.
|
|
// If the source file is from a library, you should replace it with the original library version of the file.
|
|
// Otherwise, manual reconstruction of the code may be required,
|
|
// Especially if the original source code was assembly language which used hardware features inaccessible to C.
|
|
#include "THISDUST.H"
|
|
#include "COMPRES.H"
|
|
|
|
|
|
// decompiled code
|
|
// original method signature:
|
|
// void decomp_asm() /* decomp_asm method signature is not contained in the debug symbol data. This is likely either a library function or the game was compiled without debug symbols. Please refer to the TDR documentation for additional guidance. */
|
|
// line 24, offset 0x0002d298
|
|
/* begin block 1 */
|
|
// Start line: 49
|
|
/* end block 1 */
|
|
// End Line: 50
|
|
|
|
/* begin block 2 */
|
|
// Start line: 50
|
|
/* end block 2 */
|
|
// End Line: 51
|
|
|
|
char * decomp_asm(char *param_1,char *param_2)
|
|
|
|
{
|
|
bool bVar1;
|
|
char cVar2;
|
|
char *pcVar3;
|
|
char *pcVar4;
|
|
uint uVar5;
|
|
|
|
pcVar4 = param_1 + 0x7fff;
|
|
do {
|
|
uVar5 = SEXT14(*param_2);
|
|
pcVar3 = param_2 + 1;
|
|
cVar2 = *pcVar3;
|
|
if ((uVar5 & 0x80) == 0) {
|
|
while( true ) {
|
|
pcVar3 = pcVar3 + 1;
|
|
*pcVar4 = cVar2;
|
|
pcVar4 = pcVar4 + -1;
|
|
bVar1 = uVar5 == 0;
|
|
uVar5 = uVar5 - 1;
|
|
if (bVar1) break;
|
|
cVar2 = *pcVar3;
|
|
}
|
|
}
|
|
else {
|
|
pcVar3 = param_2 + 2;
|
|
*pcVar4 = cVar2;
|
|
pcVar4 = pcVar4 + -1;
|
|
do {
|
|
*pcVar4 = cVar2;
|
|
pcVar4 = pcVar4 + -1;
|
|
bVar1 = uVar5 != 0;
|
|
uVar5 = uVar5 + 1;
|
|
} while (bVar1);
|
|
}
|
|
param_2 = pcVar3;
|
|
} while (param_1 <= pcVar4);
|
|
return pcVar3;
|
|
}
|
|
|
|
|
|
|
|
|
|
|