PS3 String Viewer and DECR 0.90FW XMB Items (Partially working)

DeViL303

Developer
PSX-Place Supporter
Just messing around with the PS3 xmls and came across this item, I cant remember if I have found it before. :)

Cant seem to get much life out of it, but I am on CEX now so that could be the issue. What is this item? is it of any interest for anything? I know there is not much info on the wiki about it.

http://www.psdevwiki.com/ps3/String_Viewer


screenshot_2018_04_05_01_41_08.jpg screenshot_2018_04_05_01_41_33.jpg screenshot_2018_04_05_01_41_44.jpg
 
Ok, figured out its looking to dev_usb000 for a file called strviewer.cnf . Its a start. :)

screenshot_2018_04_05_00_43_25.jpg


Also discovered where the "File Explorer/Unlinker" comes from :D After all these years!! @sandungas, @aldostools, @bitsbubba.

Along with a load of other weird shit. I added a load of stuff from DECH 0.90 FW to 4.82, and well, check it out.

screenshot_2018_04_05_00_53_49.jpg screenshot_2018_04_05_00_54_03.jpg screenshot_2018_04_05_00_54_13.jpg screenshot_2018_04_05_00_54_25.jpg screenshot_2018_04_05_00_54_40.jpg


I found all of this stuff in the debug.xml , there was a whole XMB category dedicated to this stuff, and the very top item called "host/" is the file explorer. :)

 
Last edited:
SACD plugin launcher? :)

Yes, some strange things like that, most of them crash the console, some of them do nothing.

Firmware archeology eventually has some surprises :)

It does, already learned a few things.
Code:
 <View id="seg_string_viewer">
 <Attributes>
 <Table key="StrViewer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>String Viewer</String></Pair>
 <Pair key="module_name"><String>strviewer_plugin</String></Pair>
 <Pair key="module_action"><String>1</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Item  class="type:x-xmb/module-action" key="StrViewer" attr="StrViewer" />
 </Items>
 </View>

