PS3 webMAN MOD - Web Commands

You sure you got a 505 error?
Iirc "not implemented" is 501, I didn't check the source to confirm though.

It could be that the displayed code does not actually reflect the cause for the error properly..
If ever that were the case & it turned out the code would need a minor tweak like an extra check to better inform the user, Aldo will know.. ;-)

Have you tried increasing the wait value?

Sorry, just a typo ;P, it's 501.

I tried to increase the wait interval, but same thing
 
Sorry, just a typo ;P, it's 501.

I tried to increase the wait interval, but same thing
Assuming your syntax handling is good.
Am not sure how remote play is launched by wMM so I dunno if it could somehow impact the wMM server, make it kind of "busy" & for a brief period of time unable to process the rest of your commands or if it could just be a matter of timings.

Well I think I will let Aldo take care of this, he might already know why you are having this problem..
 
Aldo could you not use semaphores or whatever locks to synchronise the 3 script threads rather than sleep calls & cancelling script parsing altogether if previous scripting task is not complete?

The 3 event scripts (boot_init.txt, autoexec.bat, onxmb.bat) are not designed to interact between them. They run in an individual thread. Therefore I don't think we need a semaphore to stop the processing of the other plugin threads.

Once the thread for the event script is created, the internal methods are called within that thread (except the ones that create new threads like refresh XML). So the script commands run sequentially.

onxmb.bat waits until 30 seconds for explore_plugin before start the processing. The others run immediately.

To synchronize the scripts with other system processes the script uses wait and lwait.
  • wait <n> - waits n seconds. n can be between 1 and 255.
  • wait xmb - waits for xmb until 30 seconds
  • wait <file> - waits up to 5 seconds until a file exists
  • lwait <file> - waits up to 10 seconds until a file exists
A sys_ppu_thread_yield() is performed internally on each wait call. The purpose is to give more processing time to other threads while the current thread is waiting.

If you have any idea that could improve this system, they are welcome :encouragement:
 
The 3 event scripts (boot_init.txt, autoexec.bat, onxmb.bat) are not designed to interact between them. They run in an individual thread. Therefore I don't think we need a semaphore to stop the processing of the other plugin threads.

Once the thread for the event script is created, the internal methods are called within that thread (except the ones that create new threads like refresh XML). So the script commands run sequentially.

onxmb.bat waits until 30 seconds for explore_plugin before start the processing. The others run immediately.

To synchronize the scripts with other system processes the script uses wait and lwait.
  • wait <n> - waits n seconds. n can be between 1 and 255.
  • wait xmb - waits for xmb until 30 seconds
  • wait <file> - waits up to 5 seconds until a file exists
  • lwait <file> - waits up to 10 seconds until a file exists
A sys_ppu_thread_yield() is performed internally on each wait call. The purpose is to give more processing time to other threads while the current thread is waiting.

If you have any idea that could improve this system, they are welcome :encouragement:
What prompted me to ask about this are the examples of scripts used by LuanTeles.
I wasn't so much worried about potential issues with perf or memory availability although that could always be another potential issue in its own right.
From what I saw the 3 scripts could potentially run for a long time especially given the wait calls & doing whatever actions the user scripted during that time, I was wondering whether 2 threads might conflict when accessing certain resources or race/compete which could also lead to undefined behaviour.
But then again I have not reviewed the code to assert that it's definitely a problem to fix, you know the code best, you should be able to tell.
 
What prompted me to ask about this are the examples of scripts used by LuanTeles.
I wasn't so much worried about potential issues with perf or memory availability although that could always be another potential issue in its own right.
From what I saw the 3 scripts could potentially run for a long time especially given the wait calls & doing whatever actions the user scripted during that time, I was wondering whether 2 threads might conflict when accessing certain resources or race/compete which could also lead to undefined behavior.
But then again I have not reviewed the code to assert that it's definitely a problem to fix, you know the code best, you should be able to tell.

As I commented above, the script events are executed in individual threads. Therefore the script waits do not interfere with the normal plugin processes. Also the wait have a timeout, so they cannot run for long time. If you have experienced a bug in this area or any other, please let me know and I will analyze if I can correct it.
 
@Aldo a bug was introduced after the "remote play fix"

192.168.0.21/copy_ps3/dev_hdd0/game/PS34KPROX/USRDIR/toolbox/htmls/webman.html&to=/dev_blind/vsh/resource/AAA/webman.html;/play.ps3?remoteplay;/wait.ps3?3;/pad.ps3?circle

copy operations are assuming (;) semicolon are part of the path, not expecting multiple commands

iiR55n1.png
 
Last edited:
@Aldo a bug was introduced after the "remote game fix"

192.168.0.21/copy_ps3/dev_hdd0/game/PS34KPROX/USRDIR/toolbox/htmls/webman.html&to=/dev_blind/vsh/resource/AAA/webman.html;/play.ps3?remoteplay;/wait.ps3?3;/pad.ps3?circle

