|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Gigabeat S InfoPCB ScansFlash bootloaderThe flash bootloader is responsible for many of the restrictions described below. See GigabeatSOriginalLoader.Disk LayoutThe following was obtained by placing the HD into an ipod and using the ipod's emergency disk mode to gain an fdisk inspection of the drive's layout.Disk /dev/sda: 60.0 GB, 60011642880 bytes 64 heads, 32 sectors/track, 57231 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes This doesn't look like a partition table. You have probably selected the wrong device. Device Boot Start End Blocks Id System /dev/sda1 ? 1 151 153600 b W95 FAT32 Partition 1 doesn't end on a cylinder boundary. /dev/sda2 151 57232 58451488 b W95 FAT32 Partition 2 doesn't end on a cylinder boundarySee TfatDetails for additional information on the TFAT file system. Loading code from WindowsRunning code on the Gigabeat involves patching the original nk.bin file, inserting the custom binary executable, and using the patched Gigabeat V update utility to upload the new nk.bin file to the player. What you need:
Step 1Compile (or use the precompiled binaries) and use the mknkboot tool (below) on a unmodified nk.bin file. A unmodified nk.bin file can be found in the patched Gigabeat V updater (nk_orig.bin). The mknkboot tool inserts the binary executable, and patches it to bypass the signature check. Usage :mknkboot <firmware file> <boot file> <output file>This will create a file in the current directory, which is what you need to upload to the player. With the current build system for the Gigabeat S, the <firmware file> you should use is the nk_orig.bin file from the patched Gigabeat V updater. The <boot file> is bootloader/bootloader.bin after you've built the bootloader with the rockbox toolchain. This creates an original firmware image (i.e. with Windows Mobile) plus the Rockbox bootloader. Alternatively, you can skip the mknkboot step, and use the nk.bin file in the build directory. This doesn't include the original firmware however, and therefore dual-booting is not possible. Step 2For the gigabeat to accept the firmware update, it must either be in the recovery mode, or in the original firmware.To enter recovery mode, HARD reset the player (turn off the battery switch and turn it back on), and hold left (on the cross, not '<--') and the windows button while booting to enter recovery mode. This will format the hard drive. Performing the update from the OF will not format your player. Step 3Download the install.bat script and put it together with the modified nk.bin file in the same directory as the patched Gigabeat V updater. Connect the gigabeat to the computer and to the charger, and then run the install.bat script. Remove the usb cable when the updater is done, and the gigabeat will flash the new firmware (be careful not to remove the power while it's flashing), then run it. Once this is done when the Gigabeat is powered up again, if you want the Official Firmware to be loaded, you need to switch the hold switch on the device to the "On" position. Using the sendfirm.exe program:
Loading code from LinuxWhat you need:
Step 1Compile (or use the precompiled binaries) and use the mknkboot tool (below) on a unmodified nk.bin file. A unmodified nk.bin file can be found in the patched Gigabeat V updater (nk_orig.bin). The mknkboot tool inserts the binary executable, and patches it to bypass the signature check. Usage :mknkboot <firmware file> <boot file> <output file>This will create a file in the current directory, which is what you need to upload to the player. With the current build system for the Gigabeat S, the <firmware file> you should use is the nk_orig.bin file from the patched Gigabeat V updater. The <boot file> is bootloader/bootloader.bin after you've built the bootloader with the rockbox toolchain. This creates an original firmware image (i.e. with Windows Mobile) plus the Rockbox bootloader. Alternatively, you can skip the mknkboot step, and use the nk.bin file in the build directory. This doesn't include the original firmware however, and therefore dual-booting is not possible. Step 2For the gigabeat to accept the firmware update, it must either be in the recovery mode, or in the original firmware.To enter recovery mode, HARD reset the player (turn off the battery switch and turn it back on), and hold left (on the cross, not '<--') and the windows button while booting to enter recovery mode. This will format the hard drive. Performing the update from the OF will not format your player. Step 3Compile the sendfirm tool (available in SVN in /utils/MTP), and use it to send the modified nk.bin file (produced by mknkboot) to your gigabeat. The sendfirm utility requires the libraries lib-mtp and lib-usb present to compile. Usage:sendfirm <file to send>This will transfer the new firmware to the device (doesn't flash anything, much safer), and reset it, at which point it will then load the new firmware. Note: The sendfirm tool is only meant to send either a patched nk.bin or a nk.bin compiled from the Gigabeat S bootloader. Anything else like a rockbox binary or tar will result in your device becoming non-functional. A format and restore is required. Running Rockboxsee GigabeatSInstallation Note: Before the bootloader could be used to install a complete rockbox build the single rockbox.gigabeat was transfered to the device. Since the first found 'rockbox.gigabeat' file will be used you have to delete rockbox.gigabeat first in order to update if you haven't used a complete build before.Mknkboot Gigabeat S Code Injection ToolThis is a tool that bypasses the signature check, and will allow developers to insert their custom code into the Gigabeat S nk.bin firmware file.Firmware Analyst
Original Firmware Graphics Setup AnalysisThe Gigabeat S's processor, the i.mx31 uses a very complex yet powerful piece of hardware called the IPU(Image Processing Unit) to process graphics. A detailed description of this component is given in chapter 44 of the i.mx31 reference manual. Provided here is
*Display Interface Enable,pixel endian=little endian **Graphics window set to background(which may explain why screen is changed only when you write to bg portion of fb), alpha mode=global alpha ***BGYP=10, BGXP=16 Gigabeat V Firmware Update 1.5Unpatched version of the Gigabeat V firmware updater: gbv_update_1_5_jp.exe (RapidShare link)Official Gigabeat S Updater version 1.2The original platform version 1.0, this updater install platform version 1.2. The program version is 2.11 for the 2 platform version http://www.tacp.toshiba.com/customersupport/ Select Mobile audio player then 2006Select either mes30v or mes60v then firmware Download the iso file : MESV12US.iso Direct link Extract the iso with your favorite extractor (7zip for example). You get 2 files : Autorun.inf and gbs_update_1_2_us.exe Extract the exe file with 7zip for example and you get the following files : nk.bin , recovery.bin ,pmcboot_secure.bin plus a folder named 'us' containing License.txt and SUpdate.exe If you just want to recover the original firmware, run the exe file and follow the instructions. Firmware RecoveryWindowsIf for whatever reason the Gigabeat S firmware is not booting due to some error, your fault or not, here is a tool that will help you recover the original firmware functionality. This uses the patched Gigabeat V updater from above which has been patched by Zunepet (this has been explained in the Gigabeat S forum post) to recognize and update the Gigabeat S firmware. I have written a small batch file called recover.bat that will do the recovery process. It is included in the archive. Or you could put your Gigabeat S into recovery mode and use sendfirm.exe to copy the stock nk.bin to your device.LinuxSimply put your Gigabeat S into recovery mode and use sendfirm to copy the stock nk.bin to your device.HardwareCPUFreescale i.MX31L processor
RAMSamsung 4M x 32Bit x 4 Banks Mobile SDRAMInfo: http://www.samsung.com/products/semiconductor/MobileSDRAM/MobileSDRSDRAM/512Mbit/K4M51323PC/K4M51323PC.htm FlashIntel F160C3TD7Info: http://download.intel.com/design/flcomp/datashts/29064523.pdf Audio CodecWolfson WM8978GInfo: http://www.wolfsonmicro.com/products/WM8978/ Power managementFreescale MC13783User's Guide (Full Programming Info): https://www.rockbox.org/wiki/pub/Main/GigabeatSInfo/MC13783UG.pdf TV OutFocus FS456Info: http://www.focussemi.com/products/fs455.html Datasheet: http://ingeninge.homelinux.net/ingmar/zenega/Datenbl%E4tter/FS453-4___FS455-6_SW_v31.pdf http://ingeninge.homelinux.net/ingmar/zenega/Datenbl%E4tter/FS453-4___FS455-6_HW_v31.pdf USB OTGPhilips ISP1504Info: http://scn.semiconductors.philips.com/buses/usb/products/ulpi/isp1504/ FM TunerSilicon Labs Si4700 (Not on 30gb model in some markets)http://www.silabs.com/tgwWebApp/public/web_content/products/Broadcast/Radio_Tuners/en/Si4700-01.htm Octal FET Bus SwitchTexas Instruments SN74CBTLV3245A Info: http://focus.ti.com/docs/prod/folders/print/sn74cbtlv3245a.htmlBus Switch/Level ShiftersToshiba TC7MP3245FTG - Low Voltage/Low Power 4-Bit à 2 Dual Supply Bus Transceiver (marked P003/618A8)Ganged bus switch/logic-level shifters for the disk drive's ATA interface. Datasheet: http://www.semicon.toshiba.co.jp/docs/datasheet/en/LogicIC/TC7MP3245FTG_en_datasheet_071019.pdf BatteryLi-poly 3.7V 700mAh (Model number 1UPF383450-TBF)HDDToshiba MK3008GAL (30gb version)Toshiba MK6008GAH (60gb version) Port Pin AssignmentsMC13783 Infonk.bin formatSee BIN format on http://www.xs4all.nl/~itsme/projects/xda/wince-flashfile-formats.htmlOf note is the image length header. This rarely reflects the actual image length, and as far as I can tell is used by the bootloader to tell if the .bin file should be written to flash memory or loaded to ram. When loading a custom nk.bin file you should ensure that this length is greater than say 16mb to ensure that a bad image is not flashed. Other Links
r85 - 02 Apr 2021 - 20:46:06 - UnknownUser
Copyright © by the contributing authors.
|