PC-DOS 7 Memory Tricks

Getting old DOS games working. (DOSBox topics belong in DOSBox areas below, not here).

PC-DOS 7 Memory Tricks

Postby smevans526 » 2017-7-30 @ 23:44

IBM PC-DOS version 7 was advertised as requiring 'less conventional memory than DOS 6.X versions for comparable function'. (http://www-01.ibm.com/common/ssi/ShowDo ... lang=en-ZZ)

I've used PC-DOS 2000 for about 2 years, and never ran into trouble with conventional memory (even for Wake of the Ravager). Further, I've read people online describing it as 'garbage'. I've never found PC-DOS less stable than MS-DOS.

PC-DOS uses MSCDEX v2.25, which prints an IBM (opposed to Microsoft) copyright when loaded. It uses only 21K of memory. I believe that MS-DOS 6.22's MSCDEX (v2.23?) uses 25K. Not to amazing, but it appears IBM programmed some of DOS's built-in programs to consume less memory when ran.

Not every Microsoft program produces an IBM copyright when loaded; MOUSE still says 'Microsoft', for example.

I suspect that this MSCDEX v2.25 used in PC-DOS is different from the one used in Windows ME (MS-DOS 8).

Anyway, I've reduced conventional memory usage with the following two lines in CONFIG.SYS...
DOSDATA=UMB
SHELL=C:\COMMAND.COM /E:512 /P /H

The former allows DOS to load DOS system tables in upper memory. The latter's /H parameter loads COMMAND.COM into upper memory, saving 13K.

I ask if there are any other tricks, specific to PC-DOS 7, that can free up conventional memory.

To free up memory, PC-DOS looks pretty good, but it appears everyone prefers MS-DOS 6.22 or 7.0. Am I missing something?
smevans526
Member
 
Posts: 117
Joined: 2015-4-17 @ 00:26

Re: PC-DOS 7 Memory Tricks

Postby keropi » 2017-7-30 @ 23:52

MS-DOS was just more common back then - unless you had an IBM PC then 99% you ran MS-DOS on your system.
I had an IBM 386 back then and PC-DOS was what I got used to, even when I later got a Zenith 486/66 I installed PC-DOS 6.3 replacing MS-DOS lol
It all boils down to what you are used to see and work with ;)
User avatar
keropi
l33t++
 
Posts: 5568
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: PC-DOS 7 Memory Tricks

Postby gdjacobs » 2017-7-31 @ 00:45

IBM also still sold and supported PC-DOS after Microsoft left that market, so it was used in some commercial products and (I suspect) by some industrial customers who still had legacy applications for which Win95/98 wouldn't do.
User avatar
gdjacobs
l33t
 
Posts: 4093
Joined: 2015-11-03 @ 05:51
Location: The Great White North

Re: PC-DOS 7 Memory Tricks

Postby chinny22 » 2017-8-01 @ 12:13

keropi wrote:MS-DOS was just more common back then


This, Our 486 came with PC Dos, Yet I remembered incorrectly that it was MS Dos 6.1
I still have PC Dos on the original HDD which I've installed everything as if it was new from the factory.
But for any other system, including same PC just larger HDD I Install MS dos just cause it feels more satisfying, despite not noticing any real difference apart from starting MS Dos at boot
User avatar
chinny22
Oldbie
 
Posts: 1405
Joined: 2011-8-26 @ 12:02
Location: Australian but living in the UK for now

Re: PC-DOS 7 Memory Tricks

Postby smevans526 » 2017-8-02 @ 20:22

