VOGONS


Reply 40 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Umm...no, as it doesn't run except on floppies and Zip drives. I disabled the DOS mode drivers, as I didn't need it for DOS in Windows mode. I can create a DOS configuration for DOS programs to run outside of Windows but want to be able to run most DOS games and applications from within Windows. That's why I want to work on this setup.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 41 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Well...you're right, but I have a lot of floppies and Zip disks from an earlier Win98 computer that had a hard drive that was just too large to compress using DriveSpace.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 42 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I don't understand why I get an Out of Memory error when I enable EMM386 and Upper memory and then boot Windows or my system crashes with an exception with QEMM or JEMM. Maybe it has something to do with the computer having a Pentium 4 microprocessor and 1GB RAM. I really want UMBs and EMS for DOS programs to run from within Windows.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 43 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I want a DOS computer for my mother's house, but, for now and even when I get the DOS computer, I want to run DOS programs from Windows 98SE. Also, I want to do it without switching to DOS mode. Right now, some DOS programs should work but in a limited fashion. I know that certain drivers, such as CD-ROM and mouse, are handled by Windows, but I want other support, such as ANSI and DOSKEY. I can do it with what I have, but I may want other goodies. What can cause the strange behavior I'm getting from my computer? Does it mean anything that I have a Pentium 4 processor and about 1GB RAM? BTW, as I mentioned, the DOS memory area $E000-$EFFF is marked by QEMM's MANIFEST as unused, but EMM386 doesn't detect it, and, when I specify "I=E000-EFFF" on EMM386's command line, the computer hangs just after EMM386 loads, and decreasing the end gave me Out of Memory messages during Windows setup.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 44 of 71, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi. I remember that there was a program, EMS Magic, which was intended for Windows 9x/NT and for use under difficult situations.
Also runs on plain DOS.

https://www.emsmagic.com/

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 45 of 71, by Gmlb256

User metadata
Rank l33t
Rank
l33t

EMS Magic requires a very fast computer to get decent performance since EMS emulation is entirely done in software. I don't think that it would pose a problem on a Pentium 4 computer though.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 47 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I'm at my mother's house now. I tried to decrease the RAM size in the CMOS settings. It only reported the size of RAM: I couldn't change it. I tried EMS Magic, and Windows kept giving me a protection fault upon startup. I reverted back to using EMM386 and couldn't find the numbers that worked before. 🙁 I have to back track here to find the numbers again. BTW, FDFormat only works properly in DOS mode. 🙁 If nothing else, I could go without EMS. 🙁

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 48 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

It seems that any way to get UMBs, with or without EMS, causes problems. 🙁 That's bad, as I want to both program and experiment with DOS. I also have a lot of DOS programs to run on the computer.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 50 of 71, by Gmlb256

User metadata
Rank l33t
Rank
l33t

Perhaps, UMBPCI is a real mode UMB driver that is dependent on the motherboard chipset as it relies on RAM shadowing techniques. Keep in mind that the B000-B7FF range can't be included and it doesn't emulate EMS memory in any way.

VIA C3 Nehemiah 1.2A @ 1.46 GHz | ASUS P2-99 | 256 MB PC133 SDRAM | GeForce3 Ti 200 64 MB | Voodoo2 12 MB | SBLive! | AWE64 | SBPro2 | GUS

Reply 51 of 71, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hm. Could it be that some of the on-board devices are "in the way"?
I vaguely remember that network cards and USB controllers occupy some space in UMA.
Maybe it would be possible to disable said on-board hardware and use discrete PCI devices on cards instead?

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 52 of 71, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie

I think E000-EFFF is usually used for EMS Page Frame and if you use RAM (which enables EMS) that area is not accessible. If you use NOEMS then you should be able to use it. Explicitly including it regardless is a wrong idea.

But in general EMM386 or QEMM shouldn't be loaded for a config that is to be used to boot Windows.