Code:
<View id="seg0_items">
 <Attributes>
 <Table key="rss_provider_0">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>HTTP RSS-NAVI_3</String></Pair>
 </Table>
 <Table key="host_provider_0">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>host /</String></Pair>
 </Table>
 <Table key="app_provider_0">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>app /</String></Pair>
 </Table>
 <Table key="VideoDownloader">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Video Downloader</String></Pair>
 <Pair key="module_name"><String>videodownloader_plugin</String></Pair>
 <Pair key="module_action"><String>1</String></Pair>
 </Table>
 <Table key="CellFont">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Font Plugin Launcher</String></Pair>
 <Pair key="module_name"><String>cellfont_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="FriendImGameRecv">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im Game Receive test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>GameRecv</String></Pair>
 </Table>
 <Table key="FriendImGameSend">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im Game Send test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>GameSend</String></Pair>
 </Table>
 <Table key="FriendImAvcInvit">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im Avc Invit test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>FriendImAvcInvit</String></Pair>
 </Table>
 <Table key="FriendImAvcSend">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im Avc Send test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>AvcSend</String></Pair>
 </Table>
 <Table key="FriendImGameDataSend">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im GameData Send test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>GameDataSend</String></Pair>
 </Table>
 <Table key="FriendImGameDataRecv">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im GameData Receive test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>GameDataRecv</String></Pair>
 </Table>
 <Table key="FriendImAvcFriendAdd">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend Im Avc Friend Add test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>AvcFriendAdd</String></Pair>
 </Table>
 <Table key="BDPlayer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>BDPlayer Plugin Launcher</String></Pair>
 <Pair key="module_name"><String>bdp_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="SACDPlayer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>SACDPlayer Plugin Launcher</String></Pair>
 <Pair key="module_name"><String>sacd_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="GridTest">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Grid Test</String></Pair>
 <Pair key="child"><String>grid</String></Pair>
 </Table>
 <Table key="Friendim">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friendim Test</String></Pair>
 <Pair key="module_name"><String>friendim_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="DownLoader">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>DownLoad Sampler</String></Pair>
 <Pair key="module_name"><String>download_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="Thumthum">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Thumnail Thumper</String></Pair>
 <Pair key="module_name"><String>thumthum_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="PRemo">
 <Pair key="icon_rsc"><String>item_tex_browser</String></Pair>
 <Pair key="name"><String>P-Remo</String></Pair>
 <Pair key="info"><String></String></Pair>
 </Table>
 <Table key="FlashPlayer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Flash Player[test.swf]</String></Pair>
 <Pair key="info"><String></String></Pair>
 <Pair key="path"><String>flash0/vsh/resource/flash/test.swf</String></Pair>
 </Table>
 <Table key="Xai">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Xai</String></Pair>
 <Pair key="module_name"><String>xai_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="Playstationcomjp">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>PlayStation.com(Japan)</String></Pair>
 <Pair key="module_action"><String>http://www.jp.playstation.com/</String></Pair>
 </Table>
 <Table key="ToggleExhibitionMode">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>ToggleExhibitionMode</String></Pair>
 <Pair key="module_name"><String>explore_plugin</String></Pair>
 <Pair key="module_action"><String>ToggleExhibitionMode</String></Pair>
 <Pair key="bar_action"><String>none</String></Pair>
 </Table>
 <Table key="SwitchBackgroundMode">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>SwitchBackgroundMode</String></Pair>
 <Pair key="module_name"><String>explore_plugin</String></Pair>
 <Pair key="module_action"><String>SwitchBackgroundMode</String></Pair>
 <Pair key="bar_action"><String>none</String></Pair>
 </Table>
 <Table key="SwitchFriendListMode">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>FriendListTestMode</String></Pair>
 <Pair key="module_name"><String>explore_plugin</String></Pair>
 <Pair key="module_action"><String>SwitchFriendListMode</String></Pair>
 <Pair key="bar_action"><String>none</String></Pair>
 </Table>
 <Table key="XMBDebugPlugin1">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>call xmb_plugin_debug - test1</String></Pair>
 <Pair key="module_name"><String>xmb_debug_plugin</String></Pair>
 <Pair key="module_action"><String>test1</String></Pair>
 <Pair key="bar_action"><String>hide</String></Pair>
 </Table>
 <Table key="RemovableDevices">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>RemovableDevices</String></Pair>
 </Table>
 <Table key="PhotoListByYear">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search PhotoList by year</String></Pair>
 </Table>
 <Table key="PhotoListByMonth">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search PhotoList by month</String></Pair>
 </Table>
 <Table key="PhotoListByDay">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search PhotoList by day</String></Pair>
 </Table>
 <Table key="PhotoListByDay">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search PhotoList by day</String></Pair>
 </Table>
 <Table key="MusicListByAlbum">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search MusicList by album</String></Pair>
 </Table>
 <Table key="MusicListByGenre">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search MusicList by genre</String></Pair>
 </Table>
 <Table key="MusicListByArtist">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Search MusicList by artist</String></Pair>
 </Table>
 <Table key="base">
 <Pair key="icon_fixed_width"><String>181</String></Pair>
 <Pair key="icon_fixed_height"><String>181</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Query class="type:x-xmb/folder-pixmap" key="host_provider_0" attr="host_provider_0" src="host://localhost/" />
 <Query class="type:x-xmb/folder-pixmap" key="app_provider_0" attr="app_provider_0" src="app://localhost/query?" />
 <Item  class="type:x-xmb/module-action" key="VideoDownloader" attr="VideoDownloader" />
 <Item  class="type:x-xmb/module-action" key="CellFont"  attr="CellFont" />
 <Item  class="type:x-xmb/module-action" key="BDPlayer"  attr="BDPlayer" />
 <Item  class="type:x-xmb/module-action" key="SACDPlayer"  attr="SACDPlayer" />
 <Item  class="type:x-xmb/module-action" key="Friendim"  attr="Friendim" />
 <Item  class="type:x-xmb/module-action" key="DownLoader"  attr="DownLoader" />
 <Item  class="type:x-xmb/module-action" key="Thumthum"  attr="Thumthum" />
 <Item  class="type:x-xmb/module-action" key="FlashPlayer"  attr="FlashPlayer" />
 <Item  class="type:x-xmb/module-action" key="Xai" attr="Xai" />
 <Item  class="type:x-xmb/xmlwebbrowser" key="Playstationcomjp" attr="Playstationcomjp" />
 <Item  class="type:x-xmb/module-action" key="FriendImGameRecv"  attr="FriendImGameRecv" />
 <Item  class="type:x-xmb/module-action" key="FriendImGameSend"  attr="FriendImGameSend" />
 <Item  class="type:x-xmb/module-action" key="FriendImAvcInvit"  attr="FriendImAvcInvit" />
 <Item  class="type:x-xmb/module-action" key="FriendImAvcSend"  attr="FriendImAvcSend" />
 <Item  class="type:x-xmb/module-action" key="FriendImGameDataSend"  attr="FriendImGameDataSend" />
 <Item  class="type:x-xmb/module-action" key="FriendImGameDataRecv"  attr="FriendImGameDataRecv" />
 <Item  class="type:x-xmb/module-action" key="FriendImAvcFriendAdd"  attr="FriendImAvcFriendAdd" />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="rss_provider_0"
 attr="rss_provider_0"
 src="rss://http://www.rssnavi.jp/rss/?k=caterss3"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="GridTest"
 attr="GridTest"
 src="host://localhost/app_home/__fake__/hdd/PhotoThumb/NY"
 />
 <Item  class="type:x-xmb/module-action" key="ToggleExhibitionMode" attr="ToggleExhibitionMode" />
 <Item  class="type:x-xmb/module-action" key="SwitchBackgroundMode" attr="SwitchBackgroundMode" />
 <Item  class="type:x-xmb/module-action" key="SwitchFriendListMode" attr="SwitchFriendListMode" />
 <Item  class="type:x-xmb/module-action" key="XMBDebugPlugin1"  attr="XMBDebugPlugin1" />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="RemovableDevices"
 attr="RemovableDevices"
 src="xcb://localhost/query?table=MMS_MEDIA_TYPE_SYSTEM&genre=Photo&cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="PhotoListByYear"
 attr="PhotoListByYear"
 src="xcb://localhost/query?cond=Ae+PhotoList:PhotoList.type %xCB_LIST_TYPE_PHOTO_ALBUM_YEAR"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="PhotoListByMonth"
 attr="PhotoListByMonth"
 src="xcb://localhost/query?cond=Ae+PhotoList:PhotoList.type %xCB_LIST_TYPE_PHOTO_ALBUM_MONTH"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="PhotoListByDay"
 attr="PhotoListByDay"
 src="xcb://localhost/query?cond=Ae+PhotoList:PhotoList.type %xCB_LIST_TYPE_PHOTO_ALBUM_DAY"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="MusicListByAlbum"
 attr="MusicListByAlbum"
 src="xcb://localhost/query?cond=Ae+MusicList:MusicList.type %xCB_LIST_TYPE_MUSIC_ALBUM"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="MusicListByGenre"
 attr="MusicListByGenre"
 src="xcb://localhost/query?cond=Ae+MusicList:MusicList.type %xCB_LIST_TYPE_MUSIC_PLAYLIST_GENRE"
 />
 <Query
 class="type:x-xmb/folder-pixmap"
 key="MusicListByArtist"
 attr="MusicListByArtist"
 src="xcb://localhost/query?cond=Ae+MusicList:MusicList.type %xCB_LIST_TYPE_MUSIC_PLAYLIST_ARTIST"
 />
 <Query class="type:x-xcb/game-debug" key="game_debug"  attr="game_debug" />
 </Items>
 </View>

