GDOSMEM: Demonstrates How a Microsoft(R) Windows(TM) Application and an MS-DOS(R) TSR Share Global Memory
GDOSMEM communicates with the GTSR program to demonstrate a technique for passing data between a Microsoft(R) Windows(TM) application and an MS-DOS(R) terminate-and-stay-resident (TSR) program.
GDOSMEM uses the GlobalDosAlloc and DPMI functions to allocate memory that a Windows-based application and an MS-DOS TSR can both access. GDOSMEM and TDOSMEM show how to "sync" up protected mode and Real mode memory access and demonstrate protected mode concepts. GTSR is the companion TSR for GDOSMEM that hooks INT 60h and waits for requests from GDOSMEM. The memory allocated using GlobalDosAlloc is local to the Windows virtual machine (VM). Thus, other VMs cannot access this memory location. GDOSMEM also illustrates in-line assembly in C.
Install the TSR GTSR before loading Windows and before running GDOSMEM. Click on Alloc! in the GDOSMEM main window to allocate a tiny buffer. The client area displays the location of this buffer and its contents (a WORD). Clicking on Request! causes GDOSMEM to request the TSR to increment the value in the buffer and updates the results on the display.
GDOSMEM was built and tested under Microsoft Windows version 3.1.
KEYWORDS: DPMI; TSR; mode; protect mode; real mode; communication; dos; ms-dos; GlobalDOSAlloc
{ewc navigate.dll, ewbutton, /Bcodeview /T"Click to open or copy files in the gdosmem project." /C"samples}