This has been a really difficult project for me, but to sum it all up, here is what i want to do:
I have a BMORN BM888 MP4 player, and i want to install Linux + FireFox (maybe just XUL Runner) to it. This is so that i can write custom DHTML applications (Client Side DHTML apps) which do not require a network connection.
I am more than certain that this can be done, however it will be a bit tricky.
This is what we know so far:
CC1600 CPU (it's ARM9)
TF Card (up to 32 GB)
8 GB Flash Disk
7 inch Touch-Screen
So far nobody has managed to hack Linux onto this device. However...after doing a lot of research and nearly endless Google web searches, i think this actually could be done without so much effort (big maybe).
I found something called a Cube B53WiFi which interestingly enough, seems to be vVERY similar to all of these CC1600-based PMPs with touch screen on the market now.
the B53WiFi has the following hardware:
4.2 inch Touch Screen
8 GB flash disk
From what i can tell, the hardware is nearly identical to the BMORN BM88 MP4 player, except that the Touch Screen on the BMORN is bigger, and the BMORN doesn't have a WiFi inside it.
SO i was thinking.....if they both have a CC1600 CPU, and we know that all the CC1600 based devices use a HXF firmware image, then that would mean that it should be possable to use the HXF extraction tool to Extract, modify, and Repack the HXF firmware to work on other CC1600 devices.
So, i downloaded the firmware from 51Cube.com and OMG!... i found there was an HXF file in the b53wifi.rar firmware file.
Unfortunately that day, i forgot to bring my tumb-drive to work, and....that particular office computer was scheduled for removal from our office that day. So i figured,...ok i'll just go home and redownload it.
When i got home to redownload it....the file is still there on the 51cube.com website, however the contents inside the b53wifi.rar file were completely different. It seems to be an updated version of the firmware, which is cool. But...all of the USBsys.inf files are having headers of the JZ47xx.inf and so on inside them. Nothing about ChinaChip. S**t!
So, this kinda sucks....now i have all of these .BIN files, and no HXF file....
After a lot of googling and testing, i found out that the Firmware.bin file in the b53wifi firmware file is a SquashFS file.
I managed to find a copy of SquashFS Win32 tools, and uncompressed the Firmware.bin file. It yields a very common looking Linux System *grin*
However, i'm not exactly sure how to get this 28 MB SquashFS file into the Firmware. I also know that there is a Initial Program loader and Secondary Program loader binary files that also must be loaded into HXF based devices. I'm not sure how to identify which ones are which. Just browsing through the RootFS directory, i can see a LOT of things that could be stripped out of the Linux system to make it a more lean running OS. For example, because there's no WiFi hardware in the BMORN device, all of the networking components could be taken out of it. And so could a lot of the binaries for configuring hard disks and so on.
Although, if the OTA funciton in the BMORN is capable of being a USB Host, then maybe we could get a WiFi dongle working on it (compile in some USB support *grin*). Just some ideas though.
So, i think as soon as we can figure out how to do this, we can begin to Mod these CC1600 MP4 devices for Linux. And i know there are LOT of them out there. For example, i think the best looking ones are the Onda vx797hd and the Ainol v9000hdx.
If we can get a very basic Linux system on to these, and FireFox (or some other compliant browser) we can make these things VERY very extendable and useful devices.
For example, i've written a very highly-functional Flashcard App in DHTML (firefox code) for studying Chinese Language (could be adapted to european languages or other complex-script languages also) and i'm currently working on a DHTML app that will replace a papernotebook. Sort of like TiddlyWiki's (tiddlywiki.com) Wiki software, except it has a Text-Formatting Toolbar, and an integrated Picture drawing app (like MsPaint) so that you can make use of the touch screen. To be useful, it really doesn't need a Network connection. It just needs good software
So, for a basic system for this MP4 device, i want to put a very minimal system, stripped down to almost nothing, except for what is required to run FireFox.
I'm more than willing to use my BMORN MP4 player as a guinea pig
more importantly, we know that this is an ARM9 CPU, so.... getting a Linux ToolChain for ARM9 isn't difficult *grin* So porting an app to this linux distro won't be difficult at all.