[comp.os.minix] MINIX expanded memory

tholm@uvicctr.UUCP (Terrence W. Holm) (09/23/88)

> Subject: Minix EMS Ramdisk
> 
> One item of extension to Minix which seems to me terribly obvious
> but I have not seen anything about is a ramdisk implementation
> based on expanded memory.
> 
> Thos Sumner       (thos@cca.ucsf.edu)   BITNET:  thos@ucsfcca

>> From: rwberry@hubcap.UUCP (Robert W Berry)
>> 
>>   A while back people got a EMS ramdisk going on AT-class machines, but only
>> with the help of the AT ROM BIOS, which had an interrupt service perfectly 
>> suited to copying blocks of text in and out of EMS.  No such luck on the 
>> PC cards.


First of all, Dr. Tanenbaum made an EXTENDED memory interface
for the ramdisk. This was based on an AT BIOS call.

This would not work on our AT clones, so we wrote away to Intel
for information on their board. We received lots of goodies, but
no information on how it is REALLY implemented. So, Ed picked
up an Intel card, told me what was there - and then we spent an
evening disassembling LIM 4.0 to determine how the board was
accessed.

We wrote a replacement routine for em_xfer in klib88.s, this
code does some out's to an "Intel Above Board" EXPANDED memory.
And then a rep/mov. (There are no BIOS calls here.)

We wanted to test the code on an XT, assuming that there must
be at least one type of XT EXPANDED memory card that would work.
Our request in comp.os.minix started as shown below. We never
received any responses.....


> From: tholm@uvicctr.UUCP (Terrence W. Holm)
> Subject: need test site for expanded memory
> Date: 18 May 88 21:38:39 GMT
> Organization: University of Victoria, Victoria B.C. Canada
> Lines: 217
> 
> We are looking for Minix users who would like to test
> our "expanded" memory handler on their PC/XT.
> 
> We converted to "expanded" memory because our two AT clone
> keyboards would not work with "extended" memory. (Yes,
> its true.)
> 
> The following code has been tested on AT's with real
> Intel Above Board "expanded" memory. We want someone
> with a PC/XT to try this code.
> 
>   . . . code removed . . .
>
----------------------------------------------------------

		Edwin L. Froese
		  uw-beaver!ubc-cs!mprg!handel!froese

		Terrence W. Holm
		  uw-beaver!uvicctr!tholm

rwberry@hubcap.UUCP (Robert W Berry) (09/25/88)

Never could keep Extended and Expanded memory straight.  My bad. 
But the general point still applies.  Those of us in PC-land are left
to the mercy of our EMS card makers.

I would apreciate it if you could send (or post if you think it's
worthwhile) another copy of your EMS handler.  It might just get us
started on the right track.

I applaud your patience for dis-assembling your LIM 4.0 driver.  I spent
about 8 hours with mine to no avail.  There are just TOO MANY outs to
really figure out what's going on.

Thanks in advance,
Bob

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-=- Bob Berry -=- PC-Guru's Inc. ! Compuserve:72646,3331 or 73170,1242  -=-
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=   ! BITNET:rwberry@clemson               -=-
-=- This space for rent or lease ! INTERNET:rwberry@hubcap.clemson.edu  -=-
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

chasm@killer.DALLAS.TX.US (Charles Marslett) (09/29/88)

In article <3044@hubcap.UUCP>, rwberry@hubcap.UUCP (Robert W Berry) writes:
> Never could keep Extended and Expanded memory straight.  My bad. 
> But the general point still applies.  Those of us in PC-land are left
> to the mercy of our EMS card makers.
> 
> I would apreciate it if you could send (or post if you think it's
> worthwhile) another copy of your EMS handler.  It might just get us
> started on the right track.

. . .

> Thanks in advance,
> Bob

The STB Memory Companion is a very simple EMS card (like the original Intel
card) -- it has one of 4 base addresses 0x258, 0x25C, 0x268 or 0x26C and the
4 paging registers are at 0x0***, 0x4***, 0x8*** and 0xC*** for each of the
4 possible board addresses.  The frame buffer is set using switches on the
board (usually at 0xD000:0x0000).  To enable a page at one of the 4 16K page
buffers in the frame buffer, just "OR" the start address with the board base
address and write the page number + 0x80 to that I/O address.  To disable
the 16K page entirely, just write any value less than 0x80 to I/O address.

(I sure hope I got this rite! (:-)

Charles Marslett
STB Systems, Inc.  <-- Apply all standard disclaimers
chasm@killer.dallas.tx.us