Welcome to the Rockbox Technical Forums!
GetObjectInfo: received ObjectInfo: Format code = MTP_FORMATCODE_UNDEFINED Protection status = MTP_PROTECTIONSTATUS_NONE Compressed size = 21767736 Thumbnail format = MTP_FORMATCODE_NOTUSED Thumbnail size = 0 Thumbnail width = 0 Thumbnail height = 0 Image width = 0 Image height = 0 Image bit depth = 0 Parent obj handle = 0x0 Association type = MTP_ASSOCIATIONTYPE_UNDEFINED Association desc = 0 Sequence number = 0 File name = nk.bin Capture date = Modification date = Keywords =
A small comment I noticed, my ZVM gave that responsecode pretty fast; so it must be computing the checksum while it is receiving the firmware, cause computing the SHA-1 checksum even on a 1,0Ghz comp takes 10 to 15sec ...
try altering the nk.bin but leaving the checksum the same.
Quote from: iSE on July 08, 2007, 05:18:52 AMtry altering the nk.bin but leaving the checksum the same.That's impossible. The checksum completely changes even if you change only 1 byte of the file.
But how does the player know if the file is an official one? I mean they all have different checksums and creative has no influence on them...
mcuelenaere, im trying to make sense of this template for the 010 editor that I_e made on the epizenter forum. However, using the latest firmware: ZENVisionM_60GB_PCFW_L21_1_21_02e, I do not seem to be able to get the same results or locate the checksum in nk.bin. Does it only work with the 30GB version?What I am hoping to try is to remove the NULL part containing the checksum and then calculate various hashes from the rest of it to determine which checksum the NULL block matches. Since I am assuming the checksum would not be calculated from the checksum itself. What if we get together a list of the different checksums, that mite help to calculate the algorithm?
Here is my nk.bin: http://www.verzend.be/v/2461049/nk.bin.html
//--------------------------------------//--- 010 Editor v2.0 Binary Template//// File: Creative firmware (nk.bin)-Parser// Author: l_e// Revision: 0.1//--------------------------------------typedef struct {CHAR BlockID[4];DWORD Size;if (BlockID == "FNIC"){UCHAR Desc[96];} else if (BlockID == "LLUN" || BlockID == "FFIC"){UCHAR Data[ Size ];} else {UCHAR Desc[32];UCHAR Data[ Size - sizeof(Desc) ];}} BLOCK;//--------------------------------------------CHAR[] StrRev( CHAR s[] ){local int sz;local int up;local CHAR strng[sizeof(s)];for (sz =sizeof(s)-1,up=0;upstrng[up] = s[sz];}return strng;}string ReadBLOCK( BLOCK &block ){return StrRev( block.BlockID );}//--------------------------------------------local ulong id;local ulong tmp;local ulong ofs;LittleEndian();id = ReadUInt( FTell() );if (id == 0x43494646){ // "CIFF"BLOCK FFIC;FSeek( 8 ); //Move back to first "real block", since CIFF-block includes most of the stuffofs = 8;while ( !FEof() ){FSeek( ofs );BLOCK block;FSeek( ofs+sizeof(block) );ofs = FTell();}} else {Warning ("Not valid CIFF-header. Exiting");return -1;}//--------------------------------------
I was using a different version of this i think. In my template results window, i got 21 blocks which are all:struct MSG1 MSG1Block[X]X being in increments of 0-20.
trying the template you suggest gives me a syntax error on line 30...[29] for (sz =sizeof(s)-1,up=0;upstrng[up] = s[sz];[30] }[31] return strng;
It is possible that not all of the NULL block is the checksum. I've seen in the past that buffers are included at the start or finish to fill out the checksum making the original unknown. If I can get access to the information you do, I'll try other checksums.
Would collecting all the different checksums from various people not help to narrow down the possible algorithm?
I was wondering, is the MTP requirement built into the hardware or can it be changed if the firmware is replaced?
I was curious about something. If the MTP stack is in software on the ZVM, would this also apply to other Creative NOMAD/ZEN players? I have been trying to gather up info on the Dell Digital Jukebox to help start a port (the thread's at http://forums.rockbox.org/index.php?topic=11368.0).
Page created in 0.072 seconds with 19 queries.