Dreamcast GUI Screen Explanation
1998/09/21 Sega Enterprises, Inc. Technical Support Center |
This document contains information about GUI screens in the BootROM which are necessary for application control.
The document applies to the BootROM Ver. 0.813. Some functions and names may be changed in later BootROM versions.

This screen appears after the opening animation of the BootROM is completed. It is called the Main Menu screen.
It gives access to four functions, namely starting a Dreamcast disc, playing digital audio tracks on CDs and GDs, managing backup files, and setting the user configuration.
These four functions allow for various implementations, depending on the Dreamcast disc contents and backup contents.
The following sections explain the functions and their format.
In development versions of the BootROM, version information may appear besides the time and date information at the top right of the screen.
Selecting "File" from the multiplayer top menu brings up the following screen.

In this example, two memory cards are inserted in port A.
The front side port contains the Visual Memory for the game "Atsumete Gozilla Kaiju Daishugo" (already available), indicated by the Gozilla icon.
This icon is called a Volume Icon. Besides the VM program data for the Visual Memory, dedicated data for this icon must be provided.
The data must be in a file with the name ICONDATA_VMS, which uses the following format.
The terms used in the above table have the following meaning.
- VM comment data
- File attached to a Visual Memory product. Appears on the file management screen.
- Monochrome icon data offset
- Byte offset to the start point of monochrome icon data in the file
Value to be entered is 00000020h
- Color icon data offset
- Byte offset to the start point of color icon data in the file
Value to be entered is 000000A0h
- Reserved
- Fill with 00h
- Monochrome icon data
- Picture appearing on the LCD of the Visual Memory when the GUI is executed.
The icon size is 32x32 dots, with 1 bit per dot. Therefore one byte contains information for 8 dots. A bit value of "1" means black and a bit value of "0" means white. Pixels are arranged from left to right, with pixel information proceeding from the upper bit to the lower bit.
- Color icon palette data
- These are palette data for the volume icon. Using ARGB4444 color data, a total of 16 colors are stored.
- Color icon pixel data
- These are pixel data for the volume icon in palette format.
4 bits form 1 dot, with the upper 4 bits expressing the left side and the lower 4 bits the right side pixel data.
* All data must be expressed in Little-Endian format.
Save Data
Selecting a memory card on this screen and pressing button A brings up the following screen.

