930
Appendix A: System Routines — Operating System
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
FL_getHardwareParmBlock
Declaration:
HARDWARE_PARM_BLOCK * 
FL_getHardwareParmBlock
 (void)
Category(ies):
Operating System
Description:
Get a pointer to the hardware parameter block.
Inputs:
None
Outputs:
The hardware parameter block contains a description of the calculator
hardware.
typedef struct {
   unsigned short len; // length of parameter block
   unsigned long hardwareID; // 1 = TI-92 Plus, 3 = TI-89
   unsigned long hardwareRevision; // hardware revision number
   unsigned long bootMajor; // boot code version number
   unsigned long bootRevision; // boot code revision number
   unsigned long bootBuild; // boot code build number
   unsigned long gateArray; // gate array version number
   unsigned long physDisplayBitsWide; // display width
   unsigned long physDisplayBitsTall; // display height
   unsigned long LCDBitsWide; // visible display width
   unsigned long LCDBitsTall; // visible display height
} HARDWARE_PARM_BLOCK;
The TI
-
89 / TI
-
92 Plus allocate the same amount of memory for the LCD.
However, the TI
-
89 cannot display as much as the TI
-
92 Plus.
LCDBitsWide 
and 
LCDBitsTall 
reflect how much of LCD memory the
calculator user can see.
Note:
Some fields of the HARDWARE_PARM_BLOCK are not available in earlier
versions of the calculator. The fields up through 
bootBuild
 are available in all boot
code versions. It is important to check the value of 
len
 before accessing any
values after 
bootBuild
. See OFFSETOF in the example below to learn how to
determine if a particular field is present.
Assumptions:
You cannot change any values in the parameter block. The pointer
returned by this routine points directly to a parameter block in ROM.
Side Effects:
None
Availability:
All versions of the TI
-
89 / TI
-
92 Plus.
TI
-
89 / TI
-
92 Plus
Differences:
None
See Also:
Not applicable.
(continued)