Code:
<View id="seg_fixed_items">
 <Attributes>
 <Table key="avc_waitInvite">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>wait</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__waitAVChatInvite</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_orikaeshi">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>orikaeshi</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__orikaeshi</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_bye">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>bye</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__bye</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_sound_only">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>sound only</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__sound_only</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_mute_audio">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>mute audio</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__mute_audio</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_mute_video">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>mute video</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__mute_video</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_layout_check">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>layout_check</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__layout_check</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_volumeup">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>volumeUp</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__volumeup</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_volumedown">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>volumeDown</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__volumedown</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 <Table key="avc_invitation">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair> <!-- XMB上に表示されるアイコン -->
 <Pair key="title"><String>invitaion</String></Pair> <!-- XMB上に表示されるラベル -->
 <Pair key="module_name"><String>avc_plugin</String></Pair> <!-- 引数を渡したいplugin名を書く-->
 <Pair key="module_action"><String>__invitation</String></Pair> <!-- ここにpluginに渡る引数を書く -->
 </Table>
 </Attributes>
 <Items>
 <Item  class="type:x-xmb/module-action" key="avc_waitInvite" attr="avc_waitInvite" />
 <Item  class="type:x-xmb/module-action" key="avc_orikaeshi" attr="avc_orikaeshi" />
 <Item  class="type:x-xmb/module-action" key="avc_bye" attr="avc_bye" />
 <Item  class="type:x-xmb/module-action" key="avc_sound_only" attr="avc_sound_only" />
 <Item  class="type:x-xmb/module-action" key="avc_mute_audio" attr="avc_mute_audio" />
 <Item  class="type:x-xmb/module-action" key="avc_mute_video" attr="avc_mute_video" />
 <Item  class="type:x-xmb/module-action" key="avc_layout_check" attr="avc_layout_check" />
 <Item  class="type:x-xmb/module-action" key="avc_volumeup" attr="avc_volumeup" />
 <Item  class="type:x-xmb/module-action" key="avc_volumedown" attr="avc_volumedown" />
 <Item  class="type:x-xmb/module-action" key="avc_invitation" attr="avc_invitation" />
 </Items>
 </View>

