Rockbox.org home
releases
current build
extras
themes FAQ
manual
wiki
docs index mailing lists
IRC
forums bugs
patches



Search | Go
TWiki > Main > GigabeatSPort

Gigabeat S Port page



Player info

For information about the player itself see GigabeatSInfo



Installation

See GigabeatSInstallation



Current status

As it stands, compiling a bootloader from rockbox SVN and running it inside an nk.bin file works and it can start a rockbox binary. The bootloader can also be run stand-alone and provides a bootloader USB mode. USB MSC support appears to work reliably enough to copy builds and bootloaders to the device once rockbox is installed. Audio playback works.

Device Status
LCD driver 60%
Font rendering 100%
Backlight 100%
ATA driver 100%
Button driver 100%
SPI driver 99%*
ADC driver 100%
USB handler 99%*
Power handling 99%*
I2C driver 100%
Audio DAC driver 70%
RTC driver 100%

Notes:

  • Technically the driver is fully functional though it's a bit premature to call it "100%".

  • The DAC driver does not support the hardware EQ capabilities of the chip yet. I am resisting the temptation to relegate the hardware EQ to Bass/Treble tone control status regarless of what has been done in similar situations. I may just go ahead and do something and consider it five tone controls. -MAS

  • The LCD driver works and is very similar to the Gigabeat F/X for basic graphics. We're still re-using what was set up by the Toshiba bootloader except for changing the framebuffer address at boot. Some LCD power management is implemented.

  • Under Windows, plugging USB for charging only but not connecting still needs to be properly handled (driver popup issue) but it will charge when connected normally-- no issue under Linux.



Things to do before "supported" status

It is hoped to include the Gigabeat S in the 3.3 release. The intention is make "beastpatcher" (see utils/MTP/beastpatcher in SVN for the latest code) the standard way to install Rockbox on the S.

This utility contains the "sendfirm" code to perform an MTP firmware upload, but has the Rockbox bootloader binary embedded in the executable. It's a console application, but is designed to be "double-clickable" from a GUI, and will present the user with instructions for use, and a prompt to confirm the install. It could also potentially be embedded within rbutil, and used to perform a bootloader install there (we can't link the code directly in rbutil due to licensing).

Current status of beastpatcher:

  • Generic functionality - Single-boot installation works, but some cosmetic cleanup needed. The ability to install a user-specified "nk.bin", or to create a dual-boot bootloader, or to uninstall is not yet implemented.
  • Linux port - Works - libmtp/libusb are statically linked.
  • Windows port - Written, but untested. This currently uses the external MTP_DLL.dll, which is inconvenient (we want a single .exe). To fix this would mean beastpatcher could only be compiled with MS Visual C++, so needs a Windows developer to take forward. The API also needs updating to match the libmtp version of beastpatcher (i.e. perform a separate scan for devices).
  • OS X port - Not started, but should be trivial. Main work is in the build system to compile and statically link with libusb/libmtp to create a universal binary. The code itself should be more or less identical to the Linux version.

In addition to completing beastpatcher, the following need to be done before Rockbox can be added to the "supported" list, or included in a release:

  • Release an official bootloader - build, test, tag in SVN and place on download.rockbox.org. (both the original bootloader.bin and a single-boot "nk.bin").
  • Make a beastpatcher release including the released bootloader. This should consist of binaries for Linux (32 and 64 bit), OS X and Windows.
  • Finalise the install instructions in the manual.

The following would be nice to do prior to an official release, but are not considered essential:

  • Include support in rbutil. Bootloader install would require running the external beastpatcher binary.
  • Finish the development of the "undelete original firmware nk.bin" idea to enable dual-booting without the user needing to provide an original firmware nk.bin file.
  • Include dual-boot ability in beastpatcher.


CategoryFrontpage: Gigabeat S Port Index [New Ports]

r32 - 25 Mar 2009 - 12:55:38 - NilsWallmenius
Edit | View raw | Attach | Ref-By | History: r32 < r31 < r30 < r29 < r28 | More | Refresh cache

Copyright © 1999-2009 by the contributing authors.