QEMM's DOS component (QEMM386) has a hard cap of 256MB (due to its built-in XMS driver), but its Windows component (such as MagnaRAM) will work fine with higher RAM size, and does not require QEMM386 be loaded.

Can you tell me what onboard/discrete PCI devices do you have that might contain option ROMs? These ROMs will also take up some space in upper memory area and the memory footprint varies.

Reply 53 of 71, by wierd_w

User metadata
Rank Member
Rank
Member

EMM386's RAM and NOEMS directives can coexist fine. It will create UMBs but not set a pageframe.

Depending on the chipset, UMBPCI + HIRAM might be a better option in that case though.

I've been noticing on a lot of mid 00's laptops, that there are 'important things' living between D000-D3FF, and E400-EFFF on them, even though there seems to be no option roms there. (Been mucking about with sbemu on them, trying to find the best fit, and ideal memory configuration. Noting that including the other halves of those spaces causes lockups and instabilities. Systems from the pentium 90 era have unambiguously free upper memory addresses though, and are better fits.)

An EMS pageframe needs a contiguous block of 64kb of upper memory addreses though, and emm386 is a bit top-heavy. In the case of at least one of the '00s laptops I am prodding, thete is a nasty PXE bios living right where it is most inconvenient, at E000-E3FF, ruining my picnic.

"Sometimes" you can expunge these option roms with a forced include, because of how EMM386 does it's thing, and that is what I have done. Just be aware that this must be an explicit include, and cannot overlap with another 'block', and might not work reliably.

EG, in my case 'something important' lives at D000-D3FF, so it gets excluded. There is an unallocated block of address at D400-DFFF. Then there is the annoying PXE boot rom I will never use at E000-E3FF, and then 'something important' at E400-EFFF.

I can't just tell emm386 to I=D400-E3FF. It will throw an error about ranges overlapping and option roms being detected.

HOWEVER, I can instead tell it to I=D400-DFFF I=E000-E3FF, and exclude the 'mystery secret sauce lives there' areas with X=D000-D3FF X=E4000-EFFF, then manually set the pageframe in the resulting 64k chunk with FRAME=D400, and it will happily do it without complaint.

This:
device=C:\Windows\emm386.exe RAM X=D000-D3FF I=D400-DFFF I=E000-E3FF X=E400-EFFF FRAME=D400

NOT THIS:
Device=C:\Windows\emm386.exe RAM X=D000-D3FF I=D400-E3FF X=E400-EFFF FRAME=D400

It's annoying, but that's how it is if you want to expunge a ROM. Just with where-ever the rom to be expunged is.

If you have the win9x CDrom handy, 'microsoft diagnostics' (msd.exe) is found on it, and can be copied off.

Running it with no memory managers or drivers loaded will let you have a look at the upper memory's layout for your system, and can point you in the right direction on what you can include for UMBs.

Debug will let you look inside an option rom's address to see what it is, so you can decide if you want to try expunging it or not.

in the above example, dropping in NOEMS instead of FRAME=D400, would give me an instant 64k of UMB. (And without the expunging of the rom, only 32k of UMB).

Reply 54 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I thank you for the information. I don't have the Win98SE startup CD but do have on the computer the ISO of it. I also have QEMM installed on it. I looked at MANIFEST at somebody here's suggestion, and it said the block between E000-EFFF is unused. I included the whole range, and the system hanged just after EMM386 finished installing. 🙁 Including only the first half helped, but Windows gave me an Out of Memory error while starting up. 🙁 Let me look for and download UMBPCI now.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 55 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

I looked at its web page and don't like what I hear. 🙁 I really want both UMBs and EMS for DOS programs under Windows.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 56 of 71, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
Harry Potter wrote on 2023-07-20, 10:33:

I looked at its web page and don't like what I hear. 🙁 I really want both UMBs and EMS for DOS programs under Windows.

... It's hard. Back then in Win3.x you need the WIN=D000-D7FF for EMM386 to enable GEMMIS which takes away an additional 32KB of UMB on top of the 64KB EMS Page Frame, and this is exclusive to MS EMM386. I think the same applies to Win9x but I never tried.