For example, you can have a weblink without the module being named in the attributes:
Code:
<Table key="Playstationcomjp">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>PlayStation.com(Japan)</String></Pair>
 <Pair key="module_action"><String>http://www.jp.playstation.com/</String></Pair>
 </Table>

And if you use "name" it seem to call the title and the info
Code:
<Table key="PRemo">
 <Pair key="icon_rsc"><String>item_tex_browser</String></Pair>
 <Pair key="name"><String>P-Remo</String></Pair>
 <Pair key="info"><String></String></Pair>
 </Table>

Also they had a XMB debug plugin, with the XMB test item still left in the FW, but no sprx unfortunately.
Code:
<Table key="XMBDebugPlugin1">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>call xmb_plugin_debug - test1</String></Pair>
 <Pair key="module_name"><String>xmb_debug_plugin</String></Pair>
 <Pair key="module_action"><String>test1</String></Pair>
 <Pair key="bar_action"><String>hide</String></Pair>
 </Table>

And also found examples of the icon width and height entries, they are not used how I thought:
Code:
<Table key="base">
 <Pair key="icon_fixed_width"><String>181</String></Pair>
 <Pair key="icon_fixed_height"><String>181</String></Pair>
 </Table>
 <Table key="sdvmc" include="base">
 <Pair key="icon_rsc"><String>item_tex_ps12util</String></Pair>
 <Pair key="icon_notation"><String>WNT_XmbItemGamePS12Util</String></Pair>
 <Pair key="title"><String>PS1/2 Saved Data Utility</String></Pair>
 <Pair key="title_rsc"><String>msg_mc_utility</String></Pair>
 <Pair key="action"><String>exec_vmcsavedata</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>

