Ich gehe mal von aus das die originalen Funktionen die durch die Nullstubs ersetzt wurden nicht mehr existieren, idr. werden ja nicht benutzte Funktionen wegoptimiert.
Ich meinte die rauscompilierte "DEBUGMSG"-Funktion:
ROM:93666F54 DebugMsg_CompiledOut: # CODE XREF: OEMLaunch+40p
ROM:93666F54 # PrintBanner+54p ...
ROM:93666F54 jr $ra
ROM:93666F58 nop
ROM:93666F58 # End of function DebugMsg_CompiledOut
so wie es aussieht, sind die Debug-Messages doch nicht ganz rauskompiliert, denn ich habe viele Stellen im Code wie die folgende gefunden:
ROM:93634E58 li $a1, 1
ROM:93634E5C addiu $a0, $v0, (aSmp863xWindows - 0x93600000) # "\nSMP863X Windows CE Bootloader Version "...
ROM:93634E60 jal DebugMsg_CompiledOut
ROM:93634E64 sw $t1, 0($t0)
ROM:93634E68 # ---------------------------------------------------------------------------
ROM:93634E68 lui $v0, 0x9360
ROM:93634E6C jal EdbgOutputDebugString
ROM:93634E70 addiu $a0, $v0, (aSignedBl - 0x93600000) # "SIGNED BL\r\n"
-> Die Meldung SIGNED_BL kommt ja immer noch raus; nur die meldung oben drüber nicht mehr; wenn man jetzt an die Stelle der Funktion DebugMsg_CompiledOut eine "richtige" Funktion oder einen Aufruf unterbringt; sollte man die anderen Meldungen auch alle noch ausgegeben bekommen
Ich vermute, daß hier ein Entwickler den Präprozessor nicht im Griff hatte