From f8bbe3352c4d9f21fde892ee8b60563decfc6a14 Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Sat, 24 Jul 2021 11:11:57 -0400 Subject: rocker: First crack at manual for the AGPTek Rocker It needs screenshots and slightly better installation instructions Includes bits shared with other HibyOS platforms Change-Id: I1c1974143b5badf1aca5c3281556ce553ab1b8a5 --- manual/advanced_topics/main.tex | 6 ++- manual/getting_started/hibyos_install.tex | 26 ++++++++++ manual/getting_started/installation.tex | 5 +- manual/platform/agptekrocker.tex | 26 ++++++++++ manual/platform/keymap-agptekrocker.tex | 82 +++++++++++++++++++++++++++++++ manual/rockbox_interface/main.tex | 4 ++ tools/builds.pm | 1 + 7 files changed, 147 insertions(+), 3 deletions(-) create mode 100644 manual/getting_started/hibyos_install.tex create mode 100644 manual/platform/agptekrocker.tex create mode 100644 manual/platform/keymap-agptekrocker.tex diff --git a/manual/advanced_topics/main.tex b/manual/advanced_topics/main.tex index 940852d593..b9beb937d8 100755 --- a/manual/advanced_topics/main.tex +++ b/manual/advanced_topics/main.tex @@ -530,7 +530,7 @@ title [artist]''. % %fbkBit %?fv %?iv<(id3v%iv)|(no id3)> % %pb % %pm -% +% %\end{verbatim} \section{\label{ref:manage_settings}Managing Rockbox Settings} @@ -669,6 +669,10 @@ You just ``play'' a file with the extension % \opt{gigabeatf,gigabeats}{\fname{.gigabeat}.} % \opt{fiiom3k}{\fname{.m3k}} % \opt{shanlingq1}{\fname{.q1}} % +\opt{agptekrocker}{\fname{.rocker}} % +\opt{xduoox3ii}{\fname{.x3ii}} % +\opt{xduoox20}{\fname{.x20}} % +\opt{aigoerosq}{\fname{.erosq}} % This can be used to test new firmware versions without deleting your current version. diff --git a/manual/getting_started/hibyos_install.tex b/manual/getting_started/hibyos_install.tex new file mode 100644 index 0000000000..181500ccee --- /dev/null +++ b/manual/getting_started/hibyos_install.tex @@ -0,0 +1,26 @@ +This player's firmware is based on a Linux platform called HibyOS. Rockbox +runs as an application, replacing the stock \emph{Hibyplayer} application. + +In order to install Rockbox's bootloader, you will need a copy of the +original player firmware. This can be downloaded from the manufacturer's +web site. The following stock firmware versions are currently supported: + +\begin{itemize} + \opt{agptekrocker}{ + \item 20171101 + } +\end{itemize} + +After downloading the firmware, you will need to download the corresponding +binary patch file (\fname{.bsdiff}) for the firmware version in question, from +the following location: + +\begin{itemize} + \opt{agptekrocker}{ + \item \download{bootloader/agptek} + } +\end{itemize} + +Using the \emph{bspatch} utility, apply the binary patch to the original bootloader, with an output file \fname{update.upt}. Place this file into the top-level directory of an SD card. + +Insert the SD card into the player, turn it on, and navigate the to the \emph{tools} menu, and select \emph{update firmware}. The device will restart to perform the update, then restart again, after which it will display the Rockbox bootloader menu. diff --git a/manual/getting_started/installation.tex b/manual/getting_started/installation.tex index cc0c7af919..3903e37e1f 100644 --- a/manual/getting_started/installation.tex +++ b/manual/getting_started/installation.tex @@ -111,7 +111,7 @@ follow the instructions at \end{description} } -\opt{fiiom3k,shanlingq1}{ +\opt{fiiom3k,shanlingq1,agptekrocker,xduoox3ii,xduoox20,aigoerosq}{ Although Rockbox is considered fully functional on the \playername{}, there are a few limitations compared to the original firmware which you should be aware of before installing. @@ -120,7 +120,7 @@ of before installing. filesystems such as exFAT or NTFS are not supported. \item[USB DAC.] This feature is not supported by Rockbox, but you can dual-boot the original firmware if you want to use it. - \opt{shanlingq1}{\item[Wireless.] There is no support for Bluetooth or WiFi. + \opt{shanlingq1,agptekrocker,xduoox3ii,xduoox20,aigoerosq}{\item[Wireless.] There is no support for Bluetooth\opt{shanlingq1}{ or WiFi}. You can dual-boot the original firmware to use wireless functionality.} \item[Hotswapping SD cards.] Rockbox runs from the SD card, not the internal flash memory. Hotswapping is technically possible, but you need to install @@ -544,6 +544,7 @@ by Rockbox, in the main directory of your \daps{} drive. \opt{IMX233}{\input{getting_started/IMX233_install.tex}} \opt{samsungyh}{\input{getting_started/samsungyh_install.tex}} \opt{xduoox3}{\input{getting_started/xduoox3_install.tex}} + \opt{xduoox3ii,xduoox20,agptekrocker,aigoerosq}{\input{getting_started/hibyos_install.tex}} \opt{fiiom3k,shanlingq1}{\input{getting_started/jztool_install.tex}} } } diff --git a/manual/platform/agptekrocker.tex b/manual/platform/agptekrocker.tex new file mode 100644 index 0000000000..b42ca6951d --- /dev/null +++ b/manual/platform/agptekrocker.tex @@ -0,0 +1,26 @@ +% $Id$ % +\def\UseOption{agptekrocker} +\edef\UseOption{\UseOption,AGPTEK_ROCKER_PAD} +\edef\UseOption{\UseOption,HAVE_BACKLIGHT} +\edef\UseOption{\UseOption,HAVE_RB_BL_IN_FLASH} +\edef\UseOption{\UseOption,agptekrocker} + +\newcommand{\playerman}{AGPtek} +\newcommand{\playertype}{Rocker} +\newcommand{\playerlongtype}{\playertype} +\newcommand{\dapdisplaywidth}{128} +\newcommand{\dapdisplayheight}{160} +\newcommand{\dapdisplaydepth}{16} +\newcommand{\specimg}{agptekrocker} +%Used to name the player, e.g. ...to the \dap +\newcommand{\dap}{player} +%For use when referring to the player. E.g. the \daps\ capacity ... +\newcommand{\daps}{player's} +\newcommand{\firmwarefilename}{\fname{rockbox.rocker}} +\newcommand{\bootfilename}{\fname{bootloader.rocker}} +\newcommand{\firmwareextension}{\fname{rocker}} +\newcommand{\screenshotsize}{8cm} +\newcommand{\disk}{SD card} + +% link external keymap file +\input{platform/keymap-agptekrocker.tex} diff --git a/manual/platform/keymap-agptekrocker.tex b/manual/platform/keymap-agptekrocker.tex new file mode 100644 index 0000000000..949ee73e69 --- /dev/null +++ b/manual/platform/keymap-agptekrocker.tex @@ -0,0 +1,82 @@ +% $Id$ + +\newcommand{\ButtonPower}{\btnfnt{Power}} +\newcommand{\ButtonVolUp}{\btnfnt{Volume Up}} +\newcommand{\ButtonVolDown}{\btnfnt{Volume Down}} +\newcommand{\ButtonUp}{\btnfnt{Up}} +\newcommand{\ButtonDown}{\btnfnt{Down}} +\newcommand{\ButtonLeft}{\btnfnt{Left}} +\newcommand{\ButtonRight}{\btnfnt{Right}} +\newcommand{\ButtonSelect}{\btnfnt{Select}} + +%Button actions, standard context +\newcommand{\ActionStdPrev}{\ButtonUp{}} +\newcommand{\ActionStdPrevRepeat}{\ButtonUp{}} +\newcommand{\ActionStdNext}{\ButtonDown{}} +\newcommand{\ActionStdNextRepeat}{\ButtonDown{}} +\newcommand{\ActionStdOk}{\ButtonSelect} +\newcommand{\ActionStdCancel}{\ButtonLeft} +\newcommand{\ActionStdContext}{Long \ButtonSelect{}} +\newcommand{\ActionStdMenu}{\ButtonPower{}} +\newcommand{\ActionStdUsbCharge}{\ButtonSelect{}} + +%Button actions, wps context +\newcommand{\ActionWpsStop}{Long \ButtonSelect} +\newcommand{\ActionWpsBrowse}{Long \ButtonUp} +\newcommand{\ActionWpsVolUp}{\ButtonVolUp} +\newcommand{\ActionWpsVolDown}{\ButtonVolDown} +\newcommand{\ActionWpsSkipPrev}{\ButtonLeft} +\newcommand{\ActionWpsSkipNext}{\ButtonRight} +\newcommand{\ActionWpsSeekBack}{Long \ButtonLeft} +\newcommand{\ActionWpsSeekFwd}{Long \ButtonRight} +\newcommand{\ActionWpsPlay}{\ButtonSelect{}} +\newcommand{\ActionWpsContext}{\ButtonDown} +\newcommand{\ActionWpsMenu}{\ButtonUp} +\newcommand{\ActionWpsQuickScreen}{Long \ButtonDown} +\newcommand{\ActionWpsHotkey}{\ButtonVolUp{} and \ButtonVolDown{}} + +%Button actions, tree context +\newcommand{\ActionTreeWps}{Long \ButtonLeft} +\newcommand{\ActionTreeStop}{Long \ButtonSelect} +\newcommand{\ActionTreeParentDirectory}{\ButtonLeft} +\newcommand{\ActionTreeEnter}{\ButtonSelect} +\newcommand{\ActionTreeHotkey}{\ButtonVolUp{} and \ButtonVolDown{}} + +%Button actions, YesNo context +\newcommand{\ActionYesNoAccept}{\ButtonSelect{}} + +%Button actions, Virtual Keyboard Context +\newcommand{\ActionKbdSelect}{\ButtonSelect} +\newcommand{\ActionKbdUp}{\ButtonVolUp} +\newcommand{\ActionKbdDown}{\ButtonVolDown} +\newcommand{\ActionKbdLeft}{\ButtonLeft} +\newcommand{\ActionKbdRight}{\ButtonRight} +\newcommand{\ActionKbdPageFlip}{\ButtonPower{} and \ButtonSelect{}} +\newcommand{\ActionKbdDone}{\ButtonUp} +\newcommand{\ActionKbdAbort}{\ButtonPower} + +%Button actions, Pitch Screen context +\newcommand{\ActionPsToggleMode}{\ButtonSelect} +\newcommand{\ActionPsIncSmall}{\ButtonUp{}} +\newcommand{\ActionPsDecSmall}{\ButtonDown{}} +\newcommand{\ActionPsIncBig}{Long \ButtonUp} +\newcommand{\ActionPsDecBig}{Long \ButtonDown} +\newcommand{\ActionPsNudgeLeft}{\ButtonLeft} +\newcommand{\ActionPsNudgeRight}{\ButtonRight} +\newcommand{\ActionPsReset}{Long \ButtonSelect} +\newcommand{\ActionPsExit}{\ButtonPower} +\newcommand{\ActionPsFaster}{Long \ButtonRight} +\newcommand{\ActionPsSlower}{Long \ButtonLeft} + +%Button actions, Bookmark screen context +\newcommand{\ActionBmDelete}{\ButtonSelect} + +%Plugin lib actions +\newcommand{\PluginUp}{\ButtonUp} +\newcommand{\PluginDown}{\ButtonDown} +\newcommand{\PluginLeft}{\ButtonLeft} +\newcommand{\PluginRight}{\ButtonRight} +\newcommand{\PluginSelect}{\ButtonSelect} +\newcommand{\PluginSelectRepeat}{Long \ButtonSelect} +\newcommand{\PluginCancel}{\ButtonPower} +\newcommand{\PluginExit}{\ButtonPower} diff --git a/manual/rockbox_interface/main.tex b/manual/rockbox_interface/main.tex index 92d50ccd0a..16931e8d24 100644 --- a/manual/rockbox_interface/main.tex +++ b/manual/rockbox_interface/main.tex @@ -520,11 +520,13 @@ To turn on and off your Rockbox enabled \dap{} use the following keys: }{\ButtonPower}% \opt{COWON_D2_PAD} {\ButtonPower{}, then \ButtonHold}% \opt{ONDA_VX777_PAD} {\ButtonPower{}}% + \opt{AGPTEK_ROCKER_PAD}{\ButtonPower{}}% & \opt{HAVEREMOTEKEYMAP}{ \opt{IRIVER_RC_H100_PAD}{\ButtonRCOn}% \opt{IAUDIO_RC_PAD}{\ButtonRCPlay} &} + Start Rockbox \\ @@ -536,11 +538,13 @@ To turn on and off your Rockbox enabled \dap{} use the following keys: ,GIGABEAT_PAD,MROBE100_PAD,GIGABEAT_S_PAD,sansaAMS,COWON_D2_PAD% ,PBELL_VIBE500_PAD,ONDA_VX777_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD% }{Long \ButtonPower}% + \opt{AGPTEK_ROCKER_PAD}{Long \ButtonPower{}}% & \opt{HAVEREMOTEKEYMAP}{ \opt{IRIVER_RC_H100_PAD}{Long \ButtonRCStop}% \opt{IAUDIO_RC_PAD}{Long \ButtonRCPlay} &} + Shutdown Rockbox \\ \end{btnmap} diff --git a/tools/builds.pm b/tools/builds.pm index 1c2f7f246d..b0ba4201bb 100644 --- a/tools/builds.pm +++ b/tools/builds.pm @@ -420,6 +420,7 @@ $releasenotes="/wiki/ReleaseNotes315"; 'agptekrocker' => { name => 'Agptek Rocker', status => 2 + manualok => 1, # Remove once status moves to 3 }, 'xduoox3' => { name => 'xDuoo X3', -- cgit v1.2.3