Also interesting is the root xml, this is where all the category xmls are called from, they must have moved this into an sprx somewhere or something:
Code:
<XMBML version="1.0">
 <View id="segmentize">
 <Items>
 <Query
 class="type:x-xmb/folder-pixmap"
 key="seg0"
 src="#root"
 />
 </Items>
 </View>
 <View id="root">
 <Attributes>
 <Table key="CellFont">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Font Plugin Launcher</String></Pair>
 <Pair key="module_name"><String>cellfont_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 <Table key="XMBDebugPlugin1">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>call xmb_plugin_debug - test1</String></Pair>
 <Pair key="module_name"><String>xmb_debug_plugin</String></Pair>
 <Pair key="module_action"><String>test1</String></Pair>
 <Pair key="bar_action"><String>hide</String></Pair>
 </Table>
 <Table key="user">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>User</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="photo">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Photo</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="music">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Music</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="video">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Video</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="game">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Game</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="network">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Network</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="friend">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Friend</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="avchat">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>AVChat</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 <Table key="debug">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>debug</String></Pair>
 <Pair key="child"><String>segment</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Item  class="type:x-xmb/module-action" key="CellFont"  attr="CellFont" />
 <Item  class="type:x-xmb/module-action" key="XMBDebugPlugin1"  attr="XMBDebugPlugin1" />
 <Query key="user"  class="type:x-xmb/folder-pixmap" attr="user"  src="xmb://localhost/%flash/xmb/category_user.xml#root"  />
 <Query key="photo"  class="type:x-xmb/folder-pixmap" attr="photo"  src="xmb://localhost/%flash/xmb/category_photo.xml#root"  />
 <Query key="music"  class="type:x-xmb/folder-pixmap" attr="music"  src="xmb://localhost/%flash/xmb/category_music.xml#root"  />
 <Query key="video"  class="type:x-xmb/folder-pixmap" attr="video"  src="xmb://localhost/%flash/xmb/category_video.xml#root"  />
 <Query key="game"  class="type:x-xmb/folder-pixmap" attr="game"  src="xmb://localhost/%flash/xmb/category_game.xml#root"  />
 <Query key="network" class="type:x-xmb/folder-pixmap" attr="network" src="xmb://localhost/%flash/xmb/category_network.xml#root" />
 <Query key="friend"  class="type:x-xmb/folder-pixmap" attr="friend"  src="xmb://localhost/%flash/xmb/category_friend.xml#root"  />
 <Query key="avchat"  class="type:x-xmb/folder-pixmap" attr="avchat"  src="xmb://localhost/%flash/xmb/category_avchat.xml#root"  />
 <Query key="debug"  class="type:x-xmb/folder-pixmap" attr="debug"  src="xmb://localhost/%flash/xmb/debug.xml#root"  />
 </Items>
 </View>
</XMBML>

They actually had hard coded to links to the Cell Font plugin , and the XMB Debug plugin on the XMB before all the other categories.
 
Last edited:
And also found examples of the icon width and height entries, they are not used how I thought:
Code:
<Table key="base">
	<Pair key="icon_fixed_width"><String>181</String></Pair>
	<Pair key="icon_fixed_height"><String>181</String></Pair>
</Table>
<Table key="sdvmc" include="base">
	<Pair key="icon_rsc"><String>item_tex_ps12util</String></Pair>
	<Pair key="icon_notation"><String>WNT_XmbItemGamePS12Util</String></Pair>
	<Pair key="title"><String>PS1/2 Saved Data Utility</String></Pair>
	<Pair key="title_rsc"><String>msg_mc_utility</String></Pair>
	<Pair key="action"><String>exec_vmcsavedata</String></Pair>
	<Pair key="child"><String>segment</String></Pair>
</Table>
Nice you are looking at this one, imo is the most interesting because how is used that "include"

It works like in C language, as example at top of main.c where you can add a
Code:
#include <whatever.h>
At the time the code in main.c is compiled when it reachs that line it loads whatever.h
In This PS3 XMBML files the concept seems to be the same but is processed on real time

In that code chunk when it says:
Code:
<Table key="sdvmc" include="base">
The loading pauses there and copyes the contents of:
Code:
<Table key="base">
So basically... is including this 2 keys
Code:
	<Pair key="icon_fixed_width"><String>181</String></Pair>
	<Pair key="icon_fixed_height"><String>181</String></Pair>
Into:
Code:
<Table key="sdvmc">

The result should be this, i think this is the same than the original code
Code:
<Table key="sdvmc">
	<Pair key="icon_fixed_width"><String>181</String></Pair>
	<Pair key="icon_fixed_height"><String>181</String></Pair>
	<Pair key="icon_rsc"><String>item_tex_ps12util</String></Pair>
	<Pair key="icon_notation"><String>WNT_XmbItemGamePS12Util</String></Pair>
	<Pair key="title"><String>PS1/2 Saved Data Utility</String></Pair>
	<Pair key="title_rsc"><String>msg_mc_utility</String></Pair>
	<Pair key="action"><String>exec_vmcsavedata</String></Pair>
	<Pair key="child"><String>segment</String></Pair>
 </Table>



