Jump to content
IGNORED

Optimal autoexec/config.sys for PC-XT era machine and games?


youxia

Recommended Posts

Following on the hdd size thread I'd like to hear your advice regarding the MS-DOS config files for the games from the "XT era". This is of course a vague phrase, but my collection spans years 1981-1989 and the MiSTer core can at the moment run cycle accurate programs for XT at several speeds, 286 AT @ 3.5MHz and also Tandy/PCjr, so this is roughly the target.

 

My auoexec/config editing skills are a bit rusty and in any case hail from much later era so any suggestions as to what could be the best catch-all config for this era are welcome. The priority is of course max compatibility, followed by snappiness of Norton Commander, which has to navigate some large directories (I did divide them a bit but still some directorises contain between 100-200 sub directories). I'm using 3 hdd volumes: 251, 512 and 1024 MB, though am not sure if that matters.

 

At the moment I'm using pretty basic ones autoexec.bat
 

@echo off
path=c:\dos
echo.

ECHO Running FREESP on C: ...
C:\DOS\FREESPT.COM C

prompt $p$g
cd nc
nc

 

and config.sys:

 

DOS=UMB
REM DEVICE=C:\USE!UMBS.SYS C000-CFFF
DEVICEHIGH=C:\LTEMM\LTEMM.EXE /p:A000 /n /z
DEVICEHIGH=C:\UTILS\NANSI.SYS
FILES=30
BUFFERS=20

 

...both cobbled together from some other ones, so I'm sure things could be improved.

Link to comment
Share on other sites

This is an XT class machine, so it wont have more than 640k. (though it looks like you are using a memory manager to enable hardware UMBs in the adapter region... So we can TRY to maximize what is enabled/used. MSD with nothing loaded, not even the enabler, will let me see what areas are consumed by ROM.)

Normally, there might only be some small benefit from altering the load order, since XTs normally cannot load anything high. In this case though... Yeah, let's see what we have to work with, and what we can get it to do.

 

If this is a 386 class machine with extended memory, then I need to see what your memory map looks like with nothing loaded. DOS 6.22 comes with a utility called MSD.  It will let me see what I need to see.  Since this is with a MiSTer, take a screenshot with it running showing the memory map for me, and post it here, then we can discuss what memory managers you want to use, and how to prod it good.

Edited by wierd_w
  • Like 1
Link to comment
Share on other sites

You're really talking more AT than XT.

 

I have a PS/2 Model 30/286 - mid-range AT - and here's my config.sys:

 

FILES=30
BUFFERS=10
DOS=HIGH
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\SETVER.EXE

SHELL=C:\4DOS\4DOS.COM C:\4DOS\ /P
device=c:\dos\smartdrv.exe 320

 

And autoexec.bat:

 

@ECHO OFF
SET PATH=d:\WINDOWS;c:\apps;c:\4dos;C:\DOS
SET TEMP=C:\DOS

C:\DOS\DOSKEY.COM /insert
exp 96
rdate 192.168.1.9

mouse /Y
set wattcp.cfg=c:\apps
set mtcpcfg=c:\apps\mtcp.cfg
SET BLASTER=A220 I5 D1 H5 P330
CT4170

 

(Note: This is PC DOS 7.)

  • Thanks 1
Link to comment
Share on other sites

Thank you for your replies. I attach the scr$ for @wierd_w

 

This is indeed not meant for a very particular machine, like "strictly XT", just a bit of a catch-all due to the nature of the collection and target platforms. MiSTer's core is the main one but it's not a pure XT - you can read a bit more about it here: https://github.com/MiSTer-devel/PCXT_MiSTer

Then there's also DOSbox, or PCem, or real machines. But for them I expect people being able to make their own changes, as I can't cover all the bases.

 

I wonder what the nansi.sys and freespt from my config are. I know nansi is suppposed to be an improved ansi.sys, but does it benefit my purpose at all?

 

Ltemm is being used because I think MiSTer's core allows EMS memory - during boot it says it's "installed"

 

I also had another config, made by flynnsbit, which uses swapfile, ramdrive.sys and ncache, but it seemed a bit of an overkill.

 

How about tkbd.com? ndos.com?

 

20230101_133249-screen.png

20230101_133214-screen.png

20230101_133225-screen.png

Link to comment
Share on other sites

You have the entire adapter rom region free, and backed with RAM!

 

