I have acquired an ePods and want to start programming for it. However I would like to understand in more depth how it works.. The one I have is apparently already hacked to version 2.0.4 but after letting the power drain out it no longer has a working explorer etc. so I have embarked on putting it back together.
I am trying to find out how the things fit together. I am a professional programmer and trained as an electrical engineer and familiar with hardware design. However it is a "flaw"
in my personality that I can't just begin learning something in the middle so to say. I am old school and want to understand the nitty gritty. I would most of all like an address map or diagram that shows the relationship between the various storage units.
There are three storage units in the machine. The Disk On Chip, the 16M of built in Flash and the 16M of RAM. I thought that the DOC was a kind of backing store that was only ever employed to automatically restore the contents of the Flash on hard reset, only I don't see why that should even be necessary since the Flash is non volatile to begin with.
I also don't see why allowing the battery to run dry causes a hard reset. Why is information about the machine state kept in RAM ?
In some of the pages I have seen about how to restore an ePods, there are instructions on how to disable the DiskOnChip (tying the ChipEnable pin to Vcc) but no indication as to Why. Obviously the DOS must contain the software that the ePods came with from the factory, and the chip is NOT disabled in my unit. Still when I hard reset I do not get the original ePods UI.
If the ePods DOC contains the original software and the unit was never intended to run any other software, why did they put the separate 16M Flash in there ?
Incidentally, the unit I have has a motherboard version 1.1. I guess that this one cannot be upgraded to 32M of RAM since it does not have the empty pads. I was under the impression that Win CE 2 can't take advantage of more than 16 M in the the first place. Is that incorrect ?
I hope someone technically knowledgeable can clear up my confusion a bit.
Thanks
Kent