ISDS - MiniDriver-1 Fix: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
There is a fix needed for the MiniDriver-1 in order for it to operate correctly on OS/2 Warp. | |||
The graphics engine (GRE) in OS/2 Warp defines a new enable subfunction, subfunction 14 (decimal). MiniDriver-1 should return -1, GPI_ALTERROR, from OS2_PM_DRV_ENABLE() when the Warp GRE calls with subfunction 14, but in error, the MiniDriver-1 returns the contents of an uninitialized, automatic variable (ulrc) which is usually zero. | |||
The graphics engine (GRE) in OS/2 Warp defines a new enable subfunction, | |||
subfunction 14 (decimal). | |||
OS2_PM_DRV_ENABLE() when the Warp GRE calls with subfunction 14, but in error, | |||
the MiniDriver-1 returns the contents of an uninitialized, automatic variable | |||
(ulrc) which is usually zero | |||
To correct the MiniDriver-1 code, add a "default" case to the switch statement in OS2_PM_DRV_ENABLE function in ENABLE.C. The default case will look something like this... | |||
default: | default: | ||
// unknown, unsupported enable subfunction | // unknown, unsupported enable subfunction | ||
ulrc = -1; | ulrc = -1; | ||
break; | break; | ||
and should be inserted at line 696 in ENABLE.C from DEVCON Device Driver Kit for OS/2 Version 1.0 - 1994. | |||
and should be inserted at line 696 in ENABLE.C from DEVCON Device Driver Kit | |||
for OS/2 Version 1.0 - 1994. | |||
[[Category:ISDS]] | [[Category:ISDS]] |
Latest revision as of 22:17, 19 April 2020
There is a fix needed for the MiniDriver-1 in order for it to operate correctly on OS/2 Warp.
The graphics engine (GRE) in OS/2 Warp defines a new enable subfunction, subfunction 14 (decimal). MiniDriver-1 should return -1, GPI_ALTERROR, from OS2_PM_DRV_ENABLE() when the Warp GRE calls with subfunction 14, but in error, the MiniDriver-1 returns the contents of an uninitialized, automatic variable (ulrc) which is usually zero.
To correct the MiniDriver-1 code, add a "default" case to the switch statement in OS2_PM_DRV_ENABLE function in ENABLE.C. The default case will look something like this...
default: // unknown, unsupported enable subfunction ulrc = -1; break;
and should be inserted at line 696 in ENABLE.C from DEVCON Device Driver Kit for OS/2 Version 1.0 - 1994.