2009-10-02 16:11:00
A while ago…I used to run the Encore side of the Simputer project. One of the development outcomes was the Simpulator.
The idea behind the simpulator was simply a “Simputer” – “Simulator”. There were not that many simputer’s available and how do you get applications development if nobody can get their hands on one. What we did was pretty simple…and pretty cool because it was so simple. Check out…
http://foss.in/slides/lb2004/Embedding_Linux_on_the_Encore_Simputer.ppt
We took a bitmap picture of the Simputer, and put it in a window. In the LCD area of the picture we embedded a Tiny-X server. the matchbox window manager and that was it. All keyboard input and mouse input was handled directly by the xserver.
Anybody could build an application in linux (gtk, whatever) and test it with the Simpulator.
That was a while ago. Today I am playing around with openembedded (what handhelds.org morphed into) and working with the Angstron distribution. A lot of my work today is around the OMAP 3 processor and I have been working on making sure that the Angstron distribution works on the OMAP 3 EVM.
Reading up on it I found that it has a pretty novel way of doing the builds. It used qemu which is a processor simulator and uses that to build the image (I am simplifying things here, I still need to understand this fully).
One interesting feature of qemu is that it has a system simulator capability. Which means that if I define a system (with peripheral simulation) I will be able to execute binary applications targetted for the ARM on my linux PC. As I write this I am running an angstrom build with qemuarm as the target machine and once it is done I want to see if the binaries that I have built will run directly on my PC. I am more interested to see what the QEMUARM has? Will it simulate a display.
If you link this to the Simpulator that I talked about earlier the “new” simpulator could actually simulate the simputer on the PC and run binaries that target the actual device. This is huge for somebody simulating a complete hardware device before it is ready.
Lets see how it goes…I will post updates here.