PS3 webMAN MOD - Web Commands

The app_home icon is required for games stored remotely or NTFS.
For the ROMS stored in the internal or FAT32, if the app_home icon is not present, the disc icon is used.

You can try replacing your category_game.xml with the version with app_icon in the following link :
https://github.com/aldostools/webMAN-MOD/tree/master/_Projects_/updater/pkgfiles/USRDIR/xmb/HEN

You need to have installed:
-RetroArch 1.90 or Community Edition beta02. (Avoid the PSL1ght edition)
-Latest PKG/ROM Launcher if you use Community Edition
-The ROMS must be stored in /ROMS folder. There are specific folder names explained in OP of this thread.

I installed Community Edition beta02 and it's working fine now, thanks. I thought it would work with any retroarch version (i have 1.8.4 installed).
 
@aldostools

Those commands below, just map to the next wave ( current 1 to 2) when the command is sent or it changes automatically everyboot?
Code:
/coldboot.ps3 - map next custom coldboot sound (ac3)
/coldboot.ps3?<#> - map coldboot sound in /dev_hdd0/tmp/coldboot/<#>.ac3
/earth.ps3 - map next custom earth qrc
/earth.ps3?<#> - map custom /dev_hdd0/tmp/earth/<#>.qrc to earth.qrc in dev_flash
/canyon.ps3 - map next custom canyon qrc
/canyon.ps3?<#> - map custom /dev_hdd0/tmp/canyon/<#>.qrc to canyon.qrc in dev_flash
/lines.ps3 - map next custom lines qrc
/lines.ps3?<#> - map custom /dev_hdd0/tmp/lines/<#>.qrc to lines.qrc in dev_flash

Because on github

you wrote

XMB waves now change on each boot if 1.qrc, 2.qrc, etc. exist in /dev_hdd0/tmp/lines
Boot sound now change on each boot if 1.ac3, 2.ac3, etc. exist in /dev_hdd0/tmp/coldboot

and here map the next one.
 
@aldostools

Those commands below, just map to the next wave ( current 1 to 2) when the command is sent or it changes automatically everyboot?
Code:
/coldboot.ps3 - map next custom coldboot sound (ac3)
/coldboot.ps3?<#> - map coldboot sound in /dev_hdd0/tmp/coldboot/<#>.ac3
/earth.ps3 - map next custom earth qrc
/earth.ps3?<#> - map custom /dev_hdd0/tmp/earth/<#>.qrc to earth.qrc in dev_flash
/canyon.ps3 - map next custom canyon qrc
/canyon.ps3?<#> - map custom /dev_hdd0/tmp/canyon/<#>.qrc to canyon.qrc in dev_flash
/lines.ps3 - map next custom lines qrc
/lines.ps3?<#> - map custom /dev_hdd0/tmp/lines/<#>.qrc to lines.qrc in dev_flash

Because on github

you wrote

XMB waves now change on each boot if 1.qrc, 2.qrc, etc. exist in /dev_hdd0/tmp/lines
Boot sound now change on each boot if 1.ac3, 2.ac3, etc. exist in /dev_hdd0/tmp/coldboot

and here map the next one.

The change is managed automatically using the internal counters in wm_config.bin

Example:
/coldboot.ps3?5 - sets /dev_hdd0/tmp/5.ac3 as the boot sound for the next boot
/coldboot.ps3? - shows the current file
/coldboot.ps3 - changes the counter manually to the next file (6.qrc)

The initial commit of 1.47.34 was using the next value (6.ac3 instead of 5.ac3) in the next boot.
I fixed that behavior in the latest update. Now it uses the current value set.
 
Last edited:
Suggestion, Maybe this is a bit complicated, but I wonder should the behaviour be changed a little. What if when you choose a specific remap it sticks, and it only cycles automatically if you have not picked a specific remap?

My thinking would be that if you chose a specific file you more than likely wanted that file to show always. rather than just be the starting point for the rotation. So maybe it could be that if you choose a specific remap it sticks, unless you then use /coldboot.ps3 after that to restart rotation again.
 
Suggestion, Maybe this is a bit complicated, but I wonder should the behaviour be changed a little. What if when you choose a specific remap it sticks, and it only cycles automatically if you have not picked a specific remap?

My thinking would be that if you chose a specific file you more than likely wanted that file to show always. rather than just be the starting point for the rotation. So maybe it could be that if you choose a specific remap it sticks, unless you then use /coldboot.ps3 after that to restart rotation again.

For the scenario that you mention it would be simple: copy the rco to dev_flash and rename/delete the resource folder in /dev_hdd0/tmp to stop the counter.

I could add a "&fixed" parameter to the web commands and reduce the maximum number of mapped files to 126 (127=reserved).
The &fixed option use the first bit in the counter to know if the value can change on each boot or should be fixed.

Example:
/lines.ps3?7 => sets the wm_config->lines_id = 0x07 = 0000 0111
/lines.ps3?7&fixed => sets the wm_config->lines_id = 0x87 = 1000 0111

So setting /lines.ps3?143 would be the same as /lines.ps3?15&fixed (15 = 0x0F = 0000 1111, 143 = 0x8F = 1000 1111,)
 
Yeah, you're right. If a user wants it to stick they can just put it on flash. I wasn't really thinking.
 
@aldostools im reading the last posts and thinking in other mode that could simulate a randomization (but is not random), basically, consists in reading the clock time and take only the value of seconds (60 posible results)
What to do with the 60 posible results ?... well... this is up to you :)
It could be a tiny math operation + some rounding
Or you could assing a file to a range of seconds... lets say if there are only 2 files you can assign file1 to the range 0-30 and file2 to range 31-59
Etc...

The point is the resulting file depends of which second you powerup the PS3, but this is almost imposible to control by the final user, so it looks random :D
 
@aldostools im reading the last posts and thinking in other mode that could simulate a randomization (but is not random), basically, consists in reading the clock time and take only the value of seconds (60 posible results)
What to do with the 60 posible results ?... well... this is up to you :)
It could be a tiny math operation + some rounding
Or you could assing a file to a range of seconds... lets say if there are only 2 files you can assign file1 to the range 0-30 and file2 to range 31-59
Etc...

The point is the resulting file depends of which second you powerup the PS3, but this is almost imposible to control by the final user, so it looks random :D

Thank you for the suggestion. I've used this pseudo-random method in the past.

Indeed it can be any range (not only 0-59) if we use the tick function and modulus operator.
Code:
CellRtcTick pTick; cellRtcGetCurrentTick(&pTick); uint32_t random = pTick.tick % 1000; // pseudo-random between 0-999
The problem is that I need to know the file count in the folder a priori.
This operation has a cost in code (which I want to keep smaller as possible) and the timing is also important during the boot.
If counting the files takes more than expected the mapping may not work.

I may think in a solution later. For the moment I will stick with an arithmetic progression.
 
Thank you for the suggestion. I've used this pseudo-random method in the past.

Indeed it can be any range (not only 0-59) if we use the tick function and modulus operator.
Code:
CellRtcTick pTick; cellRtcGetCurrentTick(&pTick); uint32_t random = pTick.tick % 1000; // pseudo-random between 0-999
The problem is that I need to know the file count in the folder a priori.
This operation has a cost in code (which I want to keep smaller as possible) and the timing is also important during the boot.
If counting the files takes more than expected the mapping may not work.

I may think in a solution later. For the moment I will stick with an arithmetic progression.
Got it, then i guess the only way to dodge that delay would be to allow the user to configure it with static paths, this way there is no need to search for the files
But this would make this mode more focused to "pro" users because it really requires to be configured

Lets say... the user downloads 17 or 36 lines.qrc mods, and patiently starts trying them to find his/her favourites and decides to keep only 4 files
Thats the point where it could be handy to randomize in between the static paths of the 4 files


Edit:
Maybe it could work using the concept of a "favourite list", with this commands:
Code:
Example:
/coldboot.ps3?5fav - adds /dev_hdd0/tmp/5.ac3 to the favourites list
/coldboot.ps3?fav - shows the current favourites list
 
Last edited:
@aldops3 instead of just random boot sounds, how about a whole set?

Random coldboot rafs + sounds.

I mean 1.raf with 1.ac3 , so it will play diferent coldbots sets

not PS3 default logo with a random sound, it will ramdomize to PS5 LOGO + PS5 sound, PS3 logo with original Sound. PS2 logo with ps2 sound, so the coldboot will match the sound.
 
Last edited:
Got it, then i guess the only way to dodge that delay would be to allow the user to configure it with static paths, this way there is no need to search for the files
But this would make this mode more focused to "pro" users because it really requires to be configured

Lets say... the user downloads 17 or 36 lines.qrc mods, and patiently starts trying them to find his/her favourites and decides to keep only 4 files
Thats the point where it could be handy to randomize in between the static paths of the 4 files


