Talk:Languages: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:


=Language letter codes=
=Language codes (inside sysconf_plugin.rco)=
Languages can be selected on [[XMB]] {{icon category settings}} column, and are managed by '''strviewer_plugin.sprx''' and his associated '''strviewer_plugin.rco'''
Inside RCOXML
{{Boxcode|code=<syntaxhighlight lang="xml">
<Page name="page_console_system_lang" unknownInt0="0x1110000" onInit="nothing" onCancel="event:native:/OnCancelConsoleConfig" onContextMenu="nothing" onActivate="event:native:/OnActivatePageConsole">
<Plane name="plane_console_system_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" displayMode="0x0">
<Plane name="plane_console_system_lang_BG0" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" displayMode="0x0"></Plane>
<Plane name="plane_console_system_lang_BG1" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" displayMode="0x0"></Plane>
<MList name="plane_console_system_lang_LowerMenu" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="event:native:/OnInitMlistConsoleConfig" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x36a" unknownInt21="0x36b" unknown22="0x0" unknown23="0x15000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x7f030000" unknown30="0x80030000" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistConsoleConfig" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistConsoleConfig" unknownRef51="nothing">
<MItem name="item_console_system_lang_dk" text="text:msg_console_lang_dk" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_de" text="text:msg_console_lang_de" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_en_uk" text="text:msg_console_lang_en_uk" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_en_us" text="text:msg_console_lang_en_us" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_es" text="text:msg_console_lang_es" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_fr" text="text:msg_console_lang_fr" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_it" text="text:msg_console_lang_it" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_nl" text="text:msg_console_lang_nl" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_no" text="text:msg_console_lang_no" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_pl" text="text:msg_console_lang_pl" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_pt_br" text="text:msg_console_lang_pt_br" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_pt_pt" text="text:msg_console_lang_pt_pt" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_ru" text="text:msg_console_lang_ru" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_fi" text="text:msg_console_lang_fi" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_se" text="text:msg_console_lang_se" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_tr" text="text:msg_console_lang_tr" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_jp" text="text:msg_console_lang_japanese" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_kr" text="text:msg_console_lang_kr" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_cn_s" text="text:msg_console_lang_cn_s" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="item_console_system_lang_cn_t" text="text:msg_console_lang_cn_t" altText="nothing" unknownRef4="nothing"></MItem>
</MList>
</Plane>
</Page>
</syntaxhighlight>}}
Inside Texts.xml's
 
This text strings are exactly the same for for all the languages (because are localised)
{{Boxcode|code=<syntaxhighlight lang="xml">
<TextLang>
<Text name="msg_console_lang_japanese">日本語</Text>
<Text name="msg_console_lang_en_us">English (United States)</Text>
<Text name="msg_console_lang_en_uk">English (United Kingdom)</Text>
<Text name="msg_console_lang_fr">Français</Text>
<Text name="msg_console_lang_es">Español</Text>
<Text name="msg_console_lang_de">Deutsch</Text>
<Text name="msg_console_lang_it">Italiano</Text>
<Text name="msg_console_lang_nl">Nederlands</Text>
<Text name="msg_console_lang_pt_pt">Português (Portugal)</Text>
<Text name="msg_console_lang_pt_br">Português (Brasil)</Text>
<Text name="msg_console_lang_ru">Русский</Text>
<Text name="msg_console_lang_pl">Polski</Text>
<Text name="msg_console_lang_fi">Suomi</Text>
<Text name="msg_console_lang_dk">Dansk</Text>
<Text name="msg_console_lang_no">Norsk</Text>
<Text name="msg_console_lang_se">Svenska</Text>
<Text name="msg_console_lang_tr">Türkçe</Text>
<Text name="msg_console_lang_kr">한국어</Text>
<Text name="msg_console_lang_cn_s">简体中文</Text>
<Text name="msg_console_lang_cn_t">繁體中文</Text>
</TextLang>
</syntaxhighlight>}}


By looking at the [[RCOXML_Structure | RCOXML]] inside '''strviewer_plugin.rco''' (in the '''name="page_strviewer_lang"''' page under the '''ObjectTree''' list) it can be seen the firmware internal identifyers for the languages
=Language codes (inside strviewer_plugin)=
Languages can be seen in '''strviewer_plugin.sprx''' and his associated '''strviewer_plugin.rco'''
 
By looking at the [[RCOXML Coding | RCOXML]] inside '''strviewer_plugin.rco''' (in the '''name="page_strviewer_lang"''' page under the '''ObjectTree''' list) it can be seen the firmware internal identifyers for the languages


