Dec 132017
 
Turbo C++ Extended Memory Manager. An excellent piece of work!
File XMS11.ZIP from The Programmer’s Corner in
Category C Source Code
Turbo C++ Extended Memory Manager. An excellent piece of work!
File Name File Size Zip Size Zip Type
README.TXT 3958 1729 deflated
XMS.H 3802 1323 deflated
XMSCPP.TXT 41068 12886 deflated
XMSCPPL.LIB 11776 4361 deflated
XMSCPPS.LIB 9728 3849 deflated
XMSDEMO.CPP 3778 1481 deflated
XMSDEMO.EXE 23886 11262 deflated
XMSDEMO2.CPP 4402 1746 deflated
XMSDEMO2.EXE 28794 14334 deflated
XMSHNDL.H 2854 1119 deflated
XMSHRW.CPP 4584 1518 deflated

Download File XMS11.ZIP Here

Contents of the README.TXT file


-------------------------------
Turbo C++ XMS Interface Library
by Richard Vuduc
Version 1.1

Copyright 1990, Richard Vuduc
-------------------------------

Well, I'm glad to see you followed directions and are now
'reading.me'. Here's a list of files included in this package
(XMSCPP11.ZIP):

- XMSCPPS.LIB // Turbo C++ linkable routines for accessing
extended memory (small model).
- XMSCPPL.LIB // Turbo C++ linkable routines for accessing
extended memory (large model).
- XMSHRW.CPP // Src for Get/Store routines (XMSHandle)
- XMS.H // Turbo C++ XMS header file
- XMSHNDL.H // XMSHandle Class Header file
- README.TXT // That would be this file
- XMSCPP.TXT // Documentation on how to use the library
- XMSDEMO.CPP // Library demonstration program source code
- XMSDEMO.EXE // Library demonstration executable
- XMSDEMO2.CPP // Demonstration file 2 (XMSHandle Class)
- XMSDEMO2.EXE // Demonstration file 2 executable

Hardware and Software Requirements:
-----------------------------------
You need a 286 or above IBM AT compatible, enough conventional memory
to run the Turbo C++ compiler, and 64k of extended memory to run the
first demonstration program (XMSDEMO.EXE). The 2nd demo program
(XMSDEMO2.EXE) has the same requirements.

You also need to install HIMEM.SYS. I haven't worked out any
distribution agreements with Microsoft, but you can get it from them
in HIMEM.ARC on MSSYS on CompuServe. HIMEM is also bundled with
Microsoft Windows 286 and MS Windows 3.0 (I don't know about Windows
386, but I imagine it's in there, too).

Usage:
------
You can reach me about any technical problems or any comments on
improvements at my CIS Account: Richard Vuduc, 70022,1332.

To link this library with your programs, just type:
'tcc -mz xxxxx.cpp xmscppz.lib'
^ ^
Notice that I've marked that 'z' in 'xmscppz.lib' and '-mz'. You
should replace this 'z' with the letter that corresponds to the
correct library model (currently, the (s)mall and (l)arge models are
supported. I hope to get the other models, and the source, out
real soon now. The demo programs were compiled in the small
model).

So, to compile the demonstration program, just type:
'tcc -ms xmsdemo.cpp xmscpps.lib' <== for the small model
'tcc -ml xmsdemo.cpp xmscppl.lib' <== for the large model

You can also link xmscpp[S|L].lib into the standard library. See
the Turbo C++ manual for details.

I encourage you to give me any comments on the lib. By doing that,
you help ensure that I'll keep at it, with even BIGGER and GREATER
things... Also, there is NO fee, but any contributions to a
starving, young programmer would be most appreciated.

To run the first demo, just type 'xmsdemo' and the program will go
through a whole bunch of checks. It will read from and write to
extended memory, and the High Memory Area.

To run the second demo, just type 'xmsdemo2.' The program will fill
three 4K blocks of extended memory with the letters 'a', 'b', and
'c', and then display play them on screen. After a screen has been
filled with letters, strike any key to move on to the next screen.
You will notice a slight delay while the program stuffs the extended
memory blocks, but bear with it. As a test, you can play around with
the cache size (see source and documentation) and see the performance
differences with the different sizes.

Things to Come...
-----------------
I hate to make this thing into vapor ware and spill the beans on my
future plans, so I won't. I still haven't added support for the
Upper Memory Block functions HIMEM provides, and I know those are
worth implementing. If there's something else YOU'D like to see in
this library, ASK FOR IT.


 December 13, 2017  Add comments

Leave a Reply