copy operations are assuming (;) semicolon are part of the path, not expecting multiple commands

Thank you for your feedback. The bug was a pointer to the incorrect variable. It's fixed now.

Also added your new help.html to the installers.
 

Try updating to the latest build. In this commit I fixed a bug in that web command
https://github.com/aldostools/webMAN-MOD/commit/754e478f5bf881c91ba92416ff268dfe37aa3839

The correct syntax should be like the examples below (without spaces between the equal symbol)
http://192.168.0.21/xmb.ps3$xregistry(/setting/browser/debugMenu)=1
or http://192.168.0.21/xmb.ps3$xregistry(/setting/browser/debugMenu)=0x1

For hex values the number should start with 0x. The zeros right after x are ignored.

To show the current value use:
http://192.168.0.21/xmb.ps3$xregistry(/setting/browser/debugMenu)

The system must be restarted for the new values take effect.

The web command only updates existing keys. It doesn't create new keys or delete existing ones.
 
Try updating to the latest build. In this commit I fixed a bug in that web command
https://github.com/aldostools/webMAN-MOD/commit/754e478f5bf881c91ba92416ff268dfe37aa3839

The correct syntax should be like the examples below (without spaces between the equal symbol)
http://192.168.0.21/xmb.ps3$xregistry(/setting/browser/debugMenu)=1
or http://192.168.0.21/xmb.ps3$xregistry(/setting/browser/debugMenu)=0x1

For hex values the number should start with 0x. The zeros right after x are ignored.

To show the current value use:
http://192.168.0.21/xmb.ps3$xregistry(/setting/browser/debugMenu)

The system must be restarted for the new values take effect.

The web command only updates existing keys. It doesn't create new keys or delete existing ones.


Thanks it's working good, is there a way to update the per user keys to the current user.

Eg:
/xmb.ps3$xregistry(/setting/user/00000001/wboard/enable)=0

to
/xmb.ps3$xregistry(/setting/user/$USERID$/wboard/enable)=0
or
/xmb.ps3$xregistry(/setting/user/<userid>/wboard/enable)=0

I tried to add at least a range of users from 00000001 to 00000020 and realized that if the webman doesn't find a user the other commands will be ignored.

/xmb.ps3$xregistry(/setting/user/00000001/wboard/enable)=0 <- Exists
/xmb.ps3$xregistry(/setting/user/00000002/wboard/enable)=0 <- Exists
/xmb.ps3$xregistry(/setting/user/00000003/wboard/enable)=0 <- No exists
/xmb.ps3$xregistry(/setting/user/00000004/wboard/enable)=0 <- ignored
/xmb.ps3$xregistry(/setting/user/00000005/wboard/enable)=0 <- ignored

I'm just wanting to mess with it to disable the information board on boot and the browser confirmation on exit
 
Last edited:
Thanks it's working good, is there a way to update the per user keys to the current user.

I'm just wanting to mess with it to disable the information board on boot and the browser confirmation on exit

Check if this command works with the build attached.
/xmb.ps3$xregistry(/setting/user/$USERID$/wboard/enable)=0
 

Attachments

It dumps flash storage device. It dumps 16MB by default, but it can be the total size of the flash device if you provide the parameter &size=<mb> where <mb> is the number of megabytes to dump.

Example: /dump.ps3?flash&size=0x100

Thanks, Aldo i'm wondering if a ingame.bat is feasible to be created to automate some actions when a game is launched,

So the ingame.bat can be used to unblock the psn access, enable the fps counter, disable ftp and net services to save memory for mod mens and etc

and onxmb.bat to block the psn access, unload the fps counter plugun, restore net services and etc.
 
Last edited:
@aldostools I used /netstatus.ps3?stop to stop the services to see if it frees up some memory to use the GTA V MOD menus, but the result was the opposite, while the services were running I had about 1300KB free and when I stopped the services 1100 KB free
 
@aldostools I used /netstatus.ps3?stop to stop the services to see if it frees up some memory to use the GTA V MOD menus, but the result was the opposite, while the services were running I had about 1300KB free and when I stopped the services 1100 KB free

It could be the way the game was programmed. Maybe it uses some offline cache, that is not necessary when there is an online connection. I really don't know why it consumes more memory.
 
It could be the way the game was programmed. Maybe it uses some offline cache, that is not necessary when there is an online connection. I really don't know why it consumes more memory.

Thats wierd XD, even on the XMB it consumes more memory.

Before:

kfZK8Hy.png


After
x1yNsvK.png



Also there is a small bug here: it usually says : Disabled,
If you run the web command twice it will say NS/ICON_WM_PS3.PNG and after a screeshot, the screenshot name file.
9RGw2n3.png

IXsxP1S.png

zb36xg1.png
 
Last edited:
Back
Top