You are here

PSPBrew

3 posts / 0 new
Last post
provato
Offline
Last seen: 6 days 22 hours ago
Joined: 2025-06-24 13:04
PSPBrew

There is a very useful and rather old PSP homebrew app I use all the time to make custom games and apps for my PSP. Here is its download page: https://www.gamebrew.org/wiki/PSPBrew
It still works in Windows 11 but only if you install it on Windows, which is a big drawback for me as I have all my videogame-related apps on an external hard drive, and I plug it in when I need them.
I tried making a portable version of this windows app with the portableapps software as well as with other tools, but unfortunately I had no success.
I have extracted the install_script.iss file to see its dependancies. It seems it needs some specialized registry entries and one or more language files to run. I always get a "language file not found" error when I run the portable exe, no matter the way I make the portable app.
Can someone help me to make this app portable?
Here is the install script of PSPBrew setup executable, that I extracted:

;InnoSetupVersion=5.1.2

[Setup]
AppName=PSP Brew
AppVerName=PSP Brew 0.91
AppId=PSP Brew
AppPublisher=Stefano Russello
AppPublisherURL=http://www.StefanoRussello.it
AppSupportURL=http://www.psp-ita.com
AppUpdatesURL=http://www.StefanoRussello.it
DefaultDirName={pf}\PSP Brew
DefaultGroupName=PSP Brew
OutputBaseFilename=PSPbrew_091
Compression=lzma
PrivilegesRequired=none
DisableProgramGroupPage=yes
WizardImageFile=embedded\WizardImage0.bmp
WizardSmallImageFile=embedded\WizardSmallImage0.bmp

[Files]
Source: "{app}\PSPbrew.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "{app}\png.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "{app}\png.dat"; DestDir: "{app}"; Flags: ignoreversion
Source: "{app}\dsk.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "{sys}\drivers\filedisk.sys"; DestDir: "{sys}\drivers"; Flags: ignoreversion
Source: "{sys}\msflxgrd.ocx"; DestDir: "{sys}"; Flags: uninsneveruninstall restartreplace regserver sharedfile
Source: "{app}\psp.ico"; DestDir: "{app}";
Source: "{app}\lang\Italiano.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Deutsch.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\English.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Espanol.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Francais.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Portugues.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Danish.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Dutch.lng"; DestDir: "{app}\lang"; Flags: ignoreversion
Source: "{app}\lang\Chinese.lng"; DestDir: "{app}\lang"; Flags: ignoreversion

[Registry]
Root: HKCU; Subkey: "Software\PSPbrew"; ValueName: "Language"; ValueType: String; ValueData: "{language}";
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Services\FileDisk"; ValueName: "ErrorControl"; ValueType: Dword; ValueData: "$1";
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Services\FileDisk"; ValueName: "Start"; ValueType: Dword; ValueData: "$1";
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Services\FileDisk"; ValueName: "Type"; ValueType: Dword; ValueData: "$1";
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Services\FileDisk\Parameters"; ValueName: "NumberOfDevices"; ValueType: Dword; ValueData: "$4";

[INI]
FileName: "{app}\PSPbrew.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://www.StefanoRussello.it/";

[Run]
Filename: "{app}\PSPbrew.exe"; Description: "{cm:LaunchProgram,PSP Brew}"; Flags: postinstall skipifsilent nowait

[Icons]
Name: "{group}\PSP Brew"; Filename: "{app}\PSPbrew.exe";
Name: "{group}\Homebrew"; Filename: "{app}\PSPbrew.exe"; Parameters: "/sorthb";
Name: "{group}\{cm:ProgramOnTheWeb,PSP Brew}"; Filename: "{app}\PSPbrew.url";
Name: "{group}\{cm:UninstallProgram,PSP Brew}"; Filename: "{uninstallexe}";
Name: "{userdesktop}\PSP Brew"; Filename: "{app}\PSPbrew.exe"; Tasks: desktopicon;
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\PSP Brew"; Filename: "{app}\PSPbrew.exe"; Tasks: quicklaunchicon;

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}";
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}";

