summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/docs/flash.t101
1 files changed, 54 insertions, 47 deletions
diff --git a/www/docs/flash.t b/www/docs/flash.t
index d4c267bc72..6c82493562 100644
--- a/www/docs/flash.t
+++ b/www/docs/flash.t
@@ -14,11 +14,11 @@ by Jörg Hohensohn aka [IDC]Dragon
14 14
15<h2>What is Flashing</h2> 15<h2>What is Flashing</h2>
16 16
17<p> Flashing in the sense used here and elsewhere in regard to Rockbox, means 17<p> Flashing in the sense used here and elsewhere in regard to Rockbox means
18reprogramming the flash memory of the Archos unit. Flash memory (sometimes 18reprogramming the flash memory of the Archos unit. Flash memory (sometimes
19called "flash RAM") is a type of constantly-powered nonvolatile memory that 19called "Flash ROM") is a type of nonvolatile memory that can be erased and
20can be erased and reprogrammed. It is a variation of electrically erasable 20reprogrammed. It is a variation of electrically erasable programmable
21programmable read-only memory (EEPROM). 21read-only memory (EEPROM).
22 22
23<p> 23<p>
24 When you bought Your Archos, it came with the Archos firmware flashed. Now, 24 When you bought Your Archos, it came with the Archos firmware flashed. Now,
@@ -122,10 +122,11 @@ in. If the chip is blank, you'll need the UART boot mod as well.
122The vast majority of the Player/Recorder/FM all have the same boot ROM content, 122The vast majority of the Player/Recorder/FM all have the same boot ROM content,
123differenciation comes later by flash content. So far very few people had a 123differenciation comes later by flash content. So far very few people had a
124different, presumable later boot ROM. It uses a different flash layout. 124different, presumable later boot ROM. It uses a different flash layout.
125For these the tools will refuse to work, the only 125The Hardware Info screen tells the boot ROM version in the ROM CRC line.
126way to find out is to try if the sanity check fails. 126You need a value marked with "V1".
127For V2 boxes the tools will refuse to work for the time being.
127Flashing these is not impossible, but the firmware authoring has to be 128Flashing these is not impossible, but the firmware authoring has to be
128different. It takes a developer with the UART boot mod to go ahead with it. 129different. It takes a developer with the serial mod to go ahead with it.
129</ul> 130</ul>
130 131
131<h2>5. How do I flash the firmware?</h2> 132<h2>5. How do I flash the firmware?</h2>
@@ -133,19 +134,20 @@ different. It takes a developer with the UART boot mod to go ahead with it.
133I'm using the new plugin feature to run the flasher code. There's not really a 134I'm using the new plugin feature to run the flasher code. There's not really a
134wrong path to take, however here's a suggested step by step procedure: 135wrong path to take, however here's a suggested step by step procedure:
135<ul> 136<ul>
136<li> copy 3 files of <a href="http://joerg.hohensohn.bei.t-online.de/archos/">this package</a> to the root directory of your box:<ol> 137<li> copy the following files of <a href="http://joerg.hohensohn.bei.t-online.de/archos/">this package</a> to your box:<ol>
137 <li> ajbrec.ajz (the version of Rockbox we're going to use and have in the 138 <li> "ajbrec.ajz" into the root directory (the version of Rockbox we're going to use and have in the
138firmware file)<br> 139firmware file)<br>
139 <li> firmware_flash.rock (the plugin for this job)<br> 140 <li> firmware_rec.bin or firmware_fm.bin into the root directory (the complete firmware for your model,
140 <li> firmware_rec.bin or firmware_fm.bin (the complete firmware for your model,
141with my bootloader and the two images) 141with my bootloader and the two images)
142 <li> all .rock files to .rockbox/rocks (the plugins for Rockbox)<br>
142 </ol> 143 </ol>
143<li> Restart the box so that the new ajbrec.ajz gets started. 144<li> Restart the box so that the new ajbrec.ajz gets started.
144 145
145<li> Enter the debug menu and select the hardware info screen. Check you flash 146<li> Enter the debug menu and select the hardware info screen. Check you flash
146IDs (bottom line), and please make a note about your hardware mask value 147IDs and ROM CRC (bottom two lines), and please make a note about your hardware
147(second line). The latter is just for my curiosity, not needed for the 148mask value (second line). The latter is just for my curiosity, not needed for the
148flow. If the flash info shows question marks, you can stop here, sorry. 149flow. If the flash info shows question marks or you have ROM V2, you can stop
150here, sorry.
149 151
150<li> Backup the current firmware, using the first option of the debug menu 152<li> Backup the current firmware, using the first option of the debug menu
151(Dump ROM contents). This creates 2 files in the root directory, which you may 153(Dump ROM contents). This creates 2 files in the root directory, which you may
@@ -176,15 +178,9 @@ don't switch off the box! Otherwise you'll have seen it working for the last
176time. While Rockbox is still in DRAM and operational, we could upgrade the 178time. While Rockbox is still in DRAM and operational, we could upgrade the
177plugin via USB and try again. If you switch it off, it's gone. 179plugin via USB and try again. If you switch it off, it's gone.
178 180
179<li> When the programming is done, rename the "ajbrec.ajz" file to
180ajbrec.ajz_" or so. Pressing On+Play can do it, or the PC via USB. This is a
181nice trick to make only the Archos firmware find and load it, versus Rockbox
182looks for the exact filename. Since Rockbox is up to date, there's no point in
183having it loading this on startup.
184
185<li> Unplug the charger, restart the box and hopefully be in Rockbox straight 181<li> Unplug the charger, restart the box and hopefully be in Rockbox straight
186away! You should delete "firmware_flash.rock" then, to avoid your little 182away! You may delete "firmware_flash.rock" then, to avoid your little
187brother playing with that. Again, pressing On+Play can do it, or your PC. You 183brother playing with that. Pressing On+Play can do it, or your PC. You
188can also delete the ".bin" files. 184can also delete the ".bin" files.
189 185
190<li> Try starting again, this time holding F1 while pressing On. It should 186<li> Try starting again, this time holding F1 while pressing On. It should
@@ -200,10 +196,12 @@ box this time. Keep the Rockbox copy and the plugins of this package for that
200job, because that's the one it was tested with. 196job, because that's the one it was tested with.
201 197
202<h2>6. How do I bring in a current / my personal build of Rockbox?</h2> 198<h2>6. How do I bring in a current / my personal build of Rockbox?</h2>
199<p> Short explaination: very easy, just play "rockbox.ucl" from the download
200or build. Long version:
201
203<p> 202<p>
204The second image is the working copy, the "rockbox_flash.rock" plugin from this 203The second image is the working copy, the "rockbox_flash.rock" plugin from this
205package reprograms it. I suggest to place the plugin to where you keep the 204package reprograms it. The plugins needs to be consistant with the Rockbox
206others, "/.rockbox/rocks/". The plugin needs to be consistant with the Rockbox
207plugin API version, otherwise it will detect mismatch and won't run. 205plugin API version, otherwise it will detect mismatch and won't run.
208 206
209<p> It currently requires an exotic input, a UCL-compressed image, because 207<p> It currently requires an exotic input, a UCL-compressed image, because
@@ -217,8 +215,10 @@ href="http://www.oberhumer.com/opensource/ucl/">www.oberhumer.com/opensource/ucl
217and Cygwin I can do that, so the executables are in <a 215and Cygwin I can do that, so the executables are in <a
218href="http://joerg.hohensohn.bei.t-online.de/archos/">the package</a>. The 216href="http://joerg.hohensohn.bei.t-online.de/archos/">the package</a>. The
219sample program from that download is called "uclpack". We'll use that to 217sample program from that download is called "uclpack". We'll use that to
220compress "rockbox.bin" which is the result of the compilation. If flashing 218compress "rockbox.bin" which is the result of the compilation. This is
221becomes very popular, this could be a part of the build process. 219a part of the build process meanwhile. If you compile Rockbox yourself,
220you should copy uclpack to a directory which is in the path, I recommend
221placing it int the same dir as SH compiler.
222 222
223<p> 223<p>
224Don't flash any "old" builds which don't have the latest coldstart ability I 224Don't flash any "old" builds which don't have the latest coldstart ability I
@@ -230,21 +230,27 @@ Here are the steps:
230<li> If you start from a .ajz file, you'll need to descramble it first into 230<li> If you start from a .ajz file, you'll need to descramble it first into
231"rockbox.bin", by using "descramble ajbrec.ajz rockbox.bin". IMPORTANT: For an 231"rockbox.bin", by using "descramble ajbrec.ajz rockbox.bin". IMPORTANT: For an
232FM, the command is different, use "descramble -fm ajbrec.ajz rockbox.bin"! 232FM, the command is different, use "descramble -fm ajbrec.ajz rockbox.bin"!
233Otherwise the image won't be functional. 233Otherwise the image won't be functional. Compress the image using uclpack,
234 234algorithm 2e (the most efficient, and the only one supported by the
235<li> Compress the image using uclpack, algorithm 2e (the most efficient, and 235bootloader), with maximum compression, by typing
236the only one supported by the bootloader), with maximum compression, by typing
237"uclpack --2e --best rockbox.bin rockbox.ucl". You can make a batch file for 236"uclpack --2e --best rockbox.bin rockbox.ucl". You can make a batch file for
238this and the above step, if you like. 237this and the above step, if you like.
239 238
240<li> Copy the resulting file to the root directory of your box. 239<li> Normally, you'll download or compile rockbox.ucl. Copy it together
240with ajbrec.ajz and all the rocks to the appropriate places, replacing the old.
241 241
242<li> Start the "rockbox_flash.rock" plugin. It's a bit similar to the other 242<li> Just "play" the .ucl file, thos will kick off the "rockbox_flash.rock"
243one, but I made it different to make the user aware. It tells you the flash 243plugin. It's a bit similar to the other one, but I made it different
244size and the starting position (so you can calculate how much is left). After 244to make the user aware. It will check the file,
245pressing F1 it will check the file, available size, etc. With F2 it's being 245available size, etc. With F2 it's being programmed, no need for warning this
246programmed, no need for warning this time. If it goes wrong, you'll still have 246time. If it goes wrong, you'll still have the permanent image.
247the permanent image. 247
248<li> It may happen
249that you get an "Incompatible Version" error, if the plugin interface has
250changed meanwhile. You're running an "old" copy of Rockbox, but are trying
251to execute a newer plugin, the one you just downloaded. The easiest solution
252is to rolo into this new version, by playing the ajbrec.ajz file. Then
253you are consistant and can play rockbox.ucl.
248 254
249<li> When done, you can restart the box and hopefully your new Rockbox image. 255<li> When done, you can restart the box and hopefully your new Rockbox image.
250 256
@@ -260,16 +266,13 @@ on the box, that's the strenuous part.
260<p> 266<p>
261The latest ATA init fixes seemed to have solved early adopter's problems. 267The latest ATA init fixes seemed to have solved early adopter's problems.
262However, the wait for the harddisk is longer, you're unlikely to reach the 3 268However, the wait for the harddisk is longer, you're unlikely to reach the 3
263seconds boot time. I hope it will improve one day again. If there should still 269seconds boot time. I hope it will improve one day again.
264be ATA errors on startup, use F1-On for the Archos image. Then you can either
265reprogram the original firmware from your backup, or live with F1-On until a
266better Rockbox build resolves it, or program the Archos software in the second
267image, too.
268 270
269<p> 271<p>
270Loading the original Archos firmware via rolo may hang, if Rockbox is started 272Loading the original Archos firmware via rolo may hang, if Rockbox is started
271from flash. This is some initialization problem which I hope to fix, rolo-ing 273from flash. This is some initialization problem which I hope to fix, rolo-ing
272Rockbox versions works OK. If you feel homesick, hold F1 during powerup. 274Rockbox versions works OK. If you feel homesick, move away ajbrec.ajz and hold
275F1 during powerup.
273 276
274<p> 277<p>
275Latest Rockbox now has a charging screen, but it is in an early stage. You'll 278Latest Rockbox now has a charging screen, but it is in an early stage. You'll
@@ -277,13 +280,17 @@ get it when the unit is off and you plug in the charger. The Rockbox charging
277algorithm is first measuring the battery voltage for about 40 seconds, after 280algorithm is first measuring the battery voltage for about 40 seconds, after
278that it only starts charging when the capacity is below 85%. 281that it only starts charging when the capacity is below 85%.
279You can use the Archos charging (which always tops off) by holding F1 282You can use the Archos charging (which always tops off) by holding F1
280while plugging in. 283while plugging in. Some FM users reported charging problems even with F1,
284they had to revert to the original flash content.
281 285
282<p> 286<p>
283The plugin API is currently changed often, new builds may render the plugins 287The plugin API is currently changed often, new builds may render the plugins
284incompatible. When updating, make sure you grab those too, but don't 288incompatible. When updating, make sure you grab those too, and rolo into
285overwrite the rockbox_flash.rock yet, since you still need it matching the 289the new version before flashing it.
286currently running Rockbox to flash. 290
291<p>
292Two people have an issue with recording, it freezes after a few minutes or so
293(statistically). The use F1 to record with Archos software as a workaround.
287 294
288<h2>8. Movies and images</h2> 295<h2>8. Movies and images</h2>
289<p> 296<p>