1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5<meta http-equiv="Content-Style-Type" content="text/css">
6<link rel="stylesheet" type="text/css" href="CSS/revolution.css">
7<base target="main">
8<style type="text/css" media="all">
9<!--
10@import url("css/hbm_common.css");
11h4 {
12  font-size: x-large;
13  border-bottom: 3px double #000;
14}
15PRE
16{
17  font-family			: "Courier New", monospace;
18  font-weight			: normal;
19  font-size			: 10pt;
20  margin				: 0px 20px 10px 30px;
21  padding				: 2px 4px 2px 4px;
22  background-color	: #eee;
23}
24ul.list {
25  margin:20px 20px;
26}
27ul.list li{
28  float:left;
29  width: 330px;
30}
31ul.list li a{
32  color:#060;
33}
34ul.list li a:active,ul.list li a:hover{
35  color:#0c0;
36}
37-->
38</style>
39<title>HBM WiiWare Support Guide</title>
40</head>
41<body>
42<h1>WiiWare Support Guide</h1>
43<br> <br>
44<h2>The WiiWare-Compatible HOME Menu</h2>
45<p>Detailed manuals for WiiWare are available over the network.<br>The WiiWare-Compatible HOME Menu is specifically designed for WiiWare. It adds a simple WiiWare Operations Guide to the standard HOME Menu, because the user needs to go through the HOME Menu to view manuals from within the WiiWare application. For additional details, refer to other WiiWare documents.</p>
46<a id="intro" name="intro"></a>
47<h4>Incorporating the WiiWare-Compatible HOME Menu</h4>
48<ul class="list">
49<li><a href="#intro_0">What You Need to Prepare</a>
50<li><a href="#intro_1">Incorporating into WiiWare</a>
51<li><a href="#intro_2">Linking the Libraries</a>
52<li><a href="#intro_3">How to Use</a>
53<li><a href="#intro_4">Dialog Box Message Prior to Transitioning to Online Manual </a>
54<li><a href="#intro_5">Sample Demos</a>
55</ul>
56<br style="clear:both;"> <a id="intro_0" name="intro_0"></a>
57<h2>What You Need to Prepare</h2>
58<ul class="index">
59<li>Image data -- able to fit in one screen -- for the WiiWare Operations Guide (maximum size: 554 &times; 256 pixels).<br>The image data passed to the library is a direct color texture. It is okay if the image data for the Operations Guide is smaller than this prescribed size.<br>For details, see <B>Creating Screens for the Operations Guide</B> in the <EM>WiiWare Online Manual Guidelines</EM> package.
60<li>JPEG codec library (TMCC JPEG, henceforth referred to as the JPEG library). <br>Essential only if you will be using JPEG images.
61</ul>
62<a id="intro_1" name="intro_1"></a>
63<h2>Incorporating Into WiiWare </h2>
64<p>For basic uses, it is incorporated the same way that the regular HOME Menu is incorporated into applications.</p>
65<p>Link the <CODE>homebuttonLib.nwm[D].a</CODE> file and embed the shared resource data contained in the <CODE>data/home/cnt</CODE> directory into the application's project.  (In contrast to regular disc applications, a resource file for simple documents is added.)<br>Note: The <CODE>homebuttonLib[D].a</CODE> library, which is used by disc applications, is not used with WiiWare.</p>
66<p>Call <a href="hbm_HBMCreateEx.html"><CODE>HBMCreateEx</CODE></a> <B>between</B> the calls to <a href="hbm_HBMCreate.html"><CODE>HBMCreate</CODE></a> and <a href="hbm_HBMInit.html"><CODE>HBMInit</CODE></a>.</p>
67<ul>
68<li>Initializing add-on content every time:
69  <ol style="padding-top:10px;">
70<li>Create an instance with the <CODE>HBMCreate</CODE> function.
71<li>Create a sound instance with the <CODE>HBMCreateSound</CODE> function.
72	<li>Detect that HOME has been pressed.
73<li>Load additional content and set that content to the library using the <CODE>HBMCreateEx</CODE> function.
74<li>Use the <CODE>HBMInit</CODE> function to initialize internal library variables.
75<li>Use the <CODE>HBMDraw</CODE> function to display the HOME Menu.
76<li>Exit the HOME Menu and then delete the additional content settings from the library using the <CODE>HBMDeleteEx</CODE> function.To re-display, return to step 3.
77<li>When the game ends, use the <CODE>HBMDelete</CODE> and <CODE>HBMDeleteSound</CODE> functions to release the instances.
78    <dl>
79<dt style="padding:0px;margin:0px;"><B>Note:</B> If everything is to be initialized every time, call the <CODE>HBMDeleteSound</CODE> and <CODE>HBMDelete</CODE> functions in step 7 and then return to step 1. (Step 8 becomes no longer necessary.)
80    </dl>
81  </ol>
82<li style="padding-top:10px;">Making add-on content resident:
83  <ol style="padding-top:10px;">
84<li>Load all resources by initializing the game and other measures.
85<li>Create instances with the <CODE>HBMCreate</CODE>, <CODE>HBMCreateEx</CODE>, and <CODE>HBMCreateSound</CODE> functions.
86<li>HOME is pressed.
87<li>Use the <CODE>HBMInit</CODE> function to initialize internal library variables.
88<li>Use the <CODE>HBMDraw</CODE> function to display the HOME Menu.
89<li>Exit from HOME Menu.
90    <dl>
91<dt style="padding:0px;margin:0px;">To re-display, return to step 3.
92    </dl>
93<li>When the game ends, use the <CODE>HBMDelete</CODE> and <CODE>HBMDeleteSound</CODE> functions to release the instances. <B>Note:</B> The <CODE>HBMDelete</CODE> function also frees add-on content, so the <CODE>HBMDeleteEx</CODE> function is not necessary.
94  </ol>
95</ul>
96<a id="intro_2" name="intro_2"></a>
97<h2>Linking the Libraries</h2>
98<p>Before including <CODE>Revolution/hbm.h</CODE>, define <CODE>USE_FOR_NETWORKMANUAL</CODE> or set the following definition in <CODE>makefile</CODE>:</p>
99<pre>// Define USE_FOR_NETWORKMANUAL
100CCFLAGS += -DUSE_FOR_NETWORKMANUAL</pre>
101<p> </p>
102<p>For <CODE>makefile</CODE>, refer to the <I>networkmanual_jpeg</I> demo if using a JPEG image; otherwise, refer to the <I>networkmanual</I> demo.<br>Note: If you are using the conventional library (<CODE>homebuttonLib[D].a</CODE>) remove the link.</p>
103<pre>// Link to homebuttonLib.nwm.a instead of homebuttonLib.a
104REVOLUTION_LIBS += $(INSTALL_ROOT)/lib/homebuttonLib.nwm$(LIBSUFFIX)
105
106// Not necessary if NOT using the JPEG library
107REVOLUTION_LIBS += $(INSTALL_ROOT)/lib/libTMCC_JPEG.a</pre>
108<br> <a id="intro_3" name="intro_3"></a>
109<h2>How to Use</h2>
110<ul>
111<li>Be sure to execute <CODE>HBMCreateEx</CODE> after running <CODE>HBMCreate</CODE> and before running <CODE>HBMInit</CODE>.
112<li>The buffer secured by the <CODE>HBMCreateEx</CODE> function is released by the <CODE>HBMDelete</CODE> or <CODE>HBMDeleteEx</CODE> function.
113<li>The <CODE>HBMDeleteEx</CODE> function releases only the items added by the <CODE>HBMCreateEx</CODE> function. Use them as required by an application.
114<li>Using <a href="hbm_HBMDataInfo.html"><CODE>HBMDataInfo</CODE></a>'s <SPAN class="argument">messageFlag</SPAN>, you can change the dialog message's save data warning shown when the <STRONG>View Detailed Instructions</STRONG> button is pressed.
115<li>If the HOME Menu quits because the player has pressed the <STRONG>View Detailed Instructions</STRONG> button, <CODE>HBMGetSelectBtnNum</CODE> will return the value of 4. If this happens, execute <CODE>OSLaunchManualViewer</CODE> and start up the online manual.
116</ul>
117<a id="intro_4" name="intro_4"></a>
118<h2>Dialog Box Message Prior to Transitioning to Online Manual </h2>
119<p>
120	When the player opens the Online Manual with the <B>View Detailed Instructions</B> button, a dialog message is displayed before execution transitions to the manual. This message can be changed using the <SPAN class="argument">messageFlag</SPAN> member of the <CODE>HBMCreate</CODE> function's <SPAN class="argument">HBMDataInfo</SPAN> argument.<br><br><B>Note:</B> The <SPAN class="argument">messageFlag</SPAN> setting may cause a warning to be displayed even if <CODE>home_nosave.csv</CODE> has been loaded in <SPAN class="argument">msgBuf</SPAN>.
121</p>
122<a id="intro_5" name="intro_5"></a>
123<h2>Sample Demos</h2>
124<ul>
125<li><CODE>networkmanual_tpl</CODE><br>The data in the TPL file below is displayed as the WiiWare Operations Guide. The background is transparent.<br><br> <CODE>$RVL_SDK/dvddata/hbmdemo/sample.tpl</CODE> (302 KB)<br><br>
126<li><CODE>networkmanual_jpeg</CODE><br>Using the JPEG library, the JPEG files below are displayed as the WiiWare Operations Guide. The background is not transparent.<br> <br> <CODE>$RVL_SDK/dvddata/hbmdemo/sample.jpg</CODE> (125 KB)<br> <CODE>$RVL_SDK/dvddata/hbmdemo/s_sample.jpg</CODE> (12 KB)
127</ul>
128<br> <a id="contents" name="contents"></a>
129<h4>Shared contents data</h4>
130<p>The directory structure of the shared contents can be viewed by unzipping <CODE>data/hbm/contents_data.zip</CODE> under <CODE>RVL_SDK</CODE>.<br>Verify by comparing against the description given below.</p>
131<h2>Data inside HomeButton.arc</h2>
132<p>This contains the layout data for each language, the HOME Menu disabled icon, the Wii Remote speaker data, and the <CODE>config</CODE> file.<br>For each file, data for two-button configuration is in the <CODE>HomeButton2</CODE> directory, and data for three-button configuration is in the <CODE>HomeButton3</CODE> directory.</p>
133<ul>
134<li>config.txt: The button settings file
135<li>homeBtnIcon.tpl: The Home Menu disabled icon
136<li>Huf8_SpeakerSe.arc: Wii Remote speaker data
137<li>LZ77_homeBtn.arc: Japanese layout data
138<li>LZ77_homeBtn_ENG.arc: English layout data
139<li>LZ77_homeBtn_FRA.arc: French layout data
140<li>LZ77_homeBtn_GER.arc: German layout data
141<li>LZ77_homeBtn_ITA.arc: Italian layout data
142<li>LZ77_homeBtn_NED.arc: Dutch layout data
143<li>LZ77_homeBtn_SPA.arc: Spanish layout data
144</ul>
145<p>Note that content of the files given below is outdated, and that <font color="red"><B>the use of these files is prohibited at this time</B></font>.</p>
146<ul>
147<li><CODE>home.csv</CODE>: Dialog messages (instead, embed <CODE>$RVL_SDK/dvddata/hbm/HomeButton*/home.csv</CODE> directly in the application)
148<li><CODE>home_nosave.csv</CODE>: Dialog messages (instead, embed <CODE>$RVL_SDK/dvddata/hbm/HomeButton*/home_nosave.csv</CODE> directly in the application)
149<li><CODE>Huf8_HomeButtonSe.arc</CODE>: HOME Menu sound data (instead, use the files in <CODE>$RVL_SDK/data/cnt/HomeButtonSe.arc</CODE>)
150</ul>
151<p>Use of <CODE>HomeButtonCHN.arc</CODE> and <CODE>HomeButtonKOR.arc</CODE> is mutually exclusive. You cannot use both at the same time.</p>
152<h2>Data Inside HomeButtonCHN.arc</h2>
153<p>This contains the layout data for Chinese language, the HOME Menu disabled icon, the Wii Remote speaker data, and the <CODE>config</CODE> file.<br>For each file, data for two-button configuration is in the <CODE>HomeButton2</CODE> directory, and data for three-button configuration is in the <CODE>HomeButton3</CODE> directory.</p>
154<ul>
155<li><CODE>config.txt</CODE>:	The button settings file
156<li><CODE>homeBtnIcon.tpl</CODE>:	The HOME Menu Prohibited icon
157<li><CODE>Huf8_SpeakerSe.arc</CODE>:	Wii Remote speaker data
158<li>LZ77_homeBtn_CHN.arc: Chinese layout data
159</ul>
160<p>Use of <CODE>HomeButton.arc</CODE> and <CODE>HomeButtonKOR.arc</CODE> is mutually exclusive. You cannot use both at the same time.</p>
161<h2>Data Inside HomeButtonKOR.arc </h2>
162<p>This contains the layout data for the Korean language, the HOME Menu disabled icon, the Wii Remote speaker data and the <CODE>config</CODE> file.<br>For each file, data for two-button configuration is in the <CODE>HomeButton2</CODE> directory, and data for three-button configuration is in the <CODE>HomeButton3</CODE> directory.</p>
163<ul>
164<li><CODE>config.txt</CODE>:	The button settings file
165<li><CODE>homeBtnIcon.tpl</CODE>:	The HOME Menu Prohibited icon
166<li><CODE>Huf8_SpeakerSe.arc</CODE>:	Wii Remote speaker data
167<li>LZ77_homeBtn_KOR.arc: Korean layout data
168</ul>
169<p>Use of <CODE>HomeButton.arc</CODE> and <CODE>HomeButtonCHN.arc</CODE> is mutually exclusive. You cannot use both at the same time.</p>
170<h2>Data Inside HomeButtonSe.arc</h2>
171<p>This contains the HOME Menu sound data.<br>The data is located under the <CODE>HomeButtonSe</CODE> directory.</p>
172<ul>
173<li>Huf8_HomeButtonSe.arc: The HOME Menu sound data
174</ul>
175<h2>Data Inside HomeButton_nwm.arc</h2>
176<p>This contains the layout data for WiiWare in each language.<br>The data is located under the <CODE>HomeButton3</CODE> directory.</p>
177<ul>
178<li>LZ77_homeBtn_nwm_jpn.arc: Japanese layout data for WiiWare
179<li>LZ77_homeBtn_nwm_eng.arc: English layout data for WiiWare
180<li>LZ77_homeBtn_nwm_fra.arc: French layout data for WiiWare
181<li>LZ77_homeBtn_nwm_ger.arc: German layout data for WiiWare
182<li>LZ77_homeBtn_nwm_ita.arc: Italian layout data for WiiWare
183<li>LZ77_homeBtn_nwm_ned.arc: Dutch layout data for WiiWare
184<li>LZ77_homeBtn_nwm_spa.arc: Spanish layout data for WiiWare
185</ul>
186<p>Use homeBtn_nwm_kor.arc exclusively.</p>
187<h2>Data Inside <CODE>homeBtn_nwm_kor.arc</CODE></h2>
188<p>This contains the layout data for WiiWare in Korean.<br> The data is located under the <CODE>HomeButton3</CODE> directory.</p>
189<ul>
190<li>LZ77_homeBtn_nwm_kor.arc: Korean layout data for WiiWare
191</ul>
192<h2>Revision History</h2>
193<dl class="history">
194<dt>2009/11/10</dt><dd>Corrected the explanation in <B>Incorporating Into WiiWare</B>.</dd>
195<dd>Added <B>Korean WiiWare Layout Data</B>.</dd>
196<DT>2009/04/16<DD>Corrected spelling errors.
197<DT>2009/01/30<DD>Corrected the procedures in <B>Incorporating Into WiiWare</B>.
198<dd>Added <B>Dialog Box Message Prior to Transitioning to Online Manual</B>.
199<DT>2008/04/28<DD>Added mention of the dialog message to <STRONG>How to Use</STRONG>.
200  <dt>2008/02/01
201<dd>Initial version.
202</dl>
203<hr><p>CONFIDENTIAL</p></body>
204</html>