Is it possible to make a module page 7 safe? That is, to make something else go to page 7 than the HP-IL.
The Extended Functions/41CX it tests the presence of an HP-IL module in page 7 by calling location CHKCST (location 7CDD), but that is really testing the presence of a drive. I suspect other modules may use different approaches to check if the HP-IL module is present? Has anyone investigated this?
(09-14-2016 05:21 AM)hth Wrote: [ -> ]Is it possible to make a module page 7 safe? That is, to make something else go to page 7 than the HP-IL.
The Extended Functions/41CX it tests the presence of an HP-IL module in page 7 by calling location CHKCST (location 7CDD), but that is really testing the presence of a drive. I suspect other modules may use different approaches to check if the HP-IL module is present? Has anyone investigated this?
The HEPAX would allocate itself to page-7 if available during its initialization, check its CALC_ON polling point code for details. It even goes to page-6 using the same routine. Obviously they must leave blank the hot areas, like the printer extended polling points. They also blanked the entry points to [IUNA] and [IUNALL]. I've done the same for the OS/X and PowerCL modules, which are meant to be both page-6 and page-7 safe...
The HP-IL existence routine I added to the Library#4 checks for the word value at 7000, I thought this was better than the drive check HP used, and it's also compatible with other modules located there - like the HEPAX, the OS/X and the PowerCL.
(09-15-2016 07:11 AM)Ángel Martin Wrote: [ -> ]The HEPAX would allocate itself to page-7 if available during its initialization, check its CALC_ON polling point code for details. It even goes to page-6 using the same routine. Obviously they must leave blank the hot areas, like the printer extended polling points. They also blanked the entry points to [IUNA] and [IUNALL]. I've done the same for the OS/X and PowerCL modules, which are meant to be both page-6 and page-7 safe...
The HP-IL existence routine I added to the Library#4 checks for the word value at 7000, I thought this was better than the drive check HP used, and it's also compatible with other modules located there - like the HEPAX, the OS/X and the PowerCL.
Where is the IUNA and IUNALL routines? I looked into the VASM listings for the HP-IL modules, but I could not find them.