summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorJörg Hohensohn <hohensoh@rockbox.org>2003-11-24 18:42:04 +0000
committerJörg Hohensohn <hohensoh@rockbox.org>2003-11-24 18:42:04 +0000
commit152f07e4785a29f912152f9fc0a5b461c9d79cc7 (patch)
treec9a31e3f195ed6863f7948b71456cf10b4aa76a9 /www
parentf11ffc04b3b7dc7f954d675ffa4222be55c0867b (diff)
downloadrockbox-152f07e4785a29f912152f9fc0a5b461c9d79cc7.tar.gz
rockbox-152f07e4785a29f912152f9fc0a5b461c9d79cc7.zip
Updated by Peter Schlenker for the manual
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4065 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'www')
-rw-r--r--www/docs/flash.t597
1 files changed, 355 insertions, 242 deletions
diff --git a/www/docs/flash.t b/www/docs/flash.t
index 4ce6785bf5..20c31e16b3 100644
--- a/www/docs/flash.t
+++ b/www/docs/flash.t
@@ -3,301 +3,414 @@
3<p> 3<p>
4by Jörg Hohensohn aka [IDC]Dragon 4by Jörg Hohensohn aka [IDC]Dragon
5<p> 5<p>
61. What is this about?<br> 61. Introduction<br>
72. How is it working?<br> 72. Method<br>
83. Is it dangerous?<br> 83. Risks<br>
94. Will it work for me?<br> 94. Requirements<br>
105. How do I flash the firmware?<br> 105. Flashing procedure<br>
116. How do I bring in a current / my personal build of Rockbox?<br> 116. Bringing in a current or personal build of Rockbox<br>
127. Known issues, limitations<br> 127. Known issues and limitations<br>
138. Movies and images<br> 138. Movies and images<br>
14 14
15<h2>1. What is this about?</h2> 15
16<h2>1. Introduction</h2>
16<p> 17<p>
17Flashing in the sense used here and elsewhere in regard to Rockbox means 18Flashing
18reprogramming the flash memory of the Archos unit. Flash memory (sometimes 19in the sense used here and elsewhere in regard to Rockbox means
19called "Flash ROM") is a type of nonvolatile memory that can be erased and 20reprogramming the flash memory of the Archos unit. Flash memory
20reprogrammed in circuit. It is a variation of electrically erasable 21(sometimes called &quot;Flash ROM&quot;) is a type of nonvolatile
21programmable read-only memory (EEPROM). 22memory that can be erased and reprogrammed in circuit. It is a
23variation of electrically erasable programmable read-only memory
24(EEPROM).
25</p>
22<p> 26<p>
23 When you bought Your Archos, it came with the Archos firmware flashed. Now, 27When
24you can replace the built-in software with Rockbox. 28you bought your Archos, it came with the Archos firmware flashed.
29Now, you can replace the built-in software with Rockbox.
30</p>
25<p> 31<p>
26Some terminology I'm gonna use in the following:<br> 32Terminology used in the following:<br>
27<b>Firmware</b> means the flash ROM content as a whole.<br> 33<b>Firmware</b> means the flash ROM content as a whole.<br>
28<b>Image</b> means one operating software started from there. 34<b>Image</b> means one operating software started from there.
35</p>
29<p> 36<p>
30By reprogramming the firmware we can bot much faster. Archos has a pathetic 37By
31boot loader, versus the boot time for Rrockbox is much faster than the disk 38reprogramming the firmware we can boot much faster. Archos has a
32spinup, in fact it has to wait for the disk. Your boot time will be as quick as 39pathetic boot loader, versus the boot time for Rockbox is much faster
33a disk spinup. In my case, that's 4 seconds from powerup until resuming 40than the disk spinup, in fact it has to wait for the disk. Your boot
34playback. 41time will be as quick as a disk spinup (e.g. 4 seconds from powerup
35 42until resuming playback).
36<h2>2. How is it working?</h2> 43</p>
44
45<h2>2. Method</h2>
37<p> 46<p>
38The replaced firmware will host a bootloader and 2 images. I use data 47The
39compression to make this possible. The first is the "permanent" backup, not to 48replaced firmware will host a bootloader and 2 images. This possible
40be changed any more. The second is the default one to be started, the first is 49by compression. The first is the &quot;permanent&quot; backup, not to
41only used when you hold the F1 key during start. Like supplied here, the first 50be changed any more. The second is the default one to be started, the
42image is the original Archos firmware, the second is a current build of 51first is only used when you hold the F1 key during start. Like
43Rockbox. This second image is meant to be reprogrammed, it can contain anything 52supplied here, the first image is the original Archos firmware, the
44you like, if you prefer, you can program the Archos firmware to there, too. 53second is a current build of Rockbox. This second image is meant to
54be reprogrammed, it can contain anything you like, if you prefer, you
55can program the Archos firmware to there, too.
56</p>
45<p> 57<p>
46I supply two programming tools: 58There are two programming tools supplied:
59</p>
47<ul> 60<ul>
48<li> The first one is called "firmware_flash.rock" and is used to program the 61 <li>
49whole flash with a new content. You can also use it to revert back to the 62 The
50original firmware you've hopefully backup-ed. In the ideal case, you'll need 63 first one is called &quot;firmware_flash.rock&quot; and is used to
51this tool only once. You can view this as "formatting" the flash with the 64 program the whole flash with a new content. You can also use it to
52desired image structure. 65 revert back to the original firmware you've hopefully backup-ed. In
53<li> The second one is called "rockbox_flash.rock" and is used to reprogram only 66 the ideal case, you'll need this tool only once. You can view this
54the second image. It won't touch any other byte, should be safe to fool around 67 as &quot;formatting&quot; the flash with the desired image
55with. If the programmed firmware is inoperational, you can still use the F1 68 structure.
56start with the Archos firmware and Rockbox booted from disk to try better. 69 </li>
70 <li>
71 The
72 second one is called &quot;rockbox_flash.rock&quot; and is used to
73 reprogram only the second image. It won't touch any other byte,
74 should be safe to fool around with. If the programmed firmware is
75 inoperational, you can still use the F1 start with the Archos
76 firmware and Rockbox booted from disk to try better.
77 </li>
57</ul> 78</ul>
58<p> 79<p>
59I will provide more technical details in the future, as well as my non-user 80More technical details will be provided in the future, as well as non-user
60tools. There's an authoring tool which composed the firmware file with the 81tools. There's an authoring tool which composed the firmware file with the
61bootloader and the 2 images, the bootloader project, the plugin sources, and 82bootloader and the 2 images, the bootloader project, the plugin sources, and
62the tools for the UART boot feature: a monitor program for the box and a PC 83the tools for the UART boot feature: a monitor program for the box and a PC
63tool to drive it. Feel free to review the 84tool to drive it. Feel free to review the
64<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash/flash_sourcecode.zip">sources</a> 85<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash/flash_sourcecode.zip">sources</a>
65 for all of it, but be careful when fooling around with powerful toys! 86 for all of it, but be careful when fooling around with powerful toys!
87</p>
66 88
67<h2>3. Is it dangerous?</h2> 89<h2>3. Risks</h2>
68<p> 90<p>
69Yes, certainly, like programming a mainboard BIOS, CD/DVD drive firmware, 91Well,
70mobile phone, etc. If the power fails, your chip breaks while programming or 92is it dangerous? Yes, certainly, like programming a mainboard BIOS,
71most of all the programming software malfunctions, you'll have a dead box. And 93CD/DVD drive firmware, mobile phone, etc. If the power fails, your
72I take no responsibility of any kind, you do that at your own risk. However, I 94chip breaks while programming or most of all the programming software
73tried as carefully as possible to bulletproof this code. The new firmware file 95malfunctions, you'll have a dead box. We take no responsibility of
74is completely read before it starts programming, there are a lot of sanity 96any kind, you do that at your own risk. However, we tried as
75checks. If any fails, it will not program. Before releasing this, I have 97carefully as possible to bulletproof this code. The new firmware file
76checked the flow with exactly these files supplied here, starting from the 98is completely read before it starts programming, there are a lot of
77original firmware in flash. It worked reliably for me, there's no reason why 99sanity checks. If any fails, it will not program. Before releasing
78such low level code should behave different on your box. 100this, we have checked the flow with exactly these files supplied
101here, starting from the original firmware in flash. It worked
102reliably, there's no reason why such low level code should behave
103different on your box.
104</p>
79<p> 105<p>
80There's one ultimate safety net to bring back boxes with even completely 106There's
81garbled flash content: the UART boot mod, which in turn requires the serial 107one ultimate safety net to bring back boxes with even completely
82mod. It can bring the dead back to life, with that it's possible to reflash 108garbled flash content: the UART boot mod, which in turn requires the
83independently from the outside, even if the flash is completely erased. I used 109serial mod. It can bring the dead back to life, with that it's
84that during development, else Rockbox in flash wouldn't have been possible. 110possible to reflash independently from the outside, even if the flash
85Most of the developing effort went into this tooling. So people skilled to do 111is completely erased. It has been used that during development, else
86these mods don't need to worry. The others may feel unpleasant using the first 112Rockbox in flash wouldn't have been possible. Most of the developing
113effort went into this tooling. So people skilled to do these mods
114don't need to worry. The others may feel unpleasant using the first
87tool for reflashing the firmware. 115tool for reflashing the firmware.
116</p>
88<p> 117<p>
89To comfort you a bit again: The flash tools are stable since quite a while. 118To
90I use them a lot and quite careless meanwhile, even reflashed while playing. 119comfort you a bit again: The flash tools are stable since quite a
91However, I don't generally recommend that. ;-) 120while. Several people use them a lot and quite careless meanwhile,
121even reflashed while playing. However, we don't generally recommend
122that. ;-)
123</p>
92<p> 124<p>
93About the safety of operation: Since we have dual boot, you're not giving up 125About
94the Archos firmware. It's still there when you hold F1 during startup. So even 126the safety of operation: Since we have dual boot, you're not giving
95if Rockbox from flash is not 100% stable for everyone, you can still use the 127up the Archos firmware. It's still there when you hold F1 during
96box, reflash the second image with an updated Rockbox copy, etc. 128startup. So even if Rockbox from flash is not 100% stable for
129everyone, you can still use the box, reflash the second image with an
130updated Rockbox copy, etc.
131</p>
97<p> 132<p>
98The flash chip being used by Archos is specified for 100,000 cycles (in words: 133The
99one hundred thousand), so you don't need to worry about that wearing out. 134flash chip being used by Archos is specified for 100,000 cycles (in
135words: one hundred thousand), so you don't need to worry about that
136wearing out.
137</p>
100 138
101<h2>4. Will it work for me?</h2> 139<h2>4. Requirements</h2>
102<p> 140<p>
103You need three things: 141You need two things:
142</p>
104<ul> 143<ul>
105<li> The first is a Recorder or FM model. Be sure you're using the correct 144 <li>
106package, Recorder and FM are different! The technology works for 145 The
107the Player models, too. Players can also be flashed, but Rockbox does not 146 first is a Recorder or FM model. Be sure you're using the correct
108run cold-started on those, yet. 147 package, Recorder and FM are different! The technology works for the
109 148 Player models, too. Players can also be flashed, but Rockbox does
110<li> Second, you need an in-circuit programmable flash. Chances are about 85% 149 not run cold-started on those, yet.
111that you have, but Archos also used an older flash chip which can't do the 150 </li>
112trick. You can find out via Rockbox debug menu, entry Hardware Info. If the 151 <li>
113flash info gives you question marks, you're out of luck. The only chance then 152 Second,
114is to solder in the right chip (SST39VF020), at best with the firmware already 153 you need an in-circuit programmable flash. Chances are about 85%
115in. If the chip is blank, you'll need the UART boot mod as well. 154 that you have, but Archos also used an older flash chip which can't
116 155 do the trick. You can find out via Rockbox debug menu, entry
156 Hardware Info. If the flash info gives you question marks, you're
157 out of luck. The only chance then is to solder in the right chip
158 (SST39VF020), at best with the firmware already in. If the chip is
159 blank, you'll need the UART boot mod as well.
160 </li>
117</ul> 161</ul>
118 162
119<h2>5. How do I flash the firmware?</h2> 163<h2>5. Flashing procedure</h2>
120<p>
121Short explaination: copy the firmware_*.bin files for your model from my distribution
122to the root directory of your box, then run the "firmware_flash.rock" plugin.
123Long version:
124<p> 164<p>
125 165Short
126I'm using the new plugin feature to run the flasher code. There's not really a 166explanation: copy the firmware_*.bin files for your model from the
127wrong path to take, however here's a suggested step by step procedure: 167distribution to the root directory of your box, then run the
168&quot;firmware_flash.rock&quot; plugin. Long version, step by step
169procedure:
170</p>
128<ul> 171<ul>
129<li> download the correct package for you model, 172 <li>
130<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash/flash_rec.zip">Recorder</a> 173 download the correct package for you model,
131 or 174 <a href="http://joerg.hohensohn.bei.t-online.de/archos/flash/flash_rec.zip">Recorder</a>
132<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash/flash_fm.zip">FM</a> 175 or
133, copy some files of it to your box: 176 <a href="http://joerg.hohensohn.bei.t-online.de/archos/flash/flash_fm.zip">FM</a>,
134<ol> 177 copy some files of it to your box:
135 <li> "ajbrec.ajz" into the root directory (the version of Rockbox we're going to use and have in the 178 <ol>
136firmware file)<br> 179 <li>
137 <li> firmware_rec.bin or firmware_fm.bin into the root directory (the complete firmware for your model, 180 &quot;ajbrec.ajz&quot;
138with my bootloader and the two images). There now is also a _norom variant, copy both, 181 into the root directory (the version of Rockbox we're going to use
139the plugin will decide which one is required for your box. 182 and have in the firmware file)
140 <li> the .rockbox subdirectory with all the plugins for Rockbox<br> 183 </li>
141 </ol> 184 <li>
142<li> Restart the box so that the new ajbrec.ajz gets started. 185 firmware_rec.bin
143 186 or firmware_fm.bin into the root directory (the complete firmware
144<li> Enter the debug menu and select the hardware info screen. Check you flash 187 for your model, with the bootloader and the two images). There now
145IDs (bottom line), and please make a note about your hardware 188 is also a _norom variant, copy both, the plugin will decide which
146mask value (second line). The latter is just for my curiosity, not needed for the 189 one is required for your box.
147flow. If the flash info shows question marks, you can stop here, sorry. 190 </li>
148 191 <li>
149<li> Backup the current firmware, using the first option of the debug menu 192 the .rockbox subdirectory with all the plugins for Rockbox
150(Dump ROM contents). This creates 2 files in the root directory, which you may 193 </li>
151not immediately see in the Rockbox browser. The 256kB-sized 194 </ol>
152"internal_rom_2000000-203FFFF.bin" one is your present firmware. Back both up 195 <li>
153to your PC. 196 Restart the box so that the new ajbrec.ajz gets started.
154 197 </li>
155<li> (optional) While you're in this Rockbox version, I recommend to give it a 198 </li>
156test and play around with it, this version is identical to the one about to be 199 <li>
157programmed. Make sure that especially USB access and Rolo works. When done, 200 Enter
158restart again to have a fresh start and to be back in this Rockbox version. 201 the debug menu and select the hardware info screen. Check you flash
159 202 IDs (bottom line), and please make a note about your hardware mask
160<li> Use the F2 settings to configure seeing all files within the browser. 203 value (second line). The latter is just for our curiosity, not
161 204 needed for the flow. If the flash info shows question marks, you can
162<li> Connect the charger and make sure your batteries are also in good 205 stop here, sorry.
163shape. I'm just being paranoid here, it's not that flashing needs more power. 206 </li>
164 207 <li>
165<li> Run the "firmware_flash.rock" plugin. It again tells you about your flash 208 Backup
166and the file it's gonna program. After F1 it checks the file. Your hardware 209 the current firmware, using the first option of the debug menu (Dump
167mask value will be kept, it won't overwrite it. Hitting F2 gives you a big 210 ROM contents). This creates 2 files in the root directory, which you
168warning. If I still didn't manage to scare you off, you can hit F3 to 211 may not immediately see in the Rockbox browser. The 256kB-sized
169actually program and verify. The programming takes just a few seconds. 212 &quot;internal_rom_2000000-203FFFF.bin&quot; one is your present
170If the sanity check fails, you have the wrong kind of boot ROM and are 213 firmware. Back both up to your PC.
171out of luck by now, sorry. 214 </li>
172 215 <li>
173<li> In the unlikely event that the programming should give you any error, 216 (optional)
174don't switch off the box! Otherwise you'll have seen it working for the last 217 While you're in this Rockbox version, it is recommended to give it a
175time. While Rockbox is still in DRAM and operational, we could upgrade the 218 test and play around with it, this version is identical to the one
176plugin via USB and try again. If you switch it off, it's gone. 219 about to be programmed. Make sure that especially USB access and
177 220 Rolo works. When done, restart again to have a fresh start and to be
178<li> Unplug the charger, restart the box and hopefully be in Rockbox straight 221 back in this Rockbox version.
179away! You may delete "firmware_flash.rock" then, to avoid your little 222 </li>
180brother playing with that. Pressing On+Play can do it, or your PC. You 223 <li>
181can also delete the ".bin" files. 224 Use
182 225 the F2 settings to configure seeing all files within the browser.
183<li> Try starting again, this time holding F1 while pressing On. It should 226 </li>
184boot the Archos firmware, which then loads rockbox from disk. In fact, even 227 <li>
185the Archos firmware comes up quicker, because their loader is replaced by 228 Connect
186mine. 229 the charger and make sure your batteries are also in good shape.
187 230 That's just for security reasons, it's not that flashing needs more
231 power.
232 </li>
233 <li>
234 Run
235 the &quot;firmware_flash.rock&quot; plugin. It again tells you about
236 your flash and the file it's gonna program. After F1 it checks the
237 file. Your hardware mask value will be kept, it won't overwrite it.
238 Hitting F2 gives you a big warning. If we still didn't manage to
239 scare you off, you can hit F3 to actually program and verify. The
240 programming takes just a few seconds. If the sanity check fails, you
241 have the wrong kind of boot ROM and are out of luck by now, sorry.
242 </li>
243 <li>
244 In
245 the unlikely event that the programming should give you any error,
246 don't switch off the box! Otherwise you'll have seen it working for
247 the last time. While Rockbox is still in DRAM and operational, we
248 could upgrade the plugin via USB and try again. If you switch it
249 off, it's gone.
250 </li>
251 <li>
252 Unplug
253 the charger, restart the box and hopefully be in Rockbox straight
254 away! You may delete &quot;firmware_flash.rock&quot; then, to avoid
255 your little brother playing with that. Pressing On+Play can do it,
256 or your PC. You can also delete the &quot;.bin&quot; files.
257 </li>
258 <li>
259 Try
260 starting again, this time holding F1 while pressing On. It should
261 boot the Archos firmware, which then loads rockbox from disk. In
262 fact, even the Archos firmware comes up quicker, because their
263 loader is replaced by mine.
264 </li>
188</ul> 265</ul>
189 266<p>
190When for any reason you'd like to revert to the original firmware, you can do 267When
191like above, but copy and rename your backup to be "firmware_rec.bin" on the 268for any reason you'd like to revert to the original firmware, you can
192box this time. Keep the Rockbox copy and the plugins of this package for that 269do like above, but copy and rename your backup to be
193job, because that's the one it was tested with. 270&quot;firmware_rec.bin&quot; on the box this time. Keep the Rockbox
194 271copy and the plugins of this package for that job, because that's the
195<h2>6. How do I bring in a current / my personal build of Rockbox?</h2> 272one it was tested with.
196<p> Short explaination: very easy, just play a .ucl file like "rockbox.ucl" 273</p>
274
275<h2>6. Bringing in a current or personal build of Rockbox</h2>
276<p>
277Short
278explanation: very easy, just play a .ucl file like &quot;rockbox.ucl&quot;
197from the download or build. Long version: 279from the download or build. Long version:
198 280</p>
199<p> 281<p>
200The second image is the working copy, the "rockbox_flash.rock" plugin from this 282The
201package reprograms it. The plugins needs to be consistant with the Rockbox 283second image is the working copy, the &quot;rockbox_flash.rock&quot;
202plugin API version, otherwise it will detect mismatch and won't run. 284plugin from this package reprograms it. The plugins needs to be
203 285consistant with the Rockbox plugin API version, otherwise it will
204<p> It requires an exotic input, a UCL-compressed image, because 286detect mismatch and won't run.
205that's my internal format. UCL is a nice open-source compression library I 287</p>
206found and use. The decompression is very fast and less than a page of 288<p>
207C-code. The efficiency is even better than Zip with maximum compression, cooks 289It
208it down to about 58% of the original size. For details on UCL, see: <a 290requires an exotic input, a UCL-compressed image, because that's the
209href="http://www.oberhumer.com/opensource/ucl/">www.oberhumer.com/opensource/ucl/</a> 291internal format. UCL is a nice open-source compression library. The
210 292decompression is very fast and less than a page of C-code. The
211<p> Linux users will have to download it from there and compile it, for Win32 293efficiency is even better than Zip with maximum compression, cooks it
212and Cygwin I can do that, so the executables are in 294down to about 58% of the original size. For details on UCL, see:
295<a href="http://www.oberhumer.com/opensource/ucl/">www.oberhumer.com/opensource/ucl/</a>
296
297</p>
298<p>
299Linux
300users will have to download it from there and compile it, for Win32
301and Cygwin the executables are in
213<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash">the packages</a>. 302<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash">the packages</a>.
214The sample program from that download is called "uclpack". We'll use that to 303The sample program from that download is called &quot;uclpack&quot;.
215compress "rockbox.bin" which is the result of the compilation. This is 304We'll use that to compress &quot;rockbox.bin&quot; which is the
216a part of the build process meanwhile. If you compile Rockbox yourself, 305result of the compilation. This is a part of the build process
217you should copy uclpack to a directory which is in the path, I recommend 306meanwhile. If you compile Rockbox yourself, you should copy uclpack
218placing it int the same dir as SH compiler. 307to a directory which is in the path, we recommend placing it in the
219 308same dir as SH compiler.
309</p>
220<p> 310<p>
221Don't flash any "old" builds which don't have the latest coldstart ability I 311Don't
222brought into cvs these days. They won't boot. These instructions refer to 312flash any &quot;old&quot; builds which don't have the latest
313coldstart ability. They won't boot. These instructions refer to
223builds from cvs state 2003-07-10 on. 314builds from cvs state 2003-07-10 on.
315</p>
224<p> 316<p>
225Here are the steps: 317Here are the steps:
318</p>
226<ul> 319<ul>
227<li> If you start from a .ajz file, you'll need to descramble it first into 320 <li>
228"rockbox.bin", by using "descramble ajbrec.ajz rockbox.bin". IMPORTANT: For an 321 If
229FM, the command is different, use "descramble -fm ajbrec.ajz rockbox.bin"! 322 you start from a .ajz file, you'll need to descramble it first into
230Otherwise the image won't be functional. Compress the image using uclpack, 323 &quot;rockbox.bin&quot;, by using &quot;descramble ajbrec.ajz
231algorithm 2e (the most efficient, and the only one supported by the 324 rockbox.bin&quot;. IMPORTANT: For an FM, the command is different,
232bootloader), with maximum compression, by typing 325 use &quot;descramble -fm ajbrec.ajz rockbox.bin&quot;! Otherwise the
233"uclpack --2e --best rockbox.bin rockbox.ucl". You can make a batch file for 326 image won't be functional. Compress the image using uclpack,
234this and the above step, if you like. 327 algorithm 2e (the most efficient, and the only one supported by the
235 328 bootloader), with maximum compression, by typing &quot;uclpack --2e
236<li> Normally, you'll simply download or compile rockbox.ucl. Copy it together 329 --best rockbox.bin rockbox.ucl&quot;. You can make a batch file for
237with ajbrec.ajz and all the rocks to the appropriate places, replacing the old. 330 this and the above step, if you like.
238 331 </li>
239<li> Just "play" the .ucl file, this will kick off the "rockbox_flash.rock" 332 <li>
240plugin. It's a bit similar to the other one, but I made it different 333 Normally,
241to make the user aware. It will check the file, 334 you'll simply download or compile rockbox.ucl. Copy it together with
242available size, etc. With F2 it's being programmed, no need for warning this 335 ajbrec.ajz and all the rocks to the appropriate places, replacing
243time. If it goes wrong, you'll still have the permanent image. 336 the old.
244 337 </li>
245<li> It may happen 338 <li>
246that you get an "Incompatible Version" error, if the plugin interface has 339 Just
247changed meanwhile. You're running an "old" copy of Rockbox, but are trying 340 &quot;play&quot; the .ucl file, this will kick off the
248to execute a newer plugin, the one you just downloaded. The easiest solution 341 &quot;rockbox_flash.rock&quot; plugin. It's a bit similar to the
249is to rolo into this new version, by playing the ajbrec.ajz file. Then 342 other one, but it's made different to make the user aware. It will
250you are consistant and can play rockbox.ucl. 343 check the file, available size, etc. With F2 it's being programmed,
251 344 no need for warning this time. If it goes wrong, you'll still have
252<li> When done, you can restart the box and hopefully your new Rockbox image. 345 the permanent image.
253 346 </li>
347 <li>
348 It
349 may happen that you get an &quot;Incompatible Version&quot; error,
350 if the plugin interface has changed meanwhile. You're running an
351 &quot;old&quot; copy of Rockbox, but are trying to execute a newer
352 plugin, the one you just downloaded. The easiest solution is to rolo
353 into this new version, by playing the ajbrec.ajz file. Then you are
354 consistant and can play rockbox.ucl.
355 </li>
356 <li>
357 When
358 done, you can restart the box and hopefully your new Rockbox image.
359 </li>
254</ul> 360</ul>
255
256A more luxurious version of the plugin could do the descrambling and
257compression by itself, but that's hard to do because a plugin is very limited
258with memory (32kB for code and data). Currently I'm doing one flash sector
259(4096 bytes) at a time. Don't know how slow the compression algorithm would be
260on the box, that's the strenuous part.
261<p> 361<p>
262If you like or have to, you can also flash the Archos image as the second one, 362If
263e.g. in case Rockbox from flash doesn't work for you. This way you keep the 363you like or have to, you can also flash the Archos image as the
264dual bootloader and you can easily try different later. I prepared 364second one, e.g. in case Rockbox from flash doesn't work for you.
365This way you keep the dual bootloader and you can easily try
366different later. You can download
265<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash">UCLs</a> 367<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash">UCLs</a>
266for the latest Recorder and FM firmware. 368for the latest Recorder and FM firmware
369<a href="http://joerg.hohensohn.bei.t-online.de/archos/flash">here</a>.
267 370
268<h2>7. Known issues, limitations</h2> 371</p>
269<p>
270Latest Rockbox now has a charging screen, but it is in an early stage. You'll
271get it when the unit is off and you plug in the charger. The Rockbox charging
272algorithm is first measuring the battery voltage for about 40 seconds, after
273that it only starts charging when the capacity is below 85%.
274You can use the Archos charging (which always tops off) by holding F1
275while plugging in. Some FM users reported charging problems even with F1,
276they had to revert to the original flash content.
277 372
373<h2>7. Known issues and limitations</h2>
278<p> 374<p>
279If the plugin API is changed, new builds may render the plugins 375Latest
280incompatible. When updating, make sure you grab those too, and rolo into 376Rockbox now has a charging screen, but it is in an early stage.
281the new version before flashing it. 377You'll get it when the unit is off and you plug in the charger. The
282 378Rockbox charging algorithm is first measuring the battery voltage for
379about 40 seconds, after that it only starts charging when the
380capacity is below 85%. You can use the Archos charging (which always
381tops off) by holding F1 while plugging in. Some FM users reported
382charging problems even with F1, they had to revert to the original
383flash content.
384</p>
283<p> 385<p>
284There are two variants of how the boxes starts, therefore the normal and the _norom 386If
285firmware files. The vast majority of the Player/Recorder/FM all have the same boot 387the plugin API is changed, new builds may render the plugins
286ROM content, differenciation comes later by flash content. Rockbox identifies this 388incompatible. When updating, make sure you grab those too, and rolo
287boot ROM with a CRC value of 0x222F in the hardware info screen. Some recorders 389into the new version before flashing it.
288have the boot ROM disabled (it might be unprogrammed) and start directly from a 390</p>
289flash mirror at address zero. They need the new _norom firmware, it has a slightly 391<p>
290different bootloader. Without a boot ROM there is no UART boot safety net. To 392There
291compensate for that as much as possible I have included my MiniMon monitor, 393are two variants of how the boxes starts, therefore the normal and
292it starts with F3+On. Using that the box can be reprogrammed via serial if the 394the _norom firmware files. The vast majority of the
293first ~2000 bytes of the flash are OK. 395Player/Recorder/FM all have the same boot ROM content,
396differentiation comes later by flash content. Rockbox identifies this
397boot ROM with a CRC value of 0x222F in the hardware info screen. Some
398recorders have the boot ROM disabled (it might be unprogrammed) and
399start directly from a flash mirror at address zero. They need the new
400_norom firmware, it has a slightly different bootloader. Without a
401boot ROM there is no UART boot safety net. To compensate for that as
402much as possible the MiniMon monitor is included, it starts with
403F3+On. Using that the box can be reprogrammed via serial if the first
404~2000 bytes of the flash are OK.
405</p>
294 406
295<h2>8. Movies and images</h2> 407<h2>8. Movies and images</h2>
296<p> 408<p>
297 Jörg's AVI movie (1.5MB) <a href="flash/rockbox_flash_boot.avi">rockbox_flash_boot.avi</a> 409 Jörg's AVI movie (1.5MB) <a href="flash/rockbox_flash_boot.avi">rockbox_flash_boot.avi</a>
298showing his unit booting Rockbox from flash. 410showing his unit booting Rockbox from flash.
299<p> 411<p>
300 Roland's screendump from the movie:<br> 412 Roland's screendump from the movie:<br>
301<img src="flash/rockbox-flash.jpg" width="352" height="288"> 413<img src="flash/rockbox-flash.jpg" width="352" height="288">
302 414
303#include "foot.t" 415#include "foot.t"
416