PS3 [UPDATE] webMAN MOD 1.46.00 - Games mounted from XMB without webbrowser_plugin (using idle_plugin)

Update (2/2/17/) -- v1.46.01
Original Article (Jan 31, 2017)
Plugin development continues on the PS3 for Custom firmware users, this week alone we have seen some new features added lin PSNpatch by KW (w./ Homebrew Blocker) and we have seen deank back with new updates to webMAN that added NTFS Support / a new XMB game loading that no longer uses the web browser trick (webbrowser_plugin), in other words the flash you see when mounting a game on the XMB In,webMAN MOD v1.46.00 the plugin incorporates that function but in a different way, this is due to the differences under the hood of the plugin. As webMAN MOD contain different support for various add-on/features that the original project by deank does not support/contain so the usage and handling of things has to be done differently to fit each project the best, for an explanation that is far better then i could offer i suggest checking out the differences between the implementation by deank and then by aldostools as its very well explained in our forums by
@bguerville .


wmm.jpg


  • Update (2/2/17) webMAN MOD 1.46.01
    • FTP Server uses again the same algorithm on all editions.
      In 1.46.00, the FTP Server in full edition was based on the original webMAN due initial issues with NTFS library. The issue now has been fixed

  • webMAN MOD 1.46.00
    • Games now are mounted directly from XMB without the webbrowser_plugin
    Thanks to deank for the new XMB proxy included in webMAN 1.46
    • Re-structured the project : Moved all the sub-projects to _ Projects _ folder

    via Aldostols

    I have updated wm_proxy, which now is 40% smaller ;) only 2968 bytes.
    SRC: https://github.com/aldostools/webMAN-MOD/tree/master/_Projects_/wm_proxy

    In my tests I had issues opening the Internet Search option (found under Network.menu of XMB). So in wMM 1.46.00, I used idle_plugin, instead of kensaku_plugin or xai_plugin (which is already used by CFW Settings menu). According to psdevwiki, this idle_plugin doesn't have subs in the interfaces, so I guess it is safe to remap it.

    I also omitted the mapping of .rco, because it's redundant (there is one file in dev_flash). This saves a few extra bytes in code.

    webMAN MOD 1.45.11
    • Added direct NTFS support to 'Full Edition'
    • Thanks to deank, freddy38510, bguerville, Zar, Joonie, Estwald.
      • Added support for auto-mount game when an USB drive is connected
        • 'Check for AUTOBOOT.ISO on startup' must be checked
        • The USB drives to be checked are the ones selected in /setup.ps3 (except /dev_ntfs)
        • The game must be named AUTOMOUNT.ISO or a JB game copied to the root of the drive
      • Added /minver.ps3



Download: via Release Page
 
Last edited:
There is a new test build:
https://github.com/aldostools/webMAN-MOD/releases/latest
- The proxy idle_plugin.sprx is not longer generated by webMAN MOD
* Use the updater to install it or copy it manually to /dev_hdd0/tmp/idle_plugin.sprx
(if the file does not exist, the XML will use webbrowser_plugin)
- Reduced size of 'language' function
- Added tracks support to PSXISO stored on /net
- Added check of max number of tracks to rawseciso
- Improved algorithm of content filter in 'slaunch MOD'

The embedded idle_plugin.sprx was requiring a large memory stack and it causing issues.


SRC: https://github.com/aldostools/webMAN-MOD/commits/master


@smikk Thank you for your feedback. I'm using the same structure used by the original slaunch/sMAN to keep compatibility between the projects.

There are various options that can be implemented... for the moment try reducing the path of your files.
 
Last edited:
There is a new test build:
https://github.com/aldostools/webMAN-MOD/releases/latest
- The proxy idle_plugin.sprx is not longer generated by webMAN MOD
* Use the updater to install it or copy it manually to /dev_hdd0/tmp/idle_plugin.sprx
(if the file does not exist, the XML will use webbrowser_plugin)
- Reduced size of 'language' function
- Added tracks support to PSXISO stored on /net
- Added check of max number of tracks to rawseciso
- Improved algorithm of content filter in 'slaunch MOD'

The embedded idle_plugin.sprx was requiring a large memory stack and it causing issues.


SRC: https://github.com/aldostools/webMAN-MOD/commits/master


@smikk Thank you for your feedback. I'm using the same structure used by the original slaunch/sMAN to keep compatibility between the projects.