Consider a different enabler that accepts an argument for the regions to enable. The one you are driving now has a readme saying you have to manually patch the program to change the target region.

 

It looks like you could use between C000 and EBFF.  That's a big area.

 

The core does not emulate extended memory, but some old games can use expanded (ems) memory.

 

There's a DOS driver that can live in upper memory that can provide it via what is essentially a swapfile.

 

Found it.

 

https://www.vogonsdrivers.com/getfile.php?fileid=851&menustate=0

 

EMS memory would be 'slow', because it is fetched from disk, but games that use it would have it available. (It's normally provided by a hardware ram card with a mapper chip)

 

DOSMAX would be a good choice here also, since we have ample ram-backed area to work with. It can load files, buffers, fcbs, and the command interpreter into UMB.  You can realistically have over 600k free.

 

 

 

Edited by wierd_w
Link to comment
Share on other sites

The 8086 doesn't address extended memory which is why expanded memory was created.  The Msd results above isn't showing the 64k ems page frame set by ltemm.  Are there any games that run on an 8086/88 that use ems?  Any that don't run in the 590kB currently available?

Edited by mr_me
Link to comment
Share on other sites

Sorry, I was away with IRL stuff.

 

Tbh, dealing with more advanced stuff is above my pay grade, so unless somebody could provide complete command lines for me to try, I will just leave the expanded memory as-is and concentrate on having a functional basic configs.

 

This is what my mem situation and autoexec/config look atm:

 

Anything you'd suggest worth changing there? Why I have nothing in the upper memory?

sshot-083.png

sshot-084.png

sshot-079.png

sshot-082.png

Link to comment
Share on other sites

Sorry, yeah, this is a bit silly perhaps, seeing as these are from PCem with Pentium (look at the top bar in the scr$). Which I'm using to test things coz it's much faster, though in this case it;s not the best idea. I can try again tomorrow and take scr$ with the MiSTer's core itself (but in principle I think it should be generally similar to the PC/XT core since I don't need XMS, being only concerned with base memory. )

 

I tried the use!umbs.sys on MiSter but it hangs the core combined with ltemm. How else could i enable the upper memory? This latest config was just by peeking at @The Usotsuki's examples and I didn't see anything like that there - is it the setver or smartdrv? I tried emm386.exe but this doesn't work on the core.

Link to comment
Share on other sites

From what I was reading use-umbs is the proper tool, and can accept different ranges, despite what I read in the readme.

 

I did some digging.

 

This core emulates a lo-tech 2mb ems board, with a pageframe address of a000.

 

MSD is not properly detecting a ROM at EC00, according to what I am reading. Probably is not setting the memory read only.

 

The author suggests the following in this post.

 

 

FILES=40 BUFFERS = 30 DOS = HIGH, UMB DEVICE=C:\UTIL\USE!UMBS.SYS C000-EC00 DEVICE=C:\UTIL\DOSMAX\DOSMAX.EXE /R+ /N+ /P- DEVICEHIGH=C:\UTIL\LTEMM.EXE /p:A000 /x /n SHELL=C:\UTIL\DOSMAX\SHELLMAX.COM C:\COMMAND.COM C:\ /E:256 /P

 

 

It may be possible to enable more upper memory, but I need to know how big the xt-ide bios at EC00 is.

 

MSD should detect the option rom in the other memory viewer pages, and say how large it is. I think it's "memory browser" or something like that. Been awhile.  This is because option roms contain a magic header byte sequence identifying the option rom and its size, and MSD is designed to scan for this, even if the memory is writable.

 

Normally, I would test and experiment myself, but the de10-nano needed to build a mister is too expensive.

 

 

 

Edited by wierd_w
  • Thanks 1
Link to comment
Share on other sites

Thanks. I've tried this config.sys (it's from the core's dev) but it hangs after shellmax (btw do you know where to find DOSMAX which is not beta?) which might be down to some other caveats mentioned in this post or being earlier development, apart from me doing something wrong of course.

 

Without dosmax it works, use!umbs loads and Ltemm too, but I still get "HMA not available: Loading DOS low" and 553k as the "largest executable prog".

 

Anyway, I give up for now on this because it's too time consuming, will just stick a basic config in and let users change it as they see fit. Most games from this era should work anyway even with this amount of memory.

Edited by youxia
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...