This article (https://sites.google.com/site/pcdosretro/dosmods) seems to answer my question.

On top of the two PC-DOS exclusive commands I mentioned in my first post, EMM386.EXE now has an option MOVEXBDAHI that moves the XBDA to upper memory. I believe that this is the extended bios, but I'm not going to pretend that I know the workings of this (aside from that I save some memory).

The article mentions that they reduced memory consumption on the following: COMMAND.COM, MSCDEX.EXE, EMM386.EXE
smevans526
Member
 
Posts: 117
Joined: 2015-4-17 @ 00:26

Re: PC-DOS 7 Memory Tricks

Postby koverhbarc » 2017-8-10 @ 02:22

Yes, PC-DOS 7 was specifically optimised for maximum conventional memory available, and surely is the best of the classic DOSes for this and other reasons. It was a dead end though as IBM decided to stop competing with Microsoft in the OS field after Win95, more or less. If you're running a classic DOS system, there's no reason not lo use it instead of MS-DOS 6.x .

I still have it, but, unfortunately, the fact that it never acquired LFN support makes it unusable today. FreeDOS is a joke for the same reason, and there is apparently no way to contact that project - I wonder how many people actually use it as a working OS.
koverhbarc
Member
 
Posts: 119
Joined: 2017-6-05 @ 02:02

Re: PC-DOS 7 Memory Tricks

Postby keropi » 2017-8-10 @ 07:17

PC-DOS 6.3 uses ~19.4kb of conventional memory:

Image

does 7.0 uses less in an environment where UMBs are not an option? I am asking because UMBs on my Headland mobo are tricky/hackish by nature so I am not really using them unless it's absolutely necessary as I don't want to risk any potential issues when I am using this system.
User avatar
keropi
l33t++
 
Posts: 5568
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: PC-DOS 7 Memory Tricks

Postby koverhbarc » 2017-8-10 @ 12:25

Yes, 7.0 gets you about 3K more even without UMBs. It is targeted to help even more with UMBs, though, by loading COMMAND and part of IBMDOS high, and reaches 629K out of 640K free, probably the highest of any DOS.

Does UMBPCI even work at all on your board?
koverhbarc
Member
 
Posts: 119
Joined: 2017-6-05 @ 02:02

Re: PC-DOS 7 Memory Tricks

Postby keropi » 2017-8-10 @ 12:34

interesting, +3kb is nice to have.
That shot is from 386DX40 build this one has UMBs just fine. I am interested about conventional memory for my 286 build (it's been upgraded to 386 with a kingston module) that has a Headland chipset.
I will give PC-DOS 7.0 a shot, I must unearth my copy of it
User avatar
keropi
l33t++
 
Posts: 5568
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: PC-DOS 7 Memory Tricks

Postby keropi » 2017-8-10 @ 16:11

I just installed PC-DOS 2000 that I own (basically 7.0 rev1) and it's IBMDOS consumes 18.7kb - The Last Byte Memory Manager had troubles creating UMBs so the situation was worse than 6.3 . I reverted to 6.3 shortly after.
User avatar
keropi
l33t++
 
Posts: 5568
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: PC-DOS 7 Memory Tricks

Postby koverhbarc » 2017-8-11 @ 11:42

Well, I was just going on the memory usage I find (with 7.0) relative to what you showed. DOS normally is pretty much system-independent so I'm not sure why you get different results. Maybe 2000 uses more than 7.0, or there's something different with your HMA usage (without an HMA at all of course you'd get far more conventional memory used).

Sorry if it seems I wasted your time. Note that you should be able to use all the 7.0 programs with your older version, if you like.
koverhbarc
Member
 
Posts: 119
Joined: 2017-6-05 @ 02:02

Re: PC-DOS 7 Memory Tricks

Postby keropi » 2017-8-11 @ 18:40

don't be sorry and it was not wasted time - it was worth a shot! :blush:
HMA is indeed system depended, I'll go as far as to say that conventional is also system depended.
User avatar
keropi
l33t++
 
Posts: 5568
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: PC-DOS 7 Memory Tricks

Postby smevans526 » 2017-8-13 @ 02:51

Didn't PC-DOS 7.1 have LFN support? The problem there is I don't think there is any convenient way to install it, let alone, find it.
smevans526
Member
 
Posts: 117
Joined: 2015-4-17 @ 00:26

Re: PC-DOS 7 Memory Tricks

Postby smevans526 » 2017-8-13 @ 03:22

My system has IBMDOS at 15.5K. I am running 2000 as well
smevans526
Member
 
Posts: 117
Joined: 2015-4-17 @ 00:26

Re: PC-DOS 7 Memory Tricks

Postby smevans526 » 2017-8-13 @ 03:32

UMB on, it takes about 9.5K of conventional. With high and upper off, about 56K of conventional
smevans526
Member
 
Posts: 117
Joined: 2015-4-17 @ 00:26

Re: PC-DOS 7 Memory Tricks

Postby koverhbarc » 2017-8-15 @ 12:33

That agrees with my results. I don't know what he has different; it seems 7.0 and 2000 are the same in this respect.

I haven't heard of PC-DOS 7.1 having LFN support. It was never even completed, so it couldn't (because all utilities have to be recompiled to allow long filenames).
koverhbarc
Member
 
Posts: 119
Joined: 2017-6-05 @ 02:02

Re: PC-DOS 7 Memory Tricks

Postby Davros » 2017-8-15 @ 18:01

" I ask if there are any other tricks, specific to PC-DOS 7, that can free up conventional memory. "

SHELL=C:\COMMAND.COM /E:512 /P /H
Minimum size of /E in pcdos 7.0 is 160
Guardian of the Sacred Five Terabyte's of Gaming Goodness
User avatar
Davros
l33t
 
Posts: 2427
Joined: 2004-3-01 @ 03:08

Re: PC-DOS 7 Memory Tricks

Postby smevans526 » 2017-8-16 @ 16:41

Is controlling the environment size specific to PC-DOS?

I was wrong about IBM DOS 7.1. It supports FAT32, which I thought had LFN by default. Oops.

Not trying to batter Keropi with PC-DOS 2000, but can't you still overall save memory by loading command.com high? You have no umb, but given ibmdos takes only about 19k, I'm guessing you have high memory.

Don't know anything about last byte memory manager, tough...
smevans526
Member
 
Posts: 117
Joined: 2015-4-17 @ 00:26

Re: PC-DOS 7 Memory Tricks

Postby keropi » 2017-8-16 @ 19:44

Keep in mind I am testing this on a Headland HT12/A 286 motherboard that was upgraded to 386 with a kingston module. It's one of the later 286 mobos but it's still old and the only UMB driver that works is TLB that creates 64kb of UMBs on the area that is used to store the EMS pages when the hardware EMS option is enabled.
With PC-DOS 2000 TLB didn't work - so in the end the situation was worse for this specific machine.

edit:

well... also OnTrack Disk Manager takes it's toll on this machine... :dead: I will have to see if XT-IDE BIOS works OK on this machine when installed on a NIC

Image

Image
User avatar
keropi
l33t++
 
Posts: 5568
Joined: 2003-9-08 @ 06:45
Location: Greece

Re: PC-DOS 7 Memory Tricks

Postby koverhbarc » 2017-8-17 @ 12:12

smevans526 wrote:Not trying to batter Keropi with PC-DOS 2000, but can't you still overall save memory by loading command.com high? You have no umb, but given ibmdos takes only about 19k, I'm guessing you have high memory.


Loading something 'high' refers to putting it in UMBs, not in the HMA. The latter is automatically managed by DOS and the ordinary DOS=HIGH statement _should_ put as much in the HMA as possible (if it fits).
koverhbarc
Member
 
Posts: 119
Joined: 2017-6-05 @ 02:02

Next

Return to DOS

Who is online

Users browsing this forum: frankmonk and 3 guests