···480480 desc: top item in the list when asking user about bookmark auto load
481481 user: core
482482 <source>
483483- *: "<Don't Resume>"
483483+ *: "[Don't Resume]"
484484 </source>
485485 <dest>
486486- *: "<Nén rataker>"
486486+ *: "[Nén rataker]"
487487 </dest>
488488 <voice>
489489 *: "Nén rataker"
···508508 desc: bookmark selection list, bookmark couldn't be parsed
509509 user: core
510510 <source>
511511- *: "<Invalid Bookmark>"
511511+ *: "[Invalid Bookmark]"
512512 </source>
513513 <dest>
514514- *: "<Rimåke nén valåbe>"
514514+ *: "[Rimåke nén valåbe]"
515515 </dest>
516516 <voice>
517517 *: "Rimåke nén valåbe"
···23162316</phrase>
23172317<phrase>
23182318 id: LANG_TAGNAVI_ALL_TRACKS
23192319- desc: "<All tracks>" entry in tag browser
23192319+ desc: "[All tracks]" entry in tag browser
23202320 user: core
23212321 <source>
23222322- *: "<All tracks>"
23222322+ *: "[All tracks]"
23232323 </source>
23242324 <dest>
23252325- *: "<Tos les bokets>"
23252325+ *: "[Tos les bokets]"
23262326 </dest>
23272327 <voice>
23282328 *: "Tos les bokets"
···71627162 desc: in tag viewer
71637163 user: core
71647164 <source>
71657165- *: "<No Info>"
71657165+ *: "[No Info]"
71667166 </source>
71677167 <dest>
71687168- *: "<Nole infô.>"
71687168+ *: "[Nole infô.]"
71697169 </dest>
71707170 <voice>
71717171 *: "Nole infô."
···1018810188</phrase>
1018910189<phrase>
1019010190 id: LANG_TAGNAVI_RANDOM
1019110191- desc: "<Random>" entry in tag browser
1019110191+ desc: "[Random]" entry in tag browser
1019210192 user: core
1019310193 <source>
1019410194- *: "<Random>"
1019410194+ *: "[Random]"
1019510195 </source>
1019610196 <dest>
1019710197- *: "<D'astcheyance>"
1019710197+ *: "[D'astcheyance]"
1019810198 </dest>
1019910199 <voice>
1020010200 *: "astcheyance"
+1-1
apps/tagnavi.config
···1010# is included by this file and will not be overwritten automatically.
11111212# Basic format declarations
1313-%format "fmt_title" "%s - %02d:%02d (%s)" basename Lm Ls filename ? title == "<Untagged>"
1313+%format "fmt_title" "%s - %02d:%02d (%s)" basename Lm Ls filename ? title == "[Untagged]"
1414%format "fmt_title" "%d.%02d. %s - %02d:%02d" discnum tracknum title Lm Ls ? discnum > "0"
1515%format "fmt_title" "%02d. %s - %02d:%02d" tracknum title Lm Ls ? tracknum > "0"
1616%format "fmt_title" "%s - %02d:%02d" title Lm Ls
···4444 limit, select a volume from the list and the maximum volume will be limited to
4545 the selected value all over the system.
4646 \opt{xduoox3}{This setting also applies to the Line Out of the \dap{}, as at full scale the \dap{} overdrives the signal.}
4747- \opt{erosqnative}{On the \playertype{}, when using the Line Out without anything connected to the Headphone port,
4848- the volume is fixed to the \setting{Volume Limit} value.
4949- \note{On the \playertype{}, the Line Out level at -2~dB is approximately +7~dBV, -4~dB is approximately +4~dBu,
5050- and -18~dB is approximately -10~dBV.}}
51475248\section{Bass}
5349 This setting emphasises
···196192\opt{erosqnative}{
197193 \section{Stereo Switch Mode}
198194 The Eros Q and related devices contain a stereo switch in the audio path.
199199- This may be connected differently depending on the hardware revision. This
200200- setting allows the behavior of the stereo switch to be changed if one of
195195+ This setting allows the behavior of the stereo switch to be changed if one of
201196 the two outputs (Headphones or Line Out) is not working. There are four modes:
202197 \begin{description}
203198 \item[Normal.]
···209204 \item[Always 1.]
210205 Both outputs use a value of 1.
211206 \end{description}
207207+208208+ \section{DAC filter roll-off}
209209+ Later versions of the Eros Q and related devices contain a DAC with user-selectable
210210+ filter roll-off modes. This allows switching between the following modes:
211211+ \begin{itemize}
212212+ \item "Sharp"
213213+ \item "Slow"
214214+ \item "Short"
215215+ \item "Bypass"
216216+ \end{itemize}
212217}
213218214219\opt{dac_power_mode}{
+64
manual/getting_started/hibyos_nativeinstall.tex
···11+We will install the bootloader with the original firmware's recovery
22+mode. The process is summed up as the following:
33+44+\begin{itemize}
55+ \item Determine what hardware version your player is and download
66+ the correct bootloader update file
77+ \item Place the bootloader \fname{update.upt} file on the SD card
88+ \item In the original firmware, run the Firmware Update: \\
99+ \fname{System Settings --> Firmware Update}
1010+\end{itemize}
1111+1212+\subsubsection{Determine hardware version}\label{ref:determine_hardware_version}
1313+Determine what hardware version your player is. Go to \fname{System Settings --> About The Player --> Version} and reference
1414+the list below. hw1, hw1.5, and hw2 players all use the same update
1515+file (with one exception), while hw3 players use a different one.
1616+1717+\note{Important: If your player's version is not contained in this list,
1818+for example if the firmware version is newer than what is listed here,
1919+we cannot be sure that the hardware is the same. The best thing to do is
2020+contact the manufacturer and ask them two things: (1) for an update file
2121+of your version, and (2) if a player with the most recent version listed
2222+here can be upgraded to the firmware version on your player. If they say
2323+yes, we can be more certain that the hardware has not changed. These lists
2424+may not be the most up to date, please see the wiki page at
2525+\url{https://www.rockbox.org/wiki/AIGOErosQK} for the most up-to-date list.}
2626+2727+\begin{description}
2828+\item[hw1/hw1.5/hw2 players]
2929+ \begin{itemize}
3030+ \item Aigo Eros Q V1.8 - V2.0
3131+ \item Hifiwalker H2 V1.1 - V1.6
3232+ \item Surfans F20 V2.2 - V2.7
3333+ \end{itemize}
3434+ These players use \fname{erosqnative-hw1hw2-erosq.upt} as the update file.
3535+ The lone exception is the Hifiwalker H2 V1.3, which uses the update file
3636+ \fname{erosqnative-hw1hw2-eros\_h2.upt}.
3737+\item[hw3 players]
3838+ \begin{itemize}
3939+ \item Aigo Eros Q V2.1
4040+ \item Hifiwalker H2 V1.7 - V1.8
4141+ \item Surfans F20 V3.0 - V3.3
4242+ \end{itemize}
4343+4444+ These players use \fname{erosqnative-hw3-erosq.upt} as the update file.
4545+\end{description}
4646+4747+Download the \fname{.upt} file for these players from \download{bootloader/aigo/native/}.
4848+4949+\note{All players use the same Rockbox build, only the bootloader is different.}
5050+5151+\subsubsection{Place update file on SD card}\label{ref:place_on_sd_card}
5252+Place the appropriate bootloader file on the root of the SD card and name it
5353+\emph{exactly} \fname{update.upt}.
5454+5555+\note{This is a good time to ensure that your Rockbox installation \fname{.rockbox}
5656+is present on your SD card.}
5757+5858+Don't forget to safely eject/unmount your player.
5959+6060+\subsubsection{Run Firmware Update}\label{ref:run_firmware_update}
6161+In the original firmware, run the firmware updater by going to
6262+\fname{System Settings --> Firmware Update}. At this point, you can delete
6363+\fname{update.upt} from the SD card if you wish. \emph{Do not delete .rockbox,
6464+this is your Rockbox installation and needs to stay there!}
+26-3
manual/getting_started/installation.tex
···118118\begin{description}
119119 \item[Filesystem support.] Rockbox only supports the FAT32 filesystem. Other
120120 filesystems such as exFAT or NTFS are not supported.
121121+ \opt{erosqnative}{
122122+ \note{Many SD cards come with exFAT on them from the
123123+ factory. The original firmware can be used to reformat them to FAT
124124+ by going to: \fname{System Settings --> Reset --> Format TF Card}.}
125125+ \note{The SD card that sometimes come bundled with these players are usually
126126+ of substandard quality and are not to be trusted. It is recommended to source
127127+ a card of a reputable brand, from a reputable source, such as direct from
128128+ the manufacturer.}
129129+ }
121130 \item[USB DAC.] This feature is not supported by Rockbox, but you can
122131 dual-boot the original firmware if you want to use it.
123132 \opt{shanlingq1,agptekrocker,xduoox3ii,xduoox20,aigoerosq,erosqnative}{\item[Wireless.] There is no support for Bluetooth\opt{shanlingq1}{ or WiFi}.
···545554 \opt{samsungyh}{\input{getting_started/samsungyh_install.tex}}
546555 \opt{xduoox3}{\input{getting_started/xduoox3_install.tex}}
547556 \opt{xduoox3ii,xduoox20,agptekrocker,aigoerosq}{\input{getting_started/hibyos_install.tex}}
548548- \opt{fiiom3k,shanlingq1,erosqnative}{\input{getting_started/jztool_install.tex}}
557557+ \opt{fiiom3k,shanlingq1}{\input{getting_started/jztool_install.tex}}
558558+ \opt{erosqnative}{\input{getting_started/hibyos_nativeinstall.tex}}
549559 }
550560}
551561···807817 \playerman{} firmware.
808818}
809819810810-\opt{fiiom3k,shanlingq1,erosqnative}{
820820+\opt{fiiom3k,shanlingq1}{
811821 If you want to remove the Rockbox bootloader, copy an original firmware
812812- update to your microSD card and run the \playerman{} update by
822822+ update to your microSD card and run the \playerman{} update by
813823 \opt{erosqnative}{running it from the Original Firmware's System Settings menu.}
814824 \nopt{erosqnative}{holding \ActionBootOFRecovery{} while powering on the \dap{}.}
815825···819829 can be accessed by holding \ActionBootRecoveryMenu{} when powering on. If
820830 your \dap{} won't boot, use \fname{jztool} to load the bootloader over USB
821831 and enter the recovery menu -- see \reference{ref:jztool_load_bootloader}.
832832+}
833833+834834+\opt{erosqnative}{
835835+ If you want to remove the Rockbox bootloader, you will need to acquire the correct
836836+ update file for your brand player and original firmware version number. The
837837+ uninstallation procedure can then be done as follows:
838838+839839+ \begin{itemize}
840840+ \item If the update file is unmodified, use \fname{tools/hibyos\_nativepatcher/hibyos\_nativepatcher.sh} to mark the original bootloader for updating
841841+ \item Place the update file on the SD card and ensure it is named \emph{exactly} \fname{update.upt}
842842+ \item Boot into the Rockbox bootloader menu: With the player off, hold \ButtonVolUp{} + \ButtonPower{}
843843+ \item Select "Aigo Recovery"
844844+ \end{itemize}
822845}
823846824847\nopt{gigabeats}{
+7-7
tools/builds.pm
···474474 },
475475 'fiiom3k' => {
476476 name => 'FiiO M3K',
477477- status => 2,
478478- manualok => 1, # Remove once status moves to 3
477477+ status => 3,
478478+ release => '4.0', # Remove once 4.0 lands
479479 },
480480 'aigoerosq' => {
481481 name => 'AIGO EROS Q / K (Hosted)',
482482- status => 2,
482482+ status => 2, # Do we promote this to stable?
483483 },
484484 'erosqnative' => {
485485 name => 'AIGO EROS Q / K (Native)',
486486- status => 2,
487487- manualok => 1, # Remove once status moves to 3
486486+ status => 3,
487487+ release => '4.0', # Remove once 4.0 lands
488488 },
489489 'ihifi770' => {
490490 name => 'Xuelin iHIFI 770',
···500500 },
501501 'shanlingq1' => {
502502 name => 'Shanling Q1',
503503- status => 2,
504504- manualok => 1, # Remove once status moves to 3
503503+ status => 3,
504504+ release => '4.0', # Remove once 4.0 lands
505505 },
506506);
507507
+4-4
tools/updatelang
···402402403403 my $sane = $lang{$id}{'dest'}{$tgt};
404404 $sane =~ s/^~?(.*)/$1/; # Strip off leading ~ if it's there as it's not a legal character otherwise
405405- if ($sane =~ tr/"~//) {
405405+ if ($sane =~ tr/"~<>//) {
406406 # If it has suspicious characters that are not allowed
407407- $lang{$id}{'notes'} .= "### The <dest> section for '$id:$tgt' has some suspicious characters (eg '~'), please double-check!\n";
407407+ $lang{$id}{'notes'} .= "### The <dest> section for '$id:$tgt' has some suspicious characters (eg \",~,<,>), please double-check!\n";
408408# print "#!! '$id:$tgt' suspicious characters\n";
409409 }
410410 }
···476476 }
477477 my $sane = $lang{$id}{'voice'}{$tgt};
478478 $sane =~ s/^~?(.*)/$1/; # Strip off leading ~ if it's there as it's not a legal character otherwise
479479- if ($sane =~ tr/%"~://) {
479479+ if ($sane =~ tr/%"~:\[\]<>{}\|//) {
480480 # Suspicious characters that are not typically voiced..
481481- $lang{$id}{'notes'} .= "### The <voice> section for '$id:$tgt' has some suspicious characters (eg '%' or '~' or ':'), please correct!\n";
481481+ $lang{$id}{'notes'} .= "### The <voice> section for '$id:$tgt' has some suspicious characters (eg %,\",~,:,<,>,[,],{,},|), please correct!\n";
482482# print "#!! '$id:$tgt' suspicious characters\n";
483483 }
484484 if ($lang{$id}{'voice'}{$tgt} =~ /\.\.\./) {