> Of course, always check that you're working with an EZ328
>before doing anything. (Has a reliable method of detecting
>the EZ ever been posted?)
Yes, many times. I've just now put it in the Knowledge base since
obviously folks are having trouble finding the info in the places that it
has been posted so far.
(And yes you'd want to be checking the processor kind, as well as the OS
version, before doing hacks like jamming the system into 4-bit mode.
Otherwise you risk looking silly when a future OS revision or new hardware
demonstrates problems with your method that you couldn't know about yet.)
Here's the text from the Knowledgebase.
How do I determine which processor is on the device?
The feature manager will tell you.
Call FtrGet to get the sysFtrNumProcessorID feature. Mask the
returned value with
sysFtrNumProcessorMask, and the result will be any of
sysFtrNumProcessor328 - the original Motorola 68328 (Dragonball)
sysFtrNumProcessorEZ - the Motorola 68EZ328 (Dragonball EZ)
other values - for other processors which might be used in
Palm Computing platform
organizers in the future.
These values are defined in the 3.1 SDK. In case you don't have the
3.1 sdk yet, here are the
definitions:
#define sysFtrNumProcessorID 2 // 0xMMMMRRRR, where MMMM is the
processor model and
RRRR is the revision.
#define sysFtrNumProcessorMask 0xFFFF0000 // Mask to obtain
processor model
#define sysFtrNumProcessor328 0x00010000 // Motorola 68328 (Dragonball)
#define sysFtrNumProcessorEZ 0x00020000 // Motorola 68EZ328
(Dragonball EZ)
#define sysFtrNumProductID sysFtrNumProcessorID // old (obsolete)
define
You can ask the system for this feature on any version of Palm OS.