*Edit:
And the included items should be located like i did, in the first positions, because this is the point of incuding stuff, the included stuff is loaded BEFORE the stuff that does the include (is like a dependency)
 
Last edited:
*Edit:
And the included items should be located like i did, in the first positions, because this is the point of incuding stuff, the included stuff is loaded BEFORE the stuff that does the include (is like a dependency)

I will do some tests, but it seems every example has them setup as their own item in the base and then include, probably so they load first like you said. In my previous tests I could not get them to work but I am not sure if I was putting them before the the other keys in previous tests, I definitely was not using the base though.

I will try later today.
 
I never tryed it, but i was thinking how to take advantage of this... as example:
Code:
<Table key="ps1_cover">
	<Pair key="icon_fixed_width"><String>181</String></Pair>
	<Pair key="icon_fixed_height"><String>181</String></Pair>
</Table>
<Table key="ps2_cover">
	<Pair key="icon_fixed_width"><String>181</String></Pair>
	<Pair key="icon_fixed_height"><String>160</String></Pair>
</Table>
<Table key="ps3_cover">
	<Pair key="icon_fixed_width"><String>130</String></Pair>
	<Pair key="icon_fixed_height"><String>170</String></Pair>
</Table>
<Table key="psp_cover">
	<Pair key="icon_fixed_width"><String>181</String></Pair>
	<Pair key="icon_fixed_height"><String>120</String></Pair>
</Table>


<Table key="game001" include="ps1_cover">
	<Pair key="title"><String>Game name</String></Pair>
	<Pair key="action"><String>load_iso</String></Pair>
</Table>
<Table key="game002" include="ps1_cover">
	<Pair key="title"><String>Game name</String></Pair>
	<Pair key="action"><String>load_iso</String></Pair>
</Table>
<Table key="game003" include="ps3_cover">
	<Pair key="title"><String>Game name</String></Pair>
	<Pair key="action"><String>load_iso</String></Pair>
</Table>

Something like that for webman (i dont remember that xml code from webman, is just an example to show the idea)
The point is you can prepare several "attribute table" with the keys that are common for every group
And then create the other items doing an "include" to the predefined attribute tables
This could reduce the xml code a lot in webman !!!

And in this example i just used a couple of keys in the predefined attribute tables... but when i was looking at this in webman code i realized there are a lot more that can be "moved out" to the predefined attribute tables to make the xml more lighter
Things like the device/filesystem/gameformat info (where the game is located), the default disc icon too (for the game formats without ICON0.PNG), etc... all this is common and in webman xml appears repeated lot of times ;)
 
Last edited:
That's cool, I could use that method to reduce a lot of my xmls too if it works.

What do you think about the string viewer and what it might be for? Its funny that the strviewer_plugin.sprx is still included in retail 4.82. Do you think the "cnf" its looking for is something to do with telnet? I don't know. I will experiment with making some strviewer_cnf files on usb000 later on tonight.
 
Is also needed to see if is posible to make several includes in the same line, imagine we make a group for game covers like in my previous example (ps1/ps2/ps3/psp) and another for game formats (format_iso/format_bin/format_jb), and another for devices (dev_hdd/dev_usb/dev_net)
And then an entry for a game like this:
Code:
<Table key="game001" include="ps1_cover" include="format_bin" include="dev_usb">

Another way to cummulate them is by making several "hierarchy levels"... and in every level is included a "children" (and this children includes others and so on)
All this methods could reduce xml code a lot... the most longer is the xml the most reduction is going to have
For a xml used in webman that only contains 20 games probably the code reduction is not much.... but if the xml list has hundreds of games the code reduction is going to be huge
All depends of how much "keys" you achieve to move to the "predefined attributes" groups... as said i think in webman there is a lot but to make big changes is needed to modify the source code (to generate the xml in a different way)

-------------------
About the strings viewer all i know is what i wrote in that wiki page... and in some way was a long research to cummulate that (small) info because the string viewer is the kind of thing you find eventually when looking at some firmware files, but always seems to be disconnected (not posible to follow his track), and the name is so generic and explicit that usually you think "ok, it should be something that displays texts so maybe is used everywhere because is generic, or meh... it should not have much use"
But after finding the name several times i started wondering about what the F%$# is it XD... but all info i could find about it is what is written in wiki, not much
 