There are various options that can be implemented... for the moment try reducing the path of your files.

- Installer is putting plugin as /dev_hdd0/tmpidle_plugin.sprx instead of /dev_hdd0/tmp/idle_plugin.sprx

- Back to using the web browser to mount games again
* Tried moving /dev_hdd0/tmpidle_plugin.sprx to /dev_hdd0/tmp/idle_plugin.sprx (didn't work)
* Tried adding all various combinations manually to boot_plugins.txt (didn't work)

- PSX games still blackscreen. (bin/cue on external fat32 drive)

1.47.00 (+10)

Sorry for multiple edits... Still playing with it. :)
 
Last edited:
Tried webman 1.47 with habib cfw 4.81.2 and latest cobra last night.

PS3 games load fine.
Ps1 games load fine.
Ps2 games completely lose controller sync and requires a full system reboot and USB cable connection to re-sync. Ps2 games unplayable.

Still has the same problem as 1.46.2 where if you load a game with Multiman first, and actions in webman locks up the PS3 requiring a reboot. But as long as you reboot normally after loading Multiman, it's fine.
 
About wMM, isn't it the same issue discussed days ago...?
Also iirc it is not rebooting per se that changes anything really, it's the wMM content scan on startup feature...
I think we established a while ago that using certain recent wMM versions after multiman can lead to xmb freeze unless you refresh xml in wMM after exiting multiman.
In case of a freeze, if you use the wMM automatic scan on reboot, you can use wMM properly again otherwise you would probably also have to refresh xml manually first.
 
About wMM, isn't it the same issue discussed days ago...?
Also iirc it is not rebooting per se that changes anything really, it's the wMM content scan on startup feature...
I think we established a while ago that using certain recent wMM versions after multiman can lead to xmb freeze unless you refresh xml in wMM after exiting multiman.
In case of a freeze, if you use the wMM automatic scan on reboot, you can use wMM properly again otherwise you would probably also have to refresh xml manually first.
on mine, even clicking on the manual wMM xml refresh locks the system after a Multiman game has been loaded. After loading a game in Multiman, clicking on ANY actions from the webMAN menu locks the system, until a complete reboot.

Also - I have auto xml refresh on startup disabled in wMM, because in these latest versions it takes WAY too long to complete, compared to earlier versions. the XML refresh delays startup by like 5 minutes, which is completely unacceptable. This is why I have it disabled, and I just run it manual when I add a new game (which at this point is never, because I have all the games I want and PS3 games aren't really being made anymore).

The only way I've found to have it stable, is to disable xml refresh on startup and also disable "load last game" on startup. That way, if I load a game with mmCm, and then restart, it doesn't try to re-load that game, so wMM is safe to use.
 
Last edited:
There is a new test build:

@smikk Thank you for your feedback. I'm using the same structure used by the original slaunch/sMAN to keep compatibility between the projects.

There are various options that can be implemented... for the moment try reducing the path of your files.


Mr. @aldostools ,
deank release http://deanbg.com/sman.sprx version 1.06 source: http://deanbg.com/sman_1.06.zip


It changed the structure in version sMan 1.06
Code:
Project :sMAN-
file :slaunch.h
...
typedef struct // 1MB for 2000+1 titles
{
uint8_t type;
char id[10];
char name[141]; // 128+13 for added ' [BXXX12345]'
char icon[160];
char path[160];
char padd[52];
} __attribute__((packed)) _slaunch;
....

I think deank has solved the problem in this way, but I have not verified Sman causes me the same problem.

edit 21-02-2012

Tested with sMan not find the game in subfolders.

Thanks
 
Last edited:
Is there a way to change it back to say "My Games" in the XMB, instead of webMAN Games?

I preferred it the other way. In fact, it would be nice if we could customize.
 
on mine, even clicking on the manual wMM xml refresh locks the system after a Multiman game has been loaded. After loading a game in Multiman, clicking on ANY actions from the webMAN menu locks the system, until a complete reboot.

Also - I have auto xml refresh on startup disabled in wMM, because in these latest versions it takes WAY too long to complete, compared to earlier versions. the XML refresh delays startup by like 5 minutes, which is completely unacceptable. This is why I have it disabled, and I just run it manual when I add a new game (which at this point is never, because I have all the games I want and PS3 games aren't really being made anymore).

The only way I've found to have it stable, is to disable xml refresh on startup and also disable "load last game" on startup. That way, if I load a game with mmCm, and then restart, it doesn't try to re-load that game, so wMM is safe to use.
Given all the recent developments in webman & forks, the current releases should all be considered as test builds.
For a few weeks now, there has been so many features added & so much code added or removed that we should always assume the recent builds to be unstable and/or contain bugs.

The only way for end users to have a more stable system at the moment is to go back to older versions & wait for a few weeks until all the newly developed stuff gets tested properly, debugged when needed & eventually fixed...
 
Given all the recent developments in webman & forks, the current releases should all be considered as test builds.
For a few weeks now, there has been so many features added & so much code added or removed that we should always assume the recent builds to be unstable and/or contain bugs.

The only way for end users to have a more stable system at the moment is to go back to older versions & wait for a few weeks until all the newly developed stuff gets tested properly, debugged when needed & eventually fixed...
understood. That's why I reported it. I went back to 1.46.02 since it was more stable.
 
Tested with sMan not find the game in subfolders.
Thanks

deank already commented that sMAN/webMAN does not scan subfolders like wMM.

Is there a way to change it back to say "My Games" in the XMB, instead of webMAN Games?

I preferred it the other way. In fact, it would be nice if we could customize.

Use the full edition and edit the language file. LANG_XX.TXT is intended for customizations.
The other files will be replaced on each update.

Try to not exceed the size of the strings too much.

Given all the recent developments in webman & forks, the current releases should all be considered as test builds.
True. That's why I have asked to the boss (STL) that do not post any news about webMAN MOD on the front page until the bugs in 1.47.00 have been ironed.
 
Yeah, a lot of massive changes going on lately.

I've been falling back to webman vanilla 1.47n as my daily driver and trying out builds of webmanmod every now and then to see how things are progressing.

People have jobs and lives, things will get there when they get there.
Not easy to find time for side projects like this sometimes.
Be glad they share and don't just keep them as personal projects!

Realy appreciate the effort you guys put in. :encouragement:
 


[QUOTE="smikk, post: 73696, member: 830"][USER=89]@aldostools
,

I tested Webman 1:47:00 + sLaunch 1:01 last 20-Feb-2017 commit e497c4c
I made the following tests:

Testing, startup, game.iso on NTFS partition:

If I start the game from the XMB on Webman MyGame the game is mounted correctly.

View attachment 8395 View attachment 8396

If I start the game by sLaunch 1:01 and the game it is sometimes not mounted returning error.

Image report not working:
View attachment 8403 View attachment 8398 View attachment 8399

Image report working:
View attachment 8400 View attachment 8401 View attachment 8402


After several tests, are perhaps I understand, what the problem is.
I suppose that is the path of the LEN + nomegame.iso (NTFS), let me explain better the path is truncated, or is possible special caracter " ' "

I found in the slaunch code /main.c

the structure:
Code:
typedef struct

char path[128];
char icon[128];
char name[112];
char padding[5];
char id[10];
uint8_t type;
} __attribute__((packed)) _slaunch;

is possible Char path[128];has limited dimensions.

if you can increase the size of the path 256 or 512 or directly to 1024

Or different structure


View compare image:

View attachment 8404 View attachment 8405

Thank you so much Mr. Aldos[/QUOTE]

Mr. @aldostools ,
deank release http://deanbg.com/sman.sprx version 1.06 source: http://deanbg.com/sman_1.06.zip


It changed the structure in version sMan 1.06
Code:
Project :sMAN-
file :slaunch.h
...
typedef struct // 1MB for 2000+1 titles
{
uint8_t type;
char id[10];
char name[141]; // 128+13 for added ' [BXXX12345]'
char icon[160];
char path[160];
char padd[52];
} __attribute__((packed)) _slaunch;
....

I apologize for my insistence on the request to increase the size of the path in the structure _slaunch, because the compatibility between SMAN and sLaunch is no longer the same.

From my analysis, current Sman structure consumes 1MB x 2000 Game, instead of the current one sLaunch 1.01 consumes 768KB x2000 Game.

The new structure with Path [256], consume 1044KB x 2000 Game.

Code:
typedef struct

char path[256];
char icon[128];
char name[112];
char padding[5];
char id[10];
uint8_t type;
} __attribute__((packed)) _slaunch;

@aldostools
I ask this because I have a grouped organization folders, even eliminating the folder name information the path almost reaches the limit of 128, and in any game with a long name would cause me the error mentioned in the previous post.

I ask this because WebMan + slaunch 1.01 support scanning of subfolders.

I also noticed that the structure is defined in both Webman that sLaunch


With gratitude for all that right now in fact.
Thanks so much
smikk[/user]
 
Last edited:
A more versatile structure could be using fields of variable length:

typedef struct // 1MB for 2000+1 titles
{
uint8_t type;
char id[10];
uint8_t path_pos; // start position of path
uint16_t icon_pos; // start position of icon
uint16_t padd;
char name[508]; // name + path + icon
} __attribute__((packed)) _slaunch;

This structure has the same size of the record used by sMAN (524 bytes), but it allows larger values if their combined sizes don't exceed 508 bytes.

For instance, you can have a name of 64, an icon of 64 and a path of 380 characters; or a name of 128, an icon of 140 and a path of 240.

char *name = slaunch[game_idx].name;
char *path = slaunch[game_idx].path;
char *icon = slaunch[game_idx].icon;

changes to:

char *name = slaunch[game_idx].name; // remains the same because includes the NULL terminator (up to 128 chars)
char *path = slaunch[game_idx].name + slaunch[game_idx].path_pos; // up to 454 chars
char *icon = slaunch[game_idx].name + slaunch[game_idx].icon_pos; // at least 54 chars reserved for icon path (multiMAN covers use 52+1)

I haven't tested this code, but to create the record would be something like:
Code:
slaunch.path_pos = snprintf(slaunch.name, 128, "%s", name) + 1;
slaunch.icon_pos = snprintf(slaunch.name + slaunch.path_pos, 454 - slaunch.path_pos, "/mount_ps3%s%s/%s", neth, path, enc_filename) + slaunch.path_pos + 1;
snprintf(slaunch.name + slaunch.icon_pos, 507 - slaunch.icon_pos, "%s", icon);
 
Last edited:
A more versatile structure could be using fields of variable length:

typedef struct // 1MB for 2000+1 titles
{
uint8_t type;
char id[10];
uint8_t path_pos; // start position of path
uint16_t icon_pos; // start position of icon
uint16_t padd;
char name[508]; // name + path + icon
} __attribute__((packed)) _slaunch;

This structure has the same size of the record used by sMAN (524 bytes), but it allows larger values if their combined sizes don't exceed 508 bytes.

For instance, you can have a name of 64, an icon of 64 and a path of 380 characters; or a name of 128, an icon of 140 and a path of 240.

char *name = slaunch[game_idx].name;
char *path = slaunch[game_idx].path;
char *icon = slaunch[game_idx].icon;

changes to:

char *name = slaunch[game_idx].name; // remains the same because includes the NULL terminator (up to 128 chars)
char *path = slaunch[game_idx].name + slaunch[game_idx].path_pos; // up to 454 chars
char *icon = slaunch[game_idx].name + slaunch[game_idx].icon_pos; // at least 54 chars reserved for icon path (multiMAN covers use 52+1)

I haven't tested this code, but to create the record would be something like:
Code:
slaunch.path_pos = snprintf(slaunch.name, 128, "%s", name) + 1;
slaunch.icon_pos = snprintf(slaunch.name + slaunch.path_pos, 454 - slaunch.path_pos, "/mount_ps3%s%s/%s", neth, path, enc_filename) + slaunch.path_pos + 1;
snprintf(slaunch.name + slaunch.icon_pos, 507 - slaunch.icon_pos, "%s", icon);

@aldostools
Thank you, excellent, this structure is more powerful than the last.
I believe that at this stage it is a good compromise.



I would like to alert another anomaly in WebMan Mod and sLaunch, when cecked dev_ntfs not scan the subfolder is not located me of the game.

Example.

dev_ntfs0 / PS3ISO / FolderNameTitle / GameName.iso NOT FOUND

Thank so much
 
@aldostools
Thank you, excellent, this structure is more powerful than the last.
I believe that at this stage it is a good compromise.



I would like to alert another anomaly in WebMan Mod and sLaunch, when cecked dev_ntfs not scan the subfolder is not located me of the game.

Example.

dev_ntfs0 / PS3ISO / FolderNameTitle / GameName.iso NOT FOUND

Thank so much

Thank you for the report... I will test this issue in the next few days if I have time.

I implemented the new slaunch structure in the binaries currently available on github/mediafire.

'slaunch MOD' has other major changes:
- use SELECT to access favorites menu,
- use START to add/remove items,
- added R2+L2 as alternative combo,
- added customizable background per content type.
- Added gameDATA option to side menu (TRIANGLE)
- The game list used by slaunch MOD now is /dev_hdd0/tmp/wmtmp/slist.bin
 
Thank you for the report... I will test this issue in the next few days if I have time.

I implemented the new slaunch structure in the binaries currently available on github/mediafire.

'slaunch MOD' has other major changes:
- use SELECT to access favorites menu,
- use START to add/remove items,
- added R2+L2 as alternative combo,
- added customizable background per content type.
- Added gameDATA option to side menu (TRIANGLE)
- The game list used by slaunch MOD now is /dev_hdd0/tmp/wmtmp/slist.bin

Mr. @aldostools

The record is correct in slist.bin supports long paths.
In attaching the files created by the new structure sLaunch 1.06.

http://www.psx-place.com/attachment...7/?temp_hash=c5835df284a8741662e7ecae2b417591

--------------------------------------------------------------------------------------------------------------------------------------------

Instead I have to report a bug about the failure of the path display in sLaunch when the path exceeds the length of 128 characters.

Instead of mounting error of the game, when this has a path that exceeds 128 characters it is re-presented, although in sList.bin everything is OK.

In sList.bin, to '0x956C offset is stored following the path of the Game:

BLES00246 METAL GEAR SOLID 4 GUNS OF PATRIOTS

But when I do the game to mount sLaunch 1.06 I get an error.

See the video I sent you

https://drive.google.com/open?id=0B4jVHQdl-_X_REFYNEVCdW1jU1E

--------------------------------------------------------------------------------------------------------------------------------------------
Another view of game ntfs partition I had to disable dev_ntfs option in the setup and use the old prepntfs 1.17 from xmb.

Thank you so much
smikk
 

Attachments

Last edited:
Rebug 4.81.2, wwm 1.47.00 with slunch 1.01.

XMB and http working fine. When I start sLaunch, it's starts with blank squares (no text, no images) and if I press any arrow button, sLaunch freezes. I removed all game folders and updated xml -> sLaunch freezes at start.

PS.: VSH menu in wmm never worked for me. When I call VSH by pressing buttons - ps3 freezes too. This happens in any version of wmm.

In last release no freezes in slaunch - good) I found what causes problem with no text, problem was in SYSTEM LANGUAGE! If choose Russian, i see no text and if english selected - all working fine.
 