As an example... for korean, the item responsible to make appear the korean language as an option in setting column is '''name="menu_item_ko"''' and the text string associated is '''text="text:lang_ko"'''
As an example... for korean, the item responsible to make appear the korean language as an option in setting column is '''name="menu_item_ko"''' and the text string associated is '''text="text:lang_ko"'''


{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|code=<syntaxhighlight lang="xml">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x130">
<Page name="page_strviewer_lang" unknownInt0="0x1110000" onInit="event:native:/OnInitStrViewerLang" onCancel="event:native:/OnCancelStrViewerLang" onContextMenu="nothing" onActivate="nothing">
<MainTree name="strviewer">
<MList name="mlist_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" unknown23="0x9000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x0" unknown30="0x0" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistLang" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistLang" unknownRef51="nothing">
<TextTree>
<MItem name="menu_item_ja" name="menu_item_ja" altText="nothing" unknownRef4="nothing"></MItem>
... <!-- identifyers of the other language xml's not interesting for wiki -->
<MItem name="menu_item_en" text="text:lang_en" altText="nothing" unknownRef4="nothing"></MItem>
</TextTree>
<MItem name="menu_item_en_gb" text="text:lang_en_gb" altText="nothing" unknownRef4="nothing"></MItem>
<ObjectTree>
<MItem name="menu_item_fr" text="text:lang_fr" altText="nothing" unknownRef4="nothing"></MItem>
<Page name="page_strviewer_lang" unknownInt0="0x1110000" onInit="event:native:/OnInitStrViewerLang" onCancel="event:native:/OnCancelStrViewerLang" onContextMenu="nothing" onActivate="nothing">
<MItem name="menu_item_es" text="text:lang_es" altText="nothing" unknownRef4="nothing"></MItem>
<MList name="mlist_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" unknown23="0x9000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x0" unknown30="0x0" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistLang" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistLang" unknownRef51="nothing">
<MItem name="menu_item_de" text="text:lang_de" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_ja" name="menu_item_ja" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_it" text="text:lang_it" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_en" text="text:lang_en" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_nl" text="text:lang_nl" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_en_gb" text="text:lang_en_gb" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_pt" text="text:lang_pt" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_fr" text="text:lang_fr" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_pt_br" text="text:lang_pt_br" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_es" text="text:lang_es" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_ru" text="text:lang_ru" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_de" text="text:lang_de" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_pl" text="text:lang_pl" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_it" text="text:lang_it" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_fi" text="text:lang_fi" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_nl" text="text:lang_nl" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_da" text="text:lang_da" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_pt" text="text:lang_pt" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_no" text="text:lang_no" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_pt_br" text="text:lang_pt_br" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_sv" text="text:lang_sv" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_ru" text="text:lang_ru" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_tr" text="text:lang_tr" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_pl" text="text:lang_pl" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_ko" text="text:lang_ko" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_fi" text="text:lang_fi" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_zh_s" text="text:lang_zh_s" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_da" text="text:lang_da" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_zh_t" text="text:lang_zh_t" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_no" text="text:lang_no" altText="nothing" unknownRef4="nothing"></MItem>
<Scroll name="scroll_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="8" height="172" depth="1" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" unknownFloat23="100" unknownFloat24="100" unknown25="0x0" unknownRef26="nothing" unknownRef28="nothing" unknownRef30="nothing" unknownRef32="nothing" unknownRef34="nothing"></Scroll>
<MItem name="menu_item_sv" text="text:lang_sv" altText="nothing" unknownRef4="nothing"></MItem>
</MList>
<MItem name="menu_item_tr" text="text:lang_tr" altText="nothing" unknownRef4="nothing"></MItem>
</Page>
<MItem name="menu_item_ko" text="text:lang_ko" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_zh_s" text="text:lang_zh_s" altText="nothing" unknownRef4="nothing"></MItem>
<MItem name="menu_item_zh_t" text="text:lang_zh_t" altText="nothing" unknownRef4="nothing"></MItem>
<Scroll name="scroll_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="8" height="172" depth="1" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" unknownFloat23="100" unknownFloat24="100" unknown25="0x0" unknownRef26="nothing" unknownRef28="nothing" unknownRef30="nothing" unknownRef32="nothing" unknownRef34="nothing"></Scroll>
</MList>
</Page>
... <!-- other pages not interesting for wiki -->
</ObjectTree>
</MainTree>
</RcoFile>
</syntaxhighlight>}}
</syntaxhighlight>}}


The languages that appears in the list has a weird order (not chronological, not alphabetical), so is better to look at the list of languages that appears in every one of the xml's associated with an specific language, as example in firmware 4.70 all the xml's for all languages contains this list (exactly the same content in all them):
The languages that appears in the list has a weird order (not chronological, not alphabetical), so is better to look at the list of languages that appears in every one of the xml's associated with an specific language, as example in firmware 4.70 all the xml's for all languages contains this list (exactly the same content in all them):


