> Despite the public documentation, Palm OS is a multi-tasking OS.
I'm aware of that. I have myself posted here links to a program that demonstrates this:
http://flippinbits.com/twiki/bin/view/FAQ/HowDoICreateAThread
That program definitely works under PalmOS 3.5 - maybe even under some of the earlier versions. Still, I'd rather avoid such tricks, if possible.
> The following "undocumented" calls are identified in some of the
> information that I gathered about YAHM: KALTaskCreate,
> KALTaskDelay, KALTaskDelete, KALTaskGetCurrentID, KALTaskGetInfo,
> KALTaskResume, KALTaskSuspend, KALTaskStart, KALTaskSwitching,
> KALTaskWait, KALTaskWaitClr, KALTaskWake, KALTaskExit,
> SysTaskCreate, SysTaskDelay, SysTaskDelayV40, SysTaskDelete.
There is also a bunch of stuff related to semaphores that have meaning only in multi-tasking control:
MemSemaphoreReserve, MemSemaphoreRelease, SysSemaphoreCreate, SysSemaphoreDelete, SysSemaphoreWait, SysSemaphoreSignal, SysTaskID, SysTaskUserInfoPtr, SysTaskSetTermProc, SysSemaphoreSet, SysRestoreStatus, SysResSemaphoreCreate, SysResSemaphoreDelete, SysResSemaphoreReserve, SysResSemaphoreRelease, SysTaskSwitching, SysTaskWait, SysTaskWake, SysTaskWaitClr, SysTaskSuspend, SysTaskResume; probably others.
> There is very little documentation from Microsoft about how to
> write a MSDOS TSR. Certainly not enough to write one. TSRs were
> developed by the developer community, not by Microsoft. The
> Microsoft attitude toward TSRs was primarily silence, with
> occasional warnings and disclaimers. Not unlike what we're seeing
> now with Palm.
Dunno about Microsoft but I definitely learned how to write a TSR program from a DOS programmer's reference - although it might have been from one of the "clone" DOSes (e.g., PC-DOS). A better example is the hacks in PalmOS - Palm kept mostly silent about them and they were developed by the user community - although eventually Palm *does* mention them glancingly in the "official" documentation.
> Not using undocumented facilities to detect viruses assumes that
> all viruses follow the same rules.
No, it doesn't. Countrary to popular belief, anti-virus programs and viruses don't play by the same rules. I usually don't need to do undocumented tricks in order to detect a virus that uses some. Occasionally, the opposite is also true - I might have to use undocumented tricks in order to handle a virus that does everything "by the book".
> The idea that using only documented facilities will protect you
> from changes in future OS versions is naive.
Refraining from using undocumented features, of course, won't guarantee you a protection from quircks in futures versions of the OS. However, if you *do* rely on undocumented stuff, you're virtually guaranteed to have trouble with the new versions.
> This is exactly what YAHM does. Palm is not going to tell you
> how to do this without some legal leverage on how you use the
> information.
First, I don't think that I need it. Second, I don't believe that the author of YAHM got this information from Palm under NDA, did he? :-)
Regards,
Vesselin
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/
opensubscriber is not affiliated with the authors of this message nor responsible for its content.