+ Reply to Thread
Results 1 to 20 of 21
The Possibility of Fully Reverse Engineering the Firmware?
This is a discussion on The Possibility of Fully Reverse Engineering the Firmware? within the Technical forums, part of the miniPlayer M6 / SL category; Hi all Just so I'm clear in my head. Can anyone in the world take the .bin firmware, reverse engineer ...
-
09-02-2007 #1Freshman
- Join Date
- Jun 2007
- Posts
- 24
- Thanks
- 0
Thanked 0 Times in 0 PostsThe Possibility of Fully Reverse Engineering the Firmware?
Hi all
Just so I'm clear in my head.
Can anyone in the world take the .bin firmware, reverse engineer it and build a new firmware with changes?
If this is not possible - what are our options to enhance the firmware without Meizu?
I would be very interested in arranging some tech. people to look into this, just need to know the options we have, who we would need etc.
Johnny
-
09-02-2007 #2Member
- Join Date
- May 2007
- Location
- The Netherlands
- Posts
- 220
- Thanks
- 0
Thanked 0 Times in 0 PostsReverse-engineering the whole firmware would be a bit harsh if you would ask me. It's much easier to reverse-engineering a part of it and port Rockbox to the M6.
What would be ever better is Meizu releasing sourcecode or specs however.
-
09-02-2007 #3Member
- Join Date
- Jul 2007
- Posts
- 255
- Thanks
- 0
Thanked 1 Time in 1 PostI don't think anyone at this forum knows how to do this..!

The only thing i can do is visual basic...:P
-
09-02-2007 #4Junior Member
- Join Date
- Jul 2007
- Posts
- 52
- Thanks
- 0
Thanked 0 Times in 0 PostsThe firmware is most likely written in assembly language. It would be difficult to reverse engineer.
Meizu Dane-Elec M6 4GB
2004.3 Firmware
Go Mountaineers!

