Well, now I know how to find vblank handler address :) mb this will help somebody else (for 5.00FW) pspVblankInterruptHandler = (void*)((int)sctrlHENFindFunction("sceDisplay_Service", "sceDisplay", 0xB4F378FA)+0x248)...
This example packs vertexes into dlist, so as more characters you want to draw, as more dlist's size must be.
That means you probably should increase dlist's size (you can use sceGuCheckList to determine right size :)
ASCII for L E A K. ^^ J.F. , have you worked with save/restore GU context fuctions? I wonder, where to put 'em to my code... to make context the same, after executing my display list. I assume that whole thing must be something like this: 1. the first command of dlist must be a signal for saving - ...
At real if you wanna make it compatible with games and especially with homebrew, you need use:
sceGeSaveContext();
sceGeRestoreContext();
in the signal and finish callbacks of your display list
You can blit anything to XMB without any hooks, you'll just need to setup GE in every display list you sent You don't need to clear screen each time, cuz XMB will do it for you and you also don't need to setup framebuffer and draw region. This sample will help you to understand better the concept: h...
I'm here again with... umm probably some weird question :p The problem is that some games uses vblank. Directly or indirectly - it doesn't matter - because when we connect PSP to TV (interlaced mode), the vblank slows down in 2 times (from 60Hz to 30Hz) and obviously game's performance decreases in ...
It makes me wonder, why there are two pointers in UsbData::Interfaces (pinterdesc[2]) Is that means we can use two interface descriptors? If that's true we can send HID descriptor (it has the same size) instead of second interface... but where should we put the second interface in? UsbData::InterDes...
In my opinion, UsbRequest function from source code is a callback, which called when data received to the device. Probably yes, but at first we must send all necessary descriptors (cuz currently, as you may see, it's not called at all) But i don't know how to write from DEVICE to HOST. sceUsbbdReqS...
but how I can do the same type of thing like this variable? Best regards. f.e. this tricky way #define PRECISION 1000 #define f(a) (int)((a-(int)a)*PRECISION) #define i(a) (int)(a...
...but i couldn't see RootDescriptor's description in sources. Currently I'm trying to figure out how to send that HID descriptor bearing in mind that idenfication process is as follows(approx): host> GET DEVICE DESCRIPTOR psp sends DEVICE DESCRIPTOR host> GET DESCRIPTORS psp sends CONFIG. INTERFAC...
Hello :p I'm trying to write USBdriver for PSP to let the host detect it as a HID device (GAMEPAD) First problem: I need send HID descriptor to the host, but currently I don't know how to achieve that aim :( PSP sends dev. descriptor then it sends config., interface and EP descriptors... But we need...
Hmm I think that we need to improve our SPEED BOOSTER now. So I wonder how games use vsync, at this moment SPEED BOOSTER modifies the following functions: sceDisplayWaitVblankCB sceDisplayWaitVblankStart sceDisplayWaitVblank sceDisplayWaitVblankStartCB But I suppose that there are others functions o...
:) Ok, good news: http://www.mediafire.com/?mddwhht00dy
build011 has new algorithm by Andy_maN
changes:
-Killzone: Liberations, SH: origins now runs perfectly :)
-There was some noise in home screen - fixed
Game compatibility list was updated
-Now you can enable/disable SPEED BOOSTER
Yahoo! It's working now! I've modified your code a little and now it works perfectly :) Ok, now I can inject my code into any function :P So I inject this one into sceDisplaySetFrameBufferInternal: nop # reserved nop # reserved li $a1, 0x0000 lui $a1, 0x0420 li $a2, 768 li $a3, 1 j 0x00000000 # rese...
ok, I removed 0x40000000 :) And now this code works! :) int *sceSetSize_p = (int *)((int)sceGeEdramGetSize); int *fakeSetSize_p = (int *)((int)sceGeEdramGetSizeF); sceSetSize_p[ 0] = 0x080...
I don't know what's happend, but... now nothing works at all, I mean. all _sw() instructions don't work. I also tried something like that: int *sceSetSize_p = (int *)(((int)sceGeEdramGetSize)|0x40000000); int *fakeSetSize_p = (i...
0.o wtf? I don't know french :P | Je ne sais pas français: P You should write in english | Vous devez écrire en Anglais English: Hello, I am a French developer and I just wanted to present a project on which I work now, an operating system on the PSP. The project will be like a shell, but a little f...
I tried to do it with disabled interrupts & clearing caches & or 0x40000000 - no effect :( It still crases on that line :( int intc = pspSdkDisableInterrupts(); p = (u32*) sceDisplaySetFrameBufferInternal; baseaddr = GET_JUMP_TARGET(*p); func =...