This screen shows a list of files saved on the selected memory card, as well as details about the selected file.
The screen contains various useful information which will be explained here.
The various parts of the screen as indicated by numbers and letters are as follows.
The part denoted by "A" is the so-called visual comment.
This can be for example a miniaturized scene from the game, or a visual representation of contents such as "Chapter 2".
The graphic can also be animated. If the file management icon has animation information, the icon will be animated on the file management screen. In the above example, an animation of Gozilla spouting fire is used.
Next, let us have a look at the file format of other data besides those for the volume icons.
Besides data or programs, saved files must contain an information fork.
The information fork has the same structure for VM programs and data, but the position in the file is different.
VM program files contain the reset vector and other resource information, followed by the information fork, followed by the actual program. Other files such as saved data contain the information fork followed by the actual data.
Visual Memory program | Data |
+0000h | Visual Memory resources (vector information table etc.) |
+0200h | Information fork |
+xxxxh | Visual Memory program data |
|
|
The information fork is divided into two sections.
One is required and the other is optional, depending on the functions that are used.
The format of the data is as follows.
- Required section
- Function-dependent section
* All data must be expressed in Little-Endian format.
The terms used in the above table have the following meaning.
- VM comment data
- The file name to be displayed on the Visual Memory file management screen. The name uses ASCII characters and can be up to 16 characters long. For information on allowable characters, see the separate table.
- GUI comment data
- File comments to be shown on the Simple Player file management screen. Up to 32 ASCII characters.
- Game name
- Character string that is used for sorting the Simple Player file display. Uses special codes that are explained below.
- Number of icons
- The number of icons used for animation (1 - 3).
- Animation speed
- The rate at which animation icons are switched. Taking the value specified here as n, the switching interval is n/30 seconds. (The switching sequence is 1 -> 2 -> 3 -> 1 ->...)
- Visual type
- Specifies the type of visual comment.
0 | means that no visual comment is used. |
1 | Type A used
Size | 72 x 56 dots |
Color format | Direct color (ARGB4444) |
Palette | Not used |
Pixel data | For 1 dot, 2 bytes specify information from top left to bottom right |
Number of blocks to be used as visual comment data | 16 |
|
2 | Type B used
Size | 72 x 56 dots |
Color format | 256 color palette (8 bit) |
Palette | ARGB4444 format |
Pixel data | For 1 dot, 1 byte specifies information from top left to bottom right |
Number of blocks to be used as visual comment data | 8 |
|
3 | Type C used
Size | 72 x 56 dots |
Color format | 16 color palette (4 bit) |
Palette | ARGB4444 format |
Pixel data | For 2 dots, 1 byte specifies information from top left to bottom right |
Number of blocks to be used as visual comment data | 4 |
|
- CRC
- Stores CRC data. When the backup utility functions are used, CRC data are generated and checked automatically. User applications are free to use or disregard CRC data.
- Save data size
- The block size of the data to be saved.
- (*)
- Reserved. Fill with 00h.
- Icon palette data
- Stores the icon palette data for animated icons.
The ARGB4444 format with 16 colors (4 bits) is used.
Multiple icons (for animation) use the same palette.
- Icon no. 1 pixel data
- Defines the file icon in 4-bit palette format.
The pixel size is 32 dots x 32 dots.
For non-animated icons, only this needs to be set.
For animated icons, the following items also need to be set.
- Icon no. 2 pixel data
- Used for animated icons with two or three images.
Specifications are the same as for icon no. 1.
- Icon no. 3 pixel data
- Used for animated icons with three images.
Specifications are the same as for icon no. 1.
- Visual comment palette and pixel data
- Used for adding a visual comment. The data type depends on the visual comment type (type A - C).
When a palette is used, it must be defined first, followed by the pixel data definition.
Because visual comments require a considerable amount of backup space, the decision whether to use comments and which comment type to use should be made after referring to the guidelines for writing Visual Memory software.
|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 | 9 | A | B | C | D |
E | F |
0 | | | SP |
0 | @ |
P | ` | p |
| | | - | タ | ミ | |
|
1 | | | ! |
1 |
A |
Q |
a | q | | | 。 | ア | チ |
ム | | |
2 | | | " |
2 |
B |
R |
b | r | | | 「 | イ | ツ |
メ | | |
3 | | | # |
3 |
C |
S |
c | s | | | 」 | ウ | テ |
モ | | |
4 | | | $ |
4 |
D |
T |
d | t | | | 、 | エ | ト |
ヤ | | |
5 | | | % |
5 |
E |
U |
e | u | | | ・ | オ | ナ |
ユ | | |
6 | | | & |
6 |
F |
V |
f | v | | | ' | カ | ニ |
ヨ | | |
7 | | | ' |
7 |
G |
W |
g | w | | | ァ | キ | ヌ |
ラ | | |
8 | | | ( |
8 |
H |
X |
h | x | | | ィ | ク | ネ |
リ | | |
9 | | | ) |
9 |
I |
Y |
i | y | | | ゥ | ケ | ノ |
ル | | |
A | | | * | : |
J |
Z |
j | z | | | ェ | コ | ハ |
レ | | |
B | | | + | ; |
K | [ |
k | { | | | ォ | サ | ヒ |
ロ | | |
C | | | , | < |
L | \ |
l | | | | | ャ | シ | フ |
ワ | | |
D | | | - | = |
M | ] |
m | } | | | ... | ス | ヘ |
" | | |
E | | | . | > |
N | ^ |
n | ~ | | | ョ | セ | ホ |
゛ | | |
F | | | / | ? |
O |
_ |
o | | | | ッ | ソ | マ |
゜ | | |
|
Table: Allowable characters for VM comments and backup file names (characters shown in red in the table).
Game Names and Sorting
To sort files on the Simple Player file management screen, a game name must be set.
Only certain characters are allowed for game names, and the length is limited. The name is converted into special codes using a conversion table. The allowable characters are listed below.
No | Chr | Hex |
00 | なし | 00 |
01 | ア | 01 |
02 | ァ | 02 |
03 | イ | 03 |
04 | ィ | 04 |
05 | ウ | 05 |
06 | " | 06 |
07 | ゥ | 07 |
08 | エ | 08 |
09 | ェ | 09 |
10 | オ | 0A |
11 | ォ | 0B |
12 | カ | 0C |
13 | ガ | 0D |
14 | キ | 0E |
15 | ギ | 0F |
16 | ク | 10 |
17 | グ | 11 |
18 | ケ | 12 |
19 | ゲ | 13 |
|
No | Chr | Hex |
20 | コ | 14 |
21 | ゴ | 15 |
22 | サ | 16 |
23 | ザ | 17 |
24 | シ | 18 |
25 | ジ | 19 |
26 | ス | 1A |
27 | ズ | 1B |
28 | セ | 1C |
29 | ゼ | 1D |
30 | ソ | 1E |
31 | ゾ | 1F |
32 | タ | 20 |
33 | ダ | 21 |
34 | チ | 22 |
35 | ヂ | 23 |
36 | ツ | 24 |
37 | ヅ | 25 |
38 | ッ | 26 |
39 | テ | 27 |
|
No | Chr | Hex |
40 | デ | 28 |
41 | ト | 29 |
42 | ド | 2A |
43 | ナ | 2B |
44 | ニ | 2C |
45 | ヌ | 2D |
46 | ネ | 2E |
47 | ノ | 2F |
48 | ハ | 30 |
49 | バ | 31 |
50 | パ | 32 |
51 | ヒ | 33 |
52 | ビ | 34 |
53 | ピ | 35 |
54 | フ | 36 |
55 | ブ | 37 |
56 | プ | 38 |
57 | ヘ | 39 |
58 | ベ | 3A |
59 | ペ | 3B |
|
No | Chr | Hex |
60 | ホ | 3C |
61 | ボ | 3D |
62 | ポ | 3E |
63 | マ | 3F |
64 | ミ | 40 |
65 | ム | 41 |
66 | メ | 42 |
67 | モ | 43 |
68 | ヤ | 44 |
69 | ャ | 45 |
70 | ユ | 46 |
71 | ... | 47 |
72 | ヨ | 48 |
73 | ョ | 49 |
74 | ラ | 4A |
75 | リ | 4B |
76 | ル | 4C |
77 | レ | 4D |
78 | ロ | 4E |
79 | ワ | 4F |
|
No | Chr | Hex |
80 | ヰ | 50 |
81 | ' | 51 |
82 | ' | 52 |
83 | " | 53 |
84 | 0 | 54 |
85 | 1 | 55 |
86 | 2 | 56 |
87 | 3 | 57 |
88 | 4 | 58 |
89 | 5 | 59 |
90 | 6 | 5A |
91 | 7 | 5B |
92 | 8 | 5C |
93 | 9 | 5D |
|
The maximum length of the file name is 16 characters, using characters from the above table.
Some examples are shown below, along with an explanation of naming conventions.
-
-
-
- {Examples of Japanese Language Titles}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Non-Japanese titles should be filled with 00 from the table.
- Applications whose name exceeds 16 characters and which use an abbreviation for the GUI comment should be denoted by their abbreviation.
-
-
-
-
- The entries 84 - 93 in the table (numerals) are assumed to be used only at the end of a name. A name should not start with a numeral.
-
-
-
-
-
-
-
-
-
-
-
-
-
- For multi-part games which should be kept together when sorting, use similar names with numerals at the end. If the first part uses an abbreviated name, the same abbreviation should be used for other parts as well.
-
-
-
-
- If years are used in a title, the game name should be set while keeping the 4-digit year 2000 in mind.
- Ex.
- "Greatest Nine 98"
- "Greatest Nine 99"
- "Greatest Nine 2000"
As is, these would be sorted in the order 3 -> 1 -> 2. To avoid this, use the names
- "Greatest_Nine_1"
- "Greatest_Nine_2"
- "Greatest_Nine_3"
- For titles with volume numbering where dual-digit numbers are to be expected, two digits should be used already from the beginning.
- Ex.
- "World Literature Collected Works 3" and
- "World Literature Collected Works 12" should be named
- "World_Lit03"
- "World_Lit_12"
etc.
- Also if there are no numbers used in the titles of multi- part works, numbers should be used in the game names to achieve proper sorting.
-
-
-
-
-
|
Once the actual game name has been decided, it must be converted into the dedicated code.
The above table also serves as a code conversion table. Convert the names as set according to the rules outlined above into the numbers shown in the table. A name of 16 characters results in 16 byte of data. These data should be passed on to the library function as game name when saving the data.
Format Settings
Next, let's take a look at the settings that can be made when formatting the Visual Memory.
The above illustration mentions an item that has not been explained yet, namely body color.
This item is also called the volume data. It can be set when formatting (initializing) the Visual Memory. It shows up as illustrated above.
The body color is set to the default for all Visual Memory cards when shipping. It can only be changed during formatting.
The formatting process is as follows.
- Initialization flag (1 byte)
-
- 00h
- No color data (factory default)
- 01h
- Color data present
- Body color data (4 bytes)
- Order is Blue, Green, Red, Alpha (8 bits each).
For Alpha, 00h means fully transparent. Increasing values cause increasing opaqueness, with FFh being fully opaque.
For the other colors, 00h means dark, and increasing values cause increasing lightness.
Specifying 00h for all items results in the default color (white).
When formatting the Visual Memory, there are also other items that can be set.

The illustration above shows one of the setting screens that appear before formatting. A Visual Memory also contains so-called label icons.
The Main Menu file management screen shows icons that represent the Visual Memory cards. The icon can be set on the LCD as an original icon.
This is called the label icon. The BootROM contains 124 types of default icons, which are available for selection during formatting.
The default label icon can be incorporated into a program as picture data, using the BootROM font access function.

Default Label Icons
The icon shape can be obtained using the BootROM font function which is one of the BootROM service functions.
However, if a volume icon is set, that setting will have priority.
Selecting "Sound" from the Simple Player top menu brings up this screen.

When a CD or GD is inserted, the demo picture of the CD rises and rotates. This CD picture may also be provided by the application.
When the application on the GD-ROM comprises a file called 0GDTEX.PVR which meets the following conditions, the image will be used in the animated display of the CD player.
- 256 x 256 dots
- ARGB4444 or ARGB1555 color format
- TWIDDLE texture
- Global index 0
- MIPMAP is optional
Because the texture data must be for a round shape, Sega provides Photoshop data to be used as a guideline in creating original texture data.
After replacing, the image looks as follows.

Selecting "SET" at the bottom right of the GUI top menu brings up a screen for making various settings.

There are four main settings that can be made and saved here, but the SEGA library can also reference or update some of these settings.
The only settings that can be changed using the SEGA library are the date and time information and the stereo/mono information.
Date and time information can be referenced and updated with the following real-time clock functions:
syRtcGetDate function
syRtcSetDate function
Mono/stereo information can be referenced and updated with the following configuration functions:
syCfgGetSoundMode function
syCfgSetSoundMode function
Note that the stereo/mono information updating only changes the contents of the internal flash memory. It does not automatically switch the output of the application to stereo or mono.
The application should use the syCfgGetSoundMode function to check the setting made by the user and then used the sound function sdSndSetSpace to change the sound driver setting.

Return to Overview