About the strings viewer all i know is what i wrote in that wiki page... and in some way was a long research to cummulate that (small) info because the string viewer is the kind of thing you find when looking at some firmware files, but always seems to be disconnected (not posible to follow his track), and the name is so generic and explicit that usually you think "ok, it should be something that displays texts so maybe is used everywhere because is generic, or meh... it should not have much use"
But after finding the name several times i started wondering about what the F%$# is it XD... but all info i could find about it is what is written in wiki, not much
Well now you have some new info, such as it looking to usb000 for a strviewer.cnf file, and with "working" xml examples and some screenshots to add if you want. :)

Code:
<View id="seg_string_viewer">
 <Attributes>
 <Table key="StrViewer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>String Viewer</String></Pair>
 <Pair key="module_name"><String>strviewer_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Item  class="type:x-xmb/module-action" key="StrViewer" attr="StrViewer" />
 </Items>
 </View>
 
Well now you have some new info, such as it looking to usb000 for a strviewer.cnf file, and with "working" xml examples and some screenshots to add if you want. :)

Code:
<View id="seg_string_viewer">
 <Attributes>
 <Table key="StrViewer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>String Viewer</String></Pair>
 <Pair key="module_name"><String>strviewer_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Item  class="type:x-xmb/module-action" key="StrViewer" attr="StrViewer" />
 </Items>
 </View>

I think strview_plugin is used to show PARAM.HIS.
With cobra debugger or DEX it is easy to confirm ;)

EDIT: It seems that PARAM.HIS is listed by game_ext_plugin.sprx ...
 
Well now you have some new info, such as it looking to usb000 for a strviewer.cnf file, and with "working" xml examples and some screenshots to add if you want. :)
Oki, i updated the page with an example of that xml entry, and uploaded the screenshot of the error message
http://www.psdevwiki.com/ps3/String_Viewer

Im a bit like the first time i saw this, not sure what to update, we are still in the same point XD
There are 2 big questions that needs an answer:
-How it looks ? / what it does ?
-How to enable the icon on modern firmwares ?

Officially the icon is located at bottom of "settings" XMB category... there must be something that enables his visibility... in wiki i suggested maybe is enabled by a secret button combo :o

Or maybe is something enabled only for the (rare) PS3 AVtest models...that are intended to be used by licensed bluray editors of big companyes
If is enabled this way... then the reason why is hidden in other PS3 models is because the "target ID"
 
Officially the icon is located at bottom of "settings" XMB category... there must be something that enables his visibility... in wiki i suggested maybe is enabled by a secret button combo :o
I don't think so, well maybe it is in settings in newer FW, but in older FW it is located in the network category, next to the store
Code:
<View id="seg_commerce">
 <Attributes>
 <Table key="commerce">
 <Pair key="info"><String>commerce</String></Pair>
 </Table>
 <Table key="StrViewer">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>String Viewer</String></Pair>
 <Pair key="module_name"><String>strviewer_plugin</String></Pair>
 <Pair key="module_action"><String>0</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Item class="type:x-xmb/xmlnpsignup" key="commerce" attr="commerce" />
 <Item  class="type:x-xmb/module-action" key="StrViewer"  attr="StrViewer" />
 </Items>
 </View>

This is found in category_network_qamsg.xml
 
I was messing around, and I found , on CEX, you can delete all the shop xmls, the tool xmls, the category_sysconf.xml , not sure why we even leave them in normal CFW. Also , I stripped out loads of unused stuff from the used ones, reduced the xmls by over 50% in size overall without removing any features. :)
 
Last edited:
I was messing around, and I found , on CEX, you can delete all the shop xmls, the tool xmls, the category_sysconf.xml , not sure why we even leave them in normal CFW. Also , I stripped out loads of unused stuff from the used ones, reduced the xmls by over 50% in size overall without removing any features. :)
You deleted category_sysconf.xml too ? lol, i thought that one was used, good to know
And category_avc_photo.xml ?... not sure right now what does this one