That would be 96KB of UMB reserved leaving you with virtually no free UMB to spare. If you're not using the default, 16-color VGA driver then you also cannot include B000-B7FF. The video driver will most likely not work in this case.

Modern PCs are unlikely to have that much free UMB area. On my old Socket 7 Pentium PC I could get about 120KB of free UMB in the common area (C800-EFFF), but on my current PCs I could hardly get more than 70KB.

Do you have a use case that explicitly needs a DOS program to be run from a Windows DOS box that requires EMS and UMB, instead of running it from DOS directly?

Reply 57 of 71, by Harry Potter

User metadata
Rank Oldbie
Rank
Oldbie

Well, I have a DOS-based NES emulator that supports LFNs. Other than that, I can run most of my DOS software from DOS mode, but it would be very inconvenient to keep switching to DOS mode every time I want to run a DOS program. 🙁 Also, I may want to multi-task and either run multiple DOS programs or DOS programs and Windows programs at the same time.

Joseph Rose, a.k.a. Harry Potter
Working magic in the computer community

Reply 58 of 71, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
Harry Potter wrote on 2023-07-20, 11:56:

Well, I have a DOS-based NES emulator that supports LFNs. Other than that, I can run most of my DOS software from DOS mode, but it would be very inconvenient to keep switching to DOS mode every time I want to run a DOS program. 🙁 Also, I may want to multi-task and either run multiple DOS programs or DOS programs and Windows programs at the same time.

Considering all the limitations and the UMB to be reserved it's really difficult to perfectly achieve your goal.

If your DOS program is purely textmode then you can multitask with Windows ones. Otherwise, you cannot really multitask as the program will switch to fullscreen -- and the DOS program in question will be paused if you switch out.

Windows 98 has two specialized PIF files (so-called game mode, one of which has EMS related stuffs enabled) for a relatively quicker switching between Windows and DOS, but it's mostly the same as setting up separate DOS startup configs. Actually it has always been possible in Windows 9x to override CONFIG.SYS and AUTOEXEC.BAT in PIF files so when you run it, Windows will reboot to DOS mode with your overridden config to run your DOS program specified in the PIF, and once done, it'll reboot again to return to Windows.

Reply 59 of 71, by Jo22

User metadata
Rank l33t++
Rank
l33t++
LSS10999 wrote on 2023-07-20, 13:20:
Considering all the limitations and the UMB to be reserved it's really difficult to perfectly achieve your goal. […]
Show full quote
Harry Potter wrote on 2023-07-20, 11:56:

Well, I have a DOS-based NES emulator that supports LFNs. Other than that, I can run most of my DOS software from DOS mode, but it would be very inconvenient to keep switching to DOS mode every time I want to run a DOS program. 🙁 Also, I may want to multi-task and either run multiple DOS programs or DOS programs and Windows programs at the same time.

Considering all the limitations and the UMB to be reserved it's really difficult to perfectly achieve your goal.

If your DOS program is purely textmode then you can multitask with Windows ones. Otherwise, you cannot really multitask as the program will switch to fullscreen -- and the DOS program in question will be paused if you switch out.

Windows 98 has two specialized PIF files (so-called game mode, one of which has EMS related stuffs enabled) for a relatively quicker switching between Windows and DOS, but it's mostly the same as setting up separate DOS startup configs. Actually it has always been possible in Windows 9x to override CONFIG.SYS and AUTOEXEC.BAT in PIF files so when you run it, Windows will reboot to DOS mode with your overridden config to run your DOS program specified in the PIF, and once done, it'll reboot again to return to Windows.

How about running Virtual PC on Windows 98SE?
There's an older version out there that's Windows 98SE/Me compatible.
That way, MS-DOS 6.22 can be run in a DOS VM, in a window. With EMS and everything.

Edit: Virtual PC has shared folder support for DOS (VM Additions).
That way, folders on the HDD can easily being accessed from MS-DOS 6.22 side.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//