Last edited:
Mr. @aldostools

The record is correct in slist.bin supports long paths.
In attaching the files created by the new structure sLaunch 1.06.

http://www.psx-place.com/attachment...7/?temp_hash=c5835df284a8741662e7ecae2b417591

--------------------------------------------------------------------------------------------------------------------------------------------

Instead I have to report a bug about the failure of the path display in sLaunch when the path exceeds the length of 128 characters.

Instead of mounting error of the game, when this has a path that exceeds 128 characters it is re-presented, although in sList.bin everything is OK.

In sList.bin, to '0x956C offset is stored following the path of the Game:

BLES00246 METAL GEAR SOLID 4 GUNS OF PATRIOTS

But when I do the game to mount sLaunch 1.06 I get an error.

See the video I sent you

https://drive.google.com/open?id=0B4jVHQdl-_X_REFYNEVCdW1jU1E

--------------------------------------------------------------------------------------------------------------------------------------------
Another view of game ntfs partition I had to disable dev_ntfs option in the setup and use the old prepntfs 1.17 from xmb.

Thank you so much
smikk

The code on github has a limit of 160 bytes for the path. I fixed the bug in this build...
http://aldostools.org/temp/test/slaunch.sprx

old code:
char path[160];
snprintf(path, 160, "%s", slaunch[cur_game].name + slaunch[cur_game].path_pos);

current code:
char path[512];
snprintf(path, 512, "%s", slaunch[cur_game].name + slaunch[cur_game].path_pos);

The 'old' prepntfs 1.17 is suggested over the internal prepntfs (which still needs more tests and has some limitations),
 
Last edited:

Featured content

Trending content

Back
Top