Rockbox mail archiveSubject: Re: Telechips-based players
Re: Telechips-based players
From: Dave Chapman <dave_at_dchapman.com>
Date: Tue, 31 Jul 2007 10:21:08 +0100
Basil Dozhdalev wrote:
> Had anyone ever try to develop Rockbox for Telechips-based MP3-players?
I wouldn't say I'm trying to develop Rockbox for the Telechips players,
but I do have such a device (a small flash-based MP3/WMA player with DAB
radio). This has a TCC773L.
I've been collecting the firmware files for various telechips-based
players, and it seems the firmware is unencrypted, but there are two
32-bit numbers in the headers (most likely a checksum and/or signature)
which I haven't been able to figure out.
So if your SDK can provide any clues to those, it would be helpful.
Hopefully the 77x and 76x share a lot in common.
As an example, the header for the firmware update for my Logik MP3/DAB
player looks like this:
0000000: a0f3 9fe5 0601 ffff 5665 723a 3030 3731 ........Ver:0071
0000010: 05e8 fdea 0000 0000 be26 f687 18cd 0c00 .........&......
My understanding so far is as follows:
0x00 - An ARM branch instruction (ldr pc, [pc, #xxx]) to the entry point
on the firmware.
0x04 - 0601 in all firmwares I've looked at - version?
0x06 - 0xffff in all firmwares I've looked at
0x08 - "Ver:0071" string (in all firmwares)
0x10 - Unknown 32-bit number
0x14 - Zero in all firmwares I've looked at
0x18 - Unknown 32-bit number
0x1c - Length of firmware file in bytes
Understanding those two unknown numbers and hence being able to generate
firmware files accepted by the firmware upgrade feature of the original
firmware would be a good start to any port.
Received on 2007-07-31