[UninstallDelete]
Type: files; Name: "{app}\PSPbrew.url";

[CustomMessages]
English.NameAndVersion=%1 version %2
English.AdditionalIcons=Additional icons:
English.CreateDesktopIcon=Create a &desktop icon
English.CreateQuickLaunchIcon=Create a &Quick Launch icon
English.ProgramOnTheWeb=%1 on the Web
English.UninstallProgram=Uninstall %1
English.LaunchProgram=Launch %1
English.AssocFileExtension=&Associate %1 with the %2 file extension
English.AssocingFileExtension=Associating %1 with the %2 file extension...
Francais.NameAndVersion=%1 version %2
Francais.AdditionalIcons=Icτnes supplιmentaires :
Francais.CreateDesktopIcon=Crιer une icτne sur le &Bureau
Francais.CreateQuickLaunchIcon=Crιer une icτne dans la barre de &Lancement rapide
Francais.ProgramOnTheWeb=Page d'accueil de %1
Francais.UninstallProgram=Dιsinstaller %1
Francais.LaunchProgram=Exιcuter %1
Francais.AssocFileExtension=&Associer %1 avec l'extension de fichier %2
Francais.AssocingFileExtension=Associe %1 avec l'extension de fichier %2...
Deutsch.NameAndVersion=%1 Version %2
Deutsch.AdditionalIcons=Zusδtzliche Symbole:
Deutsch.CreateDesktopIcon=&Desktop-Symbol anlegen
Deutsch.CreateQuickLaunchIcon=Symbol in der Schnellstartleiste anlegen
Deutsch.ProgramOnTheWeb=%1 im Internet
Deutsch.UninstallProgram=%1 entfernen
Deutsch.LaunchProgram=%1 starten
Deutsch.AssocFileExtension=&Registriere %1 mit der %2-Dateierweiterung
Deutsch.AssocingFileExtension=%1 wird mit der %2-Dateierweiterung registriert...
Espanol.NameAndVersion=%1 versiσn %2
Espanol.AdditionalIcons=Iconos adicionales:
Espanol.CreateDesktopIcon=Crear un atajo en el &Escritorio
Espanol.CreateQuickLaunchIcon=Crear un icono de acceso &rαpido
Espanol.ProgramOnTheWeb=%1 en la Web
Espanol.UninstallProgram=Eliminar %1
Espanol.LaunchProgram=Ejecutar %1
Espanol.AssocFileExtension=&Asociar %1 con la extensiσn de archivo %2
Espanol.AssocingFileExtension=Asociar %1 con la extensiσn de archivo %2...
Portugues.NameAndVersion=%1 versγo %2
Portugues.AdditionalIcons=Νcones adicionais:
Portugues.CreateDesktopIcon=Criar νcone no &Ambiente de Trabalho
Portugues.CreateQuickLaunchIcon=Criar νcone na barra de Iniciaηγo &Rαpida
Portugues.ProgramOnTheWeb=%1 na Web
Portugues.UninstallProgram=Desinstalar o %1
Portugues.LaunchProgram=Executar o %1
Portugues.AssocFileExtension=&Associar o %1 aos ficheiros com a extensγo %2
Portugues.AssocingFileExtension=A associar o %1 aos ficheiros com a extensγo %2...
Italiano.NameAndVersion=%1 versione %2
Italiano.AdditionalIcons=Icone aggiuntive:
Italiano.CreateDesktopIcon=Crea un'icona sul &desktop
Italiano.CreateQuickLaunchIcon=Crea un'icona nella barra &Avvio veloce
Italiano.ProgramOnTheWeb=%1 sul Web
Italiano.UninstallProgram=Disinstalla %1
Italiano.LaunchProgram=Avvia %1
Italiano.AssocFileExtension=&Associa l'estensione %2 a %1
Italiano.AssocingFileExtension=Associazione dell'estensione %2 a %1 in corso...
Dutch.NameAndVersion=%1 versie %2
Dutch.AdditionalIcons=Extra snelkoppelingen:
Dutch.CreateDesktopIcon=Maak een snelkoppeling op het &bureaublad
Dutch.CreateQuickLaunchIcon=Maak een snelkoppeling op de &Snel starten werkbalk
Dutch.ProgramOnTheWeb=%1 op het Web
Dutch.UninstallProgram=Verwijder %1
Dutch.LaunchProgram=&Start %1
Dutch.AssocFileExtension=&Koppel %1 aan de %2 bestandsextensie
Dutch.AssocingFileExtension=Bezig met koppelen van %1 aan de %2 bestandsextensie...
Danish.NameAndVersion=%1 version %2
Danish.AdditionalIcons=Ekstra ikoner:
Danish.CreateDesktopIcon=Lav ikon pε &skrivebordet
Danish.CreateQuickLaunchIcon=Lav &hurtigstart-ikon
Danish.ProgramOnTheWeb=%1 pε internettet
Danish.UninstallProgram=Afinstaller (fjern) %1
Danish.LaunchProgram=Kψr %1
Danish.AssocFileExtension=&Sammenkζd %1 med filtypen %2
Danish.AssocingFileExtension=Sammenkζder %1 med filtypen %2...
Chinese.NameAndVersion=%1 °ζ±Ύ %2
Chinese.AdditionalIcons=Έ½ΌΣΝΌ±κ:
Chinese.CreateDesktopIcon=ΤΪΧΐΓζ΄΄½¨ΝΌ±κ(&d)
Chinese.CreateQuickLaunchIcon=ΤΪΏμ½έΖτ¶―ΐΈ΄΄½¨ΝΌ±κ(&Q)
Chinese.ProgramOnTheWeb=ΝψΒηΙΟµΔ %1
Chinese.UninstallProgram=Π¶ΤΨ %1
Chinese.LaunchProgram=ΤΛΠΠ %1
Chinese.AssocFileExtension=½« %1 Σλΐ©ΥΉΓϋ %2 Α¬½Σ(&A)
Chinese.AssocingFileExtension=ΥύΤΪ½« %1 Σλΐ©ΥΉΓϋ %2 Α¬½Σ...

