|
link to this page:
http://pastebin.antiyes.com/pastebin/index299.html
download this file: click here
|
description/question: check it.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
|
//Includes
#define _PSP_FW_VERSION 150
#include <pspkernel.h>
#include <pspkerneltypes.h>
#include <pspmoduleinfo.h>
#include <pspiofilemgr.h>
#include <pspmodulemgr.h>
#include <pspthreadman.h>
#include <stdlib.h>
#include <pspchnnlsv.h>
#include <pspctrl.h>
#include <string.h>
#include <pspctrl_kernel.h>
#include <pspthreadman_kernel.h>
#include <pspumd.h>
#include <crt0_prx.h>
#include <psppower.h>
#include <pspnet.h>
#include <pspwlan.h>
#include <psprtc.h>
#include <psphprm.h>
//Defines
PSP_MODULE_INFO("Test PRX", 0x3008, 1, 2); //0x3007
PSP_MAIN_THREAD_ATTR(0); //0 for kernel mode too
PSP_HEAP_SIZE_KB(-128);
//Globals
SceUID thid;
unsigned char gameId[10];
unsigned int FTB2=0;
unsigned char buffer[15];
int reload=0;
int color=0;
unsigned int *Personapointer=(unsigned int*) (0x00501BCC+0x08800000);
unsigned int *enable=(unsigned int*) (0x00806000+0x08800000);
int length=15;
int roomname=0x004E5EEC+0x08800000; //(where text is shown)
unsigned int *mic=(unsigned int*)(0x005044D8+0x08800000);
//Functions
int module_start(SceSize args, void *argp) __attribute__((alias("_start")));
int module_stop(SceSize args, void *argp) __attribute__((alias("_stop")));
//main thread obviously look how its named are you STUPID?
int mainThread(){
signed int fd;
unsigned int counter=0;
FTB2=1;
SceCtrlData pad;
sceCtrlSetSamplingCycle(0);
sceCtrlSetSamplingMode(PSP_CTRL_MODE_ANALOG);
//Wait for the kernel to boot up (if we don't, the PRX will crash since some functions may be missing)
sceKernelDelayThread(15000000);
while(!sceKernelFindModuleByName("sceKernelLibrary"))
sceKernelDelayThread(100000);
sceKernelDelayThread(100000);
//Find the GAME ID (by reading the UMD_DATA file on the UMD)
do{
fd=sceIoOpen("disc0:/UMD_DATA.BIN", PSP_O_RDONLY, 0777);
sceKernelDelayThread(10000);
} while(fd<=0);
sceIoRead(fd, gameId, 10);
sceIoClose(fd);
//Compare the gameID to see if the game is SOCOM FTB2
if(strncmp(gameId, "UCUS-98645", 10)){
//Game isn't SOCOM FTB2
FTB2=0;
}
//while running is not equal to zero then run this loop
while(FTB2){
pspDebugScreenSetXY(0, 2);
sceCtrlReadBufferPositive(&pad, 1);
//if enabled do the functions
if(*enable == 0xFFFFFFFF){
if (pad.Buttons != 0){
if ((pad.Buttons & PSP_CTRL_SQUARE) && (pad.Buttons & PSP_CTRL_UP)){
*mic=0x00000101;
}
if ((pad.Buttons & PSP_CTRL_SQUARE) && (pad.Buttons & PSP_CTRL_DOWN)){
*mic=0x00000100;
}
}
}
//time out to keep things smooooth
sceKernelDelayThread(1000000);
}
}
int _start(SceSize args, void *argp){
//Create thread
thid=sceKernelCreateThread("OurThread", &mainThread, 0x18, 0x1000, 0, NULL);
//Start thread
if(thid >= 0) sceKernelStartThread(thid, 0, NULL);
return 0;
}
int _stop(SceSize args, void *argp){
FTB2=0;
sceKernelTerminateThread(thid);
return 0;
}
|
|
|
|
|