That test reducing sizes is interesting, if you notice some performance improvement dont forget to tell us :)
I guess you could try to use a timer to meassure the loading times before and after the "fine butchery" of the xml files, but i also guess the meassurement is not going to be much precise, so dunno if im suggesting you to try this, jst mentioning it incase the loading times are very different

And that collection of ripped xml files could be handy for 4.82 han users :)
They are locked in retail/CEX so no need for the other files for other PS3 models... and the removal of the "dirt" added indiscriminatory by sony (because they hates to delete or cleanup his own code) is something good
I always thought it could be very nice to have some tool to automatize this cleanup, and when thinking in this i found some xml tools that can "merge" "substract" several xml files... and other options like that... are used for manteinance of xml databases
The first problem with that is the PS3 xml code uses some stuff that is not standard (the xml parser complains because there are errors and is not able to fix them), one of them is the & character that is used in the lines where it tells
Code:
src="xcb://localhost/query?onething=this&otherthing=that&whatever=thing
Everytime the xml parser finds a & returns an error... so that characters needs to be replaced before processing the xml file with some tool (that follows the xml standards, not the sony ones)... and after the edition should be restored (to return to the sony standards)
The other problem is after the xml is processed... it loses most of the original "sony style" in the way how lines are tabbed, or separated for a better reading.. technically the xml code is fine (ps3 is going to load it fine) but when you open the file it looks a bit weird

Edit:
Also, the xml tool needs to process the xml files with the correct encoding, dont remember if is utf-8 or 16
If done incorrectly... are lost all the unicode identifyers used to make appear the icons from imagefont.bin and things like that
 
Last edited:
You deleted category_sysconf.xml too ? lol, i thought that one was used, good to know
And category_avc_photo.xml ?...
Yeah, deleted both of those.

I have done some tests with
Code:
<Pair key="icon_fixed_width"><String>181</String></Pair>
 <Pair key="icon_fixed_height"><String>11</String></Pair>
and no luck, does not work any way I use it.

But, this does work:
Code:
<View id="seg_string_viewer">
 <Attributes>
 <Table key="add_to_all">
 <Pair key="info"><String>info test</String></Pair>
 </Table>
 <Table key="StrViewer"  include="add_to_all">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>String Viewer</String></Pair>
 <Pair key="module_name"><String>strviewer_plugin</String></Pair>
 <Pair key="module_action"><String>1</String></Pair>
 </Table>
 </Attributes>
 <Items>
 <Item  class="type:x-xmb/module-action" key="StrViewer" attr="StrViewer" />
 </Items>
 </View>

So we can use the "include" to reduce xml size lots, but not to resize icons from I can see.

Im interested in the "child grid" view, but don't think it works in newer FW.
Code:
<Table key="GridTest">
 <Pair key="icon_rsc"><String>item_tex_ms_icon</String></Pair>
 <Pair key="title"><String>Grid Test</String></Pair>
 <Pair key="child"><String>grid</String></Pair>
 </Table>

btw, I found a copy of the xmb_debug_plugin.sprx in one of those old dev_flash dumps. :) Cant seem to get it to do much though except crash ps3 (only does that if I rename it to an existing plugin)

Also found lots of typos, who ever wrote old pre release FW is worse than me :)
Code:
<Query
 class="type:x-xmb/folder-pixmap"
 key="GridTest"
 attr="GridTest"
 src="host://lolcalhost/app_home/data/art/GridTest" />

"lol" , no wonder they never included it in the FW, they broke it with a typo :)
 
Last edited:
I just figured out something new, the sysconf_plugin.rco does not require a reboot to get reloaded, You can just exit settings category and then enter it again. I think its the only one that works like this.

Also figured out how to disable single settings entries in a tidy way via rco edits.

How would I inject something like that

You would have be a hardcore XMB junkie to be injecting this kind of stuff, but here you go, just inject the attached xml into your forearm and then reboot :)

Just so you know it will not allow you to do anything cool really, so its only for research/novelty value, Also its at your own risk although this xml mod stuff is quite safe, some plugin calls will crash ps3, when ps3 reboots you will have option to press the PS button to retry boot, it always works, but worst case you would need to reinstall OFW.
 

Attachments

Similar threads

Back
Top