📄 protocol.txt
字号:
A brief summary of the protocol used by the Samsung Yepp:Types type=0 data type=1 mp3 type=2 telephone type=3 sc4 type=4 reserved?Wheres where=0 main memory where=1 card memoryIndices one byte to reference a file indexes >0x7f are in the card, no file has index=0Sections enclosed in { } are repeated until either >= the the required numberof bytes have been received or transmitted, or the required number of blocksis reached.Direction of communication -> Means PC->Yepp ie the PC asserts D0-D7 <- Means Yepp->PC ie the Yepp asserts D0-D7The communication is IEEE-1284 where IEEE-1284 says what happens, look atthe code for more information.memsize word size of memory in units of 16Kmemfree free memory in units of 16KOpcode0x1 Upload file (PC->Yepp) -> Byte 1 -> Byte where -> Byte type -> Dword size -> Word blocks -> Byte name[515] -> Byte block[0x3ff0] -> Byte 0 { -> Byte block[0x41f8] -> Byte 0 } <- Byte index0x2 Download file (Yepp->PC) -> Byte 2 -> Byte index <- Dword size <- Byte block[0x3ff0] { -> Byte 0 <- Byte ? <- Byte block[0x41f8] }0x3 Get directory -> Byte 3 { <- Byte index <- Byte type <- Dword size <- Byte name[515] <- Byte attr } End is signaled by all of the above being 0 <- Byte 0xff0x4 Get status -> Byte 4 <- Word memsize BASE <- Word memfree? <- Word memsize CARD <- Word memfree?0x5 Erase -> Byte 5 -> Byte index <- Byte 00x6 Format -> Byte 6 -> Byte where <- Byte 0xff0x7 Get Play Order? -> Byte 7 <- Byte gunk[8] (always seen 0x3a 0x68 0xa0 0x00 0x00 0x01 0x03 0x09) <- Byte order[250] Array of indexes, terminated by zeros <- Byte q (Don't know what these are) <- Byte q0x80x9 0xa Ping -> Byte 10 <- Byte 1I Think the point of these threeis to ensure the index numberis deterministic.0xb Download config.dat same format as 0x1, type=0x00xc Download encode.mas same format as 0x1, type=0x40xd Download decode.mas same format as 0x1, type=0x4 0xe Download serial.dat same format as 0x1, type=0x00x20 ?????? (After format flash 0x6 0x1 ) -> Byte 32 <- Word 0xe698=59032 (with 8Mb card)0x21 ?????? (After 0x20) -> Byte 33 (With 8Mb card) <- Byte 00x22 ?????? (After 0x21) -> Byte 34 -> Word blocks (80 with 8Mb card) { -> Byte data[512]; } <- Byte 24 (With 8Mb Card)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -