KINGx - Das inoffizielle PlayStation Forum & News Portal

Normale Version: Imports werden nicht aufgelöst
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
So ich stehe im moment vor einem mehr oder weniger großen problem beim m33_620 plugin. Sobald ich sceKernelTryLockLwMutex importiere werden KEINE imports mehr aufgelöst.

Code:
    .set noreorder

#include "pspimport.s"

      
IMPORT_START    "Kernel_Library",0x00010011
IMPORT_FUNC    "Kernel_Library",0xDC692EE3,sceKernelTryLockLwMutex


Zitat:
host0:/> disasm 0x8820C9C8 50
0x8820C9C8: 0x03E00008 '....' - jr $ra
0x8820C9CC: 0x00000000 '....' - nop
0x8820C9D0: 0x03E00008 '....' - jr $ra
0x8820C9D4: 0x00000000 '....' - nop
0x8820C9D8: 0x03E00008 '....' - jr $ra
0x8820C9DC: 0x00000000 '....' - nop
0x8820C9E0: 0x03E00008 '....' - jr $ra
0x8820C9E4: 0x00000000 '....' - nop
0x8820C9E8: 0x03E00008 '....' - jr $ra
0x8820C9EC: 0x00000000 '....' - nop
0x8820C9F0: 0x03E00008 '....' - jr $ra
0x8820C9F4: 0x00000000 '....' - nop
0x8820C9F8: 0x03E00008 '....' - jr $ra
0x8820C9FC: 0x00000000 '....' - nop
0x8820CA00: 0x03E00008 '....' - jr $ra
0x8820CA04: 0x00000000 '....' - nop
0x8820CA08: 0x03E00008 '....' - jr $ra
0x8820CA0C: 0x00000000 '....' - nop


Im prometheus.prx wird auch sceKernelTryLockLwMutex importiert und das klappt wunderbar sonst könntet ihr die spiele ja nicht patchen. Ok das ist ein usermode modul und meines ist ein kernelmode modul aber das müsste dennoch klappen. Woran könnte das liegen?

öh...weil eben Kernel_Library User Mode ist? user->kernel not fine...
Es gibt aber ein paar tricks...
dann gib mal bitte einen tip bevor ich die lust verliere und die ganze funktion nachprogrammiere dann klappts garantiert.
via user module oder sctrlHENFindFunction -.-'
via usermodul gibts leider das selbe problem. Wollte sowieso einige funktionen in ein usermodul auslagern was ja auch wunderbar klappt nur eben beim importieren von sceKernelTryLockLwMutex werden die imports überhaupt nicht mehr aufgelöst.

Code:
#include <pspkernel.h>
#include <stdio.h>
#include "register.h"

PSP_MODULE_INFO("sceKernelLibrary_620", 0x0000, 1, 6);

void Kernel_Library_37431849()
{
  sceKernelTryLockLwMutex();
}

int main(int argc, char **argv)
{
return 0;
}

void* getModuleInfo(void)
{
    return (void *) &module_info;
}


Code:
TARGET = usersystemlib620
OBJS = main.o register.o Kernel_Library.o

# Define to build this as a prx (instead of a static elf)
BUILD_PRX=1
# Define the name of our custom exports (minus the .exp extension)
PRX_EXPORTS=exports.exp

USE_PSPSDK_LIBC = 1

INCDIR =
CFLAGS = -O2 -G0 -Wall
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)

LIBDIR =


PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak


Code:
.set noreorder

#include "pspimport.s"

IMPORT_START    "Kernel_Library",0x00010011
IMPORT_FUNC    "Kernel_Library",0xDC692EE3,sceKernelTryLockLwMutex

Wird sceKernelLibrary_620 nach sceKernelLibrary geladen? Ich wette dann funktionierts...
daran wirds wohl liegen.
Referenz-URLs