[comp.lang.pascal] reading/writing extended memory in TP4

bradb@tekfdi.FDI.TEK.COM (Brad Barmore) (10/14/89)

Does anyone out there know how to read from and write to the extended memory
addresses of ibm and compatibles.  The addresses I am specifically trying to
get to are E00000 through EEFFFF (hex).  The TP4 direct memory access 
procedures will only work for the under 1Meg boundary.  I would like to
avoid using BIOS calls if at all possible (they are too slow) since I am doing
a lot of memory access.

                    Thanks in advance.

Brad Barmore
Tektronix, Inc.
M/S 58-204
P.O. Box 500
Beaverton, Oregon  97077
bradb@tekfdi.FDI.TEK.COM

leonard@bucket.UUCP (Leonard Erickson) (10/15/89)

bradb@tekfdi.FDI.TEK.COM (Brad Barmore) writes:

>Does anyone out there know how to read from and write to the extended memory
>addresses of ibm and compatibles.  The addresses I am specifically trying to
>get to are E00000 through EEFFFF (hex).  The TP4 direct memory access 
>procedures will only work for the under 1Meg boundary.  I would like to
>avoid using BIOS calls if at all possible (they are too slow) since I am doing
>a lot of memory access.

You *can't* access extended memory without those BIOS calls or running inline
code that will be just as slow. MS-DOS (and hence TP) runs in *real mode*
in this mode the CPU cannot access memory above 1 meg. The BIOS calls
switch the processor to protected mode, do a transfer and then have to 
do a partial *reset* of the system to get back to real mode. 

All this is because it never occured to Intel that anyone would want 
to go from protected mode to real mode under program control! They 
know better now...
-- 
Leonard Erickson		...!tektronix!reed!percival!bucket!leonard
CIS: [70465,203]
"I'm all in favor of keeping dangerous weapons out of the hands of fools.
Let's start with typewriters." -- Solomon Short