#include "pspkern.h"
#include <pspkernel.h>
#include <pspiofilemgr.h>
#include <pspctrl.h>
#include "dump.h"
#include <psppower.h>
#include <pspumd.h>
#include <pspdisplay.h>
#include <pspusbstor.h>
#include "usbmy.h"
#include <pspusb.h>
PSP_MODULE_INFO("DumperXflash", 0, 1, 0);
#define printf pspDebugScreenPrintf
#define PSP_USBBUS_DRIVERNAME "USBBusDriver"
int sceIoRead(SceUID fd, void *data, SceSize size);
int sceDisplayWaitVblankStart();
int sceIoRemove(const char *file);
int sceIoRmdir(const char *path);
int main(void)
{
int sceDisplayWaitVblankStart();
int sceUsbStart();
int sceUsbActivate();
int scePowerSetClockFrequency();
scePowerSetClockFrequency(100, 100, 50);
sceIoUnassign("flash0:");
sceIoAssign("flash0:", "lflash0:0,0", "flashfat0:", IOASSIGN_RDWR, NULL, 0);
SceCtrlLatch latch;
pspDebugScreenInit();
pspDebugScreenClear();
SetupCallbacks();
sceIoUnassign("flash1:");
sceIoAssign("flash1:", "lflash1:0,1", "flashfat1:", IOASSIGN_RDWR, NULL, 0);
printf("DumperXflash v. 1,1 by blu_eye4\n");
printf("Ringrazio Dark_alex per il cf, ps2dev.org per il supporto così come psp-ita.com\n");
printf("Grazie a tyrannid per is suoi esempi del SDK\n");
printf("premere X per cancellare file config.se dalla flash1");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");
printf("premere R per stabilire la connessione USB\n");
for(;;){
sceCtrlReadLatch(&latch);
if(latch.uiMake & PSP_CTRL_CIRCLE)
{
dump_filesystem("flash1:/", "ms0:/flash1");
pspDebugScreenClear();
printf("\n\nFatto\n\n");
printf("premere X per cancellare file config.se dalla flash1");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");
}
if(latch.uiMake & PSP_CTRL_SQUARE)
{
dump_filesystem("flash0:/", "ms0:/flash0");
pspDebugScreenClear();
printf("\n\nFatto\n\n");
printf("premere X per cancellare file config.se dalla flash1");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");;
}
if(latch.uiMake & PSP_CTRL_TRIANGLE)
{
int coso;
printf("eliminazione file...\n");
sceIoRemove("flash0:/dic/apotp.dic");
sceIoRemove("flash0:/dic/atokp.dic");
sceIoRemove("flash0:/dic/aux0.dic");
sceIoRemove("flash0:/dic/aux1.dic");
sceIoRemove("flash0:/dic/aux2.dic");
sceIoRemove("flash0:/dic/aux3.dic");
coso = sceIoRemove("flash0:/dic/apotp.dic");
if(coso < 0){
printf("errore!!!\n");
printf("\n errore : %x\n", sceIoRemove("flash0:/dic"));
}
if(coso >= 0){
printf("\nFatto\n");
printf("premere X per cancellare file config.se dalla flash1\n");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");
}
if(latch.uiMake & PSP_CTRL_CROSS){
sceIoRemove("flash1:/config.se");
if(coso < 0){
printf("errore!!!\n");
printf("errore numero : %x\n", sceIoRemove("flash1:/config.se"));
}
else {
printf("\nFatto\n");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere HOME per uscire \n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
}
while(1) {
if(latch.uiMake & PSP_CTRL_RTRIGGER) {
sceUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0);
sceUsbStart(PSP_USBSTOR_DRIVERNAME, 0, 0);
sceUsbActivate(0x1c8);
}
break;
}
int prova = sceUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0);
if(prova != 0){
printf("\n errore %x\n", sceUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0));
}
else
{
printf("Connessione stabilita\n");
}
}
}
}
sceDisplayWaitVblankStart();
return 0;
}
Where do I wrong? I don't understand error... Cygwin compile it without error or warning but when i play it on my psp there is a black display and i can't do nothing... please help me :)
#include "pspkern.h"
#include <pspkernel.h>
#include <pspiofilemgr.h>
#include <pspctrl.h>
#include "dump.h"
#include <psppower.h>
#include <pspumd.h>
#include <pspdisplay.h>
#include <pspusbstor.h>
#include "usbmy.h"
#include <pspusb.h>
PSP_MODULE_INFO("DumperXflash", 0, 1, 0);
#define printf pspDebugScreenPrintf
#define PSP_USBBUS_DRIVERNAME "USBBusDriver"
#define PSP_USB_ACTIVATED 0x200
int sceIoRead(SceUID fd, void *data, SceSize size);
int sceDisplayWaitVblankStart();
int sceIoRemove(const char *file);
int sceIoRmdir(const char *path);
int main(void)
{
pspDebugScreenInit();
pspDebugScreenClear();
SetupCallbacks();
int sceDisplayWaitVblankStart();
int scePowerSetClockFrequency();
scePowerSetClockFrequency(100, 100, 50);
sceIoUnassign("flash0:");
sceIoAssign("flash0:", "lflash0:0,0", "flashfat0:", IOASSIGN_RDWR, NULL, 0);
SceCtrlLatch latch;
sceIoUnassign("flash1:");
sceIoAssign("flash1:", "lflash1:0,1", "flashfat1:", IOASSIGN_RDWR, NULL, 0);
printf("DumperXflash v. 1,1 by blu_eye4\n");
printf("Ringrazio Dark_alex per il cf, ps2dev.org per il supporto così come psp-ita.com\n");
printf("Grazie a tyrannid per is suoi esempi del SDK\n");
printf("premere X per cancellare file config.se dalla flash1");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");
printf("premere R per stabilire la connessione USB\n");
for(;;){
sceCtrlReadLatch(&latch);
if(latch.uiMake & PSP_CTRL_CIRCLE)
{
dump_filesystem("flash1:/", "ms0:/flash1");
pspDebugScreenClear();
printf("\n\nFatto\n\n");
printf("premere X per cancellare file config.se dalla flash1");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");
}
if(latch.uiMake & PSP_CTRL_SQUARE)
{
dump_filesystem("flash0:/", "ms0:/flash0");
pspDebugScreenClear();
printf("\n\nFatto\n\n");
printf("premere X per cancellare file config.se dalla flash1");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");;
}
if(latch.uiMake & PSP_CTRL_TRIANGLE)
{
int coso;
printf("eliminazione file...\n");
sceIoRemove("flash0:/dic/apotp.dic");
sceIoRemove("flash0:/dic/atokp.dic");
sceIoRemove("flash0:/dic/aux0.dic");
sceIoRemove("flash0:/dic/aux1.dic");
sceIoRemove("flash0:/dic/aux2.dic");
sceIoRemove("flash0:/dic/aux3.dic");
coso = sceIoRemove("flash0:/dic/apotp.dic");
if(coso < 0){
printf("errore!!!\n");
printf("\n errore : %x\n", sceIoRemove("flash0:/dic"));
}
if(coso >= 0){
printf("\nFatto\n");
printf("premere X per cancellare file config.se dalla flash1\n");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
printf("premere HOME per uscire senza effettuare alcuna operazione\n");
}
if(latch.uiMake & PSP_CTRL_CROSS){
sceIoRemove("flash1:/config.se");
if(coso < 0){
printf("errore!!!\n");
printf("errore numero : %x\n", sceIoRemove("flash1:/config.se"));
}
else {
printf("\nFatto\n");
printf("premere O per dump flash 1\n");
printf("premere [] per dump flash 0\n");
printf("premere HOME per uscire \n");
printf("premere triangolo per eliminare il file config.se dalla flash1\n");
}
if(latch.uiMake & PSP_CTRL_RTRIGGER)
{
int sceUsbStart();
int sceUsbActivate();
sceUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0);
sceUsbStart(PSP_USBSTOR_DRIVERNAME, 0, 0);
sceUsbActivate(0x1c8);
}
int prova = sceUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0);
if(prova != 0){
printf("\n errore %x\n", sceUsbStart(PSP_USBBUS_DRIVERNAME, 0, 0));
}
else
{
printf("Connessione stabilita\n");
}
}
}
}
sceDisplayWaitVblankStart();
return 0;
}
I've changed some things but homebrew doesn't work... I don'y know what I have to do... please help me and excuse me but I'm a noob in c language :)
Try something simple first then. Why does everyone try to do an XBox 360 emulator (or equivalent) as their FIRST program? Whatever happened to "Hello World"? :D
Until you figure out from the samples and existing apps how the PSP apps work, I wouldn't bother trying to write anything specific.
So this is the brand-new universal-multi-bricker? cool...
The first thing i've noticed , is that you're declaring functions inside main,
and i was about to "hit" "backspace" , but i decided to give it one last chance.
HINT : You're updating the screen surface outside main loop , and to be exact , just before
the program quits.