Re: Machine info via euphoria
John Kinne wrote:
> Hello All
>
> I am tring unsuccessfully to use int 15 function 88 to get extended
> memory size. I always get a zero. My code follows. Any ideas?
>
> I would like to see the source of the Microsoft MSD program. It is
> installed in my Windows directory & seems to have access to all sorts
> of info about my machine. I need to determine this info programmatically
> and for the most part have not been able to do so.
>
> function GetEmem()
> sequence reg_list -- list of register values
> integer ememsize
>
> reg_list = repeat(0, 10)
>
> reg_list[REG_AX] = #8800 -- function: AH = #88 ==> Get extended mem siz
>
> reg_list = dos_interrupt(#15, reg_list) -- Call DOS interrupt #15
> ememsize = reg_list[REG_AX]
>
> return ememsize
> end function
A further investigation showed me that extended memory manager trap
function #88 of
interrupt #15 and force it to answer with zero extended memory.
To know if there is an extended memory manager installed you can use the
following function.
function XmsInstalled()
sequence r
r= repeat(0,10)
r[REG_AX] = #4300
r = dos_interrupt(#2F,r)
if remainder(r[REG_AX],256) = #80 then
return 1
else
return 0
end if
end function -- XmsInstalled()
|
Not Categorized, Please Help
|
|