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]
|