HJW2@PSUVM.BITNET (03/03/89)
I have an IBM AT compatible with 512K on board. Recently I installed another 512K to bring it up to 1 Meg. and found out it a waste for anything over 640K. I am using DOS 3.3 which only recognizes 640K RAM. The only thing I can do is to create a ram drive which is useless to me. I know PS/2 50s can address 1 Meg. without any problem. Is there a way to 'tell' the system to use the extra 384K memory as normal? I am using the Microsoft Windows/286 and know it can't be so powerful if I have only 640K RAM. Any comments on this problem would be appreciated. I will post the solutions if there are enough responses. Please e-mail me or post in the net. Thanks! Hawjan HJW2@PSUVM
Snake@cup.portal.com (Dan g Sobel) (03/05/89)
For the most part, dos will not recognise more the 640K, you can however, use the extra memory for a ramdisk (Device = Ramdrive.sys /e or /a), or load some of your favorite utilities in Extended, I have most of the PC-Tools living off in the extra memory leaving most of the 640K open to my applicaitons, also Windows, DeskView, and SoftWare Carasel will allow the use of this extra space for program usage.. Best of Luck Snake
brown@nicmad.UUCP (Vidiot) (03/07/89)
In article <74032HJW2@PSUVM> HJW2@PSUVM.BITNET writes:
<I have an IBM AT compatible with 512K on board. Recently I installed another
<512K to bring it up to 1 Meg. and found out it a waste for anything over 640K.
<I am using DOS 3.3 which only recognizes 640K RAM. The only thing I can do is
<to create a ram drive which is useless to me. I know PS/2 50s can address 1
<Meg. without any problem. Is there a way to 'tell' the system to use the extra
<384K memory as normal? I am using the Microsoft Windows/286 and know it can't
<be so powerful if I have only 640K RAM.
It isn't the amount of memory that is a problem, it is DOS that is a problem.
It is written so that only the first 640K is available for applications. We
have a PS/2-50 and applications only know about 640K. The other memory is
only available to things like VDISK. Sorry.
--
harvard-\ att--\
Vidiot ucbvax!uwvax!astroatc!nicmad!brown
rutgers-/ decvax--/
ARPA/INTERNET: nicmad!brown%astroatc.UUCP@spool.cs.wisc.edu
rf378434@longs.LANCE.ColoState.Edu (Raymond Frush) (03/07/89)
---------------- I am running 640K + 512K on my Sperry IT (AT) compatable and use the extended memory for a hard drive Cache. This significantly speeds up repetitive disk seeks (useful for program development). I am currently using SmartDrive from MicroSoft which comes with the MicroSoft Windows 286 package. Using the Cache is like the RAMdrive except it keeps track of approximately 500K of the most recently called programs. Now where did that .signature file go? Ray Frush. (see header for address) /------- You have been reached by..---------+----------------\ | Raymond Frush Colorado State University | Don't take my | | ARPA rf378434@longs.lance.colostate.edu | word for it... | | tele. (303)491-4453 (for now) | |
ward@cfa.harvard.EDU (Steve Ward) (03/09/89)
MSDOS does NOT impose the 640K limit commonly encountered on IBM and clone PC's. The MSDOS upper memory limit is affected by three things: 1. BIOS 2. MEMORY HARDWARE 3. BIOS EXTENSION ROM's (usually on plug-in I/O cards) First, the BIOS sizes memory and stores this information. All the PC/XT BIOS's I have seen are hard-coded to stop testing at 640K. In order to utilize memory that may exist beyond 640K the BIOS will have to be modified to test/size the extra memory. MSDOS makes a BIOS call (BIOS int, can't remember the int vector number) to obtain the contiguous memory size, so MSDOS is not hard-wired for any limitation at least up to 1MB. MSDOS may even accept a memory size beyond 1MB but I have not bothered to look into this because my hardware won't allow it. On the PC/XT (8088/8086) there is a 1MB memory address space. However, BIOS extension ROM's/EPROM's are commonly found starting at address C0000h and above. This means if you can modify your BIOS to size or report more memory, you could at least go up to 768K bytes of memory before running into the BIOS extension ROM's. If you could relocate your BIOS extension ROM's (or didn't have any, though that is unlikely) then you might make even more room. Of course, there are plug-in memory boards that would allow you install more memory contiguous with the motherboard 640K, so at least it is possible to add the memory. The second item, memory hardware, is usually only a severe limitation for cases where the motherboard has limited PC I/O bus slots and adding a memory card is not possible. Item three was just explained. So, if you can modify your BIOS you can add at least 128K (must be contiguous with the 640K on the motherboard) and bring your memory up to 768K. If you can relocate BIOS extension ROM's above C0000h then you can free up even more memory. Some I/O boards allow selecting alternate address locations for their ROM's so this is a possibility. A careful check of memory space use by all your I/O boards should be made to make sure that any memory you install will not clash in the memory address space. I believe there are a few PC bus memory boards on the market which are half-size and allow adding up to 384K of memory. Such a board could possibly be used to add memory above, but contiguous with the 640K. Now all you to do is disassemble your BIOS chip and modify it! Steve W. ward@cfa.harvard.edu
ralf@b.gp.cs.cmu.edu (Ralf Brown) (03/09/89)
In article <1429@cfa.cfa.harvard.EDU> ward@cfa.harvard.EDU (Steve Ward) writes: } }So, if you can modify your BIOS you can add at least 128K (must be }contiguous with the 640K on the motherboard) and bring your memory }up to 768K. No you can't, at least if you want to have a video board installed.... CGA starts at 736K, MDA/Herc at 704K, EGA/VGA graphics at 640K. If you use only programs that exclusively use BIOS screen writes, and an appropriately addressed video board (assuming you can find/build one), then and only then can you get more than 736K contiguous DOS memory. On an AT, the ALL ChargeCard can play appropriate tricks with the memory addressing so that the existing video board looks like it starts at 960K, but that then requires programs that do BIOS writes or have been patched. BTW, I have one for sale, it won't work with my Smartek motherboard.... (but ALL says both cards I sent back work fine on their machines--they couldn't give me a refund because I didn't buy it directly from them). Contact me for details. -- {harvard,uunet,ucbvax}!b.gp.cs.cmu.edu!ralf -=-=- AT&T: (412)268-3053 (school) ARPA: RALF@B.GP.CS.CMU.EDU |"Tolerance means excusing the mistakes others make. FIDO: Ralf Brown at 129/31 | Tact means not noticing them." --Arthur Schnitzler BITnet: RALF%B.GP.CS.CMU.EDU@CMUCCVMA -=-=- DISCLAIMER? I claimed something? --
ward@cfa.harvard.EDU (Steve Ward) (03/10/89)
In article <1429@cfa.cfa.harvard.EDU>, ward@cfa.harvard.EDU (Steve Ward) writes: > > MSDOS does NOT impose the 640K limit commonly encountered on IBM and > clone PC's. > [stuff deleted on how BIOS/MSDOS work together to size and set MSDOS memory limits and suggestions on squeezing out/in more MSDOS memory] > A careful check of memory space use by all your I/O boards should be > made to make sure that any memory you install will not clash in the > memory address space. > Note that I DID issue the above warning about checking for memory conflicts! This is to avoid 2000 followup postings pointing out that in typical PC's video display buffer memory exists between addresses A0000h - C0000h where the exact video buffer size and location will vary with the video display type. Yes, it is there, no, it doesn't change the facts as I described them except that it is difficult to relocate the video buffer memory, mostly because a lot of software does not use the [inadequate] video BIOS and directly reads/writes the display video buffer. Here is a PC memory map I found, which shows there is available memory address space, but not useful without rearranging the memory map locations of either the video board or BIOS extension ROM's (shadow ROM's) or both. I never said it would be easy! 00000h - 9FFFFh msdos memory A0000h - AFFFFh EGA display buffer B0000h - B7FFFh MONO display buffer B8000h - B8FFFh CGA display buffer C0000h - C7FFFh EGA BIOS ROM C8000h - CFFFFh hard disk BIOS ROM D0000h - DFFFFh user space E0000h - EFFFFh user space on XT, on AT may be used for BIOS ROM F0000h - FFFFFh BIOS ROM, though usually only top 2k-8k Most XT and AT clones have BIOS in upper 8K. TRUE BLUE IBM machines may fill up the top 64K with BIOS + Basic in ROM. There are probably even more variations out there. Usually, only one of the displays is installed so there is room to expand msdos memory, but sadly it is hard to do because the display and ROM's are scattered about in the memory map rather than being packed at the very top of memory. So, in more gory detail, to squeeze in more MSDOS memory your software will have to be well behaved and use BIOS calls and/or device drivers (especially the video) and of course, your BIOS and device drivers will have to accomodate relocation of the video display hardware to higher memory locations, as will the video board itself. Too bad this wasn't done in the beginning since this makes it too big a pain to attempt doing for most people. steve w. ward@cfa.harvard.edu
HDK@PSUVM.BITNET (H. D. Knoble) (03/10/89)
There is two ways for you to utilize the 1M-640K as RAM: 1) Install a LIM (Lotus-Intel-MicroSoft) board. This allows DOS to access memory above 640K by a remapping of addresses by an algorithm called the LIM standard. PC Magazine has several ads discounting such boards. This algorithm is sometimes called the EMS (Expanded Memory Simulator). In order for it to be useful, a software product (like Kedit) must support EMS memory. Most products by Lotus and MicroSoft do. But the board does not allow general programs to address more than 640K. 2) There is a software product that will effect 1) above, called EMSimulator. This is available for $50. from: Orders Only: Information/Orders (800)821-5226 Ext. 435 (808)737-3809 Kam & Associates, Inc. 3615 Harding Ave. Suite 401 Honolulu, Hawaii 96816 There is an evaluation copy of EMSIM here that you could come and copy. It's good for 1M; the production version is good for 8M if you have that much real storage. The disadvantages of the software product are that it takes 70K below the 640K line to run; it is software so it will use CPU (not that noticable on a PS/2 50 using Kedit); and there are conflicts using a RAM disk (VDISK.SYS) and EMSIM together - i.e. directories and files get randomly changed.
allbery@ncoast.ORG (Brandon S. Allbery) (03/15/89)
As quoted from <1429@cfa.cfa.harvard.EDU> by ward@cfa.harvard.EDU (Steve Ward): +--------------- | I believe there are a few PC bus memory boards on the market which | are half-size and allow adding up to 384K of memory. Such a board | could possibly be used to add memory above, but contiguous with the | 640K. Now all you to do is disassemble your BIOS chip and modify it! +--------------- Don't try this at home, kids. Steve has apparently forgotten about video memory, which starts at the following addresses: MDA and Hercules... B0000H CGA... B8000H EGA and VGA... A0000H Thus, if you use EGA or VGA, 640K is the absolute limit to main memory: anything above it is EGA/VGA RAM. If you use a Herc clone, you can go to 720K. If you're so backwards as to still be using a CGA, you can go to 752K. ++Brandon -- Brandon S. Allbery, moderator of comp.sources.misc allbery@ncoast.org uunet!hal.cwru.edu!ncoast!allbery ncoast!allbery@hal.cwru.edu Send comp.sources.misc submissions to comp-sources-misc@<backbone> NCoast Public Access UN*X - (216) 781-6201, 300/1200/2400 baud, login: makeuser