17w ago - Following up on the
previous updates, today PlayStation 3 developer
deank has updated multiMAN PS3 Backup Manager to version 04.20.00 which introduces a new payload to allow for easier Firmware porting among the changes outlined below.
Download:
multiMAN v04.20.00 Base (20130220) (97.13 MB) /
multiMAN v04.20.00 Base (20130220) (Mirror) /
multiMAN v04.20.00 Base (20130220) (Mirror #2) /
multiMAN v04.20.00 Base (20130220) (Mirror #3) /
multiMAN v04.20.00 Base (20130220) (Mirror #4) /
multiMAN v04.20.00 FULL CEX (20130220) (291.27 MB) /
multiMAN v04.20.00 FULL CEX (20130220) (Mirror)
Official Rogero CFW 4.30 multiMAN 04.20.00+ Compatibility / Game Testing Chart
multiMAN v04.20.00 BASE (20130220) is now available online. NOTE: It is a BASE version, which means that it can be installed over ANY previous version and is also suitable for first-time users.
Changelog:
- Introducing the new mM payload which makes mM independent and easy to port for various firmwares
- Supports only 3.55 CEX/DEX, 4.21 CEX/DEX, 4.30 CEX, 4.31 CEX
- BD-ROM Emulator option in Settings can be set to "Enable / Disable" - no more "Hermes"/"Standard"
- Compatibility-wise it is better than "Standard" and "Hermes".
- This payload overwrites 252 bytes of strings in LV2 memory (and not 4000 bytes of code like other payloads), it doesn't use syscalls and doesn't rely on firmware functions, executes fast and improves performance
- Added option in settings "Redirect /app_home":
- Disable (/app_home will not be mounted at all)
- Enable (/app_home as used in previous versions - points to the game - for disc-less)
- Toolbox (on Rogero firmwares with pre-installed toolbox if you play from discs only - it allows you to return to stealthMAN without restart)
- For 3.55DEX and 4.21DEX mM now supports split-games, adds better disc-less compatibility and also allows loading of PS1 backups in BIN+CUE format from internal/external.
- IMPROVED DISC-LESS COMPATIBILITY: The new payload allows for some tweaks and there is 80% chance that games that didn't work disc-less will now work.
Includes:
- multiMAN ver 04.20.00 BASE CEX (20130220).pkg (30 MB)
- multiMAN ver 04.20.00 BASE DEX (20130220).pkg (37 MB)
- multiMAN ver 04.20.00 BASE CEX STEALTH (20130220).zip (29 MB)
CEX, DEX and STEALTH versions include Showtime 4.3.21, ps1emu for 3.55/4.21/4.3x, ps1netemu for 3.55/4.21/4.3x, AIOMOD.BIN and mM's theme.
Additionally to the BASE version contents, the full one adds:
- One motion background (4 MB)
- 9 themes (125MB)
- 5623 PS3 game covers (97 MB)
- 3425 PS1/PS2 game covers (43 MB)
This is the ONLY difference between BASE and FULL (the additional content, which usually doesn't change a lot from one FULL to another).
FAQ:
I'm playing Assassins Creed III with an odd issue: With the disc in drive it runs as a BLES version. When running discless it runs as BLUS - it is not a major issue but it will double the install space (4,5 GB x 2 = 9 GB) and the BLES run does not use the BLUS savegame (and vice-verra). Will it be possible to look into this ?
The problem here is even though Aliens: Colonial Marines works on EXT (or INT) Disc-less you are still NOT getting the FULL game data install of 2711MB ,so this game to be 100% running NEEDS the disc in the drive to install the game data ,after which you can play it disc-less without problems.
Without a disc in the drive your install data (the game doesn't even prompt you to install a thing) is only 39KB (previous payloads it was 1KB). With the disc in the drive (which is the correct way to load this game even though it does run without a disc) your install data is much bigger, 2711MB. So tagging this game to run 100% without any problems down the road ,it simply needs a disc in the drive to install the data. At some point in the game the ps3 MAY look for that installed game data and it isn't there when you run the game first disc-less (or dont install the game data with the disc),this will cause you problems later on.
Another example of this is with RAGE. The game doesn't even prompt you at all to install any game data disc-less and will most likely cause problems later on. With a disc in the drive you get the full game data install. After the game data is installed the game can be ran disc-less with out problems
Discless (as you all call it) is a special boot mode and some games act in a very weird way (if they boot at all). There is nothing that can be done about that.
Users are VERY confused about the differences between starting a game from /app_home and from a disc icon (/dev_bdvd). You can't expect the game to act the same when using /app_home and certainly a lot of games require that you remove the old gamedata (which you intalled when you played from disc) and install it again. You should decide beforehand whether you're going to play a game from the disc icon or from app_home and keep that decision until you play/finish the whole game. If you mix both modes you'll run into problems.
Conclusion - When you run a game discless for the first time, it may not install game data. It may look fine at first, but you may run into problems with the game. So a good practice, run the game with disc with. See if the game install the data. After that you may run the it discless.
multiMAN "payload" (which is not a payload)
/* (c) 2013 multiMAN path-substitute routine by dean
Example for 4.30CFW LV2:
MM_FUNCTION : 0x2D2418 (this is where the code of MM_FUNCTION is)
Function_Base : 0x2C3CD4 (this is the intercepted function)
Code change at : Function_Base + 0x24
--- mr r29, r3 // 7C 7D 1B 78 <-- Here is the ONLY 4-byte code change we make to LV2 to call the new function
+++ bl MM_FUNCTION // 48 00 E7 21 <-- 0xE720 (+1 for blr) = (MM_FUNCTION - Function_Base - 0x24)
... and here is the MM_FUNCTION: */
#define MAP_TABLE (0xE8) // address of path-map table (set to 0x80000000007FAE00)
// NEW_PATH (0xF0) // address of the returned spoofed path (set to 0x80000000007FFBE0)
#define ABS2(target) ((target) - .)
.org 0
mr %r29, %r3
li %r27, 1
rldicr %r27, %r27, 63, 0
ori %r27, %r27, (MAP_TABLE)@l
ld %r26, 0(%r27)
cmpwi %r26, 0
beqlr
ld %r31, 8(%r27)
check_next:
ld %r5, 0(%r26)
cmpwi %r5, 0
beq return_1
mr %r3, %r29
ld %r4, 16(%r26)
//strncmp
lbz %r11, 0(%r4)
lbz %r9, 0(%r3)
clrlwi %r0, %r11, 24
cmpw cr7, %r9, %r11
bne cr7, cmp_end
cmpwi cr7, %r0, 0
mtctr %r5
bne cr7, skip_to_next
b ABS2(cmp_end)
cmp_loop:
lbz %r11, 0(%r4)
lbz %r9, 0(%r3)
clrlwi %r0, %r11, 24
cmpw cr7, %r9, %r11
cmpwi cr6, %r0, 0
bne cr7, cmp_end
beq cr6, cmp_end
skip_to_next:
addi %r3, %r3, 1
addi %r4, %r4, 1
bdnz cmp_loop
b ABS2(found_match)
//strncmp end
cmp_end:
addi %r26, %r26, 32
b ABS2(check_next)
found_match:
ld %r4, 24(%r26)
mr %r3, %r31
//strcpy
lbz %r0, 0(%r4)
cmpwi cr7, %r0, 0
stb %r0, 0(%r3)
beq cr7, go_on_1
mr %r9, %r3
next_char_1:
lbzu %r0, 1(%r4)
cmpwi cr7, %r0, 0
stbu %r0, 1(%r9)
bne cr7, next_char_1
//strcpy end
go_on_1:
ld %r5, 8(%r26)
add %r3, %r3, %r5
mr %r4, %r29
ld %r5, 0(%r26)
add %r4, %r4, %r5
//strcpy
lbz %r0, 0(%r4)
cmpwi cr7, %r0, 0
stb %r0, 0(%r3)
beq cr7, go_on_2
mr %r9, %r3
next_char_2:
lbzu %r0, 1(%r4)
cmpwi cr7, %r0, 0
stbu %r0, 1(%r9)
bne cr7, next_char_2
//strcpy end
go_on_2:
mr %r29, %r31
return_1:
mr %r3, %r29
blr
That's it. Here are the offsets for other firmwares:
4.31CEX:
MM_FUNCTION : 0x2D2428 (this is where the code of MM_FUNCTION is)
Function_Base : 0x2C3CE0 (this is the intercepted function)
4.21CEX:
MM_FUNCTION : 0x2D0C98
Function_Base : 0x2C2558
4.21DEX:
MM_FUNCTION : 0x2EB418
Function_Base : 0x2D9718
3.55CEX:
MM_FUNCTION : 0x2BE0D0
Function_Base : 0x2B3274
3.55DEX:
MM_FUNCTION : 0x2D5B20
Function_Base : 0x2C8A94 MAP_TABLE:
The MAP_TABLE has the following structure (32 bytes per path-substitute-entry):
u64 org_path_len; (8 bytes - length of the path to be replaced)
u64 new_path_len; (8 bytes - length of the new path)
u64 org_path_adr; (8 bytes - LV2 address of the string with the path to be replaced)
u64 new_path_adr; (8 bytes - LV2 address of the new path)
The MAP_TABLE can be located anywhere and the pointers to the path strings can be anywhere.
Example of a MAP_TABLE:
peek(0x80000000000000E8): 0x80000000007FAE00 <-- Address of the MAP_TABLE
peek(0x80000000000000F0): 0x80000000007FFBE0 <-- Address of the replaced path
===
MAP_TABLE (for 5 path substitutions):
peek(0x80000000007FAE00): 0x0000000000000009 <-- org_path_len
peek(0x80000000007FAE08): 0x0000000000000016 <-- new_path_len
peek(0x80000000007FAE10): 0x80000000007FAEC0 <-- org_path_adr
peek(0x80000000007FAE18): 0x80000000007FAED0 <-- new_path_adr
peek(0x80000000007FAE20): 0x0000000000000012
peek(0x80000000007FAE28): 0x000000000000001F
peek(0x80000000007FAE30): 0x80000000007FAEE8
peek(0x80000000007FAE38): 0x80000000007FAF00
peek(0x80000000007FAE40): 0x0000000000000010
peek(0x80000000007FAE48): 0x0000000000000026
peek(0x80000000007FAE50): 0x80000000007FAF20
peek(0x80000000007FAE58): 0x80000000007FAF38
peek(0x80000000007FAE60): 0x000000000000000A
peek(0x80000000007FAE68): 0x0000000000000027
peek(0x80000000007FAE70): 0x80000000007FAF60
peek(0x80000000007FAE78): 0x80000000007FAF70
peek(0x80000000007FAE80): 0x0000000000000009
peek(0x80000000007FAE88): 0x0000000000000016
peek(0x80000000007FAE90): 0x80000000007FAF98
peek(0x80000000007FAE98): 0x80000000007FAFA8
MAP_PATHS:
peek(0x80000000007FAEC0): 0x2F6465765F626476 | /dev_bdv | <-- org_path (1)
peek(0x80000000007FAEC8): 0x6400000000000000 | d.......
peek(0x80000000007FAED0): 0x2F6465765F686464 | /dev_hdd | <-- new_path (1)
peek(0x80000000007FAED8): 0x302F47414D45532F | 0/GAMES/
peek(0x80000000007FAEE0): 0x506F505446530000 | PoPTFS..
peek(0x80000000007FAEE8): 0x2F6170705F686F6D | /app_hom | <-- org_path (2)
peek(0x80000000007FAEF0): 0x652F5053335F4741 | e/PS3_GA
peek(0x80000000007FAEF8): 0x4D45000000000000 | ME......
peek(0x80000000007FAF00): 0x2F6465765F686464 | /dev_hdd | <-- new_path (2)
peek(0x80000000007FAF08): 0x302F47414D45532F | 0/GAMES/
peek(0x80000000007FAF10): 0x506F505446532F50 | PoPTFS/P
peek(0x80000000007FAF18): 0x53335F47414D4500 | S3_GAME.
peek(0x80000000007FAF20): 0x2F6170705F686F6D | /app_hom
peek(0x80000000007FAF28): 0x652F555352444952 | e/USRDIR
peek(0x80000000007FAF30): 0x0000000000000000 | ........
peek(0x80000000007FAF38): 0x2F6465765F686464 | /dev_hdd
peek(0x80000000007FAF40): 0x302F47414D45532F | 0/GAMES/
peek(0x80000000007FAF48): 0x506F505446532F50 | PoPTFS/P
peek(0x80000000007FAF50): 0x53335F47414D452F | S3_GAME/
peek(0x80000000007FAF58): 0x5553524449520000 | USRDIR..
peek(0x80000000007FAF60): 0x2F6170705F686F6D | /app_hom
peek(0x80000000007FAF68): 0x652F000000000000 | e/......
peek(0x80000000007FAF70): 0x2F6465765F686464 | /dev_hdd
peek(0x80000000007FAF78): 0x302F47414D45532F | 0/GAMES/
peek(0x80000000007FAF80): 0x506F505446532F50 | PoPTFS/P
peek(0x80000000007FAF88): 0x53335F47414D452F | S3_GAME/
peek(0x80000000007FAF90): 0x5553524449522F00 | USRDIR/.
peek(0x80000000007FAF98): 0x2F6170705F686F6D | /app_hom
peek(0x80000000007FAFA0): 0x6500000000000000 | e.......
peek(0x80000000007FAFA8): 0x2F6465765F686464 | /dev_hdd
peek(0x80000000007FAFB0): 0x302F47414D45532F | 0/GAMES/
peek(0x80000000007FAFB8): 0x506F505446530000 | PoPTFS..
For the improved disc-less compatibility, here is the map-order (assuming /dev_hdd0/GAMES/POPTFS is the game backup):
/dev_bdvd /dev_hdd0/GAMES/POPTFS
/app_home/PS3_GAME /dev_hdd0/GAMES/POPTFS/PS3_GAME
/app_home/USRDIR /dev_hdd0/GAMES/POPTFS/PS3_GAME/USRDIR
/app_home/ /dev_hdd0/GAMES/POPTFS/PS3_GAME/USRDIR/
/app_home /dev_hdd0/GAMES/POPTFS The cool 252 bytes MM_FUNCTION which makes it happen:
7C 7D 1B 78 3B 60 00 01 7B 7B F8 06 63 7B 00 E8
EB 5B 00 00 2C 1A 00 00 4D 82 00 20 EB FB 00 08
E8 BA 00 00 2C 05 00 00 41 82 00 CC 7F A3 EB 78
E8 9A 00 10 89 64 00 00 89 23 00 00 55 60 06 3E
7F 89 58 00 40 9E 00 40 2F 80 00 00 7C A9 03 A6
40 9E 00 24 48 00 00 30 89 64 00 00 89 23 00 00
55 60 06 3E 7F 89 58 00 2F 00 00 00 40 9E 00 18
41 9A 00 14 38 63 00 01 38 84 00 01 42 00 FF DC
48 00 00 0C 3B 5A 00 20 4B FF FF 98 E8 9A 00 18
7F E3 FB 78 88 04 00 00 2F 80 00 00 98 03 00 00
41 9E 00 18 7C 69 1B 78 8C 04 00 01 2F 80 00 00
9C 09 00 01 40 9E FF F4 E8 BA 00 08 7C 63 2A 14
7F A4 EB 78 E8 BA 00 00 7C 84 2A 14 88 04 00 00
2F 80 00 00 98 03 00 00 41 9E 00 18 7C 69 1B 78
8C 04 00 01 2F 80 00 00 9C 09 00 01 40 9E FF F4
7F FD FB 78 7F A3 EB 78 4E 80 00 20 You can find the updated versions of bdRESET and gameDATA in the Web column. Both updated to version 5.00 and support mM 04.20.00.
Download:
gameDATA5_bdRESET5.rar (396.47 KB) /
lastGAME5.pkg (281.17 KB) /
multiMAN v04.20.00 Update CEX (20130223).pkg (2.37 MB)
p.s. These are only compatible with mM 04.20.00+ and its own payload and won't work with other payloads or redirections set by other tools/managers.
You can find the updated lastGAME 5.0 in the Web column. It now supports mM 04.20.00 and more. With the next update mM will pass information to lastGAME when you launch a PS1 backup. It means that the next time you want to load the same PS1 BIN/CUE you can do it from XMB. As you know it also supports mounting the last AVCHD movie you loaded from mM.
If you wish to test the lastGAME+latest mM you can install this minor update to 04.20.00. It requires that you have BASE or FULL 04.20.00 already installed. lastGAME now supports 3.55/4.21 DEX firmwares, too.
Update: With the next update mM will pass information to lastGAME when you launch a PS1 backup. It means that the next time you want to load the same PS1 BIN/CUE you can do it from XMB.

As you know it also supports mounting the last AVCHD movie you loaded from mM.
Download:
lastGAME5.pkg (281.16 KB) /
multiMAN v04.20.00 Update CEX (20130223).pkg (2.37 MB) /
gameDATA5_bdRESET5_lastGAME5.rar (677.67 KB) /
multiMAN v04.20.00 Update CEX (20130224).pkg (2.36 MB)
- lastGAME now supports 3.55/4.21 DEX firmwares, too.
- lastGAME now supports the improved disc-less game loading (regular non-bdmirror/non-extGameData games)
- lastGAME now supports PS1 hdd/usb backup formats
If you wish to test the lastGAME+latest mM you can install this minor update to 04.20.00. It requires that you have BASE or FULL 04.20.00 already installed.
- You can press [TRIANGLE] in the RETRO column and select the emulator type from a list
menu
- Fixed saving settings/last-state when loading "bd-mirror" or "ext. game data" games
It now supports selection of "Emulator type" in the side menu in the RETRO column, making it faster to switch grouping than pressing [SQUARE] multiple times. So press [TRIANGLE] in the Retro column (over Refresh or a Rom) and select: [Group Roms by Emulator]. Then you'll see a list menu.
p.s. Updated lastGAME5.pkg to support 4.31 CFW.
All three updated to support mM 04.20.00 and firmwares 3.55CEX/DEX, 4.21CEX/DEX, 4.30CEX, 4.31CEX. lastGAME updated to support PS1 backups for direct launch from XMB (of course requires mM installed) The updated version of all three (and showtime) are available in the WEB COLUMN.
Showtime 04.03.032 by
Andreas Oman is now available online for mM and as standalone in the web column.
Download:
Showtime 04.03.032 [CEX].pkg] (5.67 MB) /
Showtime 04.03.032 [DEX].pkg (5.73 MB)
Driving me up the wall...
Could someone plz reupload the PS2 Classics Placeholder R2 package? the mediafire-link is down, i tried so often.
Cheers
Blade