summaryrefslogtreecommitdiff
path: root/manual/advanced_topics
diff options
context:
space:
mode:
Diffstat (limited to 'manual/advanced_topics')
-rw-r--r--manual/advanced_topics/archos-flashing.tex195
-rwxr-xr-xmanual/advanced_topics/main.tex23
2 files changed, 3 insertions, 215 deletions
diff --git a/manual/advanced_topics/archos-flashing.tex b/manual/advanced_topics/archos-flashing.tex
deleted file mode 100644
index e8fa7af88c..0000000000
--- a/manual/advanced_topics/archos-flashing.tex
+++ /dev/null
@@ -1,195 +0,0 @@
1\section{\label{ref:Rockboxinflash}Rockbox in Flash}
2
3\subsection{Introduction}
4
5When you bought your \playertype, it came with the \playerman\ firmware in
6flash ROM. When you power on your \dap, this \playerman\ firmware starts,
7and then loads an updated firmware from disk if present (\firmwarefilename).
8An ordinary Rockbox installation only replaces the on-disk firmware, leaving
9the flash ROM contents intact. That means the \playerman\ firmware still
10controls the boot process.
11
12The main reason to change this is to improve the startup time of your player.
13The \playerman\ bootloader is rather slow. With Rockbox in flash, your \dap\
14will boot much faster, typically in three to five seconds. Furthermore you
15might prefer a clean Rockbox environment, with as little remnants of the
16\playerman\ software as possible.
17\opt{rombox}{On your \dap\ it is also possible to execute Rockbox directly
18 from flash ROM, increasing the amount of free RAM for buffering music. This
19 is called \emph{Rombox}.
20}
21
22\warn{Flashing your \dap\ is somewhat dangerous, like programming a mainboard
23 \emph{BIOS}, \emph{CD/DVD} drive firmware, mobile phone, etc. If the power
24 fails, the chip breaks while programming or most of all the programming
25 software malfunctions, you'll have a dead box. We take no responsibility of
26 any kind, you do that at your own risk. However, we tried as carefully as
27 possible to bulletproof this code. There are a lot of sanity checks. If any
28 of them fails, it will not program.
29}
30
31\opt{ondio}{\warn{After flashing Rockbox, never try to ROLO the \playerman\
32 firmware
33 \opt{ondiofm}{versions 1.31f or 1.32b! These versions are flash updates
34 themselves. If they are}
35 \opt{ondiosp}{version 1.32b! This version is a flash update itself.
36 If it is}
37 applied when Rockbox is flashed, you'll end up with a garbled flash ROM
38 and hence a dead box.
39}}
40
41There's an ultimate safety net to bring back boxes with even completely
42garbled flash content: the \emph{UART} boot mod, which in turn requires the
43\emph{serial} mod. With that it's possible to reflash independently from the
44outside, even if the flash ROM is completely erased.
45\nopt{ondio}{This won't work if you have one of the rare ``ROMless'' boxes. These
46 have no boot ROM and boot directly from flash.
47}
48If the first $\approx$2~KB of the flash ROM are flashed OK, \emph{Minimon} can
49be used for the same purpose.
50
51\subsection{Terminology and Basic Operation}
52
53\begin{description}
54\item[Firmware:] The flash ROM contents as a whole.
55\item[Image:] One operating software started from there.
56\end{description}
57
58The replacement firmware contains a bootloader and two images. The first image
59is the \emph{permanent} rescue software, to be used in case something is wrong
60with the second (main) image. In current firmware files this first image
61contains \emph{Bootbox} (see wiki for details). The second image is what is
62booted by default. The current firmware files contain a copy of Rockbox 3.2
63in the main image. It can easily be updated/replaced later.
64
65The bootloader allows to select which image to run. Pressing
66\opt{RECORDER_PAD}{\ButtonFOne}\opt{PLAYER_PAD,ONDIO_PAD}{\ButtonLeft} at boot
67selects the first image.
68\opt{RECORDER_PAD}{\ButtonFTwo}\opt{PLAYER_PAD}{\ButtonPlay}\opt{ONDIO_PAD}{\ButtonUp}
69selects the second image, which will also be booted if you don't press any
70button. The button mapping is only there for completeness.
71\opt{RECORDER_PAD}{\ButtonFThree}\opt{PLAYER_PAD,ONDIO_PAD}{\ButtonRight}
72selects the built-in serial monitor called \emph{Minimon}. You should know this
73in case you invoke it by accident. Minimon won't display anything on the
74screen. To get out of it, perform a hardware shutdown of your \dap.
75
76\subsection{Initial Flashing Procedure}
77
78You only need to perform this procedure the first time you flash your
79\playertype. You may also want to perform it in case the update procedure for
80the second image recommends it. In the latter case do not perform the steps
81listed under ``Preparation''.
82
83\subsubsection{Preparation}
84
85\nopt{ondio}{
86 First, check whether your \playertype\ is flashable at all. Select
87 \setting{System $\rightarrow$ Debug (Keep Out!) $\rightarrow$ View HW
88 Info}.
89 \opt{lcd_charcell}{Cycle through the displayed values with \ButtonRight /
90 \ButtonLeft\ until ``Flash:'' is displayed. If it shows question marks,
91 }
92 \opt{lcd_bitmap}{Check the values in the line starting with ``Flash:''. If it
93 shows question marks after ``M='' and ``D='',
94 }
95 you're out of luck, your \dap\ is not flashable without modifying the
96 hardware. You can stop here. Sorry.
97}
98
99\nopt{ondio}{If your \dap\ is flashable, you}\opt{ondio}{You} should perform a
100backup of the current flash ROM contents, in case you want to restore it later.
101Select \setting{System $\rightarrow$ Debug (Keep Out!) $\rightarrow$ Dump ROM
102contents}. You'll notice a few seconds of disk activity. When you connect your
103\dap\ to the PC afterwards, you'll find two files in the root of your \dap.
104Copy the 256~KB-sized file named \fname{internal\_rom\_2000000-203FFFF.bin} to
105a safe place.
106
107\subsubsection{Flashing}
108
109\begin{enumerate}
110\item Download the correct package for your \dap\ from
111 \url{http://download.rockbox.org/bootloader/archos/}. It is named
112 \fname{flash-{\textless}model{\textgreater}-{\textless}version{\textgreater}.zip}.
113 The current packages are v3.
114\item Unzip the flash package to the root of your \dap.
115 \nopt{ondio}{This will extract two files to the root,
116 \fname{firmware\_{\textless}model{\textgreater}.bin} and
117 \fname{firmware\_{\textless}model{\textgreater}\_norom.bin}.
118 \opt{recorder,recorderv2fm}{(The {\textless}model{\textgreater} part is
119 slighty different from that in the .zip file name.)
120 }
121 The flash plugin will select the correct one for your \dap.
122 }
123 \opt{ondio}{This will extract one file to the root,
124 \fname{firmware\_{\textless}model{\textgreater}.bin}.
125 }
126 Now safely disconnect USB.
127\item
128 \nopt{ondio}{Make sure your batteries are in good shape and fully charged.}
129 \opt{ondio}{Make sure you use a set of fresh batteries.}
130 Flashing doesn't need more power than normal operation, but you don't want
131 your \dap\ to run out of power while flashing.
132\item Select \setting{Plugins $\rightarrow$ Applications}, and run the
133 \fname{firmware\_flash} plugin. It will tell you about your flash and
134 which file it is going to program. After pressing
135 \opt{RECORDER_PAD}{\ButtonFOne}\opt{PLAYER_PAD}{\ButtonMenu}\opt{ONDIO_PAD}{\ButtonLeft}
136 it will check the file. If the file is OK, pressing
137 \opt{RECORDER_PAD}{\ButtonFTwo}\opt{PLAYER_PAD}{\ButtonOn}\opt{ONDIO_PAD}{\ButtonUp}
138 will give you a big warning. If we still didn't manage to scare you off, you
139 need to press
140 \opt{RECORDER_PAD}{\ButtonFThree}\opt{PLAYER_PAD,ONDIO_PAD}{\ButtonRight}
141 to actually program and verify. The programming takes just a few seconds.
142\item In the unlikely event that the programming or verify steps should give
143 you any error, \emph{do not switch off the box!} Otherwise you'll have seen
144 it working for the last time. While Rockbox is still in RAM and operational,
145 we could upgrade the plugin via USB and try again. If you switch it off,
146 it's gone.
147\end{enumerate}
148
149\note{After successful flashing you may delete the \fname{.bin} files from the
150 root of your \dap.
151}
152
153\note{There are no separate flash packages for {\dap}s modified to have 8~MB
154 of RAM. You need to use the corresponding package for non-modified
155 \playertype. You should then install a Rockbox image that makes use of all
156 available RAM as described in the following section.
157}
158
159\subsection{Updating the Rockbox Image in Flash}
160
161When Rockbox is booted from flash, it does not check for an updated firmware
162on disk. This is one of the reasons why it boots faster than the \playerman\
163firmware. It means that whenever you update Rockbox, you also need to update
164the image in the flash. This is a simple and safe procedure:
165
166\begin{enumerate}
167\item Download (or build) the Rockbox build you want to use, and unzip it to
168 the root of your \dap. Safely disconnect USB.
169\item ROLO into the new Rockbox version.
170\item Go to the file browser, and enter the \fname{.rockbox} directory (you
171 might need to set the \setting{File View} option to \setting{All}.)
172\item Play the file \fname{rockbox.ucl}\opt{rombox}{, or preferably
173 \fname{rombox.ucl}}, and follow the instructions. The plugin handling
174 this is \fname{rockbox\_flash}, a viewer plugin.
175\end{enumerate}
176
177\subsection{Restoring the Original Flash ROM Contents}
178
179In case you ever want to restore the original flash contents, you will need
180the backup file. The procedure is very similar to initial flashing, with the
181following differences:
182
183\begin{enumerate}
184\item Check that you do not have any \fname{firmware\_*.bin} files in your
185 \dap's root.
186\item Select \setting{Plugins $\rightarrow$ Applications}, and run the
187 \fname{firmware\_flash} plugin. Write down the filename it displays in the
188 first screen, then exit the plugin.
189\item Connect USB, and copy the flash ROM backup file to the root of your
190 \dap. \emph{Only use the backup file from that very box, otherwise you're
191 asking for trouble!} Rename the file so that it matches the name requested
192 by the \fname{firmware\_flash} plugin. Safely disconnect USB.
193\end{enumerate}
194
195Now follow the instructions given for initial flashing, starting with step 3.
diff --git a/manual/advanced_topics/main.tex b/manual/advanced_topics/main.tex
index 273ed1c805..786c109772 100755
--- a/manual/advanced_topics/main.tex
+++ b/manual/advanced_topics/main.tex
@@ -14,7 +14,7 @@ To accomplish this, load a \fname{.cfg} file (as described in
14words: \config{bookmarks}, \config{files}, \opt{tagcache}{\config{database}, }% 14words: \config{bookmarks}, \config{files}, \opt{tagcache}{\config{database}, }%
15\config{wps}, \config{settings}, \opt{recording}{\config{recording}, }% 15\config{wps}, \config{settings}, \opt{recording}{\config{recording}, }%
16\opt{radio}{\config{radio}, }\config{playlists}, \config{plugins}, 16\opt{radio}{\config{radio}, }\config{playlists}, \config{plugins},
17\config{system\_menu}, \opt{PLAYER_PAD}{\config{shutdown}, }\config{shortcuts}. 17\config{system\_menu}, \config{shortcuts}.
18Each of the words, if it occurs in the list, activates the appropriate item 18Each of the words, if it occurs in the list, activates the appropriate item
19in the main menu. The order of the items is given by the order of the words 19in the main menu. The order of the items is given by the order of the words
20in the list. The items whose words do not occur in the list will be hidden, 20in the list. The items whose words do not occur in the list will be hidden,
@@ -490,10 +490,8 @@ displaying images:
490 \item Load and always show the image, using the \config{\%x} tag 490 \item Load and always show the image, using the \config{\%x} tag
491 \item Preload the image with \config{\%xl} and show it with \config{\%xd}. 491 \item Preload the image with \config{\%xl} and show it with \config{\%xd}.
492 This way you can have your images displayed conditionally. 492 This way you can have your images displayed conditionally.
493 \nopt{archos}{% 493 \item Load an image and show as backdrop using the \config{\%X} tag. The
494 \item Load an image and show as backdrop using the \config{\%X} tag. The 494 image must be of the same exact dimensions as your display.
495 image must be of the same exact dimensions as your display.
496 }%
497\end{enumerate} 495\end{enumerate}
498 496
499\optv{swcodec}{% This doesn't depend on swcodec but we don't have a \noptv 497\optv{swcodec}{% This doesn't depend on swcodec but we don't have a \noptv
@@ -663,21 +661,10 @@ Example of a configuration file:
663\end{description} 661\end{description}
664 662
665\section{\label{ref:FirmwareLoading}Firmware Loading} 663\section{\label{ref:FirmwareLoading}Firmware Loading}
666\opt{player,recorder,recorderv2fm,ondio}{
667 When your \dap{} powers on, it loads the Archos firmware in ROM, which
668 automatically checks your \daps{} root directory for a file named
669 \firmwarefilename. Note that Archos firmware can only read the first
670 ten characters of each filename in this process, so do not rename your old
671 firmware files with names like \firmwarefilename.\fname{old} and so on,
672 because it is possible that the \dap{} will load a file other than the one
673 you intended.
674}
675 664
676\subsection{\label{ref:using_rolo}Using ROLO (Rockbox Loader)} 665\subsection{\label{ref:using_rolo}Using ROLO (Rockbox Loader)}
677Rockbox is able to load and start another firmware file without rebooting. 666Rockbox is able to load and start another firmware file without rebooting.
678You just ``play'' a file with the extension % 667You just ``play'' a file with the extension %
679\opt{recorder,recorderv2fm,ondio}{\fname{.ajz}.} %
680\opt{player}{\fname{.mod}.} %
681\opt{iriverh100,iriverh300}{\fname{.iriver}.} % 668\opt{iriverh100,iriverh300}{\fname{.iriver}.} %
682\opt{ipod}{\fname{.ipod}.} % 669\opt{ipod}{\fname{.ipod}.} %
683\opt{iaudio}{\fname{.iaudio}.} % 670\opt{iaudio}{\fname{.iaudio}.} %
@@ -687,8 +674,6 @@ You just ``play'' a file with the extension %
687This can be used to test new firmware versions without deleting your 674This can be used to test new firmware versions without deleting your
688current version. 675current version.
689 676
690\opt{archos}{\input{advanced_topics/archos-flashing.tex}}
691
692\opt{multi_boot}{ 677\opt{multi_boot}{
693\subsection{\label{ref:using_multiboot}Using Multiboot} 678\subsection{\label{ref:using_multiboot}Using Multiboot}
694 \newcommand{\redirectext}{<playername>} 679 \newcommand{\redirectext}{<playername>}
@@ -732,14 +717,12 @@ current version.
732} The following provides a short overview of the most relevant settings and 717} The following provides a short overview of the most relevant settings and
733 rules of thumb. 718 rules of thumb.
734 719
735\nopt{ondio}{
736\subsection{Display backlight} 720\subsection{Display backlight}
737 The active backlight consumes a lot of power. Therefore choose a setting that 721 The active backlight consumes a lot of power. Therefore choose a setting that
738 disables the backlight after timeout (for setting \setting{Backlight} see 722 disables the backlight after timeout (for setting \setting{Backlight} see
739 \reference{ref:Displayoptions}). Avoid having the backlight enabled all the 723 \reference{ref:Displayoptions}). Avoid having the backlight enabled all the
740 time (Activating \setting{selectivebacklight} 724 time (Activating \setting{selectivebacklight}
741 \reference{ref:selectivebacklight} can further reduce power consumption). 725 \reference{ref:selectivebacklight} can further reduce power consumption).
742}
743 726
744\opt{lcd_sleep}{ 727\opt{lcd_sleep}{
745\subsection{Display power-off} 728\subsection{Display power-off}