[Languages]
; These files are stubs
; To achieve better results after recompilation, use the real language files
Name: "English"; MessagesFile: "embedded\English.isl";
Name: "Francais"; MessagesFile: "embedded\Francais.isl";
Name: "Deutsch"; MessagesFile: "embedded\Deutsch.isl";
Name: "Espanol"; MessagesFile: "embedded\Espanol.isl";
Name: "Portugues"; MessagesFile: "embedded\Portugues.isl";
Name: "Italiano"; MessagesFile: "embedded\Italiano.isl";
Name: "Dutch"; MessagesFile: "embedded\Dutch.isl";
Name: "Danish"; MessagesFile: "embedded\Danish.isl";
Name: "Chinese"; MessagesFile: "embedded\Chinese.isl";

provato
Offline
Last seen: 6 days 22 hours ago
Joined: 2025-06-24 13:04
Anyone willing to help/guide

Anyone willing to help/guide me how to make it portable with its registry dependancies?

provato
Offline
Last seen: 6 days 22 hours ago
Joined: 2025-06-24 13:04
ChatGPT just solved my

ChatGPT just solved my problem and created a portable PSP Brew. AI: 1 - humans: 0
It also explained to me why it is so hard to make a Windows XP kernel level service (filedisk.sys) work in Windows 10/11, which means that only one function ("Preview ISO") doesn't work in PSP Brew, which I don't care for.
Feel free to contact me (or ChatGPT) if you also need this app portable.
This topic can also be closed as completed

Log in or register to post comments