First post, by ruthan
This post is often edited.. its work in progress, so its related to last posts in this thread.
If you dont care about other precious info bellow and dont what to give me any gems.. well, here is your link:
https://docs.zoho.com/sheet/published.do?rid= … 9e034&mode=html
If you here for my ultimate config boot files and drivers and utils pack (im not saying that they are best ones that is subjectite, but there most complex ones and most configurable) - search for text "last version".
Project history and machine goals:
- If you want to know some philosophy behind this build read this thread, to check and progress problem solving and some discussion if it make sense and some etc - read thread from the start.
- If you care about specs details, look here HP z400 x58 collumn in first 2 tabs - tab switcher is in left down corner. // There is also some info about modern OSes on this machine
- Similar X58 machine - Agents007 thread, but i would say that there is pure DOS just as bonus, i has not big emphasis on it like my project.. For me is pure DOS primary point of analysis..
- because machine XP+ compatibility is same as any new machine virtuality 100%, Windows 98 is great too (Win98 DosBox excluded its working too, because pure DOS is working, i do not care too much now), im mainly interesting in post reports are discuss pure Dos 7.1 compatibility (you can install MS-Dos 7.1 from 2 floppies without WIndows 98, if you want, main advantage is FAT32 at least 128GB HDD support)
- PCI sound cards vs. Chipset compatibility sheet from Kamerat unfortunaly no too much new chipsets (not when if even older chipset are not working, its not good sing) and lots of magic abbreviations without legend
- other PCI sound for Dos thread
- Vogons Yamaha 7xx Guide - lots of technical lowlevel info, my guide more user oriented is about how to make things to work..
- Phils refreshed Y744 video including some WIn98 stuff and sound recording, he is as usually using old Duron 800MHz Socket A + VIA chipset MB and even that i he has to use DDMA.exe driver.
- i cant test it but Yamaha 72x would have very similar or same results
- Yamaha should have better (native) FM that Aureal Vortex 1/2, where it is FM emulated discussion, with Aureal with wavetable header, when game support General midi, you could buy additional card as Dreamblaster X2 for midi, to bypass worse FM (at least for general midi games)
- Yamaha 744 / Aureal Vortex V2/ SB live / Cmedia 8738 / ESS-Solo1 - Dos sound quality recording, you should compare it your yourself (for every chip is there is different link) - thanks Phil for that
- some text info about Dos quality FM of our sound chipsets + few others
- Swaaye additional info to Vortex 2 - AU8830B supposedly has lower CPU utilization than AU8830A2, B chip could be used only in SQ2500 card (source)
- Comparision between card is interesting also on memory and slowdowners managers level:
Yamaha - requiring EMS, no sound in Real + Protection modes, which are required by few, mostly 92-94 games, setmul l1d - great slowdowner working in everymode, not working with JEMMEX (DSDMA load crash, need on new machines), JEMM386 is working with NOVME parameter fine.
AurealV1 - working in every memory manager mode, SETMUL L1D is working - only in real and protection mode (not in EMS), working with JEMM+JEMMEX, Aureal driver is big memory eater (depends on version 20-25KB)
- Gog to pure Dos game conversion/usage sheet, Vogons thread
- side product of this project are ultimate branched config files (you can download it bellow) - with EMM EMS, EMS NO, Realmode, Protected mode, UMBPCI,JEMM ,JEMX,QEMM branches with selection of CD handler- MSCDEX or SHSUCDX (+virtual cd driver) and easy selection of soundcard - supported are Yamaha, Creative - Audigy and !Live(only Win98/DPS comp. version), AurealV1,AurealV2,ESS-Solo1.. There are also branches for SB IRQ7(default is IRQ5, but some games requiring IRQ7 to wrok), there are also debug branches without loaded sound driver and CD rom drivers for compatiblity testing. A there is also ready to run Drivers and Utilities package for this config.
- my thread about size of Video bios roms, because its size matters in Dos..
- new info from Rayer - he tried Yamaha 724 and 744 on H67 chipset, info is that 724 working fine, but 744 has sound crackling problems (he tried 2 of them)
- Phils Videocards DOS performance results DB, this still help to you select fastest videocard for DOS
- some work around how to enhanced Yamaha compatibility on boards without DOS legacy addressing
- some tool to improve make C-Media 8x78 DOS compatibility
- my pureDOS Videocards performance analysis and benchmarks
- Info from ZanQuance: The AU8830 will only operate on newer machines if they still have LPC support on the chipset, looks like the X58 has. Details - i can confirm that Aureal V1 and V2 is working too
Brief summary of modern HW options for pure DOS+ gaming and there advantages and disadvantages:
- Super socket 7 machine with K6-2,K6-3 (up to 550 MHz) or Celeron/PII/PIII machine - best pure Dos compatibility, Windows 98 compatibility, too slow for proper XP+ gaming or use of modern Linux, slow boot, data transfering problems (Windows 98 / Windows 7 network is not seamless, same as use USB flashdrives on Windows 98), problematic internet surfing on slow machines and Windows 98. All Vooodo cards will work. Beware that some audio driver could eat lots of performance of such machine, see this by Phil.
Other problem is that these machine are AT - it mean, smaller no modern design cases, no automatic shutdown, there also no so advanced coolers (small, underperforming and noisy in comparision with modern system).
- P IV / Athlons machines - still great Dos compatibility (95%), Windows 98 gaming is great, Windows XP gaming for older games, no modern Windows XP+ games, modern Linux is working. Some speed issues with internet browsing. There is problem to get ISA slot and use almost all PCI and ISA sound cards.
- Core 2 machines - good pure compatibility (90%), Windows 98 compatibility 95%+, WinXP gaming fore everything except newest XP games, Windows 7/10/ Linux are working, but is gaming experience very limited, very fast data transfers,Internet surfing is still quite good. Sound cards with right chipset at least Creative modern cards (Audigy/!Live) are working, ESS Solo-1 is somehow working (only with VIA chipset and with 880 Ultra is compatibility level 55%) and doesnt need EMS (more compatibility info), Aureal Vortex II + Yamaha 7xx are working and there are even some boards with ISA slots for old best for Dos Sound cards, probably worst choice but maybe it could somehow work too is Cmedia8738 - Phil video - from 8 minutes - note its tested with old board (slot1). There were rumors about Aztech 168PCI/3328 but there is not pure DOS driver for it. I managed get to work at least Voodoo 3 on i865 chipset, Vooodoo 2 no go for me.
If you are using Yamaha 744 with Core 2 / compatibility level is exactly the same as with X58 machine, so no advantage here, Core2 has advantage in possibility of much bigger soundcards choice.. With premise that some of such card is more compatible that Yamaha, really doesnt make sense to sure Core2+Yamaha combination a probably anything older which still does need DSDMA to run (even Slot A needs it). Other advantage of Core 2 with there is UMBPCI working, you can have plenty of conventional mem in realmode.
On old machines above with ISA slots - could be handy for you this ISA cards overview from Gerwin.
- X58 machine - still quite good pure Dos compatility (80%+ with advanced tuning), Windows 98 compatibility is great (after right GPU selection and with working storage drivers) 95% (or better i managed to get every native Windows game working, you have pure Dos as Windows 98 dosBox replacement - which also needs ATI gpu, Nvidia Geforce 6/7 - black screen problem), XinXP-Win10 - 100% compatibility -even most never games can run with Core i7-6c/12t + Geforce 970/980 GPU, Linux + MaCos possible, very fast data transfers, internet surfing etc. Possibility of Bios with primary GPU selection (no hassle with multiple videocards and OSes - just select right GPU in bios depends OS which you plan to boot), very fast boot - its great for debugging and i will need to reboot and lots of times to setup everything for pure Dos - when i go back from X58 to Core 2 - speed difference was annoying. Very limited Sound cards selection for pure DOS - Yamaha 7xx, Aureal Vortex 2 only. UMPCI is not supported on X58 chipset, Yamaha DSDMA.exe which is needed for pure Dos sound is working with JEMM (when NOVME magic parameter is used) and JEMMEX (its crashing with Yamaha when DSDMA.exe is loaded). I tried Voodoo 2/Vooodoo 3 in pure Dos glide - its not working with my board - Failed grSstQueryHardware
- Something even more modern - i dont know much about it, X58 - is Nehalem (+ 1 gen which name i always forget..) first generation of Core I architecture, we need to make same sound cards working in pure Dos on such board and after we can consider these machine, no sound - no go. Update: Intel H67 is also somehow working with Yamaha 744
- the is Vogon user whose make on ultimate ISA Sound card - details here- i didn tested but created claims that it will work with - with Fintek PCI to ISA LPC to ISA brige + Winbond based PCI to ISA bridge (but recording may not work always and you can get ticking and pops in DOS games due to IRQ jitter that Winbond chips seem to have a problem with.)
HW Specs short summary:
Gigabyte EX-58-UD5 - X58 board (3x PCI-E Long, 1x PCI-E 4x, 1x 1 PCI-E + 2x PCI, on board IDE and Floppy, primary GPU selection slot selection, Bios profiles per OS), Xeon X5680 - 6c/12threads (40 PCI-E lines), 8 GB (MB supports up 24 GB, but because 8 GB DIMM is working and Xeon is working, i suppose that 48 GB would be problem..) DDR3 1866 MHz, HDD - WD Raptor 160 GB(future - SSD), PS mouse and keyboards - Logitech, DOS+W98 GPU, - ATI 800 XL GPU (GV-RX801256V) for DOS and Win98, for modern OSes there is Geforce 730 (placeholder for Geforce 9xx) - its able to boot to Dos too - primary GPU slot selection option is in HP O.E.M Bios, AOPEN AW744L II Yamaha XG YMF744 YMF724 OPL3 PCI, - IDE DVD-RW connected throught cheap Sata to IDE dongle, because Sata DVD drivers haven audio header + CD-ROM DOS audio is working - with analog audio cable,no floppy, but i have floppy on board header, NIC - Realtek Gigabit onboard NIC.
O Audio (Realtek 889=HD) is enabled (it was disabled to majority of testing, but it has not influence on compatibility) for Windows 7 and newer OSes later.
Its such X58 machine, you could also add third PCI Graphics Card for DOS, if it would help, i cant use my second PCI slot is cover by second GPU cooler, case havent place for use of PCI extension cable.
Enermax 650W Infinite modular PSU + Coolermaster HAF X 942 case (has 9 slots for cards, newer cases have usually only 7 or 8..)
- CPU performance details there is some discussion(this post and below) which CPU is best - Core i7/ Xeon, Xeon in normal desktop boards support, Xeon overclocking etc.. And other about performance of X58 vs present CPUs. New YT video from YES Tech city newest Core i7 8700k vs. X5675 (X58) both are overclocked, some more info. List of faster X58 CPU - common misconception is that these are Nehalem, but they are Westmere, but older Nehalem CPUs are supported too. I already have 1, but im waiting for better MB,case and cooling.
- CPU closed water cooler for more silence - Fractal Celsius S24
Update: i can use PCI ATI MACH 64 1 MB for pure DOS testing, its working, but it not helped any from 30 not working game at the time, so i would say than PCI videocards for pure Dos are overrated. There were whole 3 games from 115, which had some issues with newer cards and one of them not working at least at one of modern cards without any Univbe etc magic. I tried S3 Virge / Trident its not working with this board - no picture on monitor. Voodoo 3 and Matrox 1064SG (Mystic 4 MB) are working.
- here is Linux "lspci -v" output with device - note because of debugging i used Geforce 220 card because of cooler shape (free slots) instead of Geforce 730 and ATI Mach 64 VT2 1 MB
- there is benchmark for newer to newest PCI graphics card, but only with WIN XP, so i could help you if plan to use PCI card of Win98, but who knows them would perform in DOS.
- X800 XL with alternative cooler
For now im using IPS LCD 1600x1200, but i have ready 21" CRT, but i would need other table.
Future HW plans to make machine better:
- fanless PSU - Like Silverstone Nightjar
- 240 GB SSD, i dont care about not working Trim, rLoew has some patches for it, but its probably cheaper to buy new SSD i would destroy it
- best DOS videocard, im still researching what card would be best. There is performance view, some compatibility info is embeded in my sound cards compatibility testing.
My Dos related config highlights:
- pure Windows 98SE 7.1 DOS (any game from 160+ not complained about this version) on FAT32 partition shared with Windows 98 installation (nothing is tested in WIn98 Dosbox - its redundant on pure machine, maybe you could make some not working pure Dos game working in Win98 dos box but its not aim of this article)
- HWinfo IRQ - out of picture is IRQ15 Sec. IDE channel and DMA info
- CPU HT disabled, all 6 cores enabled .. My machine not supports Bios profiles as others non O.E.M X58 do, so lazy to disaling and enabling core for different number of cores, for now im testing with all 6 cores enabled. I tried some problematic games with 1 core setting, but it doesnt help.
- for Yamaha 744 sound im using - alternative driver for TSR DMA ( details here , i tried Yamaha with Z97 board too, its not working, if it doesnt matters there links for different drivers)
- Yamaha - setupds editing utility is working only in real (Himem loaded, EMS no loaded) mode or protection mode (no himmem, no ems)- config branch, with ems or noems branch it could be started, but it crash on save settings - its only annoying but - 1 more reboot, not block any games from playing..
- i bios chipset settings - PCI VGA palette snoop - enabled, PCI SERR# Generation - enabled - i dont sure about palette, SERR# was regarding of some info necesary for Creative sound cards, but im not sure about Yamahas?
- HimemX.exe is used instead of himem.sys to limit amount of memory to 64 MB, to make windows 98 working (safe mode) you have to also patch io.sys with Rayers patch, i case of new WIndows 98 SE installation, do it as first reboot, memory error crash (if you have 512+ MB of RAM) and edit config to use HimemX.exe instead of Himem.sys + system.in .. after you would be able finish installation. You can check out my config file for this line. With HimemX.exe you could use Windows 98 up to 1100 MB (i dont remember exact values, its online) of ram, for even more ram you could buy rloew patches, he supporting up to 2 GB and has even some ramdrives for use 64 bit address space for all rest of unused memory..
- some info about smartdrive usage, i have it i my configuration ( LH C:\Windows\SMARTDRV.EXE /L /X /X -Disables write-behind caching for all drives; L - Prevents SMARTDrive from automatically loading into upper memory blocks (UMBs), even if there are UMBs available. You can use the /L switch if upper memory is enabled for use by programs. If you are using SMARTDrive's double-buffering feature and your system appears to be running slowly, try adding the /L switch to the SMARTDrive command in your AUTOEXEC.BAT file.), i never fully understand it, it could be source of problems . Smartdrive parameters description., some very detailed smartdrive article for how to tune it If is this info right on machine with 6MB+ of memory its using 2 MB + 2 MB as cache with is not cache size specified, or maybe only 2 MB, i dunno know how it counts.
- some info how to have all os on storage device
- i made Dos networking (file sharing with Win7 64bit) working with integrated Broadcom 5764M NIC with HP O.E.M board, but Gigabyte has Realtek NIC and there is probably not native packet DOS driver for them..
Win98 SE on same machine few notes:
- its not target of this thread, but few notes to make it working too
- besides of too much memory fix (above), if you board has only Sata, no Pata(im using IDE wrong wording for that, but im used to) you would need to fix disk transfer speed, you use IDE PCI/PCI-E controller.. or you need rLoew paid sata patch, even yours Sata controler is in IDE mode (it will work but without DMA - 3/4 MB/s transfers that is PITA), after patch installation you have to enaled DMA by the hand for every used drive - its known mistake to not do it and bitching about speed..
- there is some myth that Windows 98 PCI-E GPU should be in first or topper slot that second GPU for modern OSes, if you have board if primary GPU slot selection (Gigabyte and some HP O.E.Ms - maybe made by GB too i dunno, HP not doing anything HW by their own) has such feature, i proven it least with GB Z97 board, that PCI-E could be any PCI-E slot - if it is primary
Knowledge PIT - what could help make machine more compatible
- for music (FM) and its testing you dont need Yamahas DSDMA.exe Kamerat: FM doesn't use DMA and therefore no need for DSDMA TSR or other methods for emulatig ISA DMA. I did majority of testing up to Quake2DOS with Yamaha driver 3.14 patched for SIS, because i something overlooked, or in Vogons drivers packages are only older drivers, newest should be 3.16
- list of CPU speed senitive DOS games
- SET BLASTER Dos variable details.
- SB types for SET BLaster variable (source) - I did all my testing with T4, if is not said otherwise, but regarding of this info. I also do testing with DSP version 3.1 if is not set otherwise.
T1: Sound Blaster 1.0 (the original Sound Blaster),T2: Sound Blaster 1.5, T3: Sound Blaster 2.0,T4: Sound Blaster Pro,T5: Sound Blaster Pro with OPL 3 FM chips,T6: Sound Blaster 16
- of course most important is knowledge of this forum members, i never was Dos settings expert
- DOS videocards vs games compabitility sheet - newest Nvidia tested - nVIDIA GeForce 6800GS; newest ATI (ATI Radeon DDR) - newest cards arent tested - but this could help, compatibility probably wouldnt be better with newer cards, the would be same or worse.
CPU Slowdowners / Speed limiters info:
- difference between Aureal Vortex 1 and 2 for dos
- basic Aureal Vortex 2 compatibility info (only for WIndows 98, but better than nothing) is Au30dos.txt in AV2 dos drivers package, which you can download from Phils page.
- Video card performance - someone would say, that new graphics card, which are working with 95+% of old game would be shredders of asphalt, but at least from Geforce 2 MX, videocards are booting is heavily underclocked 2D mode and only Windows / and some MacOS or Linux drivers can clock them higher for game use.. Advantage for dos is that there at least silent, because of low speeds. I found interesting article about modern videocards 2D performance in Win98/XP.
- there some boot mod dependency lots of slowdowners not working with EMM386 active, but without EMM386 unless you have Aureal vortex 2, no sound - you cant use Yamahas 7x sound cards.. So, its make sense for debugging or no sound card gaming.
CPU Tuning, Throttling - MSRED + CACHECTL, - //PaRus: I forgot to say, MSRED and CACHECTL are working only with HIMEM without EMM386 So you have to have Sound card driver which doesnt required EMS, otherwise no fun. Cachectl c => EMS -reboot, regarding of info by FalcoSoft its not running under EMS386, so i would say that is not what we want. I tested cachectl c in protected mode, its stuck at checking caches:.. no reboot, but its not working too.
MSRED additional info: 1, 2
SetMUL from gerwin - // EMS - L1 cache disable is working; L2 not - some segfault registry error, L2 options is working under Protected mode - but when i did benchmark - no real difference 3s/3s, so no big deal. regarding of info byFalcoSoft its not running under EMM386, so i would say that is not what we want.. but L1 still looks like working, Setmul is working with EMS386 loaded, so MSRED is not mandatory. I tested it with Core 2 E6600 - its much slower than on X58, so it could be used only for much older games.
- Speed difference is brutal - path_bench which is normally running- 3s, is running 893s and that is result between 386 DX/40 and slow 486.
- Some tool with better than nothing but some scalability would be great.
- Throttle - not working unsupported chipset message, even in protected mode..
- SlowDOS - its at the bottom of Throttle page - line above - its working at least with benchmarks with default value internal - 12, i get benchmark which is normally running - 3s to 27s. So this could probably scale about CPU speed.. but question is if there are not some conflicts. I fixed with it too fast Battle Arena Toshinden.
- Kamerat: The YMF744 supports several DSP versions according to it's datasheet (page 21), perhaps changing the DSP will increase compatibility for some games? I'll guess you have to change it by poking around with the PCI registers as I'm not aware if SETUPDS are able to change it. YMF744 Datasheet. It looks like the leading zeroes just got ignored in the SBDSP utility. Tried changing it on my YMF744 and got 1.5 for DSP 1.05, 2.1 for DSP 2.01 and 3.1 for DSP 3.01. The PCI registers should reset at reboot., Utility of set PCI reg values.
ver 3.01 (default) -pciset 0010 1073 43 01100000 00000000
ver 2.01 -pciset 0010 1073 43 01100000 00100000
ver 1.05 -pciset 0010 1073 43 01100000 01000000
Kamerats quick results: I tried all DSP versions in the game Dune II with the the same result: freeze when first sample plays, do it didn't change anything for this game.
Funny thing in Duke Nukem 3D setup when selecting other DSPs than 3.01 is that it only output sound when playing center, but left and right are mute.
Knowledge PIT => wisdom -solutions / discoveries / best practices:
- Dos memory types - because of 640KB is enough to enyone problem, you have to care about specific memory areas in dos, for make enough free conventional memory to run games and some games are requiring some specific mode - here good explanation what is what..
- burnemem.sys parameter explanation burnmem.sys 10000000 // Number means the amount of available memory in hexadecimal, in this case of 10 000 000 - 256 MB, 4000 000 - 64 MB, 2 000 000 - 32MB, if you want different number just specify number of mem in DEC and use Windows programmers calculator to convert it to HEX, to match real machine results you should use 2 LSH X numbers in DEC - 2 LSH 24=32MB (33 554 432 in byte, convert bytes to MB - divide it by 10 48 576 for kB by 1024), 2 LSH 25=65MB etc..
- EMS setting to proper load sound driver in EMS mode - this is really most important thing what you need to make working, by the default you can use: DEVICE=C:\WINDOWS\EMM386.EXE RAM with it is working without any warning or error, you won. If you see warning like this:
warning: Option ROM or RAM detected within page frame or Unable EMM386 is not installed - unable to set page frame base address., you have problem.
I have to make line like this DEVICE=C:\WINDOWS\EMM386.EXE 32768 FRAME=E000 /I=B000-B7FF HIGHSCAN VERBOSE and play with parameters until you get rid of the error you also could do it for more conventional memory tuning (more is always better, most greedy games want ~610KB) Option ROM problem - you have to mess with I parameter. Unable to set fram base adress - you have to men with frame parameter.. I will are unlucky and you have only few free areas and is not possible fix it by fiddle with one you these parameters you have to fiddle with both. Even when you dont get these errors but you get boot freeze - is highly probably that you have problem with this EMS setting, when realmode or protection or NOEMS modes are running fine.. even when boot is fine, but you getting lots of EMM386 - press enter errrors is very probable that you still have to adjust these values.. Disable some Bios device regarding of forum info could help too, Nvidia cards are usually quite greedy (big video bios).
MS info about EMM386 parameters and syntax:MS EMS info Usually you would need to tune:
/Frame -Specifies the page-frame segment base directly. To specify a specific segment-base address for the page frame, use the frame switch and specify the address you want. Valid values for address are in the ranges 8000h through 9000h (for pc with 512KB of RAM-not for us) and C000h through E000h (modern PCs,E0000-lastest start of area), in increments of 400h/ You need whole continual 64KB(1000h-D000-DFFF,D400-E400 etc) block for it.
/i - Specifies a range of segment addresses to be used (included) for an EMS page or for UMBs. Valid values for mmmm and nnnn are in the range A000h through FFFFh and are rounded down to the nearest 4-kilobyte boundary. The x switch takes precedence over the i switch if the two ranges overlap.
/D (probably less important) - means this: Specifies how many kilobytes of memory should be reserved for buffered direct memory access (DMA). Discounting floppy-disk DMA, this value should reflect the largest DMA transfer that will occur while EMM386 is active. Valid values for nnn are in the range 16 through 256. The default value is 16. Its 64KB optimal for my setup?
No he fully honest, these explanations really dont helps me to fully really undestand, what values are good, you can check
this project EMS tuning thread this is really hardest thing what you need to do. For find out which memory areas are free, you can use umbchk from UMBPCI project and run it only with HimemX or burnmem.sys + Himem.sys loaded nothing else. Info about memory areas - which is area for which usage. In understand it correctly EMS needs continues 64 KB block (for example D000-DFFF) or you have a problem.
Additional info about MEM areas from FalcoSoft:
1) Is good to have bigger I - parameter range than required 600H? R: If you include bigger area then you can have more UMB's to load device drivers/TSR programs high (devicehigh, loadhigh). Included area is not only relevant for EMS related stuff(page frame etc.) but also for available UMB's
2) Should i care about very small larger upper memory free block? R:Free upper memory (UMB) reported by MEM is wasted space. Normal programs cannot use free upper memory when run. Only free conventional memory is useful for them. If you have much free upper memory reported by MEM then you should try loading more drivers/TSR to high thus getting more free conventional memory.
- Runtime error 200 / or 6003 divide by 0 problem => too fast CPU - Setmul L1D - fix it (on X58 its fine, on older is usually to slow for even 486 games)//Setmul L1E to make cpu again fast.. Fix it once for all - there are Pascal Patches, nor universal patches (CRT), compressed exe to extract and resident program to overcome this problem, more info here. Problem is that some sound card driver not working well with some slowdown utils, sound is broken, or computer too slow, for Runtime error 200 there are working fixes, or 6003 not i started thread about that.
- Dos games need usually set sound setting through some ulity - typical names are - setup.exe, setsound.exe, but also install.exe! (name could be missleading) or imuse.exe, if available select SB pro 2 or new, if is not available SB pro, if is not SB, if is not Adlib.
- Most of game problems are related to sound, so there are not really too much problem with too fast CPU and platform itself (except its sound possibility limitations)
- For lots of games which are not working with sound - is not important if sound card is set in setup, but if or not is sound driver loaded or not.. Without sound or with PC speaker often are games working. So its good to have some Start branch without Sound driver loaded to test it.
- some evil games, saving their configurations in binary data formats, so if setup not working, or setup is possible only during installation you are f*cked
- Geforce 730 (Nvidia Kepler same as G9xx) has broken EGA color palette
- all problematic games were tested with PCI ATI MACH 64 2 MB,very few for (at least at the time when working ends with Quake 2DOS) were tested with Vooodo 3 2000
- how to exit old games - ESC,ALT+X,CRTL+X,ALT+Q,CTRL+Q,ESC+CRTL,F10 for menu,CRTL+Pause.. if there are others tell me..
- Most compatible settings for games is EMS, so you someone would tell you that you almost dont need etc, its not true
- There not really too much games which are running to fast in my tested set its < 20% and was able to fix for now all of them with Setmul or SlowDos.
- When game starts and could go to gameplay and dont have any stability issue or occasional crashes - games behavior is always some - thanks good
- too get some Dos Memory usage info you can use these commands: MEM /C/P and MEM /D/P - you can saved result to file by this command: MEM /C /P > MEMCP.txt
- how branched Autoexec.bat and config.sys - Working? - First is executed Config.sys, there are defined menu with branches, in config are also defined modules for individual branched, which could be reused. These submodules - could have config.sys and autoexec.bat parts with same name and both are executed.. In autoexec.bat are config.sys branches initialized by this line GOTO %CONFIG% For make config boot menu visible when you using pure Dos 7.1 on one parition with Windows 98, you also need to edit msdos.sys - its just text file - more info here. For MS-Dos 6.22 not replace msdos.sys!
- because is autoexec and config quite long you will not see output all command on screen at the end and with fast machines, you will not see processing on the fly.. but you cant use Pause key to stop it.. unfortunatly there some commands, which will not recover from this pause - for me its ctmouse driver - only solution is reboot and try to hit pause after or before such command processing.. Afaik Pause command in autoexec.bat not working during boot, if you want it to use you need some special util to load at the start of autoexec.bat
- Why care about JEMM instead of EMS? Short version is better. Long verions by Falcosoft: JEMM386 is more advanced than EMM386 in many aspects. Emulating some of the privileged instructions can be a very handy feature since this way some of your programs that refused to work because of privileged instruction errors can work (including some of the above mentioned low level optimization utilities). Also it uses less memory so in best case you will have more free conventional memory than with EMM386. EMM386 has no such good compatibility that you should be afraid of replacing it :) Personally I have not found situations where JEMM386 caused more problems than EMM386. JEMM386 can fix some of EMM386 problems but not all. gdjacobs: SOFTMPU being incompatible with JEMM
- be aware that depends on which PCI-E / PCI slot / videocard is used as primary, could be occupied different memory areas used for EMM386 / JEMM386 - if your pure Dos boot freezing with some GPU as primary, this could be reason.. How check which area is occupied- i have find out best tool is Navratil IS or FalcoSoft VBsize and when you select used location, i get info about ROM vendor, aleternative way is boot with Protected mode branch - press SHIFT+F8 at windows 98 boot menu for step by step confirmation and enable only HimemX.exe / Burnmem.sys + Himem.sys depends on your configuration. For report you need download umbpci and umbchk.exe from it - but only 400h ranges is test, not great resolution.
- JEMM parameters documentation
- What is UMBPCI - Falcosoft: For configurations that do not require EMM386 for SB emulation, using UMBPCI instead of EMM386 can be a much more compatible setting. It basically makes the same as your EMM386 NOEMS config so you can use upper memory blocks (that means more available conventional memory for programs) but it does not switch the CPU into protected /V86 mode. Test results: X58 - UMBPCI is not working, Core 2 - UMBPCI is working, Z97 Core 4 gen/5gen - working.
- How EMS386 works: EMM386 switch your CPU into protected/V86 mode (it's true even for the configuration with the NOEMS parameter). In protected/V86 mode no user programs/games can use privileged instructions anymore. That's why you get 'unrecoverable privileged operation error' messages and that's why setupds freezes on you. Programs that require direct low level hardware access can not work when EMM386 is loaded. thanks Falcosoft for explanation
- "All the programs that use their own 32-bit DOS extender (DOS4GW, DOS/32A etc.) do not require EMM386 per definition. It's true for Doom, Quake, Duke Nukem 3D, Blood, and all the games that use the Build engine, also Warcraft II etc. For these games using EMM386 causes no harm at the best case. But with EMM386 loaded you cannot use low level optimization tools such as FastVid, MTRRLFBE, MSRED, CACHECTL etc. And e.g. for playing Build games in high resolution modes enabling LFB write combining is a must even on the most modernsystems." thx FalcoSoft for explanation
- If games work with your EMM386 NOEMS config then the answer is that they definitely do not need EMS, just more free conventional memory (thx Falcosoft)
- How to make HWinfo running in my machine? - i never managed to get it working in EMS mode, i had to boot in protection mode - step by step and load only himemX.exe / pr burnmem.sys + Himem.sys - depends on your configuration - after that it is working.
- Virtual CD mounter for dos. I hate juggle with CD roms and big boxes, i have plenty of space on FAT32 partitions for images.. Yes there is SHSUCD, it could be used for physical and virtual cd rom together it eating less memory, there could be some problem with games which requiring mscdex. Supported is *.iso format and its not possible to use for cd music. Some has even with NOCD enhancers need at least virtual cd rom drive to run.
- Burnmem to limit max RAM for Dos (download thx to PARUS) is HimemX alternative. Its not better or worse with compatibility, afaik.. I never tested it with Win98, maybe you could save time with io.sys patching - needed for HimemX and Win98.
- Tool to get info about DSP version of Sound card from Bloodcactus
- info from Gerwin about Aureal drivers problems, when L1 cache disablers: PCI soundcard ISA SBPro emulation mode and cache disabling is a troublesome combination. These are not normal drivers but TSR hacks that intercept Legacy ISA communication and translate it to PCI communication, often there is also a Software OPL FM emulator or even a Midi synth in software. I found the Ensoniq/Creative labs SB16 emulation driver to stutter when L1 cache is disabled, this was with an Athlon 2GHz system. I figure that such an emulation driver requires a certain amount of processor speed that is not available when L1 is disabled.
-Dos / DosBox ethernet networking info. - i started this thread to make data transfers more easier, rebooting could be annoying.
Common repeating problem of not working games:
a) EMS error during game start in EMS mode- you have EMS area colission, you have to find other memory areas for EMS with I parameter
b) Black screens - no error, often soft reboot is working, i never met situation when i would heard music and sound + have black screen (monitor problem), it could be graphics card related (5 of 100) or Sound cards related (more often)
d) DOS4GW error 2000 or 2001 - 0Dh problems - it could be triggered by EMS area error, but also by other causes..
f) games which are using dpmi*.ovl - Jazz Jackrabit 1 and Xatax not working, same error AUX Loader error 25: cannot initializ, these games not even starting with no sound.. sound card is still detected and i got this error.. its stupid implementation.
d) General failure reading drive D.. together with "Your program caused a divide overflow error" during game start. - I discovered, that was EMS problem (force memory area was occupied - i had boot working), without EMS start memory range conflict - its working, i did not see this error no mode.
- pure Dos GLide thread - there is 32 of Dos Glide gamesfor mainly for Vooodoo2 (compatibility matrix), with some Voodoo 3(compatibility matrix)info and less V4/V5 info, with Voodoo 1 everything should work in theory, bad there are lots of speed problem with faster machine, Vooodoo 2 has lots of compatibility and speed problems too, so maybe Vooodoo 3 is best cards. Its lots of hassle for few game, but if you have such card a have to play Dos glide versions of some game this is what you need to read. i can confirm that Vooodoo 3 works fine on X58 machine, at least as 2D card, for 3Dfx dos game is not working (for now - Failed grSstQueryHardware error), with Core2Duo+V3 is working fine for 3D, V2 is not working there (again Failed grSstQueryHardware), because nGLide is working with Win98+ there not really need form 3dfx outside of pure DOS..
My config files:
- my ultimate branched config - 9 Dos configuration branches (+ others could be enabled, but you have to disable some now enable, 9 enabled branches is max.):
a) First 2 are Windows 98 boot and Windows 98 safe mode boot,
b) EMS(HimemX (or burnmem+Himem.sys) + emm386.exe RAM),
c) NOEMS (HimemX (or burnmem) + EMM386.EXE noems),
d)Realmode (HimemX/ burnmem loaded, no EMS loaded) no sound because Yamaha TSR - DMA driver requiring EMS/NOEMS) / same for Creative SB for Audigy/!Live
e) Protection mode (no Himem, no EMS) , no sound because Yamaha TSR - DMA driver requiring EMS/NOEMS) / same for Creative SB for Audigy/!Live
f) 4 items are debugs for testing games with / without Sound / CD-ROM/ Smart-Drive/ driver loaded and two with SB IRQ 7 - because it matters, are also UMPCI mode (no Yamaha /Creative sound) and JEMM386 mode, EMEX mode and two QEMMU modes. JEMM and JEMM386 not working for my machine with Yamaha DSDMA.exe which is needed on new chipsets for Sound, so no sound.
- every used variable and lines are commented!, when is some line firstly used, its any other config files on internet you have to searching on internet.. IF you want to clean code only just remove all lines with starting REM or @REM with some inteligent text replacing utility.
Config supports 5 different Audio drivers for all branches - there are options for Yamaha 72x/74x (up to X58 and H67). Creative cards - !Live/Audigy DOS/Win98 compatible cards for up to i865 chipsets, ESS Solo-1 (it work somewhere up to i845 and VIA VT8237S southbridge, dr.zeissler:On i865 upwards like i915 I got FM working in Dos but SFX freezes the machine (e.g. Wolf3D), LSS10999:I used to test this card on nForce series (like nForce 4, 720D), and later on with an Intel P31 based board - its the same music fine (with some games), SFX no), Aureal Vortex 1 and 2 (there are working on new chipsets too, at least up toX58), CMEDIA 8738.
- irst CD-ROM letter is set to E, because otherwise SHSUCDX is using A,B letters, but you can set it at 1 place at the top of autoexec for all branches
- Change sound card driver is very easy, just set value on my variable at the top of autoexec.bat and change is used for all branches with support sound on particular card!
- There is also possibility to select CD-ROM handler for all branches for CD-ROM, you can select betwen MSCDEX(conventional mem eater) and SHSUCDX - less memory and there is added even virtual CD drive ready to use, just replace iso file, once again, all of these could be changed by 1 parameter at top of autoexec.bat.
- MSDOS.sys edit si needed to make boot menu visible during Windows 9x boot, otherwise is menu skipped, its just text file
1) On some machine you have problem with default EMS - EMM386.exe RAM setting, it simply not working on some machines, i cnat give you in front magic variable with are working on every machine, but in config is very long guide how to fix it and squeeze maximal amount of conventional memory for every machine..
2) There some reported error in Config.sys Common block with some optimal lang. setting, i dont know where is problem, but its minor..
3) First cmd line command after boot is ignored, its File Wizard or Doskey problem, i dunno how to fix it..
Drivers /utils package to support config files
- i created Drivers package to just copy files to target machine and make it working. All drivers have to be copied to C:\Drivers all pathes and ini files are set to this directory - you use change it by mass replace in package by search this string by some multiple text files replace utility.
I cant include MS files, which are described in !AddFile.txt in driver root, as EMM386,MSCDEX etc.. all of these should be also copied to C:\Drivers directory to make package maximaly portable, because people are using different patches and version of WIndows and DOS etc. Some is with other licenced tools like QEMM etc..config files are ready to use it.
MS-DOS 6.22 and earlier adjustments:
- list of MS-DOS 6.22 and 7.1 difference
- not replace msdos.sys, its Win98-MS-DoS 7.1+ only
- im not quite sure, but branching is first time supported in MS-DOS 6.0 or something like that..
- change first entry (C:\Windows) in path to C:\DOS or other directory where you have installed DOS
- find and replace config entry FILESHIGH and BUFFERSHIGH to FILES and BUFFERS , HIGH is not supported on Dos 6.22 and earlier
Download: // last version(eurotime): 20181017,
Drivers / Utils Package contains these items:
- Pure Dos Audio drivers for all cards mentioned above
- CPUcache - for slowdow
- Dos32A extender, which you could try when you have problem with DOS4GW
- Doskey - commaline with autocompletion and memory
- FW - advanced File Manager - File Wizard - it has clipboard similar to windows with CTRTl+C/P shorcut, search string within files / directors, search string in files (next is SHIFT+F7), There is also possibility to assing openers for files types like *.bmp,*.avi*.mp3, long windows file names support, inbuild CD player etc.. Dos Navigator is good, but has not CTRL+C/CTRL+D.. copy/paste and afaik no possiblity to change key shortcuts. Not working well in Dosbox, probably because of Z drive letter, i would mail author but i cant find working contact, its from 2002..
- JEMM / JEMMEX alterantive memory manager to EMM386 from Freedos
- RunTE200 - it could fix some game executable files with Runtime error 200 (pascal)
- SHSUCDX - CD rom handler and virtual cd rom driver and imaging utility
- SpeedSys - HW monitoring benchmarking utility
- UMBPCI - alternative memory driver / manager
- Burnmem.sys for limiting max memory for pure Dos to fix too much RAM problems
- CTMouse - freedos mouse utility, less memory used, more options - 2.1
- 3 different CD ROM drivers for physical CD-ROM, because so not working with some drivers, chipset.. sata included, just enable / disable specific line in CDROM block of config.sys its aplied to all branches
- HimemX - to limit max RAM for pure to burnemem.sys + himem.sys alternative.. now its used only for Win9x branches, you can use it for pure DOS, just by comment and uncomemnt 3 lines.
- CHKCPU - cpu info utility up to 2016
- Memory usage detail utility - good to debug
- MTRRLFBE - videocard speedup utility for DOS.
- Rawspeed - Rayers utility to measure disk speed
- Serren - Rayers utility to enable some magic to make Creative card working on some chipsets
- Setmul - utility to enable / disable cpu cache, very good slow down utility, disable L1 could give you something like slow 486 speed on X58
- Shutdown - shutdown / reset from commandline
- Slowdos - slowdown utility, where you can set speed my very small steps
- Udma - driver to speed up files transfers, config is ready for it, just uncomment it if you have enough conventional memory[
- Cachectl Slowdown for Core 2 machines and earlier, not working on X58 in EMS mode
- MSRED Slowdown for Core 2 machines
- Throttle - CPU slowdown utility for Core 2 Duo, not working for X58 in EMS mode
- Vesainfo print info about videocard capabalities use with vesainfo >vesainfo.txt to print it to file
- FEDIT text editor, free Edit.com replacement, i dont mind use something better, but i need to have CTRL+C/P - CLIPboard otherwise no go, so something new, or with customizable keys..
- Doslfn executable in package for long files names support in DOS, not executed by config files, you run it from cmd, i a bit fear of compatibility problem, maybe i dont have any proofs.. + i dont want to waste memory for it. Added to Autoexec, but its disabled by default.
- XHDD alterantive hdd speedup driver experimental, disabled by default in cd-rom block if it would be ok, i will create HDDblock
- Added more Runtime 200 fixing utils and how to use them text files
- Added text info for MSRED usage
- Added SBvarin.txt - with details about SET BLASTER variable
- added SBDSPIN - utility from BloodCactus to display current sound chips DSP version, regarding of info from Kamerat - its changable and could help compatibility. For change DSP is there PCI set utility and magic values - also added to package.
- Dosmax utils to squezee more conv. memory - added to autoexec and config, disabled by default..
- pathb benchmark added to quick CPU benchmark from Vogons, you can report results right here.
- added TP7P5FIX TSR to mitigate Runtime errors 200 when its running, without patching or slowdowns..
- CraigPCI Hardware info utility added
- dosgligl.png - Dos glide games +compatibility list Vooodo/Vooodoo2 included, its *.png so you could need some picture utility for DOS, i dont know anything particularly good and free
- 3DFX pack - pure Dos drivers for V1/V2/V3, compatibility list, list of glide variables and some glide batches
- MPXP player - Dos audio+MP3 player, it could too play sound from some AVI files.
- cbppatch more powerfull runtime error 200 patch, can work with some compressed Exe too, other fixed not decompressing by other tools
- PCIset for Yamaha DSP version changing and magic value, dont worry its only for 1 boot session
- font fix *.sys added, it fixing font in few games as Simcity and some setups on some cards - because vesa consorcium actually recommended its address for something else and created that patch.. more details: https://www.uwe-sieber.de/util_e.html, more info
- mTCP dos TCPIP networking stack added
- ETHERDRV for Dos pure box ethernet packet drivers - # of number of drivers will grow over time
- FreeDos Devload for load of *.sys drivers without Config.sys was added
- NICSCAN - utility to print out info about network cards
- HexIT dos Hex Editor
- Kamerats Scripts for adjust ESS SOLO1 soundcard parameter and inicialize it without ESS drivers, it could it could make some games working with sound - details..
- Chainsaw deletting utility form Dave Dunfield, for dont ask quick directories and files removal
- Keymap utility for remapping keys in Dos from Dave Dunfield
Download: // last version(eurotime): 2018-11-13 - Because of Dropbox, just click on ... symbol in right upper corner and Download.
https://www.dropbox.com/s/4g8snw60ouf1jzl/DRI … 181113.zip?dl=0
Recommended utils which cant be include because of licensing or other reasons:
- Acrobat reader 1 for DOS - for pdf manual reading
- Arachne 197 - Internet browser - i dont share it, because i have there some history, share passwords etc and annoying delete it with every Drivers and tools release
- MS Code View its great for problematic games debugging, i just started to use it, but its powerfull
- HWinfo - Hardware info utility - note it doesnt like EMS
- CheckIT - for Interupts and memory info - great for EMM386 parameters tunning
- NTFDos from system internals - read only, great if want just copy some files from NTFS partion to FATX one without reboot on machines with modern Windows..
- QEMM - memory manager, i using QEMM97 - it has DOS version too
- RAR - dos - for archive extractions
- Sea 1.3 picture viewer
- System info
Licence thing - if you own right on something in package or know about some licence problems with included utility, just write me PM i will remove it.
- DrST started List of programs that require EMS, game on this list not work with NOEMS,Realmode and Protected mode and UMBPCI mode. 90%+ of game on my list are worked with EMS mode, but EMS not really required for them..
- im using doskey 2.8 (10KB) - i have that is not source of some incompatibility
- there is mouse driver and CD ROM driver loaded (there both MSCDEX and SHSUCD (less memory, maybe some compatibility problems) options - just enable /disable what you want)
- for now no DOS4GW extender fix, not slowdown utilities, not UNIVBE etc.. - this has to be discovered and checked, i dont know too much about these topics
- if you want to use my config files, you would need (or just REM Them) some utils which i dont included, because i not sure about licenses - Doskey,HimemX,File Wizard.. there aslo used some utils like SMARTDRV.EXE, EMM386.EXE and MSCDEX.exe - where is expected C:\Windows - Win98 installation directory.
- new config files - so much better funcionality, proper branch names, better comments, but there is some error - which probably has not effect on function, it depends on which branch is used is repported on different line (because of branching), it point to include of my common block, but i dont know - help is welcome.. In common block are only some country and code pages settings - nothing important
- if you prefer something simple and dont mind if some your games will not just work without trying to press F8 (enable line step by step) at start of Dos loading:), you can use these config files from Dr_St(ems branch only).
Because i hit maximum post length limit.. Post continue in post #2.
Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.