Edit:
Maybe it could work using the concept of a "favourite list", with this commands:
Code:
Example:
/coldboot.ps3?5fav - adds /dev_hdd0/tmp/5.ac3 to the favourites list
/coldboot.ps3?fav - shows the current favourites list

There are 4 static paths pre-defined:
/dev_hdd0/tmp/lines
/dev_hdd0/tmp/coldboot
/dev_hdd0/tmp/earth
/dev_hdd0/tmp/canyon

If the user have 4 favorite wave from a set of 36, just need to put them as 1.qrc, 2.qrc, 3.qrc, 4.qrc in /dev_hdd0/tmp/lines

webMAN will select 1, 2, 3, 4 and the default one in /dev_flash on each boot. If the user don't like the one selected, just reboot and will see the next or can select manually a specific one. The method is not random but is simple and does the work.

I could try to implement the randomizer in a future version and check if it works. It would require to validate the file at most 8 times.
Code:
// pseudo-code
id = pTick.tick % 128; // get a random number between 0 and 127
while((!id && not_exists(id + ".qrc")) id /= 2; // binary-search

@aldops3 instead of just random boot sounds, how about a whole set?

Random coldboot rafs + sounds.

I mean 1.raf with 1.ac3 , so it will play diferent coldbots sets

not PS3 default logo with a random sound, it will ramdomize to PS5 LOGO + PS5 sound, PS3 logo with original Sound. PS2 logo with ps2 sound, so the coldboot will match the sound.

I already tried to remap .raf files but they seem to be loaded into memory before webMAN can change the path.

What you want can be done updating the files in /dev_blind using a .bat script. But that's something I avoid to do to prevent potential brick or dev_flash corruption.

EDIT:
The random VSH resource selector is now implemented in the latest update.
https://github.com/aldostools/webMAN-MOD/releases
 
Last edited:
Interesting side effect of using webMAN MOD like to this to set a fixed wave or coldboot sound, they stick after a FW update. So its a handy way to have mods carry over between FW updates.

So you can see your mods from the very first boot of a new CFW install, very convenient.

I had another idea for doing this a different way before, where CFW could be patched to read those files from dev_flash2, this way those common XMB mods will stick through FW updates, but this is just as good, for webMAN MOD users like me.

Coldboot logo could be done with my hardcoded patch method, but I doubt anyone will add this to CFW.
 
@aldostools since i categorize webman games direcly on the XMB, i wonder if is possible to have the scan /dev_hdd0/games ticked by default or a command that i can include in the boot_plugin.txt or autoexec.bat to toggle it, i always receive questions about why it doesn't list the PKGS, most of the users don't know the option. ( i'm against include the wmm config file due to user settings and languages).

Also if it can separate the pkgs when the scan /dev_hdd0/games are ticked, because all the pkgs will show in the ps3 folder even media/network pkgs, a better way could be if they appears in their respective folders and Neogeo and PCE into ROMS folder.

WEPeCC2.png
 
@aldostools since i categorize webman games direcly on the XMB, i wonder if is possible to have the scan /dev_hdd0/games ticked by default or a command that i can include in the boot_plugin.txt or autoexec.bat to toggle it, i always receive questions about why it doesn't list the PKGS, most of the users don't know the option. ( i'm against include the wmm config file due to user settings and languages).

Also if it can separate the pkgs when the scan /dev_hdd0/games are ticked, because all the pkgs will show in the ps3 folder even media/network pkgs, a better way could be if they appears in their respective folders and Neogeo and PCE into ROMS folder.

You can patch the wm_config.bin using the /write.ps3 command.

I do not have plan to include PKG games in a separated folder. You can use a XMBML Query to show them in folders.
The option is off by default because not all users want to have game icons that already have in another place.

BTW you could teach these users to use the game Albums that is an official feature of XMB to group PKG games in folders.
upload_2021-2-25_20-41-35.png
 
You can patch the wm_config.bin using the /write.ps3 command.

I do not have plan to include PKG games in a separated folder. You can use a XMBML Query to show them in folders.
The option is off by default because not all users want to have game icons that already have in another place.

BTW you could teach these users to use the game Albums that is an official feature of XMB to group PKG games in folders.
View attachment 31659


Yep, using XMBML queries is a way but they will not suit the cover sizes.

Nice i haven't thought about the usage of /write.ps3 to enable it, thanks
 
Back
Top