diff --git a/flags.h b/flags.h index d0b7ff57b..e8fdd932f 100644 --- a/flags.h +++ b/flags.h @@ -22,26 +22,27 @@ #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount #define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 #define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos #define NET3NET4 1 // add support for /net3 and /net4 #define PS3NET_SERVER 1 // ps3 net server +#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB #define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) #define LAUNCHPAD 1 // create /dev_hdd0/tmp/wm_lauchpad.xml diff --git a/flags/flags_ccapi.h b/flags/flags_ccapi.h index 467fc22fb..7c3999c3e 100644 --- a/flags/flags_ccapi.h +++ b/flags/flags_ccapi.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_cobra.h b/flags/flags_cobra.h index d5bf1dd13..dab9ce9c6 100644 --- a/flags/flags_cobra.h +++ b/flags/flags_cobra.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_english.h b/flags/flags_english.h index ba8b4ae70..98c381dfb 100644 --- a/flags/flags_english.h +++ b/flags/flags_english.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_full.h b/flags/flags_full.h index d0b7ff57b..d47a1ef67 100644 --- a/flags/flags_full.h +++ b/flags/flags_full.h @@ -17,31 +17,32 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount #define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 #define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos #define NET3NET4 1 // add support for /net3 and /net4 #define PS3NET_SERVER 1 // ps3 net server +#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB #define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) #define LAUNCHPAD 1 // create /dev_hdd0/tmp/wm_lauchpad.xml diff --git a/flags/flags_lite.h b/flags/flags_lite.h index 662071bed..069a4224f 100644 --- a/flags/flags_lite.h +++ b/flags/flags_lite.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) //#define COPY_PS3 1 // /copy.ps3/ //#define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -//#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +//#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) //#define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) //#define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) //#define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -//#define SPOOF_CONSOLEID 1 // spoof idps/psid -//#define VIRTUAL_PAD 1 // virtual pad +//#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +//#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) //#define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) (required by VSH Menu for webMAN) //#define GET_KLICENSEE 1 // /klic.ps3 //#define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_noncobra.h b/flags/flags_noncobra.h index 595d84bb9..9c7909fd0 100644 --- a/flags/flags_noncobra.h +++ b/flags/flags_noncobra.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_ps3mapi.h b/flags/flags_ps3mapi.h index fa8d454b7..177b6baae 100644 --- a/flags/flags_ps3mapi.h +++ b/flags/flags_ps3mapi.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_rebug_cobra_english.h b/flags/flags_rebug_cobra_english.h index ad0582b69..179bce8c8 100644 --- a/flags/flags_rebug_cobra_english.h +++ b/flags/flags_rebug_cobra_english.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_rebug_cobra_multi23.h b/flags/flags_rebug_cobra_multi23.h index 70a780766..56cd472a8 100644 --- a/flags/flags_rebug_cobra_multi23.h +++ b/flags/flags_rebug_cobra_multi23.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/flags/flags_rebug_cobra_ps3mapi.h b/flags/flags_rebug_cobra_ps3mapi.h index 199e8b054..5f0f8f9b1 100644 --- a/flags/flags_rebug_cobra_ps3mapi.h +++ b/flags/flags_rebug_cobra_ps3mapi.h @@ -17,29 +17,30 @@ #define EXT_GDATA 1 // /extgd.ps3?status /extgd.ps3?enable /extgd.ps3?disable (external gameDATA) #define COPY_PS3 1 // /copy.ps3/ #define DEBUG_MEM 1 // /dump.ps3 / peek.lv1 / poke.lv1 / find.lv1 / peek.lv2 / poke.lv2 / find.lv2 -#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) +#define VIDEO_REC 1 // /videorec.ps3 start/stop video recording (in-game only) (thanks to mysis & 3141card) #define LOAD_PRX 1 // /loadprx.ps3?slot=n&prx=path/file.sprx (load prx) #define FAKEISO 1 // support .ntfs[BDFILE] (fake ISO) #define BDVD_REGION 1 // change BD/DVD region #define REMOVE_SYSCALLS 1 // remove syscalls on startup and using R2+TRIANGLE -#define SPOOF_CONSOLEID 1 // spoof idps/psid -#define VIRTUAL_PAD 1 // virtual pad +#define SPOOF_CONSOLEID 1 // spoof idps/psid (thanks to M@tumot0 & zar) +#define VIRTUAL_PAD 1 // virtual pad (thanks to OsiriX) #define WM_REQUEST 1 // accept commands via local file /dev_hdd0/tmp/wm_request (required by VSH Menu for webMAN) #define GET_KLICENSEE 1 // /klic.ps3 #define PS3_BROWSER 1 // /browser.ps3 / open browser combos //// EXTRA FEATURES //// -//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START +//#define XMB_SCREENSHOT 1 // screenshot XMB using L2 + R2 + SELECT + START (thanks to 3141card) //#define AUTO_EJECT_DISC 1 // eject disc holding SELECT on mount //#define SWAP_KERNEL 1 // load custom lv2_kernel.self patching LV1 and soft rebooting (use /copy.ps3) //#define WEB_CHAT 1 // /chat.ps3 //#define WM_CUSTOM_COMBO "/dev_hdd0/tmp/wm_combo/wm_custom_" // advanced custom combos //#define NET3NET4 1 // add support for /net3 and /net4 +//#define PKG_HANDLER 1 // /download.ps3?url=, /download.ps3?to=&url=, /install.ps3 (thanks to bguerville & mysis) //// TEST FEATURES //// -//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) +//#define PS2_DISC 1 // uncomment to support /mount.ps2 (mount ps2 game folder as /dev_ps2disc) requires a physical PS2 disc to swap discs (thanks to WuEpE) //#define NOSINGSTAR 1 // remove SingStar icon from XMB //#define SYS_BGM 1 // system background music (may freeze the system when enabled) //#define USE_DEBUG 1 // debug using telnet -//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) +//#define RAWISO_PSX_MULTI // support for multi PSX from Iris Manager (it's incomplete - only rawseciso.h code is complete) (thanks to Estwald) diff --git a/include/file_manager.h b/include/file_manager.h index ba1b7762d..81f0bb37e 100644 --- a/include/file_manager.h +++ b/include/file_manager.h @@ -73,6 +73,10 @@ static void add_list_entry(char *tempstr, bool is_dir, char *ename, char *templn } #endif +#ifdef PKG_HANDLER + else if( !strcmp(ext, ".pkg") || !strcmp(ext, ".PKG") ) + sprintf(fsize, "%'llu %s", templn, sz, sf); +#endif #ifdef COPY_PS3 else if( !strcmp(ext, ".pkg") || !strcmp(ext, ".p3t") || !extcmp(name, ".edat", 5) @@ -85,7 +89,7 @@ static void add_list_entry(char *tempstr, bool is_dir, char *ename, char *templn || !memcmp(name, "lv2_kernel", 10) #endif ) - sprintf(fsize, "%'llu %s", templn, sbytes, STR_BYTE, islike(templn, "/dev_hdd0") ? "/dev_usb000" : "/dev_hdd0", sz, sf); + sprintf(fsize, "%'llu %s", templn, sbytes, STR_BYTE, islike(templn, "/dev_hdd0") ? "/dev_usb000" : "/dev_hdd0", sz, sf); #endif //#ifdef COPY_PS3 diff --git a/include/games_html.h b/include/games_html.h index a93751293..57954fea1 100644 --- a/include/games_html.h +++ b/include/games_html.h @@ -408,10 +408,10 @@ static int add_net_game(int ns, netiso_read_dir_result_data *data, int v3_entry, if(data[v3_entry].is_directory && IS_ISO_FOLDER) { - char iso_ext[4][4] = {"iso", "bin", "mdf", "img"}; - for(u8 e = 0; e < 5; e++) + char iso_ext[8][4] = {"iso", "ISO", "bin", "BIN", "mdf", "MDF", "img", "IMG"}; + for(u8 e = 0; e < 10; e++) { - if(e >= 4) return FAILED; + if(e >= 8) return FAILED; sprintf(tempstr, "%s/%s/%s.%s", param, data[v3_entry].name, data[v3_entry].name, iso_ext[e]); if(remote_stat(ns, tempstr, &is_directory, &file_size, &mtime, &ctime, &atime, &abort_connection)==0) break; @@ -629,6 +629,8 @@ static bool game_listing(char *buffer, char *templn, char *param, char *tempstr, if(( f0<7 || f0>NTFS) && file_exists(drives[f0])==false) continue; // + if(ns>=0) {shutdown(ns, SHUT_RDWR); socketclose(ns);} + ns=-2; uprofile=profile; default_icon=0; for(u8 f1=filter1; f1<11; f1++) // paths: 0="GAMES", 1="GAMEZ", 2="PS3ISO", 3="BDISO", 4="DVDISO", 5="PS2ISO", 6="PSXISO", 7="PSXGAMES", 8="PSPISO", 9="ISO", 10="video" { @@ -674,11 +676,10 @@ static bool game_listing(char *buffer, char *templn, char *param, char *tempstr, #ifdef COBRA_ONLY #ifndef LITE_EDITION - if(ns==-2 && is_net) ns=connect_to_remote_server(f0-7); + if(is_net && (ns<0)) ns = connect_to_remote_server(f0-7); #endif #endif if(is_net && (ns<0)) break; - // bool ls; u8 li, subfolder; li=subfolder=0; ls=false; // single letter folder @@ -687,6 +688,7 @@ static bool game_listing(char *buffer, char *templn, char *param, char *tempstr, read_folder_html: // #ifndef LITE_EDITION + #ifdef COBRA_ONLY if(is_net) { char ll[4]; if(li) sprintf(ll, "/%c", '@'+li); else ll[0] = NULL; @@ -695,6 +697,7 @@ static bool game_listing(char *buffer, char *templn, char *param, char *tempstr, if(li==99) sprintf(param, "/%s %s", paths[f1], AUTOPLAY_TAG); } else + #endif #endif { if(f0==NTFS) //ntfs @@ -710,6 +713,8 @@ static bool game_listing(char *buffer, char *templn, char *param, char *tempstr, if(is_net && open_remote_dir(ns, param, &abort_connection) < 0) goto continue_reading_folder_html; //continue; #endif #endif + + CellFsDirent entry; u64 read_e; u8 is_iso=0; @@ -946,8 +951,10 @@ static bool game_listing(char *buffer, char *templn, char *param, char *tempstr, if(data2) sys_memory_free(data2); #endif #endif + // continue_reading_folder_html: + if((uprofile>0) && (f1<9)) {subfolder=uprofile=0; goto read_folder_html;} if(is_net && ls && li<27) {li++; goto subfolder_letter_html;} else if(li<99 && f1<7) {li=99; goto subfolder_letter_html;} // diff --git a/include/games_xml.h b/include/games_xml.h index 90b12935a..045d58d6d 100644 --- a/include/games_xml.h +++ b/include/games_xml.h @@ -526,6 +526,8 @@ static bool update_mygames_xml(u64 conn_s_p) } if(( f0<7 || f0>NTFS) && file_exists(drives[f0])==false) continue; +// + if(ns>=0) {shutdown(ns, SHUT_RDWR); socketclose(ns);} ns=-2; uprofile=profile; for(u8 f1=0; f1<11; f1++) // paths: 0="GAMES", 1="GAMEZ", 2="PS3ISO", 3="BDISO", 4="DVDISO", 5="PS2ISO", 6="PSXISO", 7="PSXGAMES", 8="PSPISO", 9="ISO", 10="video" @@ -567,11 +569,10 @@ static bool update_mygames_xml(u64 conn_s_p) #ifdef COBRA_ONLY #ifndef LITE_EDITION - if(ns==-2 && is_net) ns=connect_to_remote_server(f0-7); + if(is_net && (ns<0)) ns = connect_to_remote_server(f0-7); #endif #endif if(is_net && (ns<0)) break; - // bool ls; u8 li, subfolder; li=subfolder=0; ls=false; // single letter folder @@ -580,6 +581,7 @@ static bool update_mygames_xml(u64 conn_s_p) read_folder_xml: // #ifndef LITE_EDITION + #ifdef COBRA_ONLY if(is_net) { char ll[4]; if(li) sprintf(ll, "/%c", '@'+li); else ll[0] = NULL; @@ -588,6 +590,7 @@ static bool update_mygames_xml(u64 conn_s_p) if(li==99) sprintf(param, "/%s %s", paths[f1], AUTOPLAY_TAG); } else + #endif #endif { if(f0==NTFS) //ntfs @@ -600,7 +603,7 @@ static bool update_mygames_xml(u64 conn_s_p) #ifdef COBRA_ONLY #ifndef LITE_EDITION - if(is_net && open_remote_dir(ns, param, &abort_connection) < 0) goto continue_reading_folder_xml; //continue; + if(is_net && open_remote_dir(ns, param, &abort_connection) < 0) goto continue_reading_folder_xml; //continue; #endif #endif //led(YELLOW, ON); @@ -628,6 +631,8 @@ static bool update_mygames_xml(u64 conn_s_p) if(!is_net && file_exists( param) == false) goto continue_reading_folder_xml; //continue; if(!is_net && cellFsOpendir( param, &fd) != CELL_FS_SUCCEEDED) goto continue_reading_folder_xml; //continue; + + while((!is_net && cellFsReaddir(fd, &entry, &read_e) == 0 && read_e > 0) #ifdef COBRA_ONLY #ifndef LITE_EDITION @@ -810,6 +815,7 @@ static bool update_mygames_xml(u64 conn_s_p) ////////////////////////////// } } + if(!is_net) cellFsClosedir(fd); #ifdef COBRA_ONLY @@ -818,7 +824,6 @@ static bool update_mygames_xml(u64 conn_s_p) #endif #endif } - // continue_reading_folder_xml: @@ -829,6 +834,7 @@ static bool update_mygames_xml(u64 conn_s_p) if(is_net && ns>=0) {shutdown(ns, SHUT_RDWR); socketclose(ns); ns=-2;} } + if( !(webman_config->nogrp)) { if(!(webman_config->cmask & PS3)) {strcat(myxml_ps3, "");} diff --git a/include/pkg_handler.h b/include/pkg_handler.h new file mode 100644 index 000000000..a6ebfc459 --- /dev/null +++ b/include/pkg_handler.h @@ -0,0 +1,284 @@ +#ifdef PKG_HANDLER + +// /install.ps3 +// /download.ps3?url= +// /download.ps3?to=&url= + +#include + +#include "../vsh/xmb_plugin.h" +#include "../vsh/game_ext_plugin.h" + +#include "../vsh/webbrowser_plugin.h" +#include "../vsh/webrender_plugin.h" +#include "../vsh/download_plugin.h" +#include "../vsh/stdc.h" + +static char pkg_path[MAX_PATH_LEN]; +static wchar_t pkg_dpath[MAX_PATH_LEN]; +static wchar_t pkg_durl[MAX_PATH_LEN]; + +static bool wmget = false; + +#define DEFAULT_PKG_PATH "/dev_hdd0/packages/" +#define INT_HDD_ROOT_PATH "/dev_hdd0/" + +static int LoadPluginById(int id, void *handler) +{ + if(xmm0_interface == 0) // getting xmb_plugin xmm0 interface for loading plugin sprx + { + xmm0_interface = (xmb_plugin_xmm0 *)plugin_GetInterface(View_Find("xmb_plugin"),'XMM0'); + } + return xmm0_interface->LoadPlugin3(id, handler,0); +} + +static int UnloadPluginById(int id, void *handler) +{ + if(xmm0_interface == 0) // getting xmb_plugin xmm0 interface for loading plugin sprx + { + xmm0_interface = (xmb_plugin_xmm0 *)plugin_GetInterface(View_Find("xmb_plugin"),'XMM0'); + } + return xmm0_interface->Shutdown(id, handler,1); +} + +static void unloadSysPluginCallback(void) +{ + //Add potential callback process + //show_msg((char *)"plugin shutdown via xmb call launched"); +} + +static void downloadPKG_thread(void) +{ + + if(download_interface == 0) // test if download_interface is loaded for interface access + { + download_interface = (download_plugin_interface *)plugin_GetInterface(View_Find("download_plugin"),1); + } + + download_interface->DoUnk5(0, pkg_durl, pkg_dpath); +} + +static void installPKG_thread(void) +{ + if(game_ext_interface == 0) // test if game_ext_plugin is loaded for interface access + { + game_ext_interface = (game_ext_plugin_interface *)plugin_GetInterface(View_Find("game_ext_plugin"),1); + } + game_ext_interface->DoUnk0(); // Load Page + game_ext_interface->DoUnk34(pkg_path); // install PKG from path +} + +static void download_file(char *param, bool wmget, char *msg) +{ + char msg_durl[MAX_PATH_LEN] = ""; //////Conversion Debug msg + char msg_dpath[MAX_PATH_LEN] = ""; //////Conversion Debug msg + char pdpath[MAX_PATH_LEN] = ""; + char pdurl[MAX_PATH_LEN] = ""; + + size_t conv_num_durl = 0; + size_t conv_num_dpath = 0; + size_t pdpath_len; + size_t pdurl_len; + size_t ptemp_len; + size_t dparam_len; + + wmemset(pkg_dpath, 0, MAX_PATH_LEN); + wmemset(pkg_durl, 0, MAX_PATH_LEN); // Use wmemset from stdc.h instead of reinitialising wchar_t with a loop. + + memset(pdurl, 0, MAX_PATH_LEN); + memset(pdpath, 0, MAX_PATH_LEN); + + sprintf(msg_durl, (const char *)"ERROR: Invalid URL\n"); + sprintf(msg_dpath, (const char *)"Download canceled\n"); + + if(islike(param + 13, "?to=")) //Use of the optional parameter + { + char *ptemp = strstr(param,(const char *)"&url="); + + if(ptemp != NULL) + { + ptemp_len = strlen((const char *)ptemp); + pdurl_len = ptemp_len - 5; + if((pdurl_len > 0) && (pdurl_len < MAX_PATH_LEN)) + { + strncpy(pdurl, ptemp + 5, pdurl_len); + } + else + { + goto end_download_process; + } + } + else + { + sprintf(msg_durl, (const char *)"ERROR: No URL given\n"); + goto end_download_process; + } + + dparam_len = strlen((const char *)param + 13); + pdpath_len = dparam_len - ptemp_len - 4; + + if(pdpath_len > 0) strncpy(pdpath, (const char *)param + 17, pdpath_len); + + conv_num_durl = mbstowcs((wchar_t *)pkg_durl,(const char *)pdurl,pdurl_len+1); //size_t stdc_FCAC2E8E(wchar_t *dest, const char *src, size_t max) + + } + else if(islike(param+13, "?url=")) // + { + pdurl_len=strlen(param)-18; + if((pdurl_len>0) && (pdurl_len 0) + { + if((pdpath_len > 0) && (pdpath_len < MAX_PATH_LEN) && isDir((const char *)pdpath)) + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath,(const char *)pdpath,pdpath_len+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)pdpath); + } + else if((pdpath_len > 0) && (pdpath_len < MAX_PATH_LEN)) + { + //Try to create the folder in proposed path + //if success set given path if failure set default path + if(cellFsMkdir(pdpath, DMODE) == CELL_FS_SUCCEEDED) + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath,(const char *)pdpath,pdpath_len+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)pdpath); + } + else + { + if(isDir((const char *)DEFAULT_PKG_PATH)) + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath, (const char *)DEFAULT_PKG_PATH, strlen((const char *)DEFAULT_PKG_PATH)+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)DEFAULT_PKG_PATH); + } + else + { + //create default dir + //if success set default path if failure use /dev_hdd0 & show message explaining error + download will be in /dev_hdd0/tmp/downloader + if(cellFsMkdir((const char *)DEFAULT_PKG_PATH, DMODE) == CELL_FS_SUCCEEDED) + { + + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath, (const char *)DEFAULT_PKG_PATH, strlen((const char *)DEFAULT_PKG_PATH)+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)DEFAULT_PKG_PATH); + } + else + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath, (const char *)INT_HDD_ROOT_PATH, strlen((const char *)INT_HDD_ROOT_PATH) + 1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)INT_HDD_ROOT_PATH); + } + } + } + } + else + { + if(isDir((const char *)DEFAULT_PKG_PATH)) + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath, (const char *)DEFAULT_PKG_PATH, strlen((const char *)DEFAULT_PKG_PATH)+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)DEFAULT_PKG_PATH); + } + else + { + //create default dir + //if success set default path if failure use /dev_hdd0 & show message explaining error + download will be in /dev_hdd0/tmp/downloader + if(cellFsMkdir((char *)DEFAULT_PKG_PATH, DMODE) == CELL_FS_SUCCEEDED) + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath, (const char *)DEFAULT_PKG_PATH, strlen((const char *)DEFAULT_PKG_PATH)+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)DEFAULT_PKG_PATH); + } + else + { + conv_num_dpath = mbstowcs((wchar_t *)pkg_dpath, (const char *)INT_HDD_ROOT_PATH, strlen((const char *)INT_HDD_ROOT_PATH)+1); + sprintf(msg_dpath, (const char *)"To: %s\n", (const char *)INT_HDD_ROOT_PATH); + } + } + } + + if(conv_num_dpath > 0) + { + int ret=-1; + if (View_Find("webrender_plugin")) + { + ret = UnloadPluginById(0x1C,(void *)unloadSysPluginCallback); + sys_timer_usleep(5); + } + if (View_Find("webbrowser_plugin")) + { + ret = UnloadPluginById(0x1B,(void *)unloadSysPluginCallback); + sys_timer_usleep(5); + } + + sprintf(msg_durl, (const char *)"Downloading: %s\n", (const char *)pdurl); + + ret = LoadPluginById(0x29, (void *)downloadPKG_thread); + } + else + { + sprintf(msg_durl, (const char *)"ERROR: Setting storage location\n"); + } + } + else + { + sprintf(msg_durl, (const char *)"ERROR: Invalid URL\n"); + } + +end_download_process: + sprintf(msg, "%s%s", msg_durl, msg_dpath); +} + +static int installPKG(char *pkgpath, char *msg) +{ + int ret = FAILED; + + if(View_Find("game_plugin")) + { + sprintf(msg, (const char *)"ERROR: install from XMB"); + return ret; + } + + sprintf(msg, (const char *)"ERROR: invalid pkg path"); + + size_t pkg_path_len = strlen(pkgpath); + + if (pkg_path_len < MAX_PATH_LEN) + { + memset(pkg_path, 0, MAX_PATH_LEN); + strcpy(pkg_path, pkgpath); + + if( file_exists(pkg_path) ) + { + if(!extcasecmp(pkg_path, ".pkg", 4)) //check if file has a .pkg extension or not and treat accordingly + { + if (View_Find("webrender_plugin")) + { + ret = UnloadPluginById(0x1C, (void *)unloadSysPluginCallback); + sys_timer_usleep(5); + } + if (View_Find("webbrowser_plugin")) + { + ret = UnloadPluginById(0x1B, (void *)unloadSysPluginCallback); + sys_timer_usleep(5); + } + ret = LoadPluginById(0x16, (void *)installPKG_thread); + sprintf(msg,(const char *)"Installing %s", pkg_path); + } + } + } + + return ret; +} + +#endif // #ifdef PKG_HANDLER diff --git a/include/setup.h b/include/setup.h index b9fdccda1..fae70151d 100644 --- a/include/setup.h +++ b/include/setup.h @@ -765,7 +765,7 @@ static void setup_form(char *buffer, char *templn) strcat(buffer, HTML_RED_SEPARATOR "webMAN-MOD - Latest version of webMAN-MOD on Github
" - "webMAN-MOD - Main thread of webMAN-MOD on Psx-place
"); + "webMAN-MOD - Main thread of webMAN-MOD on Psx-place
"); /* #define VSH_GCM_OBJ 0x70A8A8 // 4.53cex diff --git a/main.c b/main.c index 0484dddd6..e31709963 100644 --- a/main.c +++ b/main.c @@ -102,7 +102,7 @@ SYS_MODULE_STOP(wwwd_stop); #define ORG_LIBFS_PATH "/dev_flash/sys/external/libfs.sprx" #define NEW_LIBFS_PATH "/dev_hdd0/tmp/libfs.sprx" -#define WM_VERSION "1.43.30 MOD" // webMAN version +#define WM_VERSION "1.43.31 MOD" // webMAN version #define MM_ROOT_STD "/dev_hdd0/game/BLES80608/USRDIR" // multiMAN root folder #define MM_ROOT_SSTL "/dev_hdd0/game/NPEA00374/USRDIR" // multiman SingStarĀ® Stealth root folder #define MM_ROOT_STL "/dev_hdd0/tmp/game_repo/main" // stealthMAN root folder @@ -452,7 +452,6 @@ static void set_buffer_sizes(int footprint); static void waitfor(char *path, uint8_t timeout); static void show_msg(char* msg); - #ifdef COBRA_ONLY static void select_ps1emu(void); #endif @@ -615,6 +614,10 @@ static inline sys_prx_id_t prx_get_module_id_by_address(void *addr) #include "include/_mount.h" #include "include/netserver.h" +#ifdef PKG_HANDLER + #include "include/pkg_handler.h" +#endif + static void http_response(int conn_s, char *header, char *param, int code, char *msg) { if(code == 202) @@ -668,7 +671,7 @@ static void prepare_html(char *buffer, char *templn, char *param, u8 is_ps3_http ".list{display:inline;}" "input:focus{border:2px solid #0099FF;}" ".propfont{font-family:\"Courier New\",Courier,monospace;text-shadow:1px 1px #101010;}" - "#rxml,#rhtm,#rcpy{position:absolute;top:40%;left:30%;width:40%;height:90px;z-index:5;border:5px solid #ccc;padding:10px;color:#fff;text-align:center;background-image:-webkit-gradient(linear, 0 0, 0 100%, color-stop(0, #999), color-stop(0.02, #666), color-stop(1, #222));background-image:-moz-linear-gradient(top, #999, #666 2%, #222);display:none;}" + "#rxml,#rhtm,#rcpy{position:absolute;top:40%;left:30%;width:40%;height:90px;z-index:5;border:5px solid #ccc;border-radius:25px;padding:10px;color:#fff;text-align:center;background-image:-webkit-gradient(linear,0 0,0 100%,color-stop(0,#999),color-stop(0.02,#666),color-stop(1,#222));background-image:-moz-linear-gradient(top,#999,#666 2%,#222);display:none;}" "body,a.s,td,th{color:#F0F0F0;white-space:nowrap;"); /* if(file_exists("/dev_hdd0/xmlhost/game_plugin/background.jpg")) @@ -862,11 +865,14 @@ static void handleclient(u64 conn_s_p) sys_net_sockinfo_t conn_info_main; - #ifdef WM_REQUEST struct CellFsStat buf; u8 wm_request=(cellFsStat((char*)WMREQUEST_FILE, &buf) == CELL_FS_SUCCEEDED); +#ifdef PKG_HANDLER + wmget = (wm_request > 0); +#endif + if(!wm_request) #endif { @@ -905,7 +911,7 @@ static void handleclient(u64 conn_s_p) sys_addr_t sysmem = 0; - u8 is_binary = 0, served=0; // served http request?, is_binary: 0 = http command, 1 = file, 2 = folder listing + u8 is_binary = 0, served = 0; // served http request?, is_binary: 0 = http command, 1 = file, 2 = folder listing u64 c_len = 0; char cmd[16], header[HTML_RECV_SIZE]; @@ -1023,7 +1029,7 @@ static void handleclient(u64 conn_s_p) if(islike(param, "/cpursx_ps3")) { char *cpursx = header; get_cpursx(cpursx); -/* // prevents flickering but cause error 80710336 in ps3 browser (silk mode) +/* // prevents flickering but cause error 80710336 in ps3 browser (silk mode) sprintf(param, "" "", "/cpursx_ps3", cpursx); @@ -1044,6 +1050,48 @@ static void handleclient(u64 conn_s_p) sys_ppu_thread_exit(0); } +#ifdef PKG_HANDLER + if(islike(param, "/download.ps3")) + { + char msg[MAX_PATH_LEN + MAX_PATH_LEN] = ""; + + download_file(param, wmget, msg); + + #ifdef WM_REQUEST + if(wmget) sclose(&conn_s); + else + #endif + { + http_response(conn_s, header, param, 200, msg); + } + + show_msg((char *)msg); + + loading_html--; + sys_ppu_thread_exit(0); + } + + if(islike(param, "/install.ps3")) + { + char msg[MAX_PATH_LEN] = ""; //////Conversion Debug msg + + installPKG(param + 12, msg); + + #ifdef WM_REQUEST + if(wmget) sclose(&conn_s); + else + #endif + { + http_response(conn_s, header, param, 200, msg); + } + + show_msg((char *)msg); + + loading_html--; + sys_ppu_thread_exit(0); + } +#endif // #ifdef PKG_HANDLER + #ifdef PS3_BROWSER if(islike(param, "/browser.ps3")) { @@ -2183,7 +2231,7 @@ static void handleclient(u64 conn_s_p) if(mount_ps3 || forced_mount || islike(param, "/mount.ps3") || islike(param, "/copy.ps3")) #endif { - game_mount(buffer, templn, param, tempstr, is_binary, mount_ps3, forced_mount); + game_mount(buffer, templn, param, tempstr, is_binary, mount_ps3, forced_mount); } else { @@ -2545,3 +2593,4 @@ int wwwd_stop(void) return SYS_PRX_STOP_OK; } + diff --git a/makefile b/makefile index 4ab26b96c..d89fe90e5 100644 --- a/makefile +++ b/makefile @@ -19,6 +19,7 @@ PPU_PRX_TARGET = webftp_server.elf PPU_PRX_LDFLAGS += $(PRX_LDFLAGS_EXTRA) PPU_PRX_STRIP_FLAGS = -s PPU_PRX_LDLIBS = -lfs_stub -lnet_stub -lrtc_stub -lio_stub +PPU_PRX_LDLIBS += -lnetctl_stub -lsysmodule_stub -lhttp_util_stub -lhttp_stub #-lgcm_sys_stub PPU_PRX_LDLIBS += -lcrashdump_system_export_stub \ -lsysPrxForUser_export_stub \ diff --git a/ps3netsrv/bins/ps3netsrv.exe b/ps3netsrv/bins/ps3netsrv.exe index 4a8a9976e..8f83f9346 100644 Binary files a/ps3netsrv/bins/ps3netsrv.exe and b/ps3netsrv/bins/ps3netsrv.exe differ diff --git a/ps3netsrv/bins/ps3netsrv_merge_drives.exe b/ps3netsrv/bins/ps3netsrv_merge_drives.exe index 9bbc00705..f708464ab 100644 Binary files a/ps3netsrv/bins/ps3netsrv_merge_drives.exe and b/ps3netsrv/bins/ps3netsrv_merge_drives.exe differ diff --git a/ps3netsrv/main.cpp b/ps3netsrv/main.cpp index e5c0f18cd..d60bd8e3e 100644 --- a/ps3netsrv/main.cpp +++ b/ps3netsrv/main.cpp @@ -277,11 +277,6 @@ static char *translate_path(char *path, int del, int *viso) #endif #endif - if(!strstr(p, ".PNG")) - { - printf("%s\n", p); - } - if (del) { free(path); @@ -394,6 +389,7 @@ static int process_open_cmd(client_t *client, netiso_open_cmd *cmd) } DPRINTF("open %s\n", filepath); + printf("open %s\n", filepath); if (viso == VISO_NONE) { @@ -401,8 +397,8 @@ static int process_open_cmd(client_t *client, netiso_open_cmd *cmd) } else { + printf("building virtual iso...\n"); client->ro_file = new VIsoFile((viso == VISO_PS3)); - printf("building virtual iso...\n"); } if (client->ro_file->open(filepath, O_RDONLY) < 0) @@ -915,14 +911,6 @@ static int process_open_dir_cmd(client_t *client, netiso_open_dir_cmd *cmd) client->dirpath = NULL; - file_stat_t st; - if (stat_file(dirpath, &st) < 0) - { - DPRINTF("open dir error on \"%s\"\n", dirpath); - result.open_result = BE32(-1); - return -1; - } - client->dir = opendir(dirpath); if (!client->dir) { @@ -936,7 +924,9 @@ static int process_open_dir_cmd(client_t *client, netiso_open_dir_cmd *cmd) } if (!client->dirpath) + { free(dirpath); + } ret = send(client->s, (char *)&result, sizeof(result), 0); if (ret != sizeof(result)) @@ -1480,7 +1470,7 @@ int main(int argc, char *argv[]) uint32_t whitelist_end = 0; uint16_t port = NETISO_PORT; - printf("ps3netsrv build 20151215.1 (mod by aldostools)\n\n"); + printf("ps3netsrv build 20160709.1 (mod by aldostools)\n"); #ifndef WIN32 if (sizeof(off_t) < 8) @@ -1512,7 +1502,9 @@ int main(int argc, char *argv[]) break; } - root_len = strlen(root_directory); + printf("Path: %s\n\n", root_directory); + + root_len = strlen(root_directory); if (root_len == 0) { diff --git a/updater/Makefile b/updater/Makefile index 7da8576e5..dacef0893 100644 --- a/updater/Makefile +++ b/updater/Makefile @@ -22,7 +22,7 @@ DATA := data INCLUDES := include PKGFILES := $(CURDIR)/pkgfiles -TITLE := webMAN MOD 1.43.30 Updater [Hold R1 for VSH Menu, L1 for Full Edition, X for Lite Edition] +TITLE := webMAN MOD 1.43.31 Updater [Hold R1 for VSH Menu, L1 for Full Edition, X for Lite Edition] APPID := UPDWEBMOD CONTENTID := EP0001-$(APPID)_00-0000000000000000 diff --git a/updater/pkgfiles/USRDIR/mobile.html b/updater/pkgfiles/USRDIR/mobile.html index 7af71b47f..4252e1807 100644 --- a/updater/pkgfiles/USRDIR/mobile.html +++ b/updater/pkgfiles/USRDIR/mobile.html @@ -249,7 +249,7 @@ background-image:-moz-linear-gradient(top, #999, #666666 2%, #222); background-image:-o-linear-gradient(top, #999, #666666 2%, #222); padding:0; - border:5px solid #c0c0c0; + border:5px solid #c0c0c0; border-radius:15px; color: white; z-index: 99999; } @@ -1832,22 +1832,16 @@ var elem; for(var i=0; i