I have written some library code which allows
user programs to
effectively hog_processor() for a user-specified time interval, instead
of
the 256 msec allowed by hog_processor(). The new functions are:
void lock_process(float seconds) ;locks out all other running
;processes for time seconds.
;time can range from .001-4294967
;seconds. (The counter is a 32-bit
;msec counter.)
void unlock_process() ;unlocks the lock_process() lock and
;swaps to the next process, allowing
;multitasking to resume.
lock_process() installs a timer tick daemon which manages the counter
and
prevents the current process from being swapped out, based upon the state
of
a global enable flag. The daemon is an .icb file.
lock_process() requires the hog_processor() function from lib-???.c and
the int2uf() function from my math.c library. lock_process() works
on both
Handy Boards and 6.270 boards.
The files are available via anonymous ftp at:
ftp://junior.apk.net/pub/users/drushel/lock_process/lock_process.c
ftp://junior.apk.net/pub/users/drushel/lock_process/lock_process.icb
ftp://junior.apk.net/pub/users/drushel/lock_process/lock_process.lis
ftp://junior.apk.net/pub/users/drushel/lock_process/lock_process.asm
ftp://junior.apk.net/pub/users/drushel/lock_process/math.c
Please let me know if you find any bugs or have any comments.
*Rich*
--
Richard F. Drushel,
Ph.D. |
"Aplysia californica" is your taxonomic
Department of Biology, Slug Division | nomenclature. / A slug,
by any other
Case Western Reserve University | name, is
still a slug by nature.
Cleveland, Ohio 44106-7080 U.S.A.
| -- apologies to Data, "Ode to Spot"