Note are the same names used in the RCOXML, but this ones are ordered chronologically
Note are the same names used in the RCOXML, but here are ordered chronologically


{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|code=<syntaxhighlight lang="xml">
<TextLang>
<TextLang>
<Text name="lang_ja">Japanese</Text>
<Text name="lang_ja">Japanese</Text>
Line 73: Line 123:
</TextLang>
</TextLang>
</syntaxhighlight>}}
</syntaxhighlight>}}
=Language codes (inside explore_plugin.sprx)=
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0026E500  6A 61 00 00 00 00 00 00 65 6E 00 00 00 00 00 00  ja......en......
0026E510  66 72 00 00 00 00 00 00 65 73 00 00 00 00 00 00  fr......es......
0026E520  64 65 00 00 00 00 00 00 69 74 00 00 00 00 00 00  de......it......
0026E530  6E 6C 00 00 00 00 00 00 70 74 00 00 00 00 00 00  nl......pt......
0026E540  72 75 00 00 00 00 00 00 6B 6F 00 00 00 00 00 00  ru......ko......
0026E550  63 68 00 00 00 00 00 00 7A 68 00 00 00 00 00 00  ch......zh......
0026E560  66 69 00 00 00 00 00 00 73 76 00 00 00 00 00 00  fi......sv......
0026E570  64 61 00 00 00 00 00 00 6E 6F 00 00 00 00 00 00  da......no......
0026E580  70 6C 00 00 00 00 00 00 67 62 00 00 00 00 00 00  pl......gb......
0026E590  62 72 00 00 00 00 00 00 74 72 00 00 00 00 00 00  br......tr......
0026E5A0  75 73 00 00 00 00 00 00 63 61 00 00 00 00 00 00  us......ca......
0026E5B0  61 75 00 00 00 00 00 00 68 6B 00 00 00 00 00 00  au......hk......
0026E5C0  74 77 00 00 00 00 00 00 73 67 00 00 00 00 00 00  tw......sg......
0026E5D0  6B 72 00 00 00 00 00 00 6A 70 00 00 00 00 00 00  kr......jp......
0026E5E0  62 67 00 00 00 00 00 00 6D 78 00 00 00 00 00 00  bg......mx......
0026E5F0  61 72 00 00 00 00 00 00 73 65 00 00 00 00 00 00  ar......se......
0026E600  64 6B 00 00 00 00 00 00 00 00 00 00 00 00 00 00  dk..............
=Language codes (inside webcoreapp.bin)=
This list of language codes is stored inside webcoreapp.bin as a single text string where every language is separated by a standard space character (0x20), for better overview in wiki this 0x20 characters has been replaced by a linefeed
The number assigned to every language seems to be an identifyer used by silk web browser, the other strings (up to 243 strings) and files (up to 14 PNG files) inside webcoreapp.bin also uses this kind of identifyers
en=0
ja=33870
de=33880
es=33890
fr=33900
it=33910
nl=33920
pt=33930
ru=33940
ko=33950
zh-tw=33960
zh-cn=33970
fi=33980
sv=33990
da=34000
no=34010
pl=34020
en-uk=34030
pt-br=34040
tr=34050
=Language codes in PS2=
http://ichiba.geocities.jp/ysai187/PS2/LanguageSupport.htm

Latest revision as of 05:07, 30 August 2021

Language codes (inside sysconf_plugin.rco)[edit source]

Inside RCOXML

<Page name="page_console_system_lang" unknownInt0="0x1110000" onInit="nothing" onCancel="event:native:/OnCancelConsoleConfig" onContextMenu="nothing" onActivate="event:native:/OnActivatePageConsole">
	<Plane name="plane_console_system_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" displayMode="0x0">
		<Plane name="plane_console_system_lang_BG0" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" displayMode="0x0"></Plane>
		<Plane name="plane_console_system_lang_BG1" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" displayMode="0x0"></Plane>
		<MList name="plane_console_system_lang_LowerMenu" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="event:native:/OnInitMlistConsoleConfig" unknown17="0x100" unknown18="0x100" unknown19="0x100" unknownInt20="0x36a" unknownInt21="0x36b" unknown22="0x0" unknown23="0x15000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x7f030000" unknown30="0x80030000" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistConsoleConfig" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistConsoleConfig" unknownRef51="nothing">
			<MItem name="item_console_system_lang_dk" text="text:msg_console_lang_dk" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_de" text="text:msg_console_lang_de" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_en_uk" text="text:msg_console_lang_en_uk" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_en_us" text="text:msg_console_lang_en_us" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_es" text="text:msg_console_lang_es" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_fr" text="text:msg_console_lang_fr" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_it" text="text:msg_console_lang_it" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_nl" text="text:msg_console_lang_nl" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_no" text="text:msg_console_lang_no" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_pl" text="text:msg_console_lang_pl" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_pt_br" text="text:msg_console_lang_pt_br" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_pt_pt" text="text:msg_console_lang_pt_pt" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_ru" text="text:msg_console_lang_ru" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_fi" text="text:msg_console_lang_fi" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_se" text="text:msg_console_lang_se" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_tr" text="text:msg_console_lang_tr" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_jp" text="text:msg_console_lang_japanese" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_kr" text="text:msg_console_lang_kr" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_cn_s" text="text:msg_console_lang_cn_s" altText="nothing" unknownRef4="nothing"></MItem>
			<MItem name="item_console_system_lang_cn_t" text="text:msg_console_lang_cn_t" altText="nothing" unknownRef4="nothing"></MItem>
		</MList>
	</Plane>
</Page>

Inside Texts.xml's

This text strings are exactly the same for for all the languages (because are localised)

<TextLang>
	<Text name="msg_console_lang_japanese">日本語</Text>
	<Text name="msg_console_lang_en_us">English (United States)</Text>
	<Text name="msg_console_lang_en_uk">English (United Kingdom)</Text>
	<Text name="msg_console_lang_fr">Français</Text>
	<Text name="msg_console_lang_es">Español</Text>
	<Text name="msg_console_lang_de">Deutsch</Text>
	<Text name="msg_console_lang_it">Italiano</Text>
	<Text name="msg_console_lang_nl">Nederlands</Text>
	<Text name="msg_console_lang_pt_pt">Português (Portugal)</Text>
	<Text name="msg_console_lang_pt_br">Português (Brasil)</Text>
	<Text name="msg_console_lang_ru">Русский</Text>
	<Text name="msg_console_lang_pl">Polski</Text>
	<Text name="msg_console_lang_fi">Suomi</Text>
	<Text name="msg_console_lang_dk">Dansk</Text>
	<Text name="msg_console_lang_no">Norsk</Text>
	<Text name="msg_console_lang_se">Svenska</Text>
	<Text name="msg_console_lang_tr">Türkçe</Text>
	<Text name="msg_console_lang_kr">한국어</Text>
	<Text name="msg_console_lang_cn_s">简体中文</Text>
	<Text name="msg_console_lang_cn_t">繁體中文</Text>
</TextLang>

Language codes (inside strviewer_plugin)[edit source]

Languages can be seen in strviewer_plugin.sprx and his associated strviewer_plugin.rco

By looking at the RCOXML inside strviewer_plugin.rco (in the name="page_strviewer_lang" page under the ObjectTree list) it can be seen the firmware internal identifyers for the languages

As an example... for korean, the item responsible to make appear the korean language as an option in setting column is name="menu_item_ko" and the text string associated is text="text:lang_ko"

<Page name="page_strviewer_lang" unknownInt0="0x1110000" onInit="event:native:/OnInitStrViewerLang" onCancel="event:native:/OnCancelStrViewerLang" onContextMenu="nothing" onActivate="nothing">
	<MList name="mlist_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x10000" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" unknown23="0x9000000" unknown24="0x0" unknown25="0xffffffff" unknown26="0x0" unknown27="0x0" unknown28="0x0" unknown29="0x0" unknown30="0x0" unknownRef32="nothing" unknownRef33="event:native:/OnPushMlistLang" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="nothing" unknownRef49="event:native:/OnScrollInMlistLang" unknownRef51="nothing">
		<MItem name="menu_item_ja" name="menu_item_ja" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_en" text="text:lang_en" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_en_gb" text="text:lang_en_gb" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_fr" text="text:lang_fr" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_es" text="text:lang_es" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_de" text="text:lang_de" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_it" text="text:lang_it" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_nl" text="text:lang_nl" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_pt" text="text:lang_pt" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_pt_br" text="text:lang_pt_br" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_ru" text="text:lang_ru" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_pl" text="text:lang_pl" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_fi" text="text:lang_fi" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_da" text="text:lang_da" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_no" text="text:lang_no" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_sv" text="text:lang_sv" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_tr" text="text:lang_tr" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_ko" text="text:lang_ko" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_zh_s" text="text:lang_zh_s" altText="nothing" unknownRef4="nothing"></MItem>
		<MItem name="menu_item_zh_t" text="text:lang_zh_t" altText="nothing" unknownRef4="nothing"></MItem>
		<Scroll name="scroll_lang" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="8" height="172" depth="1" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" unknownFloat23="100" unknownFloat24="100" unknown25="0x0" unknownRef26="nothing" unknownRef28="nothing" unknownRef30="nothing" unknownRef32="nothing" unknownRef34="nothing"></Scroll>
	</MList>
