Editing XMB Fonts
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 6: | Line 6: | ||
In PS3 firmware 2.00 it was added a feature that allows the user to select the font style in [[XMB]] column {{icon category settings}}->[''Theme settings'']->[''Font''] from the default "original", "rounded", or "pop". This same setting can be modifyed by installing a [[PlayStation 3 Theme (P3T)|.p3t theme]] and theoretically the setting should be stored in the list of "user settings" inside [[XRegistry.sys]] | In PS3 firmware 2.00 it was added a feature that allows the user to select the font style in [[XMB]] column {{icon category settings}}->[''Theme settings'']->[''Font''] from the default "original", "rounded", or "pop". This same setting can be modifyed by installing a [[PlayStation 3 Theme (P3T)|.p3t theme]] and theoretically the setting should be stored in the list of "user settings" inside [[XRegistry.sys]] | ||
The font file that will be used to display the texts is | The font file that will be used to display the texts is choosen by the PS3 firmware based on the [[Languages|language]] setting | ||
Some parts of the firmware | Some parts of the firmware specifyes the font style that will be used by using his "font familly" as can be seen in [[RCOXML Fonts]], there is not a known complete list of all the font families used by the system though. And is posible to change color, size, shadow and other text effects in the [[RCOXML Objects]] related | ||
Some error codes are specific for fonts as [[Error_Codes#Debug_errors|Debug font error codes]], and [[Error_Codes#Font_errors|Font error codes]] where can be seen how the firmware uses the codenames "fontset" and "glyph" | Some error codes are specific for fonts as [[Error_Codes#Debug_errors|Debug font error codes]], and [[Error_Codes#Font_errors|Font error codes]] where can be seen how the firmware uses the codenames "fontset" and "glyph" | ||
Other parts of the firmware as the blu-ray player software, the PSP emulator, or the | Other parts of the firmware as the blu-ray player software, the PSP emulator, or the webbrowser uses its specific fonts tthat cant be considered "system fonts" | ||
=Using PS3 fonts in PC= | =Using PS3 fonts in PC= | ||
Line 48: | Line 48: | ||
|- bgcolor="#cccccc" | |- bgcolor="#cccccc" | ||
! style="text-align:left;" | DFHeiW5-A | ! style="text-align:left;" | DFHeiW5-A | ||
| 1.10-{{ | | 1.10-{{latest}} || SCE-PS3-DH-R-CGB.TTF || <small>8298536755af9d0c51350dccf84e0f60</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Capie KANA Regular | ! style="text-align:left;" | SCE-PS3 Capie KANA Regular | ||
| 1.90-{{ | | 1.90-{{latest}} || SCE-PS3-CP-R-KANA.TTF || <small>56eeef6f0bf4304cbb25c3a34d5415dd</small> || ? || ?? || ??? || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Matisse LATIN Bold | ! style="text-align:left;" | SCE-PS3 Matisse LATIN Bold | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-MT-B-LATIN.TTF || <small>633730e312abf51d4e2c245fc318d381</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Matisse LATIN BoldItalic | ! style="text-align:left;" | SCE-PS3 Matisse LATIN BoldItalic | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-MT-BI-LATIN.TTF || <small>ccd8c529ef0b695111f2615b1093e38d</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Matisse LATIN Italic | ! style="text-align:left;" | SCE-PS3 Matisse LATIN Italic | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-MT-I-LATIN.TTF || <small>d15017f2fed8196cd7bee5404f3be6d0</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Matisse LATIN Regular | ! style="text-align:left;" | SCE-PS3 Matisse LATIN Regular | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-MT-R-LATIN.TTF || <small>252116679f1f593306a1f712f3de1ee2</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" rowspan="2" | SCE-PS3 NewRodin EXT Regular | ! style="text-align:left;" rowspan="2" | SCE-PS3 NewRodin EXT Regular | ||
| 1.00-1.54 || rowspan="2" | SCE-PS3-NR-R-EXT.TTF || bgcolor="#ffcccc" | <small>011e1bda9c6b4be8a5919a01d65ccd05</small> || ? || ?? || ??? || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} | | 1.00-1.54 || rowspan="2" | SCE-PS3-NR-R-EXT.TTF || bgcolor="#ffcccc" | <small>011e1bda9c6b4be8a5919a01d65ccd05</small> || ? || ?? || ??? || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} | ||
|- | |- | ||
| 1.60-{{ | | 1.60-{{latest}} || bgcolor="#ccffcc" | <small>2093744c3265d64e1a211994ed1c9f66</small> || ? || ?? || ??? || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 NewRodin JPN Bold | ! style="text-align:left;" | SCE-PS3 NewRodin JPN Bold | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-NR-B-JPN.TTF || <small>de91673a29236ba6db2b5bff43517a82</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" rowspan="2" | SCE-PS3 NewRodin JPN Light | ! style="text-align:left;" rowspan="2" | SCE-PS3 NewRodin JPN Light | ||
| 1.00-1.94 || rowspan="2" | SCE-PS3-NR-L-JPN.TTF || bgcolor="#ffcccc" | <small>93d3cdf914e6fdf860b2c88b1007e709</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} | | 1.00-1.94 || rowspan="2" | SCE-PS3-NR-L-JPN.TTF || bgcolor="#ffcccc" | <small>93d3cdf914e6fdf860b2c88b1007e709</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} | ||
|- | |- | ||
| 2.00-{{ | | 2.00-{{latest}} || bgcolor="#ccffcc" | <small>e2a36a3567579222ede5fc037e0b4a72</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 NewRodin JPN Regular | ! style="text-align:left;" | SCE-PS3 NewRodin JPN Regular | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-NR-R-JPN.TTF || <small>0964fada1726d6c86bfd190b82955d0a</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN Bold | ! style="text-align:left;" | SCE-PS3 Rodin LATIN Bold | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-RD-B-LATIN.TTF || <small>440399fc14b06e06e349ac00f5f90b99</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN BoldItalic | ! style="text-align:left;" | SCE-PS3 Rodin LATIN BoldItalic | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-RD-BI-LATIN.TTF || <small>aeb6defacc19d4de3badf6829dbc09de</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN Italic | ! style="text-align:left;" | SCE-PS3 Rodin LATIN Italic | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-RD-I-LATIN.TTF || <small>423c81d7808ca94b15609c5393bc8b95</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN LightItalic | ! style="text-align:left;" | SCE-PS3 Rodin LATIN LightItalic | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-RD-LI-LATIN.TTF || <small>56615610988819ee3f5ac330a4720229</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN2 Bold | ! style="text-align:left;" | SCE-PS3 Rodin LATIN2 Bold | ||
| 2.70-{{ | | 2.70-{{latest}} || SCE-PS3-RD-B-LATIN2.TTF || <small>4096b273f77b1fdb85edc41de8d5d0cb</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN Light | ! style="text-align:left;" | SCE-PS3 Rodin LATIN Light | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-RD-L-LATIN.TTF || <small>3bedb71fcfc5945c97e424801ed5655d</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN2 Light | ! style="text-align:left;" | SCE-PS3 Rodin LATIN2 Light | ||
| 2.70-{{ | | 2.70-{{latest}} || SCE-PS3-RD-L-LATIN2.TTF || <small>331d540c72c733e727d1ad5d17bfffdf</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN Regular | ! style="text-align:left;" | SCE-PS3 Rodin LATIN Regular | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-RD-R-LATIN.TTF || <small>117aecd019bd546158723d04da2597b0</small> || {{Yes}} || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Rodin LATIN2 Regular | ! style="text-align:left;" | SCE-PS3 Rodin LATIN2 Regular | ||
| 2.70-{{ | | 2.70-{{latest}} || SCE-PS3-RD-R-LATIN2.TTF || <small>d2928959ca2ec90b5311acc766878da9</small> || {{Yes}} || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Seurat EXT Regular | ! style="text-align:left;" | SCE-PS3 Seurat EXT Regular | ||
| 2.00-{{ | | 2.00-{{latest}} || SCE-PS3-SR-R-EXT.TTF || <small>cb45f4bd16cfe0eb84b27781d3ec1618</small> || ? || ?? || ??? || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Seurat JPN Regular | ! style="text-align:left;" | SCE-PS3 Seurat JPN Regular | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-SR-R-JPN.TTF || <small>139fd3f044eaf7abec4be15cadfd1b95</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Seurat LATIN Regular | ! style="text-align:left;" | SCE-PS3 Seurat LATIN Regular | ||
| 1.90-{{ | | 1.90-{{latest}} || SCE-PS3-SR-R-LATIN.TTF || <small>95b22135152d73a10b228eed7a6fc619</small> || ? || {{Yes}} || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 Seurat LATIN2 Regular | ! style="text-align:left;" | SCE-PS3 Seurat LATIN2 Regular | ||
| 3.10-{{ | | 3.10-{{latest}} || SCE-PS3-SR-R-LATIN2.TTF || <small>2da9b59f0b6f128840059295a7bcb7c3</small> || ? || {{Yes}} || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 YD gd Bold | ! style="text-align:left;" | SCE-PS3 YD gd Bold | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-YG-B-KOR.TTF || <small>1903b9af9343b5d66d8ffc69c2fb6cd6</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 YD gd Light | ! style="text-align:left;" | SCE-PS3 YD gd Light | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-YG-L-KOR.TTF || <small>9de713abb39f6b80aaf9bdc7d115878a</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | SCE-PS3 YD gd Medium | ! style="text-align:left;" | SCE-PS3 YD gd Medium | ||
| 1.00-{{ | | 1.00-{{latest}} || SCE-PS3-YG-R-KOR.TTF || <small>07a1073f311e1e163f7ba6b85f9f4b6b</small> || ? || ?? || ??? || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | VAGRundschriftDLig | ! style="text-align:left;" | VAGRundschriftDLig | ||
| 2.00-{{ | | 2.00-{{latest}} || SCE-PS3-VR-R-LATIN.TTF || <small>1f19bc8dd23bf62bfd2e1536cbb5c88a</small> || ? || ?? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
! style="text-align:left;" | VAGRundschriftDLig2 | ! style="text-align:left;" | VAGRundschriftDLig2 | ||
| 3.10-{{ | | 3.10-{{latest}} || SCE-PS3-VR-R-LATIN2.TTF || <small>acd93157f7998933774b398740becb46</small> || ? || ?? || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} | ||
|- | |- | ||
|} | |} | ||
Line 141: | Line 141: | ||
The purpose of imafefont.bin is to override some of the glyps from the standard unicode character map used by the TTF files. Contains icons in high quality using colors, alpha, and optionally animations | The purpose of imafefont.bin is to override some of the glyps from the standard unicode character map used by the TTF files. Contains icons in high quality using colors, alpha, and optionally animations | ||
=== | ===Versions and formats=== | ||
*There are two different imagefont.bin formats: | *There are two different imagefont.bin formats: | ||
**'''OLD''' | **'''OLD''' | ||
Line 155: | Line 155: | ||
The versions of this files listed in the tables below are refered to the exact binary that was included in either PS3 or PSVita firmwares | The versions of this files listed in the tables below are refered to the exact binary that was included in either PS3 or PSVita firmwares | ||
{| class="wikitable sortable" style="font-size:small;" | {| class="wikitable sortable" style="font-size:small;" | ||
Line 164: | Line 162: | ||
! format_version ? !! index_entries | ! format_version ? !! index_entries | ||
|- | |- | ||
| rowspan="6" | {{icon content ps3}} || [[1.90_CEX|1.90]]~[[1.94_CEX|1.94]] || 385816 || 3e74a50419c165f4208b84adcbf2881f || 0x0090 || 0x0129 || | | rowspan="6" | {{icon content ps3}} || [[1.90_CEX|1.90]]~[[1.94_CEX|1.94]] || 385816 || 3e74a50419c165f4208b84adcbf2881f || 0x0090 || 0x0129 || 297 icons, initial PS3 version | ||
|- | |- | ||
| [[2.00_CEX|2.00]]~[[2.43_CEX|2.43]] || 386905 || 6b842156c0996e4c706fbdea919a040f || 0x0100 || 0x0129 || | | [[2.00_CEX|2.00]]~[[2.43_CEX|2.43]] || 386905 || 6b842156c0996e4c706fbdea919a040f || 0x0100 || 0x0129 || | ||
|- | |- | ||
| [[2.50_CEX|2.50]]~[[3.42_CEX|3.42]] || 416269 || 2da04c8caaec6012911b10fc3b829b10 || | | [[2.50_CEX|2.50]]~[[3.42_CEX|3.42]] || 416269 || 2da04c8caaec6012911b10fc3b829b10 || ? || ? || | ||
|- | |- | ||
| [[3.50_CEX|3.50]]~[[3.66_CEX|3.66]] || 417620 || 6c03902f0342cc6e688c527b40ce0f7d || 0x0100 || 0x0140 || | | [[3.50_CEX|3.50]]~[[3.66_CEX|3.66]] || 417620 || 6c03902f0342cc6e688c527b40ce0f7d || 0x0100 || 0x0140 || | ||
|- | |- | ||
| [[3.70_CEX|3.70]]~[[4.55_CEX|4.55]] || 420192 || 98e8f3545e04ad62da19c2fc63210cfd || 0x0100 || 0x0142 || added uF8B7 | | [[3.70_CEX|3.70]]~[[4.55_CEX|4.55]] || 420192 || 98e8f3545e04ad62da19c2fc63210cfd || 0x0100 || 0x0142 || added uF8B7, uF8B8 (headset icons) | ||
|- | |- | ||
| [[4.60_CEX|4.60]]~[[4. | | [[4.60_CEX|4.60]]~[[4.81_CEX|4.81]] || 424023 || 97daf9e7fff3a834bcf97c0c2240dced || 0x0100 || 0x014C || added uF895, uF896, uF897, uF898, uF899, uF89A, uF89B, uF89C, uF89D, uF89E (playstation logos) | ||
|- | |- | ||
| colspan="7" {{cellcolors|lightgrey}} | | colspan="7" {{cellcolors|lightgrey}} | ||
Line 190: | Line 188: | ||
# - Decompress and loads the palette for an icon (at middle of imagefont.bin), it tells where is/are located the image/s of the icon (one for static, or several for animated) | # - Decompress and loads the palette for an icon (at middle of imagefont.bin), it tells where is/are located the image/s of the icon (one for static, or several for animated) | ||
# - Decompress and loads the image/s (at top of imagefont.bin) | # - Decompress and loads the image/s (at top of imagefont.bin) | ||
====Header==== | ====Header==== | ||
The header is only 0x8 bytes | The header is only 0x8 bytes lenght, in it can be seen the '''format_version''' of the imagefont structure (this is speculative though, needs to be confirmed), the '''index_entries''' that in the practise is the same than the number of icons contained in the file, and the '''index_offset''' to locate the index | ||
{| class="wikitable" | {| class="wikitable" | ||
|+imagefont.bin header | |+imagefont.bin header | ||
! Offset !! | ! Offset !! Lenght !! Name !! Example !! Remark | ||
|- | |- | ||
| align="center" | 0x00 || align="center" | 0x02 || '''format_version''' ? || align="center" | 01 00 || File structure/features identifyer ? | | align="center" | 0x00 || align="center" | 0x02 || '''format_version''' ? || align="center" | 01 00 || File structure/features identifyer ? | ||
Line 207: | Line 204: | ||
|} | |} | ||
By reading the header can be deduced some additional infos about the index. We know every entry in the index is 0x10 bytes | By reading the header can be deduced some additional infos about the index. We know every entry in the index is 0x10 bytes lenght so... '''index_entries''' * '''index_entry_lenght''' = '''index_lenght'''. Also '''index_offset''' + '''index_lenght''' = end of file | ||
From this point (after reading the header) the file access order "jumps" to the bottom of the file (to the index) so for wiki readers that are reading this for first time is suggested to scroll down the page and continue reading at the '''Index''' section | From this point (after reading the header) the file access order "jumps" to the bottom of the file (to the index) so for wiki readers that are reading this for first time is suggested to scroll down the page and continue reading at the '''Index''' section | ||
Line 247: | Line 244: | ||
{| class="wikitable" style="font-size:small;" | {| class="wikitable" style="font-size:small;" | ||
|+Palette header (0x6 | |+Palette header (0x6 lenght) | ||
! rowspan="2" | Offset !! rowspan="2" | | ! rowspan="2" | Offset !! rowspan="2" | Lenght !! rowspan="2" | Name !! colspan="5" | Examples !! rowspan="2" | Notes | ||
|- | |- | ||
! <abbr title="static. Is also the first in the index">uF880, button circle</abbr> !! <abbr title="animated, 1 frame. Is also the last in the index">uF6DF, zodiac pisces</abbr> !! <abbr title="animated, 2 frames">uF405, smiley laughing</abbr> !! <abbr title="animated, 3 frames">uF46F, weather raindrops</abbr> !! <abbr title="animated, 4 frames">uF8AB, battery charging</abbr> | ! <abbr title="static. Is also the first in the index">uF880, button circle</abbr> !! <abbr title="animated, 1 frame. Is also the last in the index">uF6DF, zodiac pisces</abbr> !! <abbr title="animated, 2 frames">uF405, smiley laughing</abbr> !! <abbr title="animated, 3 frames">uF46F, weather raindrops</abbr> !! <abbr title="animated, 4 frames">uF8AB, battery charging</abbr> | ||
Line 261: | Line 258: | ||
|} | |} | ||
From here can be deduced some infos, we know every frame is 0xC | From here can be deduced some infos, we know every frame is 0xC lenght so... '''frames_count''' * 0xC = '''frames_table_lenght''' (the position where starts the colormap). And '''colormap_count''' * '''colormap_bpp''' = '''colormap_lenght''' | ||
=====Palette frames table===== | =====Palette frames table===== | ||
The amount of entries in the palette frame table is defined by the value above named '''frames_count''', in static icons this area appears only one time, for animated icons there are several | The amount of entries in the palette frame table is defined by the value above named '''frames_count''', in static icons this area appears only one time, for animated icons there are several | ||
For every image in the icon (or every frame of the animation) there is an entry here of 0xC | For every image in the icon (or every frame of the animation) there is an entry here of 0xC lenght with info specific for that frame (doesnt applyes to other frames of the same animation)... in the practise what we are namig a frame here is the same than a image of the '''Image table''' that is going to be loaded in the next step | ||
The '''image_data_offset''' and ''' | The '''image_data_offset''' and '''image_data_lenght''' are used to locate the image (that needs to be zlib decompressed) | ||
The '''frame_time''' represents how many time in centiseconds is going to be displayed the image until the image of the next frame replaces it, this value is very related with the '''animation_time''' above, actually the '''animation_time''' should be equal to the sum of all '''frame_time''' of all the frames that composes the animation. It seems is not allowed (tests failed when trying it) to create a "blink" effect by using an '''animation_time''' bigger than the sum of all '''frame_time''' | The '''frame_time''' represents how many time in centiseconds is going to be displayed the image until the image of the next frame replaces it, this value is very related with the '''animation_time''' above, actually the '''animation_time''' should be equal to the sum of all '''frame_time''' of all the frames that composes the animation. It seems is not allowed (tests failed when trying it) to create a "blink" effect by using an '''animation_time''' bigger than the sum of all '''frame_time''' | ||
Line 279: | Line 276: | ||
{| class="wikitable" style="font-size:small;" | {| class="wikitable" style="font-size:small;" | ||
|+Palette frame (0xC | |+Palette frame (0xC lenght for every frame) | ||
! rowspan="2" | Offset !! rowspan="2" | | ! rowspan="2" | Offset !! rowspan="2" | Lenght !! rowspan="2" | Name !! colspan="5" | Examples !! rowspan="2" | Notes | ||
|- | |- | ||
! <abbr title="static. Is also the first in the index">uF880, button circle</abbr> !! <abbr title="animated, 1 frame. Is also the last in the index">uF6DF, zodiac pisces</abbr> !! <abbr title="animated, 2 frames">uF405, smiley laughing</abbr> !! <abbr title="animated, 3 frames">uF46F, weather raindrops</abbr> !! <abbr title="animated, 4 frames">uF8AB, battery charging</abbr> | ! <abbr title="static. Is also the first in the index">uF880, button circle</abbr> !! <abbr title="animated, 1 frame. Is also the last in the index">uF6DF, zodiac pisces</abbr> !! <abbr title="animated, 2 frames">uF405, smiley laughing</abbr> !! <abbr title="animated, 3 frames">uF46F, weather raindrops</abbr> !! <abbr title="animated, 4 frames">uF8AB, battery charging</abbr> | ||
Line 286: | Line 283: | ||
| 0x00 || 0x04 || '''image_data_offset''' || 00 00 00 08 || 00 02 43 A3 || 00 00 7B CF || 00 00 EE 59 || 00 00 4D 70 || image absolute offset | | 0x00 || 0x04 || '''image_data_offset''' || 00 00 00 08 || 00 02 43 A3 || 00 00 7B CF || 00 00 EE 59 || 00 00 4D 70 || image absolute offset | ||
|- | |- | ||
| 0x04 || 0x02 || ''' | | 0x04 || 0x02 || '''image_data_lenght''' || 01 D9 || 01 6D || 02 15 || 00 BA || 01 AE || image lenght (zlib compressed) | ||
|- | |- | ||
| 0x06 || 0x02 || '''frame_time''' || 00 00 || 00 3C || 00 3C || 00 3C || 00 3C || | | 0x06 || 0x02 || '''frame_time''' || 00 00 || 00 3C || 00 3C || 00 3C || 00 3C || | ||
Line 340: | Line 337: | ||
=====Palette colormap===== | =====Palette colormap===== | ||
The colormap is straightforwad, here every entry is indicated by the | The colormap is straightforwad, here every entry is indicated by the lenght of '''colormap_bpp''' (4 bytes for RGBA channels found always in ofw, other values not tested), and the amount of entries is indicated by the value of '''colormap_count''' (256 indexed colors found always used in ofw, other values incoming) | ||
The order of how the colors appears in the colormap is very important, every color is given a unique '''color_id''', the first color is ID = 0x00 and last color is ID = 0xFF (for a total of 256 indexed colors) | The order of how the colors appears in the colormap is very important, every color is given a unique '''color_id''', the first color is ID = 0x00 and last color is ID = 0xFF (for a total of 256 indexed colors) | ||
Line 349: | Line 346: | ||
{| class="wikitable" style="font-size:small;" | {| class="wikitable" style="font-size:small;" | ||
|+Color map (0x400 | |+Color map (0x400 lenght) | ||
! Offset !! | ! Offset !! Lenght !! Name !! Example !! Notes | ||
|- | |- | ||
| 0x000 || 0x04 || '''color_rgba''' || 01 00 00 FF || color id 0x00 | | 0x000 || 0x04 || '''color_rgba''' || 01 00 00 FF || color id 0x00 | ||
Line 370: | Line 367: | ||
There is an '''unknown''' value at the end, this one should be important (and maybe there is some easter egg hidden in it), is supposed to be a generic descriptor of the icon, or some information needed to know by the firmware about the icon BEFORE accessing any other aditionally data. The point is all the other areas that are going to be accessed in the next steps are compressed in zlib so this unknown value is something that is useful/interesting to know even BEFORE loading the icon data | There is an '''unknown''' value at the end, this one should be important (and maybe there is some easter egg hidden in it), is supposed to be a generic descriptor of the icon, or some information needed to know by the firmware about the icon BEFORE accessing any other aditionally data. The point is all the other areas that are going to be accessed in the next steps are compressed in zlib so this unknown value is something that is useful/interesting to know even BEFORE loading the icon data | ||
Then is used the value ''' | Then is used the value '''palette_lenght_decompressed''' to reserve an area in memory for zlib decompression purposes (because the palette file that is going to be loaded in next step is zlib compressed), and the palette file is located by using the values '''palette_offset''' and '''palette_lenght_compressed''' | ||
After knowing all this info about an specific icon the access "jumps" back to find the palette of the icon (located at middle of imagefont.bin), so scroll up to continue reading in the section '''Palette table''' above | After knowing all this info about an specific icon the access "jumps" back to find the palette of the icon (located at middle of imagefont.bin), so scroll up to continue reading in the section '''Palette table''' above | ||
Line 383: | Line 380: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Offset !! | ! Offset !! Lenght !! Name !! Example !! Notes | ||
|- | |- | ||
| 0x00 || 0x04 || '''palette_offset''' || 00 02 3A B6 || Icon palette location | | 0x00 || 0x04 || '''palette_offset''' || 00 02 3A B6 || Icon palette location | ||
|- | |- | ||
| 0x04 || 0x02 || ''' | | 0x04 || 0x02 || '''palette_lenght_compressed''' || 03 5E || Icon palette size | ||
|- | |- | ||
| 0x06 || 0x02 || ''' | | 0x06 || 0x02 || '''palette_lenght_decompressed''' || 04 12 || Icon palette size after zlib decompression | ||
|- | |- | ||
| 0x08 || 0x02 || '''unicode_hex_id''' || F8 80 || Icon identifyer | | 0x08 || 0x02 || '''unicode_hex_id''' || F8 80 || Icon identifyer | ||
Line 404: | Line 401: | ||
**https://pastebin.com/MBpQAekU https://pastebin.com/84Qva4Fw (imagefont.bin index used in PS3 firmwares 4.60-4.81) | **https://pastebin.com/MBpQAekU https://pastebin.com/84Qva4Fw (imagefont.bin index used in PS3 firmwares 4.60-4.81) | ||
=== | ===Image formats=== | ||
<!-- Contains some hundreds of glyphs (characters). Every glyph is compressed individually with zlib, are colored, and some are animated --> | |||
===Units conversions=== | |||
Time is meassured in centiseconds (a hundredth of a second). A centisecond is a unit of time equal to 0.01 seconds. See: https://en.wikipedia.org/wiki/Centisecond and https://en.wiktionary.org/wiki/centisecond | Time is meassured in centiseconds (a hundredth of a second). A centisecond is a unit of time equal to 0.01 seconds. See: https://en.wikipedia.org/wiki/Centisecond and https://en.wiktionary.org/wiki/centisecond | ||
{| class="wikitable" | |||
{| class="wikitable | |||
|+Time conversion examples | |+Time conversion examples | ||
! colspan="4" | Time !! rowspan="3" | Used in OFW by !! rowspan="3" | Notes | ! colspan="4" | Time !! rowspan="3" | Used in OFW by !! rowspan="3" | Notes | ||
Line 468: | Line 458: | ||
! Fontname !! Version !! File Name !! MD5 !! Remarks | ! Fontname !! Version !! File Name !! MD5 !! Remarks | ||
|- | |- | ||
| SCE-PS3 Rodin LATIN Regular || (1.00-{{ | | SCE-PS3 Rodin LATIN Regular || (1.00-{{latest}}) || SCE-PS3-RD-R-LATIN.TTF || 117aecd019bd546158723d04da2597b0 || | ||
|- | |- | ||
|} | |} | ||
Line 479: | Line 469: | ||
! Fontname !! Version !! File Name !! MD5 !! Remarks | ! Fontname !! Version !! File Name !! MD5 !! Remarks | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || c041056ts.ttf || ad7d1d44ed71fb093272c97a9ada20c3 || | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || d013013ds.ttf || 7e506d6d01012a3d539773fc85cea2cc || | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || e046323ms.ttf || 4e23131d06152ddadab15a20820815a1 || | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || e046323ts.ttf || 9d59a66a0c3272e8fc6a3036cb06a4a8 || | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || k006004ds.ttf || b4c4ba4db62e93de79c953d3493088c7 || | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || n023055ms.ttf || be8cba042232554219905e01e72ebaa6 || | ||
|- | |- | ||
| || (4.50-{{ | | || (4.50-{{latest}}) || n023055ts.ttf || 1078c40b04206b3d42a896994c723452 || | ||
|- | |- | ||
|} | |} |