Add frank.py

This commit is contained in:
jdflyer
2023-01-02 19:44:52 -07:00
parent f070ee948f
commit 5b34700cb2
43 changed files with 253 additions and 735 deletions
+1
View File
@@ -77,6 +77,7 @@ PYTHON := python3
ICONV := iconv
DOXYGEN := doxygen
MAKEREL := tools/makerel.py
FRANK := tools/frank.py
IMAGENAME := gz2e01.iso
# Options
+1 -1
View File
@@ -15,7 +15,7 @@ void AIInitDMA(u32 addr, u32 length);
void AIStartDMA(void);
void AIStopDMA(void);
void AISetStreamPlayState(u32 state);
u32 AIGetStreamPlayState(void);
inline u32 AIGetStreamPlayState(void);
void AISetDSPSampleRate(u32 rate);
u32 AIGetDSPSampleRate(void);
void __AI_set_stream_sample_rate(u32 rate);
+2
View File
@@ -36,3 +36,5 @@ $(BUILD_DIR)/libs/dolphin/ai/%.o: libs/dolphin/ai/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(LIBAI_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@
+1 -61
View File
@@ -32,8 +32,6 @@ asm AIDCallback AIRegisterDMACallback(AIDCallback callback) {
#pragma pop
/* 8034FCB4-8034FD3C 34A5F4 0088+00 0/0 2/2 0/0 .text AIInitDMA */
// need compiler epilogue patch
#ifdef NONMATCHING
void AIInitDMA(u32 addr, u32 length) {
s32 oldInts;
oldInts = OSDisableInterrupts();
@@ -42,16 +40,6 @@ void AIInitDMA(u32 addr, u32 length) {
__DSPRegs[27] = (u16)((__DSPRegs[27] & ~0x7FFF) | (u16)((length >> 5) & 0xFFFF));
OSRestoreInterrupts(oldInts);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void AIInitDMA(u32 addr, u32 length) {
nofralloc
#include "asm/dolphin/ai/ai/AIInitDMA.s"
}
#pragma pop
#endif
/* 8034FD3C-8034FD54 34A67C 0018+00 0/0 1/1 0/0 .text AIStartDMA */
void AIStartDMA(void) {
@@ -65,8 +53,6 @@ void AIStopDMA(void) {
}
/* 8034FD6C-8034FE44 34A6AC 00D8+00 1/1 1/1 0/0 .text AISetStreamPlayState */
// need compiler epilogue patch
#ifdef NONMATCHING
void AISetStreamPlayState(u32 state) {
s32 oldInts;
u8 volRight;
@@ -92,25 +78,13 @@ void AISetStreamPlayState(u32 state) {
__AIRegs[0] = (__AIRegs[0] & ~1) | state;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void AISetStreamPlayState(u32 state) {
nofralloc
#include "asm/dolphin/ai/ai/AISetStreamPlayState.s"
}
#pragma pop
#endif
/* 8034FE44-8034FE54 34A784 0010+00 1/1 0/0 0/0 .text AIGetStreamPlayState */
u32 AIGetStreamPlayState(void) {
inline u32 AIGetStreamPlayState(void) {
return __AIRegs[0] & 1;
}
/* 8034FE54-8034FF34 34A794 00E0+00 1/1 1/1 0/0 .text AISetDSPSampleRate */
// need compiler epilogue patch
#ifdef NONMATCHING
void AISetDSPSampleRate(u32 rate) {
u32 state;
s32 oldInts;
@@ -141,16 +115,6 @@ void AISetDSPSampleRate(u32 rate) {
AISetStreamVolRight(right);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void AISetDSPSampleRate(u32 rate) {
nofralloc
#include "asm/dolphin/ai/ai/AISetDSPSampleRate.s"
}
#pragma pop
#endif
/* 8034FF34-8034FF48 34A874 0014+00 1/1 0/0 1/1 .text AIGetDSPSampleRate */
u32 AIGetDSPSampleRate(void) {
@@ -158,8 +122,6 @@ u32 AIGetDSPSampleRate(void) {
}
/* 8034FF48-8035001C 34A888 00D4+00 1/1 0/1 0/0 .text __AI_set_stream_sample_rate */
// need compiler epilogue patch
#ifdef NONMATCHING
void __AI_set_stream_sample_rate(u32 rate) {
s32 oldInts;
s32 state;
@@ -188,16 +150,6 @@ void __AI_set_stream_sample_rate(u32 rate) {
AISetStreamVolLeft(left);
AISetStreamVolRight(right);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __AI_set_stream_sample_rate(u32 rate) {
nofralloc
#include "asm/dolphin/ai/ai/__AI_set_stream_sample_rate.s"
}
#pragma pop
#endif
/* 8035001C-8035002C 34A95C 0010+00 3/3 0/0 0/0 .text AIGetStreamSampleRate */
u32 AIGetStreamSampleRate(void) {
@@ -271,8 +223,6 @@ asm void AIInit(u8* stack) {
#pragma pop
/* 803501F0-8035026C 34AB30 007C+00 1/1 0/0 0/0 .text __AISHandler */
// need compiler epilogue patch
#ifdef NONMATCHING
void __AISHandler(s16 interrupt, OSContext* context) {
OSContext tmpContext;
__AIRegs[0] |= 8;
@@ -286,16 +236,6 @@ void __AISHandler(s16 interrupt, OSContext* context) {
OSClearContext(&tmpContext);
OSSetCurrentContext(context);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __AISHandler(s16 interrupt, OSContext* context) {
nofralloc
#include "asm/dolphin/ai/ai/__AISHandler.s"
}
#pragma pop
#endif
/* 8035026C-80350318 34ABAC 00AC+00 1/1 0/0 0/0 .text __AIDHandler */
void __AIDHandler(s16 interrupt, OSContext* context) {
+2
View File
@@ -38,4 +38,6 @@ $(BUILD_DIR)/libs/dolphin/ar/%.o: libs/dolphin/ar/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(LIBAR_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@
-12
View File
@@ -65,8 +65,6 @@ asm u32 ARGetDMAStatus(void) {
#endif
/* 803505D4-803506C4 34AF14 00F0+00 0/0 5/5 0/0 .text ARStartDMA */
// needs compiler epilogue patch
#ifdef NONMATCHING
void ARStartDMA(u32 type, u32 mainmem_addr, u32 aram_addr, u32 length) {
BOOL enabled;
@@ -81,16 +79,6 @@ void ARStartDMA(u32 type, u32 mainmem_addr, u32 aram_addr, u32 length) {
__DSPRegs[21] = (u16)(__DSPRegs[21] & ~0xffe0) | (u16)(length & 0xffff);
OSRestoreInterrupts(enabled);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void ARStartDMA(u32 type, u32 mainmem_addr, u32 aram_addr, u32 length) {
nofralloc
#include "asm/dolphin/ar/ar/ARStartDMA.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 804518BC-804518C0 000DBC 0004+00 2/1 0/0 0/0 .sbss __AR_Size */
+2
View File
@@ -28,4 +28,6 @@ $(BUILD_DIR)/libs/dolphin/base/%.o: libs/dolphin/base/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(CFLAGS) $(LIBBASE_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@
-132
View File
@@ -46,8 +46,6 @@ void __CARDSyncCallback(s32 chan, s32 result) {
}
/* 80352A68-80352B40 34D3A8 00D8+00 0/0 1/1 0/0 .text __CARDExtHandler */
// needs compiler epilogue patch
#ifdef NONMATCHING
void __CARDExtHandler(s32 chan, OSContext* context) {
CARDControl* card;
CARDCallback callback;
@@ -75,20 +73,8 @@ void __CARDExtHandler(s32 chan, OSContext* context) {
}
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __CARDExtHandler(s32 chan, OSContext* context) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDExtHandler.s"
}
#pragma pop
#endif
/* 80352B40-80352C58 34D480 0118+00 0/0 1/1 0/0 .text __CARDExiHandler */
// needs compiler epilogue patch
#ifdef NONMATCHING
void __CARDExiHandler(s32 chan, OSContext* context) {
CARDControl* card;
CARDCallback callback;
@@ -132,16 +118,6 @@ fatal:
callback(chan, result);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __CARDExiHandler(s32 chan, OSContext* context) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDExiHandler.s"
}
#pragma pop
#endif
/* 80352C58-80352D00 34D598 00A8+00 3/3 0/0 0/0 .text __CARDTxHandler */
void __CARDTxHandler(s32 chan, OSContext* context) {
@@ -161,8 +137,6 @@ void __CARDTxHandler(s32 chan, OSContext* context) {
}
/* 80352D00-80352D84 34D640 0084+00 2/2 2/2 0/0 .text __CARDUnlockedHandler */
// needs compiler epilogue patch
#ifdef NONMATCHING
void __CARDUnlockedHandler(s32 chan, OSContext* context) {
CARDControl* card;
CARDCallback callback;
@@ -174,20 +148,8 @@ void __CARDUnlockedHandler(s32 chan, OSContext* context) {
callback(chan, EXIProbe(chan) ? CARD_RESULT_UNLOCKED : CARD_RESULT_NOCARD);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __CARDUnlockedHandler(s32 chan, OSContext* context) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDUnlockedHandler.s"
}
#pragma pop
#endif
/* 80352D84-80352E44 34D6C4 00C0+00 0/0 1/1 0/0 .text __CARDEnableInterrupt */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDEnableInterrupt(s32 chan, BOOL enable) {
BOOL err;
u32 cmd;
@@ -203,20 +165,8 @@ s32 __CARDEnableInterrupt(s32 chan, BOOL enable) {
err |= !EXIDeselect(chan);
return err ? CARD_RESULT_NOCARD : CARD_RESULT_READY;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDEnableInterrupt(s32 chan, BOOL enable) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDEnableInterrupt.s"
}
#pragma pop
#endif
/* 80352E44-80352F34 34D784 00F0+00 1/1 2/2 0/0 .text __CARDReadStatus */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDReadStatus(s32 chan, u8* status) {
BOOL err;
u32 cmd;
@@ -234,16 +184,6 @@ s32 __CARDReadStatus(s32 chan, u8* status) {
err |= !EXIDeselect(chan);
return err ? CARD_RESULT_NOCARD : CARD_RESULT_READY;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDReadStatus(s32 chan, u8* status) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDReadStatus.s"
}
#pragma pop
#endif
/* 80352F34-80353024 34D874 00F0+00 0/0 1/1 0/0 .text __CARDReadVendorID */
#pragma push
@@ -256,8 +196,6 @@ asm void __CARDReadVendorID() {
#pragma pop
/* 80353024-803530D0 34D964 00AC+00 1/1 1/1 0/0 .text __CARDClearStatus */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDClearStatus(s32 chan) {
BOOL err;
u32 cmd;
@@ -274,20 +212,8 @@ s32 __CARDClearStatus(s32 chan) {
return err ? CARD_RESULT_NOCARD : CARD_RESULT_READY;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDClearStatus(s32 chan) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDClearStatus.s"
}
#pragma pop
#endif
/* 803530D0-80353174 34DA10 00A4+00 2/2 0/0 0/0 .text TimeoutHandler */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void TimeoutHandler(OSAlarm* alarm, OSContext* context) {
s32 chan;
CARDControl* card;
@@ -310,16 +236,6 @@ static void TimeoutHandler(OSAlarm* alarm, OSContext* context) {
callback(chan, CARD_RESULT_IOERROR);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void TimeoutHandler(OSAlarm* alarm, OSContext* context) {
nofralloc
#include "asm/dolphin/card/CARDBios/TimeoutHandler.s"
}
#pragma pop
#endif
/* 80353174-80353414 34DAB4 02A0+00 2/2 0/0 0/0 .text Retry */
#pragma push
@@ -332,8 +248,6 @@ static asm s32 Retry(s32 chan) {
#pragma pop
/* 80353414-80353524 34DD54 0110+00 1/1 0/0 0/0 .text UnlockedCallback */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void UnlockedCallback(s32 chan, s32 result) {
CARDCallback callback;
CARDControl* card;
@@ -371,16 +285,6 @@ static void UnlockedCallback(s32 chan, s32 result) {
}
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void UnlockedCallback(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDBios/UnlockedCallback.s"
}
#pragma pop
#endif
/* 80353524-80353748 34DE64 0224+00 3/3 0/0 0/0 .text __CARDStart */
#pragma push
@@ -399,8 +303,6 @@ asm s32 __CARDStart(s32 chan, CARDCallback txCallback, CARDCallback exiCallback)
#define BA(x) ((u8)((x)&0x7f))
/* 80353748-8035387C 34E088 0134+00 0/0 2/2 0/0 .text __CARDReadSegment */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDReadSegment(s32 chan, CARDCallback callback) {
CARDControl* card;
s32 result;
@@ -433,16 +335,6 @@ s32 __CARDReadSegment(s32 chan, CARDCallback callback) {
}
return result;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDReadSegment(s32 chan, CARDCallback callback) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDReadSegment.s"
}
#pragma pop
#endif
/* 8035387C-803539B8 34E1BC 013C+00 0/0 2/2 0/0 .text __CARDWritePage */
// needs compiler epilogue patch
@@ -522,8 +414,6 @@ static u16 __CARDEncode;
static u16 __CARDFastMode;
/* 80353AC8-80353B74 34E408 00AC+00 0/0 1/1 0/0 .text CARDInit */
// needs compiler epilogue patch
#ifdef NONMATCHING
void CARDInit(void) {
int chan;
@@ -549,16 +439,6 @@ void CARDInit(void) {
OSRegisterResetFunction(&ResetFunctionInfo);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void CARDInit(void) {
nofralloc
#include "asm/dolphin/card/CARDBios/CARDInit.s"
}
#pragma pop
#endif
/* 80353B74-80353B7C 34E4B4 0008+00 0/0 2/2 0/0 .text __CARDGetFontEncode */
u16 __CARDGetFontEncode(void) {
@@ -572,8 +452,6 @@ void __CARDSetDiskID(const DVDDiskID* id) {
}
/* 80353BB4-80353C6C 34E4F4 00B8+00 1/1 10/10 0/0 .text __CARDGetControlBlock */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDGetControlBlock(s32 chan, CARDControl** pcard) {
BOOL enabled;
s32 result;
@@ -598,16 +476,6 @@ s32 __CARDGetControlBlock(s32 chan, CARDControl** pcard) {
OSRestoreInterrupts(enabled);
return result;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDGetControlBlock(s32 chan, CARDControl** pcard) {
nofralloc
#include "asm/dolphin/card/CARDBios/__CARDGetControlBlock.s"
}
#pragma pop
#endif
/* 80353C6C-80353CD0 34E5AC 0064+00 0/0 24/24 0/0 .text __CARDPutControlBlock */
#pragma push
-12
View File
@@ -29,8 +29,6 @@ u16* __CARDGetFatBlock(CARDControl* card) {
}
/* 8035541C-803554F0 34FD5C 00D4+00 1/1 0/0 0/0 .text WriteCallback */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void WriteCallback(s32 chan, s32 result) {
CARDControl* card;
CARDCallback callback;
@@ -62,16 +60,6 @@ static void WriteCallback(s32 chan, s32 result) {
callback(chan, result);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void WriteCallback(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDBlock/WriteCallback.s"
}
#pragma pop
#endif
/* 803554F0-803555B8 34FE30 00C8+00 1/1 0/0 0/0 .text EraseCallback */
#pragma push
-12
View File
@@ -83,8 +83,6 @@ static asm s32 VerifyFAT(CARDControl* card, int* outCurrent) {
#pragma pop
/* 803562D8-80356364 350C18 008C+00 0/0 1/1 0/0 .text __CARDVerify */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDVerify(CARDControl* card) {
s32 result;
int errors;
@@ -105,16 +103,6 @@ s32 __CARDVerify(CARDControl* card) {
return CARD_RESULT_BROKEN;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDVerify(CARDControl* card) {
nofralloc
#include "asm/dolphin/card/CARDCheck/__CARDVerify.s"
}
#pragma pop
#endif
/* 80356364-803568F4 350CA4 0590+00 1/1 0/0 0/0 .text CARDCheckExAsync */
#ifdef NONMATCHING
-12
View File
@@ -25,8 +25,6 @@ CARDDir* __CARDGetDirBlock(CARDControl* card) {
}
/* 80355784-80355854 3500C4 00D0+00 1/1 0/0 0/0 .text WriteCallback */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void WriteCallback(s32 chan, s32 result) {
CARDControl* card;
CARDCallback callback;
@@ -55,16 +53,6 @@ error:
callback(chan, result);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void WriteCallback(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDDir/WriteCallback.s"
}
#pragma pop
#endif
/* 80355854-8035591C 350194 00C8+00 1/1 0/0 0/0 .text EraseCallback */
// needs compiler epilogue patch
-12
View File
@@ -29,8 +29,6 @@ void __shr2i();
//
/* 80357484-803575C8 351DC4 0144+00 1/1 0/0 0/0 .text FormatCallback */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void FormatCallback(s32 chan, s32 result) {
CARDControl* card;
CARDCallback callback;
@@ -68,16 +66,6 @@ error:
__CARDPutControlBlock(card, result);
callback(chan, result);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void FormatCallback(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDFormat/FormatCallback.s"
}
#pragma pop
#endif
/* 803575C8-80357C20 351F08 0658+00 1/1 0/0 0/0 .text __CARDFormatRegionAsync */
#pragma push
-24
View File
@@ -156,8 +156,6 @@ static asm s32 DoMount(s32 chan) {
#pragma pop
/* 8035701C-80357154 35195C 0138+00 2/2 1/1 0/0 .text __CARDMountCallback */
// needs compiler epilogue patch
#ifdef NONMATCHING
void __CARDMountCallback(s32 chan, s32 result) {
CARDControl* card;
CARDCallback callback;
@@ -198,16 +196,6 @@ void __CARDMountCallback(s32 chan, s32 result) {
__CARDPutControlBlock(card, result);
callback(chan, result);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __CARDMountCallback(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDMount/__CARDMountCallback.s"
}
#pragma pop
#endif
/* 80357154-803572F4 351A94 01A0+00 1/1 0/0 0/0 .text CARDMountAsync */
s32 CARDMountAsync(s32 chan, void* workArea, CARDCallback detachCallback,
@@ -278,8 +266,6 @@ s32 CARDMount(s32 chan, void* workArea, CARDCallback attachCb) {
}
/* 8035733C-803573D8 351C7C 009C+00 2/2 0/0 0/0 .text DoUnmount */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void DoUnmount(s32 chan, s32 result) {
CARDControl* card;
BOOL enabled;
@@ -296,16 +282,6 @@ static void DoUnmount(s32 chan, s32 result) {
}
OSRestoreInterrupts(enabled);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void DoUnmount(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDMount/DoUnmount.s"
}
#pragma pop
#endif
/* 803573D8-80357484 351D18 00AC+00 0/0 2/2 0/0 .text CARDUnmount */
#pragma push
-12
View File
@@ -23,8 +23,6 @@ static void BlockWriteCallback(s32 chan, s32 result);
//
/* 80355184-80355260 34FAC4 00DC+00 1/1 0/0 0/0 .text BlockReadCallback */
// needs compiler epilogue patch
#ifdef NONMATCHING
static void BlockReadCallback(s32 chan, s32 result) {
CARDControl* card;
CARDCallback callback;
@@ -58,16 +56,6 @@ error:
callback(chan, result);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void BlockReadCallback(s32 chan, s32 result) {
nofralloc
#include "asm/dolphin/card/CARDRdwr/BlockReadCallback.s"
}
#pragma pop
#endif
/* 80355260-803552C4 34FBA0 0064+00 0/0 3/3 0/0 .text __CARDRead */
s32 __CARDRead(s32 chan, u32 addr, s32 length, void* dst, CARDCallback callback) {
-12
View File
@@ -22,8 +22,6 @@ static void ReadCallback(s32 chan, s32 result);
//
/* 803584A0-80358658 352DE0 01B8+00 1/1 1/1 0/0 .text __CARDSeek */
// needs compiler epilogue patch
#ifdef NONMATCHING
s32 __CARDSeek(CARDFileInfo* fileInfo, s32 length, s32 offset, CARDControl** pcard) {
CARDControl* card;
CARDDir* dir;
@@ -71,16 +69,6 @@ s32 __CARDSeek(CARDFileInfo* fileInfo, s32 length, s32 offset, CARDControl** pca
*pcard = card;
return CARD_RESULT_READY;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm s32 __CARDSeek(CARDFileInfo* fileInfo, s32 length, s32 offset, CARDControl** pcard) {
nofralloc
#include "asm/dolphin/card/CARDRead/__CARDSeek.s"
}
#pragma pop
#endif
/* 80358658-80358788 352F98 0130+00 1/1 0/0 0/0 .text ReadCallback */
static void ReadCallback(s32 chan, s32 result) {
+2
View File
@@ -62,4 +62,6 @@ $(BUILD_DIR)/libs/dolphin/card/%.o: libs/dolphin/card/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(LIBCARD_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@
+2
View File
@@ -36,4 +36,6 @@ $(BUILD_DIR)/libs/dolphin/db/%.o: libs/dolphin/db/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(LIBDB_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@
+2
View File
@@ -40,4 +40,6 @@ $(BUILD_DIR)/libs/dolphin/dsp/%.o: libs/dolphin/dsp/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(LIBDSP_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@
-58
View File
@@ -34,8 +34,6 @@ void __DSP_remove_task();
//
/* 803525D0-80352770 34CF10 01A0+00 0/0 1/1 0/0 .text __DSP_exec_task */
// needs compiler epilogue patch
#ifdef NONMATCHING
void __DSP_exec_task(DSPTaskInfo* curr, DSPTaskInfo* next) {
if (curr) {
DSPSendMailToDSP((u32)(curr->dram_mmem_addr));
@@ -99,56 +97,10 @@ void __DSP_exec_task(DSPTaskInfo* curr, DSPTaskInfo* next) {
;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __DSP_exec_task(DSPTaskInfo* curr, DSPTaskInfo* next) {
nofralloc
#include "asm/dolphin/dsp/dsp_task/__DSP_exec_task.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 803D1CF8-803D1D18 02EE18 001D+03 1/1 0/0 0/0 .data @266 */
SECTION_DATA static char lit_266[] = "DSP is booting task: 0x%08X\n";
/* 803D1D18-803D1D48 02EE38 002D+03 0/1 0/0 0/0 .data @267 */
#pragma push
#pragma force_active on
SECTION_DATA static char lit_267[] = "__DSP_boot_task() : IRAM MMEM ADDR: 0x%08X\n";
#pragma pop
/* 803D1D48-803D1D78 02EE68 002D+03 0/1 0/0 0/0 .data @268 */
#pragma push
#pragma force_active on
SECTION_DATA static char lit_268[] = "__DSP_boot_task() : IRAM DSP ADDR : 0x%08X\n";
#pragma pop
/* 803D1D78-803D1DA8 02EE98 002D+03 0/1 0/0 0/0 .data @269 */
#pragma push
#pragma force_active on
SECTION_DATA static char lit_269[] = "__DSP_boot_task() : IRAM LENGTH : 0x%08X\n";
#pragma pop
/* 803D1DA8-803D1DD8 02EEC8 002D+03 0/1 0/0 0/0 .data @270 */
#pragma push
#pragma force_active on
SECTION_DATA static char lit_270[] = "__DSP_boot_task() : DRAM MMEM ADDR: 0x%08X\n";
#pragma pop
/* 803D1DD8-803D1E08 02EEF8 002D+03 0/1 0/0 0/0 .data @271 */
#pragma push
#pragma force_active on
SECTION_DATA static char lit_271[] = "__DSP_boot_task() : Start Vector : 0x%08X\n";
#pragma pop
#define MSG_BASE 0x80F30000
/* 80352770-803528FC 34D0B0 018C+00 0/0 1/1 0/0 .text __DSP_boot_task */
// needs compiler epilogue patch
#ifdef NONMATCHING
void __DSP_boot_task(DSPTaskInfo* task) {
volatile u32 mail;
@@ -201,16 +153,6 @@ void __DSP_boot_task(DSPTaskInfo* task) {
__DSP_debug_printf("__DSP_boot_task() : Start Vector : 0x%08X\n",
(u32)(task->dsp_init_vector));
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __DSP_boot_task(DSPTaskInfo* task) {
nofralloc
#include "asm/dolphin/dsp/dsp_task/__DSP_boot_task.s"
}
#pragma pop
#endif
/* 803528FC-8035299C 34D23C 00A0+00 0/0 1/1 0/0 .text __DSP_insert_task */
void __DSP_insert_task(DSPTaskInfo* task) {
+2
View File
@@ -50,4 +50,6 @@ $(BUILD_DIR)/libs/dolphin/dvd/%.o: libs/dolphin/dvd/%.c
@echo building... $<
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
@$(WINE) tools/mwcc_compiler/1.2.5/mwcceppc.exe $(LIBDVD_A_CFLAGS) -c -o $@ $(basename $@).c
@echo Frank is fixing $@
@$(PYTHON) $(FRANK) $@ $@ $@

Some files were not shown because too many files have changed in this diff Show More