</Page>

The languages that appears in the list has a weird order (not chronological, not alphabetical), so is better to look at the list of languages that appears in every one of the xml's associated with an specific language, as example in firmware 4.70 all the xml's for all languages contains this list (exactly the same content in all them):

Note are the same names used in the RCOXML, but here are ordered chronologically

<TextLang>
	<Text name="lang_ja">Japanese</Text>
	<Text name="lang_en">English</Text>
	<Text name="lang_fr">French</Text>
	<Text name="lang_es">Spanish</Text>
	<Text name="lang_de">German</Text>
	<Text name="lang_it">Italian</Text>
	<Text name="lang_nl">Dutch</Text>
	<Text name="lang_pt">Portuguese</Text>
	<Text name="lang_ru">Russian</Text>
	<Text name="lang_ko">Korean</Text>
	<Text name="lang_zh_t">T_Chinese</Text>
	<Text name="lang_zh_s">S_Chinese</Text>
	<Text name="lang_fi">Finnish</Text>
	<Text name="lang_sv">Swedish</Text>
	<Text name="lang_da">Danish</Text>
	<Text name="lang_no">Norwegian</Text>
	<Text name="lang_pl">Polish</Text>
	<Text name="lang_pt_br">Portuguese (Brazil)</Text>
	<Text name="lang_en_gb">English (UK)</Text>
	<Text name="lang_tr">Turkish</Text>
</TextLang>

Language codes (inside explore_plugin.sprx)[edit source]

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

0026E500  6A 61 00 00 00 00 00 00 65 6E 00 00 00 00 00 00  ja......en......
0026E510  66 72 00 00 00 00 00 00 65 73 00 00 00 00 00 00  fr......es......
0026E520  64 65 00 00 00 00 00 00 69 74 00 00 00 00 00 00  de......it......
0026E530  6E 6C 00 00 00 00 00 00 70 74 00 00 00 00 00 00  nl......pt......
0026E540  72 75 00 00 00 00 00 00 6B 6F 00 00 00 00 00 00  ru......ko......
0026E550  63 68 00 00 00 00 00 00 7A 68 00 00 00 00 00 00  ch......zh......
0026E560  66 69 00 00 00 00 00 00 73 76 00 00 00 00 00 00  fi......sv......
0026E570  64 61 00 00 00 00 00 00 6E 6F 00 00 00 00 00 00  da......no......
0026E580  70 6C 00 00 00 00 00 00 67 62 00 00 00 00 00 00  pl......gb......
0026E590  62 72 00 00 00 00 00 00 74 72 00 00 00 00 00 00  br......tr......
0026E5A0  75 73 00 00 00 00 00 00 63 61 00 00 00 00 00 00  us......ca......
0026E5B0  61 75 00 00 00 00 00 00 68 6B 00 00 00 00 00 00  au......hk......
0026E5C0  74 77 00 00 00 00 00 00 73 67 00 00 00 00 00 00  tw......sg......
0026E5D0  6B 72 00 00 00 00 00 00 6A 70 00 00 00 00 00 00  kr......jp......
0026E5E0  62 67 00 00 00 00 00 00 6D 78 00 00 00 00 00 00  bg......mx......
0026E5F0  61 72 00 00 00 00 00 00 73 65 00 00 00 00 00 00  ar......se......
0026E600  64 6B 00 00 00 00 00 00 00 00 00 00 00 00 00 00  dk..............

Language codes (inside webcoreapp.bin)[edit source]

This list of language codes is stored inside webcoreapp.bin as a single text string where every language is separated by a standard space character (0x20), for better overview in wiki this 0x20 characters has been replaced by a linefeed

The number assigned to every language seems to be an identifyer used by silk web browser, the other strings (up to 243 strings) and files (up to 14 PNG files) inside webcoreapp.bin also uses this kind of identifyers

en=0
ja=33870
de=33880
es=33890
fr=33900
it=33910
nl=33920
pt=33930
ru=33940
ko=33950
zh-tw=33960
zh-cn=33970
fi=33980
sv=33990
da=34000
no=34010
pl=34020
en-uk=34030
pt-br=34040
tr=34050

Language codes in PS2[edit source]

http://ichiba.geocities.jp/ysai187/PS2/LanguageSupport.htm