-
09-02-2007 #5
if it were written in assembly language we would just have to disassemble it
reverse engineering normally describes the strategies to get back a readable "source code" of a high programming language.
I'd never spent my precious time on reverse engineering the Meizu Firmware. Why should I do Meizu's homework ?Last edited by BobbyQ; 09-02-2007 at 09:32 PM.
BatMan, the free video converter for Meizu players. Problems ? English First Aid here. Deutsche Erste Hilfe hier.
Join the Meizume Chatroom at irc://irc.moofspeak.net/meizume ! Firefox Users : get the Chatzilla Plugin. Other Browsers : use this web client.
-
09-02-2007 #6Senior Member
- Join Date
- Dec 2006
- Location
- Middle of the U.S.
- Posts
- 347
- Thanks
- 0
Thanked 0 Times in 0 PostsHeh, that's well put, BobbyQ... though someday if we got some people as devoted to trying as people are with game systems, I'm sure someone could build a new firmware, and changing everything. I think building from scratch would be the best option so that everything implemented could be incorporated and integrated into each part and stuff. It would take more work, but it would be nice to fix all the bugs as you built it instead of building over code that may work differently and have bugs.
I swim through a sea of stars, without looking back to shore...
Faster than light, bending time. Forever. Wherever.
~R-Type Final
-
09-03-2007 #7
Hey,
This may be of some help:
http://forum.videohelp.com/topic314821.html#1620786
This guy (probably Err0r's mailman) extracted the firmware off a Philips 5960 DVD player with a serial data cable and posted it to the group. Various coders screwed around with it, posted the results, and we all now have groovier 5960 players. I don't understand all the details, but, if you have expertise in this area, it does seem doable. He provides several useful photos and links.
ScottBlack Dane-Elec US 4GB M6
Firmware: S2002.3 from Dane-Elec US
SMEG 2010
-
09-03-2007 #8
sounds good
-
09-03-2007 #9Junior Member
- Join Date
- Jul 2007
- Posts
- 52
- Thanks
- 0
Thanked 0 Times in 0 PostsAssembly is NOT like C. It is machine code. Lots of direct memory calls, and works strictly with binary addressing.
Here is a short snipplet for a Calculator program in x86 assm code:
Keep in mind that assm code written in x86 code will NOT work in the ARM Samsung chip used in the M6. Someone would have to learn the assm language for THAT PARTICULAR CPU. Lots of time involved, unless the reverse engineer already has that knowledge. It's certainly possible, just not plausible.START:
;---------------------------------------------------------------------;
; TEST FOR PRESENCE OF CALCULATOR ;
;---------------------------------------------------------------------;
SUB AX,AX
MOV ES,AX
SUB BH,BH
MOV BL,INT_NUMBER
SHL BX,1
SHL BX,1
MOV DI,ES:[BX]
MOV ES,ES:[BX+2]
ADD DI,4
LEA SI,TAG
MOV CX,TAG_LEN
REPE CMPSB
JE CALL_CALC
MOV BX,SCREEN_HANDLE
MOV CX,MESSAGE_LEN
LEA DX,MESSAGE
MOV AH,40h
INT 21h
JMP SHORT CALC_EXIT
;---------------------------------------------------------------------;
; CALL CALCULATOR ;
;---------------------------------------------------------------------;
CALL_CALC:
MOV AL,INT_NUMBER
MOV BYTE PTR INT_CODE,AL
DB 0CDh ; INT
INT_CODE:
DB 00h
NOP
NOP
CALC_EXIT:
INT 20h
CALC ENDP
CODESEG ENDS
END CALCMeizu Dane-Elec M6 4GB
2004.3 Firmware
Go Mountaineers!

-
09-03-2007 #10BatMan, the free video converter for Meizu players. Problems ? English First Aid here. Deutsche Erste Hilfe hier.
Join the Meizume Chatroom at irc://irc.moofspeak.net/meizume ! Firefox Users : get the Chatzilla Plugin. Other Browsers : use this web client.
-
09-03-2007 #11Senior Member
- Join Date
- Dec 2006
- Location
- Middle of the U.S.
- Posts
- 347
- Thanks
- 0
Thanked 0 Times in 0 PostsI think he was making a reference, as you had made it sound like disassembling the code was something somewhat easy in how you went about saying it... and maybe Lex can say that doing that with C code, that it works that way. If that's it, he was making a reference that disassembling the code wouldn't be like disassembling C code, it would be a lot harder and near impossible.
I swim through a sea of stars, without looking back to shore...
Faster than light, bending time. Forever. Wherever.
~R-Type Final
-
09-03-2007 #12
yeah DChronos, disassembling is too complicated ...
BatMan, the free video converter for Meizu players. Problems ? English First Aid here. Deutsche Erste Hilfe hier.
Join the Meizume Chatroom at irc://irc.moofspeak.net/meizume ! Firefox Users : get the Chatzilla Plugin. Other Browsers : use this web client.
-
09-03-2007 #13
Yes, that is in fact x86 code you did just disassemble there - congratulations (for anyone else who wants to try it open a command shell and type "debug calc.exe").
Now you just have to find a half decent ARM disassembler - there are only a handful around and none of them allow you to step through the code like you would with x86.
Once you have that you then need to interpret the machine code instructions. With a typical program you would find tens of thousands of pretty cryptic lines of these instructions.
Have fun, BobbyQ!Last edited by audiofish; 09-03-2007 at 12:55 PM.
~audiofish~
-
09-03-2007 #14
audiofish, I said disassembling is easy. I never said reverse engineering is easy ! If you would like to refer to what I have said, please use the quote function.
Other than that, I see no reason to get offensive !
Originally Posted by BobbyQ
Last edited by BobbyQ; 09-03-2007 at 04:17 PM.
BatMan, the free video converter for Meizu players. Problems ? English First Aid here. Deutsche Erste Hilfe hier.
Join the Meizume Chatroom at irc://irc.moofspeak.net/meizume ! Firefox Users : get the Chatzilla Plugin. Other Browsers : use this web client.
-
09-03-2007 #15Junior Member
- Join Date
- Jul 2007
- Posts
- 52
- Thanks
- 0
Thanked 0 Times in 0 PostsMost programmers would most likely use Linux to disassemble ARM code, as there are many more tools (and ARM emulators) available for Linux than for Win32. There are several web pages dedicated to this. I will look them up later and post them. I used to have a lot of these tools when I used to hack on my Sharp Zaurus 5500.
Meizu Dane-Elec M6 4GB
2004.3 Firmware
Go Mountaineers!

-
09-03-2007 #16Freshman
- Join Date
- Jun 2007
- Posts
- 24
- Thanks
- 0
Thanked 0 Times in 0 PostsAh cool Lexridge, that would be a start.

Ok, from the comments, I understand that this isnt such a easy process. It would be handy to bribe a Meizu engineer and get the source or at least some proper documentation.
Maybe we could start a "Bribe the Engineer" donation fund.
-
09-03-2007 #17
-
09-03-2007 #18Freshman
- Join Date
- Jul 2007
- Posts
- 36
- Thanks
- 0
Thanked 0 Times in 0 PostsDoesn't IDA also have an ARM dissembly function?
-
09-04-2007 #19Senior Member
- Join Date
- Dec 2006
- Location
- Middle of the U.S.
- Posts
- 347
- Thanks
- 0
Thanked 0 Times in 0 PostsThis sounds pretty cool.
What's the possibility of someone being able to write new firmware compared to disassembling and reverse engineering?
Also, I had no idea there were emulators for that... What exactly IS ARM? What's it stand for?
To Err0r: when did that happen? Also, nowadays, most places online holding donations really don't get anyone to contribute, unfortunately... I've seen it all over. I'm donating something to the place hosting my site for free offering all they do because noone else does, and that's pretty cool they're doing that.I swim through a sea of stars, without looking back to shore...
Faster than light, bending time. Forever. Wherever.
~R-Type Final
-
01-12-2008 #20Stalker
- Join Date
- Jan 2008
- Posts
- 1
- Thanks
- 0
Thanked 0 Times in 0 Postsnice idea ,but how to realize ?
Similar Threads
-
possibility to get the sound of T1007 back?
By andreasjungmann in forum Video and ImagingReplies: 0Last Post: 07-20-2007, 07:12 AM



Reply With Quote
M6 Skinning Templates
