DOS Memory Explained

  Рет қаралды 26,248

PhilsComputerLab

PhilsComputerLab

Ай бұрын

DOS games are awesome, but many have tricky memory requirements and there are terms like conventional memory, extended memory and expanded memory that can be confusing. This video explains what's going on in an easy-to-understand manner.
MS-DOS Starter Pack: www.philscompu...
💙 Consider supporting me 💙
Patreon: Get exclusive early access, behind the scenes, pickups, extended gameplay, first impressions, private discord server and more: / philscomputerlab
PayPal donation: www.paypal.me/...
Disclosure: Below are affiliate links, and I may receive a commission if you make a purchase.
Amazon: amzn.to/3fvz8sg
eBay: ebay.us/bKzLAW
Buy games from GOG: track.adtracti...

Пікірлер: 314
@Blackadder75
@Blackadder75 Ай бұрын
When I was 15 I could do all of this in my sleep, but I forgot all of it, this is a really nice walk down memory lane...
@lucasrem
@lucasrem Ай бұрын
We learned it at school, i will never forget it, how you address memory. Extended memory, or expanded memory, above 640 k, so you needed to address it yourself, to get access to it.
@dallesamllhals9161
@dallesamllhals9161 Ай бұрын
Tee-hee...I was getting tired* - learning at 15...(C64. Amiga 1200...then 486 DX2 66MHz...) *Got a bit spoiled by Workbench 3.0/3.1 vs DOS 6 and Windows 3.11
@Michael_Brock
@Michael_Brock Ай бұрын
Remember hours of fun (not) running qemm to optimize memory management. One of my configs had 720 odd k of conventional memory. Accessed HMA and freed monochrome region as conventional memory. Dos and as many drivers loaded high ie above the conventional memory up to 1 meg, with some bits in HMA ie base 64k of extended memory.
@charlesswenson259
@charlesswenson259 28 күн бұрын
I'll never forget having my grandpa make me a boot disk for ultima 7 due to it being finicky about xms. He's still a chill dude at 94 years old
@eitantal726
@eitantal726 26 күн бұрын
I remember getting hard drives recognized was difficult. you needed to enter the parameters in the bios
@bytesaber
@bytesaber Ай бұрын
This is the lecture that did not exist in 1994 when I needed it. How did we learn any of this before? This video will be referenced in my hobby from now on. Thank you for the very broken down steps showing everything before and after with every adjustment to the startup files. This video explains more than searching the web has provided me. It shows experience applied and examples. It's great!
@billcook4768
@billcook4768 Ай бұрын
CompuServe
@rahulraina2667
@rahulraina2667 Ай бұрын
I was just wondering the same. I believe we were kids who just knew to RTFM and figured it out!
@philscomputerlab
@philscomputerlab Ай бұрын
Yes readme files, help documents and computer magazines...
@ctrlaltrees
@ctrlaltrees Ай бұрын
"DOS games are absolutely beautiful" Instant thumbs up 😁
@IOSam
@IOSam Ай бұрын
Ah if we only had Phil's legendary DOS boot menu back in the early 90's... Our lives would have been so much easier back then!
@the_kombinator
@the_kombinator Ай бұрын
Boot disks - lots of boot disks ;)
@myne00
@myne00 Ай бұрын
Many existed. It was just harder to share because of the lack of internet.
@lucasrem
@lucasrem Ай бұрын
@@myne00 BBS was good enough !
@ruevs
@ruevs 25 күн бұрын
My boot menu in the 90-ties has 15 items... Win98+QEMM386+4DOS...
@OpenGL4ever
@OpenGL4ever 22 күн бұрын
I created my own DOS boot menu in the 90s. I had about 6 menu entries. It looked something like this: 1. Only Conventional Memory 2. EMS without CD-ROM 3. EMS with CD-ROM 4. XMS without CD-ROM 5. XMS with CD-ROM 6. Windows 3.1 with CD-ROM With these entries I was able to cover 99% of all programs. I only needed a boot disk in one case, but I was too lazy to create a new entry for it and it was only necessary temporarily. Of course, you needed MS-DOS 6.0 or an alternative DOS that could do this. Boot menus were not possible with MS-DOS 5.0, so MS-DOS 5.0 users were the people who used boot disks.
@gavinc5255
@gavinc5255 Ай бұрын
THANK YOU! I have quite literally spent this morning trying to work out EMM386 on a 386 I’m installing Tie Fighter on after recently doing a full refurb! I’m new to dos gaming so was getting memory errors and this vid helps soooo much! Great explanation and help!
@TheOneRobUK
@TheOneRobUK Ай бұрын
Definitely get his Ms dos starter pack if you haven't, helped me so much in the past when I first got reacquainted with Dos. Wish I had it in the 90s 😂
@gavinc5255
@gavinc5255 Ай бұрын
Thanks… yes, I have been all over the website now. So much useful stuff there! Even the ESS drivers for the sound card I picked up! And Tie Fighter (and Monkey Island and Wolfestein) is now running great thanks to freeing up some conventional memory and setting up the rest properly. Big help!!
@tdome3000
@tdome3000 Ай бұрын
@@gavinc5255 I've played the Tie Fighter demo for countless hours, until I got the full game a few years later.
@jordancobb509
@jordancobb509 Ай бұрын
This brings back memories. When I was a kid I was the king of configuring boot floppies for my friends to get those old Lucasfilm games to work. Especially getting the serial mouse and soundcard to work at the same time. Good times!
@OpenGL4ever
@OpenGL4ever 22 күн бұрын
There is a windows 9x version of Tie Fighter. It doesn't require EMM386 and offers textures. Good old games does have this version.
@damsonn
@damsonn Ай бұрын
I rember back in mid 90s I was able to tweak the autoexec.bat and config.sys to fit all the drivers for mouse, CD-ROM and sound card and still had 610k of conventional memory left. I was able to run Falcon 3 no problem (it required a lot of memory IIRC).
@ZXSpectrumHotel
@ZXSpectrumHotel Ай бұрын
Memory management was an art. QEMM was quite good at it IIRC. You just scratched the surface with two TSRs. Things become more tricky with EMS page frame and more drivers for sound card and etc. in upper memory.
@kosmosyche
@kosmosyche Ай бұрын
I remember the worst offender was Ultima 7, which needed lots of conventional memory (around 585-590K, if I remember correctly), but refused to work with any standard or popular expanded memory managers like EMM386 or QEMM. It had it's own built-in bespoke "Voodoo" memory manager, that just didn't play nicely with them. I remember I had to make "special" config for this game alone. It was a bit of a headache, also because you basically required to somehow cram smartdrv.exe into your "lean" config no matter what, because of Ultima7's constantly accessing HDD that slowed things down on an uncached HDD and made everything choppy. (Smartdrv is a standard MSDOS hard drive caching utility)
@RetroGamingNook
@RetroGamingNook Ай бұрын
I think we commented this at the same time, but you have really dug into the issue. I consider the challenge part of the game. 😵‍💫
@kosmosyche
@kosmosyche Ай бұрын
@@RetroGamingNook Yeah, I agree, there was some nerdy beauty in it for sure, learning how to solve things just to play your favorite games. I know I felt proud of myself when a game I had problems with finally loaded.
@DerekLippold
@DerekLippold Ай бұрын
I remember having to make boot disks for games sometimes to get them to run
@philscomputerlab
@philscomputerlab Ай бұрын
OMG Smartdrive, yes I remember using this a lot also. It also helped with caching CD. Now with modern flash based storage, I never use it.
@johnmijo
@johnmijo Ай бұрын
I used QEMM back in the day as well and then started creating a custom DOS boot selection according to the game I was trying to run, either Extended or Expanded memory configs or neither as the case maybe.
@RetroGamingNook
@RetroGamingNook Ай бұрын
Ultima 7 was the most difficult game for me to configure memory in DOS way back.
@the_kombinator
@the_kombinator Ай бұрын
They literally give you the option to create a boot disk - or make one yourself with just a mouse driver, himem.sys, and a BLASTER environment. Sometimes, on certain machines, I am able to run the game in EMM386 (somehow - but it's not stable)
@dallesamllhals9161
@dallesamllhals9161 Ай бұрын
There was a 2D platform game that needed 613 or was it 618KB of RAM 😲 ^was pretty close to run back to my now NOT supported Amiga 1200 in late 1994...
@MarkTheMorose
@MarkTheMorose Ай бұрын
I came to the PC from the Amiga, in mid-1995. I only had a short while of messing about with memory configs until Windows 95 came along, though DOS games still ruled the roost for another year. Memmaker was sufficient for me most of the time, but the whole experience was shocking to an ex-Amiga man. I suppose I'd been spoiled! I think only because I was young and had the burning desire to play the likes of Doom and Little Big Adventure did I persevere. I'm not sure I'd have the energy or motivation if I had to do it now, nearly 30 years later.
@Dukefazon
@Dukefazon Ай бұрын
I too came from the Amiga to PC gaming but I switched only in when Win98 SE was out. I didn't have any trouble playing older DOS games but this year I put together a cool little 486 build and I had my fair share of headaches configuring the memory just right, going back and forth between games to see what runs and what won't run now after I changed something. Luckily today we have all sorts of forums and articles that can help us so it's much easier to understand what is actually going on in the machine than back in those days.
@MarkTheMorose
@MarkTheMorose Ай бұрын
@@Dukefazon PC vs Amiga; makes a change from Amiga vs ST, I suppose 😀 One of the shocks I had was finding that Desert Strike on the PC had an extra mission or level, but as well as being more tricky to set up, the sound was poor in comparison to the Amiga version. In fact, I think the Amiga was the only version where the men you're meant to rescue shout 'over here!'.
@emmettturner9452
@emmettturner9452 Ай бұрын
I got my first PC in 1996 and immediately ran into an issue where I only had sound effects in Windows and CD-Audio in real-mode DOS. There simply was no way to have both with my IBM mWave combination sound card + modem. It also caused an issue with MIDI playback on dial-up webpages since the modem was in use.
@philippkemptner4604
@philippkemptner4604 Ай бұрын
I had the same culture shock coming from Amiga to PC.
@Shmbler
@Shmbler Ай бұрын
Disregarding the raw CPU power for Doom, my switch from the A500 to a DOS PC was quite a setback in many regards. At least until a good year later Win95 was released. Hadntt Commodore gone bankrupt shortly after Doom was released, I would probably have bought an A1200 instead.
@hyznth
@hyznth Ай бұрын
I'm using your Bootmenu on several computers and it's super useful! Both in pure DOS and combined with WIN98 DOS Mode. Thanks for putting it together! :)
@philscomputerlab
@philscomputerlab Ай бұрын
Awesome :D
@srideepprasad
@srideepprasad Ай бұрын
Ah.. the good old days. I recall emm386 and the more advanced qemm386, all do save a few tens of kbs of conventional memory.
@timothyseidel527
@timothyseidel527 Ай бұрын
Great video. You have explained the way MS-DOS uses system memory very well. Keep up the great work.
@Aquineas
@Aquineas Ай бұрын
One other trick we used at the time was using program overlays to work. This would allow you to swap out portions of your code to disk, freeing up RAM. Microsoft invented the concept, but you had to manage which code you wanted to overlay very carefully. Then Borland came around with VROOM (which iirc stood for virtual read-only object oriented memory) and made it exponentially more flexible. These were the predecessors for DLLs, which can still be manually loaded or unloaded if someone wanted to go through the trouble (though more often than not people rely on the linker to automatically load or unload).
@MarcoGPUtuber
@MarcoGPUtuber Ай бұрын
Phil's Computer Lab explained: Great channel.
@philscomputerlab
@philscomputerlab Ай бұрын
❤️
@davidg5898
@davidg5898 Ай бұрын
In hindsight, I think I enjoyed the memory optimizing/troubleshooting more than the actual games themselves!
@dallesamllhals9161
@dallesamllhals9161 Ай бұрын
PLEASE try it again....then tell US about it 😛
@OzzFan1000
@OzzFan1000 Ай бұрын
DOS's MEMMAKER was ok for systems with minimal TSRs loaded. QEMM's OPTIMIZE and Netroom's CUSTOMIZE (which MEMMAKER was based off of) could produce much better results.
@nickwallette6201
@nickwallette6201 Ай бұрын
The family computer used to have QEMM on it back in the day. However, it seems like, now, it isn't as useful. I rarely have any issues getting software to run with just some minimal DEVICEHIGH statements added to CONFIG SYS, even with sound, mouse, and even SCSI drivers loaded. But, when I loaded QEMM386 just for old time's sake, the default results from OPTIMIZE gave me tons of conventional memory (more than I had, but also more than I needed), and made the system much more prone to crashes for the privilege. At some point, I'll probably try again and see what's going on, but for now, I don't really have a reason to bother
@OzzFan1000
@OzzFan1000 Ай бұрын
@@nickwallette6201 yeah, QEMM's ROM Stealth technology certainly caused a lot of problems with software accessing ROM locations directly instead of accessing them through DOS functions. Netroom's Cloaking utility seems to fare better in the compatibility department. If you use "cloaked" utilities, they only needed to put at minimum a 1k stub in an upper memory block while the rest of the application could be run from XMS. Netroom included their own disk cache and ram disk, while Logitech's 6.4x mouse drivers also supported cloaking. This configuration leaves lots of free conventional memory as well as allowing more room in UMB for more TSRs.
@SOLIDNecro
@SOLIDNecro 13 күн бұрын
I have spent the last 2 weeks testing my late 90's early 2000's hardware, and your videos have been invaluable to me getting things up and running again! Thanks Phil, your the man. I have my K6-2 @605mhz w/ Voodoo 5 5500 finally working, but still having fits with my old copy of 98! (Missing cab files error) I also have piles of ddr1 and other video cards I just tested on my Thunderbird 1400 system ready to go. Sorry no DOS comments, I was just so exited I had to share with you since you've been a big inspiration to me!
@philscomputerlab
@philscomputerlab 7 күн бұрын
Thank you! It really is a great hobby, taking us back in time :D Also a great community to be part of with many awesome people and there is always something new to learn...
@Super123456789Kuba
@Super123456789Kuba Ай бұрын
I always wondered what was that DOS/4GW thing when running more modern DOS Games, like The Settlers II. Now I know, nice. 😊 Nice to see you explaining the RAM situation in DOS, since things without DOS/4GW were a bit confusing to me, didn't really understand it well and just gave it a rest. This video makes it easier!
@OpenGL4ever
@OpenGL4ever 22 күн бұрын
The W stands for Watcom because DOS/4G was shipped with the Watcom C Compiler. This led to many game developers switching to the Watcom compiler and programming their games with it. As a result, many games that used DOS/4GW followed quickly. Of course there were other DOS extenders, but they mostly came later.
@bitdevice
@bitdevice Ай бұрын
I remember coding my own games and demos using EMS memory and how much I hated that environment. I wanted to use DOS/4GW and linear memory but before Internet it was hard getting the information you needed.
@captainwasel8377
@captainwasel8377 Ай бұрын
Gotta love when Phil uploads a video. I always appreciate your knowledge and dedication to the retro community. Looking forward to seeing more of your amazing content.
@losalfajoresok
@losalfajoresok Ай бұрын
Thanks!! even I understood some of this stuff in the time, there were a lot of technical aspects that didn't fully understand until today
@ndaniel80
@ndaniel80 Ай бұрын
Great tutorial and perfect timing again :) Since yesterday I was trying to pass the magic barrier of 610kB but without success on my recent buy, 26 years old Optimus Prestige 98' (polish brand very popular back in the day) with Pentium II 233MHz and famous, noisy as hell Quantum Big Foot 5.25'. The problem I had was however a very little amount of UMB in general - only 22kB. Adding the parameter I=B000-B7FF to EMM386 solved the problem so I finally got around 54 kB of UMB and 613kB free conventional memory. Later after some testing I have still changed it to I=E000-EAFF to avoid potential collision with Monochrome Text memory. Maybe that hint will help anyone here as well 😅 Have a great Retro Weekend Fellows 😊
@philscomputerlab
@philscomputerlab Ай бұрын
That is deep dive stuff, once you specify own memory ranges. Well done!
@MuffledMosquito
@MuffledMosquito Ай бұрын
I remember when I learned about the monochrome text memory area and that is what I always used afterwards. I don't remember it ever causing issues with whatever software I used.
@efpcvintageplanet3406
@efpcvintageplanet3406 Ай бұрын
Once again a precious content for retrogaming lovers. Thank you for sharing this valuable tutorial❤
@jbinary82
@jbinary82 Ай бұрын
There's the article "From 0 to 1 MB in DOS" from Julio Merino which explains this in detail. It is a must
@AncapDude
@AncapDude Ай бұрын
Just read it. Very good one.
@GoranObal
@GoranObal Ай бұрын
When we had our 486, most of the times memmaker did a solid job. But then we got some games that required even more free memory and we could not play them. The solution came with getting the QEMM. That really further freed up the memory and afterwards we never saw memory too low messages again. Of course we also needed the dos boot menu, because some games just did not like QEMM. One I can think of that was complaining was Micro Machines II, but there were others, of course.
@lestersegelhorst2776
@lestersegelhorst2776 Ай бұрын
It's interesting to see an upsurgence of interest in pre-windows software and hardware that many consider to be just obsolete and useless. Perhaps as the industry moves toward ARM architecture and emulators of old software (Sorry for the use of "old") a new appreciation of of what was will help to preserve a lot of digital history being actively lost to "progress" This video really brings back memories of the driver gymnastics everyone had to preform just to have some fun.
@ddaymace
@ddaymace Ай бұрын
Great job Phil. Brings back memories of configuring WC and other games. BTW I found your boot disk very useful in my retro machine!
@retroboby007
@retroboby007 Ай бұрын
Interesting video about the begining of the 640k and more ram later. Back in the day, on my first pc, Apricot Qi 386SX 16 mhz, with 1 mb ram, I was juggling with emm386, himem.sys and loading the mouse only when needed for few games and win 3.11. Your ms-dos startup pack is legendary man. I think it ibecame a standard for retro systems up to 486.
@SneakiestDuke68
@SneakiestDuke68 Ай бұрын
Very helpful video to understand how memory management works on DOS. Thanks for fan drivers for mouse and cd rom i got plenty of conventional memory to run Aces of the Pacific. Aces of the Pacific and Aces over Europe for example needs 610K of conventional memory and 311K of Expanded memory.
@wolfmanjackxl1691
@wolfmanjackxl1691 Ай бұрын
Back in the DOS days I was quite proficient with tweaking autoexec.bat and config.sys and it was such a monumental moment when boot menus became a thing. A while ago I built a late DOS and Windows 95 gaming PC with an AMD K-3 II 400 MHz and your resources where a godsend to get everything up and running. Keep up the good work Phil!
@TheDarkWizard
@TheDarkWizard Ай бұрын
Kind of left out one option to keep your UMB memory with no EMS activated just need to change EMM386 to "DEVICE=C:\DOS\EMM386.EXE NOEMS" which give you upper memory without having Expanded memory active
@SergiuszRoszczyk
@SergiuszRoszczyk Ай бұрын
Yes and no. It still switches CPU from real mode to Virtual 8086 mode, which freaks out some games
@AncapDude
@AncapDude Ай бұрын
​@@SergiuszRoszczykAnd apps
@billcook4768
@billcook4768 Ай бұрын
I remember having a NOEMS command in some of my batch files. Haven’t heard/thought about in once in the 30-ish years. Then I read your post and it all came back to me.
@martli837
@martli837 Ай бұрын
This is so well explained Phil, thanks for clearing this up as it’s something I knew about but didn’t really ‘get’. Hasn’t been an issue for me anyway as I have been using your starter pack on my retro PCs ever since I found out about it. Super useful and means MS DOS ‘just works’.
@philscomputerlab
@philscomputerlab Ай бұрын
Awesome 😊😊
@j.l.gonzalez8918
@j.l.gonzalez8918 Ай бұрын
Not only your DOS customized menu is great, all the stuff in your website is of great help. Every time I have to deal with Soundblaster drivers and configurations I just need to go to your web.
@dsquared600
@dsquared600 Ай бұрын
Thnx for this explanation! Learned a lot from all your videos! greetings from the Netherlands! 💪
@Nutricula87
@Nutricula87 Ай бұрын
I've been using your startup pack for years now with my pure dos gaming builds. Thank you, saved me a lot of time.
@kasimirdenhertog3516
@kasimirdenhertog3516 Ай бұрын
Great nostalgia! Love the marketing @ 4:40 where they are trying to convince people the Conner drive may have slower response times but is more power efficient - saving 0.75W! Three quarters of a watt, that's just cute in today's world.
@Shmbler
@Shmbler Ай бұрын
Very good introduction into the topic. When I was 19, ppl would invite me to do just that. To optimize their conventional memory so they could run their favorite games. Surprisingly, even till the end of DOS gaming, not every game used a 32 bit DOS extender. Even though they had been available for years. And MS itself clearly didn't invest any work into DOS itself anymore at this point, so ppl had to use 3rd party tools like QEMM and the likes to automate the process somewhat.
@ronm6585
@ronm6585 Ай бұрын
Thanks for sharing. I used to love to play around with the memory management for games.
@ivanmastrandrea5482
@ivanmastrandrea5482 Ай бұрын
Your MS-DOS super easy is a life saver for many of us noobs!
@techdistractions
@techdistractions Ай бұрын
Excellent video :-) Continuing the gold standard for tutorials and explanations behind retro tech challenges 🎉
@radiozelaza
@radiozelaza Ай бұрын
the hardest game to run under DOS for me regarding memory was SEAL Team, which required 600k conventional memory, but I also had Gravis Ultrasound requiring Ultramid resident program for the sound, and a basic mouse controller... I was forced to create a completely dedicated setup for SEAL Team alone, stripped of all resident drivers or whatever, just EMS, mouse and Ultramid. Fortunately MSDOS 6.0 made it possible with a start-up menu
@billcook4768
@billcook4768 Ай бұрын
As a fellow GUS owner, I feel your pain.
@AmyGrrl78
@AmyGrrl78 Ай бұрын
I remember setting up a dos boot menu that had a bunch of different memory config options you could select just like the one you showed. Fun times!
@arashjahn
@arashjahn Ай бұрын
Very thorough. Great video. I remember having to learn this via long distance telephone calls to game tech support hotlines when I was 14.
@bpcgos
@bpcgos Ай бұрын
I remember pays my neighbour with a pack of cigarrete back in 98 for a copy of Prince of Persia to play in my junior high computer lab. We used to go there at night, playing games or just playing around with WordStar and lotus123 along with the teacher that responsible for the lab
@comchia4306
@comchia4306 Ай бұрын
With the Olympics in two weeks, starting with the Accolade Summer Athletics is super appropriate. :P
@Beus38
@Beus38 Ай бұрын
Very nice video, bringing back the nearly forgotten lore of DOS tweaking :) On my systems back in the day (386DX-40, later 486DX4-120), I did an awful lot of manual memory tweaking, mainly for exactly this one purpose - making my games run :) I had quite a few TSRs loaded which I did not want to work without, so it sometimes took some trial and error to get it right, but I did succeed for each and every game I had :) Back then, I did not know about the boot menu possibility, but even if I did, I would probably do without it - my setup was as follows: I created (and pimped up to the absolute limit of what's possible within the constraints of the goal in mind) several different sets of CONFIG+AUTOEXEC files that covered all possible scenarios of memory requirements for various games. (continuing in the replies - my original post is simply disappearing, so I'm forced to split it)
@Beus38
@Beus38 Ай бұрын
Then, I created my own program called the autoexec manager that replaced (or kept) the current autoexec+config with one requested by the commandline. If it actually did any change, it automatically rebooted the computer afterwards for the new config to activate right away. Then, in every game's directory, I had a file called "!.bat" (so that it was always first in the list) which called the autoexec manager with the appropriate parameter for that particular game first thing, and then proceeded to load the game, possibly preceded by loading any sound TSRs (I had a GUS PnP, so my setup was even more complicated as I had to tinker with iwsbos/megaem much of the time - and this batch file always loaded the one that was working with that game).
@Beus38
@Beus38 Ай бұрын
That way, I did not have to remember any game requirements - neither memory, nor sound driver ones - if I wanted to play a game, I just ran the batch file in its directory, and if my system had a different autoexec+config currently active, the computer simply rebooted. Then I went to the game's directory again, ran the !.bat again and it loaded the proper sound TSR for me, if necessary, and ran the game - and it worked with no further effort or thinking ;) So I only had to find the right configuration for each game once, and forget about it :) So, in this sense, it was an even better setup than a boot menu, because with that, I'd have to remember what the requirements of the game I intend to run are, before the system even boots up :) Well, I have always liked creating kinda unconventional solutions to problems that I encounter, and this was one of them :)
@philscomputerlab
@philscomputerlab Ай бұрын
@@Beus38 Very clever!
@TheOneRobUK
@TheOneRobUK Ай бұрын
Good explanation, made me realise my USB driver lines for DOS were running in conventional. Only thing this and the starter pack cant do is the opposite and limit your max memory for games like Aladdin which won't run with more than 32mb of ram. Memeater to the rescue. Though I did use your starter pack as a starter to cobble a new bat file to adjust my ram with memeater on 5mb increments to my needs. Love your stuff Phil ❤
@philscomputerlab
@philscomputerlab Ай бұрын
Need to try out memeater and Aladdin the next time I'm working with Socket 7 machine!
@TheOneRobUK
@TheOneRobUK Ай бұрын
@@philscomputerlab 😀 enjoy your coffee
@techkev140
@techkev140 Ай бұрын
I wrote a short paragraph in college to demonstrate what had to be done to get a program to run on DOS, during the Windows 9x period. It was a sobering reminder that it was not easy for novice users of the time to get games running. Despite Microsnot's plug and play OS auto running CD-ROM on insert. Games were still mostly DOS games and Windows still needed DOS for a few more years.
@matthewday7565
@matthewday7565 Ай бұрын
Level 1 upgrade - where using EMS, move the page frame down to C800 running on from where the VGA BIOS finishes - this avoids splitting the upper memory (All the MEMAKER shenanigans is about dealing with split upper memory, optimizing the block fit). Ninja level .... JEMMEX to provide both XMS and upper / EMS. Double ninja level, using UMBPCI to create upper memory in real mode, which MAY work with software that does not tolerate V86 mode. MGDX has some guides... 644,048 free conventional memory
@jorgeandrade20
@jorgeandrade20 Ай бұрын
Your videos are always jam packed with great information and are always very well polished. I think a great segway on this topic would be another video explaining what CONVENTION/EXPANDED/EXTENDED memory actually is and how the system uses it.
@lucasrem
@lucasrem Ай бұрын
he only needs it for games, load it in high memory is enough
@jorgeandrade20
@jorgeandrade20 Ай бұрын
@@lucasrem I was asking for definitions.
@AshtonCoolman
@AshtonCoolman Ай бұрын
Of all the people I'd expect to have access to a 286, you're the first on the list. We have to find you a proper 286 to play with!
@billcook4768
@billcook4768 Ай бұрын
I had a Gravis Ultrasound. Amazing bit of hardware, but the drivers made it a serious challenge to free up memory.
@SireSquish
@SireSquish Ай бұрын
I have kept all my old startup config/autoexecs from back in the day. They are fairly similar to yours, although the language used in the menu options is a lot closer to what you'd expect from a teenager.
@el_yemo
@el_yemo 29 күн бұрын
So many memories with DOS and older windows. I had issues with Lotus III when I tried to run on DOS mode in windows 98, I had to use MemMaker and it ran without any issues.
@Fender178
@Fender178 Ай бұрын
Oh the old Memory layout of DOS the normal 640K of the OS and the rest in high or extended memory area. I remember those times very fondly. I remember having a Tandy 1000 286 with 768K of RAM and that sucker could run KQ4 SCI. I had like one memory issue with using DOS and that was trying to play Duke Nukem 3D with only 8mb of RAM and it required 16mb. The only other issues under DOS that I had is with IRQs and getting the sound drivers to wok.
@Omarkoman
@Omarkoman Ай бұрын
awesome video ! brings soooo many memories me tweaking my 286 with 1MB of RAM to get some games working haha ! thank you !
@Cortana_ice_fox
@Cortana_ice_fox Ай бұрын
I managed to get Turrican 2 to run perfectly fine just by removing Upper memory in the configuration section of ms-dos mode under windows 95. So satisfying to get a game that is known to be hard to get running working properly. :)
@roberthines2741
@roberthines2741 Ай бұрын
Wow, this brings back so many good/bad memories getting stuff to run. I actually used DOS 6.22's menu feature to run specific games with their own setup config.sys + autoexec.bat files when I should have done it like you did instead. It would have cut down on the quantity of menu items I had.
@klenchr3621
@klenchr3621 Ай бұрын
awesome video. Wish I had it back in 1990! always appreciate the starter pack. Thanks Phil
@dope002
@dope002 Ай бұрын
I actually enjoyed the tinkering with all such problems and trying to solve them more than I enjoyed the actual eventual gaming :)
@philscomputerlab
@philscomputerlab Ай бұрын
You're not alone! A lot of us for example like playing with the hardware more than actually playing games!
@okaro6595
@okaro6595 Ай бұрын
The EMM386 puts the CPU in Virtual-86 mode instead of the normal real mode. There were third party drivers that could provide upper memory area in real mode. They used the memory manager on the mother board to do it. If you had say 4 MB memory the memory was form 0 to 4 MB but normally the area 640K to 1 MB was simply not used. The drivers could provide the RAM. There was also a trick that if you provided memory to 640 KB..736 KB (704 KB on monochrome display) you could get base memory up to 736 B or 704 KB but if you tried any EGA/VGA graphics mode the computer would crash.
@AndyAKratz
@AndyAKratz Ай бұрын
Used to be a hardcore DOS user when I was very young and still know it like the back of my hand. Used DOS 5.0 on my Tandy 1000 RSX, but had experience even with DOS 2.11 on 8088 and 286 machines at the time. I believe you may have answered a question that's had me stifled for the longest time and that's when I would use EMM386 to enable expanded memory and notice that my 386-SX@25MHZ would run slower. Simply disabling EMM386 and rebooting the system (of course) leaving only XMS (HIMEM.SYS) would result in better performance. Obviously this wasn't an option for games and software that required EMS memory, but now that you mentioned that it puts the CPU in *Virtual-86* mode might be the explanation to the performance drop. On the other hand, this performance drop would not be felt on a high-end 486-DX4 machine or any Pentium computer due to them being significantly faster processors.
@Dukefazon
@Dukefazon Ай бұрын
This is a very interesting and extremely important topic when it comes to actual DOS gaming and not just playing with DOS games on a more modern system. I wrote about my experiences prior here, I learned a lot about the good old DOS's memory management and how to run old games with weird memory requirements. Aladdin is notoriously finicky about the memory settings. Another interesting example was Elite 1-2-3. Elite 1 was small enought that it could fit in my not optimized memory map. Elite 2 didn't start because it required more conventional memory and Elite 3 ran without an issue because it handled the extended memory. Or something like that... But after using MEMMAKER it helped to clean up my autoexec.bat and everything, now Aladdin, Leisure Suit Larry 6, Day of the Tentacle and all the Elite games ran without an issue. Larry 6 froze occassionally but tweaking a config file manually helped with that, I had to lower some caching parameter that was not in the setup program and it worked after that.
@joshj88
@joshj88 Ай бұрын
your wonderfully informative and educational video makes me want to run the Mac OS port of everything.
@MajorCadence
@MajorCadence Ай бұрын
Excellent video and very well explained. This is great for newcomers to DOS! The memory terminology can be really confusing. I have my own startup boot menus with my DOS / Windows 3.11 dual boot. I love to have ultimate control of which drivers get loaded where. I'm running videcdd, mouse, doskey, univbe, and a network packet driver for mTCP along with a few other TSRs. MemMaker does a fantastic job of optimizing and fitting the little drivers in the spaces between the larger ones. I only wish I didn't have to re-run it for every new system or anytime I make a hardware change lol. The flags that it adds to LH determine exactly where the TSR goes in upper memory and if it gets split up into noncontiguous parts. I wish I understood those arguments so that I didn't have to run MemMaker each time. The sad part is that they are apparently undocumented though...
@philscomputerlab
@philscomputerlab Ай бұрын
Nice! mTCP is awesome, but recently I'm leaning towards just installing Windows 3.11 and using a nice FTP client there and running FTP server on NAS.
@dycedargselderbrother5353
@dycedargselderbrother5353 Ай бұрын
The toughest games to run were the ones that stuck with 16-bit and conventional memory past 1993, the DOS4GW era. They tended to require over 600K, up to around 620K if memory serves. That would be okay if nothing else was loaded but having that much free plus mouse, sound, and CD drivers was a huge ask. Even with upper memory, not everything went up there and there wasn't as much usable space as you might think with the 384KB claim.
@lucasrem
@lucasrem Ай бұрын
The biggest afford was running them in protected modes !
@alexsutton85
@alexsutton85 18 күн бұрын
Man, I wish I had this guide back in the late 90s when I was 13 and couldn't get Actua Soccer, Striker 95, Broken Sword or Beneath a Steel Sky to run! 😀
@MaxxJagX
@MaxxJagX Ай бұрын
Ugh, don't get me started on dealing with base memory. The time I spend tweak the sh!t out of my config.sys and autoexec.bat to load high, change order (because that also matters) and making menu options to not load certain things... loadhigh helped for sure
@the1990kman
@the1990kman Ай бұрын
Nice, now I am curious how much memory my retro computers use. I might use this video as a help guide to try and improve the use of memory.
@pikuma
@pikuma Ай бұрын
Thank you for this video. Great content.
@kralg
@kralg Ай бұрын
The main problem I had back then that these DOS tricks were poorly documented or at least access to them was not easy. Experience (checking friends' files etc.) was very important and mostly I was shooting blindly around. Wish we had videos like yours. Lack of documentation had always been a very unfortunate policy at Microsoft, which allowed Linux to gain traction over time.
@philscomputerlab
@philscomputerlab Ай бұрын
Yes! I also had to use a keyboard driver, that used another few KB that US users didn't need. PC magazines were my main resource for knowledge back in those days...
@Pallidus_Rider
@Pallidus_Rider Ай бұрын
Brought back some memories 👍
@PhilipPetev
@PhilipPetev Ай бұрын
Nice video! Memmaker does decent job in optimizing the memory, but the UMB can be optimized even further by placing the drivers/programs manually in the UMB. That can be achieved with the LOADHIGH's /L:x switch , where x is the number/ID of the UMB. You can find the UMB numbers/IDs by issuing MEM /F command. HIMEM.SYS/EMM386.EXE or similar must be loaded, of course. On that topic, for those who use EMS memory: it's a good practice to manually set the beginning of the page frames, so there won't be two separate UMB blocks between those frames (the EMM386.EXE's FRAME=xxxx parameter). Also, some programs like MSCDEX support partial loading in the HMA (/E parameter). Using HIMEM.SYS/EMM386.EXE replacements, like JEMM/JEMMeX, can also squeeze some free conventional memory.
@romanrm1
@romanrm1 26 күн бұрын
Something I clearly do not miss from that era :)
@IanCliveKerrCoelho
@IanCliveKerrCoelho Ай бұрын
Dont forget QMM386, another memory manager. I used it too, very good. But in the end, manually setup resolve all my issues with memory.
@daveholloway185
@daveholloway185 Ай бұрын
Hey you have zoomed out! THANK YOU! Love the channel but the too zoomed in shots were really jarring!
@derenbong6060
@derenbong6060 Ай бұрын
Awesome guide for the retro community! 🎉
@axa993
@axa993 Ай бұрын
25 years later I finally understand this.
@philscomputerlab
@philscomputerlab Ай бұрын
@@axa993 😍
@NickyByloo
@NickyByloo Ай бұрын
I remember those days. It was a meta game on it's own figuring out the memory management to get a game working was its own puzzle.
@boardernut
@boardernut Ай бұрын
Danke Phil, excellent content as always, this helped me a lot
@erikhicks07
@erikhicks07 12 күн бұрын
The trick was, expanding memory using tools that would eat some of that memory. QEMM for example.
@davkdavk
@davkdavk Ай бұрын
Major nostalgia with my early early PC endeavors. 386 and much time spent tweaking
@O.Shawabkeh
@O.Shawabkeh Ай бұрын
"Not enough memory", the mysterious message from my childhood.
@AncapDude
@AncapDude Ай бұрын
@@O.Shawabkeh I remember testing Wipeout from the PS1 on my DOS PC. Surprisingly I could access the disc and there was a WIPEOUT.EXE on it, but it always said "Not enough memory" no matter what I tried. 4 sure it was not meant for DOS either.
@alexandergross7132
@alexandergross7132 Ай бұрын
some more things worth mentioning: before msdos 6.x, a very common thing to use was qemm. it did basically the same like msdos 6.x memmaker did, but way before msdos came out with it. i remember running qemm with msdos 3.31 and later with msdos 5.x, skipping the damn msdos 4.x completely, it just sucked. another dos game worth mentioning was ultima 7, that came out with its own memory manager. i think it was called voodoo memory manager
@pelimies1818
@pelimies1818 Ай бұрын
Falcon 3.0 with some add ons, like Fighting Tiger and MiG-29 was pretty hard to get running. Cannot remember, but I think the tricks in this vid is enough to get the programs running.
@scherge
@scherge Ай бұрын
I couldn't get Lands of Lore 2 and Stonekeep to run on my Pentium 75 with 8 MB RAM. Found an articel in a computer magazine and when trying a few of the commands shown in it to figure out what they do, I accidentaly deleted the config.sys and autoexec.bat. They were there again after a restart, but I didn't have a mouse or a cd-rom drive under DOS and my keyboard was English for the longest time. 😅 And both games still refused to start, since I didn't have a cd drive anymore. That made me stop fumbling around with my memory and set me on a new quest, instead. God, that was so frustrating. Me being 11 years old, no internet, and no one in my family having the slightest idea of how a computer works, much less DOS, I was pretty much screwed for a while and could only do Win95 stuff when DOS was still king. A year or so later, my mother brought a book home from work that I studied for about a week until I was finally able to rewrite the content of those two files, and it felt unbelievable when everything was working again, even the damn German keyboard. After that I was cursed to repair PCs for basically everyone I know for the next two decades or so, but aaaah, those were the days ^^
@ZelosZelo
@ZelosZelo Ай бұрын
I used a bat file that would ask if I was playing particular games then run the extra commands and adjust autoexec and configsys to what I was intended on doing.
@Micha-dx2xw
@Micha-dx2xw Ай бұрын
I remember Dune2 and additional sounds in game when we have uma.
@Bigbacon
@Bigbacon Ай бұрын
Dynamix games... making boot disks was hell sometimes. Like 603k needed or something crazy
@jttech3855
@jttech3855 Ай бұрын
Very helpful. Thank you!
@wertywerrtyson5529
@wertywerrtyson5529 Ай бұрын
I started gaming in the windows 95 era. We had it so much easier. While I did use 3.1 and DOS a little bit it was for very basic games like QBASIC Gorillas that didn’t need more memory.
@smallmj2886
@smallmj2886 Ай бұрын
I had a fancy DOS startup menu back on my first PC. It had options to load Windows 95 as well as Linux using loadlin. I didn't have a bunch of memory options, since most of the DOS games I had were from the DOS4GW days.
@ErrorMessageNotFound
@ErrorMessageNotFound Ай бұрын
memmaker was always hit or miss with me. At some point I switched to PC DOS 7 and used it's "ramsetup" feature and it worked really well for me most of the time.
@ErrorMessageNotFound
@ErrorMessageNotFound Ай бұрын
QEMM and 4dos are worth looking into as well.
@xinaesthetic
@xinaesthetic 29 күн бұрын
I wouldn’t count not having sound as “launching without any issues”… fitting and correctly configuring the sound drivers as well was always a significant part of the challenge.
@philscomputerlab
@philscomputerlab 29 күн бұрын
@@xinaesthetic ? Context?
@xinaesthetic
@xinaesthetic 29 күн бұрын
@@philscomputerlab when you launch Wing Commander in particular, hearing the orchestra tuning sound is what signals to me when the hard work is finally done...
@philscomputerlab
@philscomputerlab 29 күн бұрын
@@xinaesthetic Ahh, yea didn't capture audio 😊
@darkhelmet169
@darkhelmet169 Ай бұрын
DOS Memory management gets even more complicated if you're trying to run a big TSR driver like SBEMU on a newer system. Then you also have to worry about DPMI in 16 or 32 bit, VCPI, using the right memory manager to allow redirecting the DMA controller writes, and some games that still won't work for anything because they demand to be run from real mode and not v8086.
@t.v.9696
@t.v.9696 Ай бұрын
Back in the day I would use a custom loader to make a bootable Windows CD with some file manager, mouse support, high memory and DOS games to play while main OS was down. Those "mix CD's" really impressed my finds 😎. You could call them live CD's, kind of 😊. You really did a great job explaining DOS memory quirks and feature, Phill 😉👍!
@philscomputerlab
@philscomputerlab Ай бұрын
Nice!
@HeiligerGrimmnir
@HeiligerGrimmnir 28 күн бұрын
Man... I was like 8 in 88. Youre a lucky dude. We were so poor we didnt even get an NES til I was in middle school.
@cabbitkisser2620
@cabbitkisser2620 Ай бұрын
back then upgrading your computer was very expensive. but when the early 2000 computer pats were coming down in price.
@CallousCoder
@CallousCoder Ай бұрын
As a assembly developer in the day, I hated the x86 because of its idiotic memory with management compared to the Atari ST (or Amiga). Writing a TSR program was always like playing with the nuclear launch codes 😂Bringing the 386 and up in protected mode was a chore to get protected memory enabled and have contiguous access (if you need it) like we already had with the 68k.
@nickwallette6201
@nickwallette6201 Ай бұрын
Yeah, segmented memory sucks. It's also pretty lame that, during that short window where you had more than 640k, but not just tons and tons of memory, you were effectively wasting that 384k. There was actual RAM there backing those addresses, but it was being given to ROMs instead. (Unless you shadowed the ROMs to RAM for speed.) What a waste.
@biocyber4544
@biocyber4544 Ай бұрын
ooohh! your bootdisk menu has already been updated? i was still using the old one..😅 thanks for this!
@MuffledMosquito
@MuffledMosquito Ай бұрын
The memory juggle used to be a odd fun in itself. Not that I'd miss it really. Well... just a little maybe.
Installing The Sonic Drive-In Operating System
36:26
Bringus Studios
Рет қаралды 400 М.
GAMING on a £0.25 Graphics Card!
33:13
Budget-Builds Official
Рет қаралды 167 М.
How I Did The SELF BENDING Spoon 😱🥄 #shorts
00:19
Wian
Рет қаралды 35 МЛН
UNO!
00:18
БРУНО
Рет қаралды 4,6 МЛН
а ты любишь париться?
00:41
KATYA KLON LIFE
Рет қаралды 2,5 МЛН
The Slot A Paradox: Why It's Overlooked?
18:52
PhilsComputerLab
Рет қаралды 42 М.
Doom didn't kill the Amiga...Wolfenstein 3D did
16:58
Modern Vintage Gamer
Рет қаралды 755 М.
Digital Decay Of 2000's PC Game DRM
17:14
Tech Tangents
Рет қаралды 673 М.
3dfx Voodoo 3 retro review
17:28
PhilsComputerLab
Рет қаралды 100 М.
The Clever Way to Count Tanks - Numberphile
16:45
Numberphile
Рет қаралды 959 М.
Why is HD 1080p? | Nostalgia Nerd
20:59
Nostalgia Nerd
Рет қаралды 267 М.
Storage Media Life Expectancy: SSDs, HDDs & More!
18:18
ExplainingComputers
Рет қаралды 393 М.
Samsung vs iPhone ☠️ #shorts
0:18
My Tech
Рет қаралды 15 МЛН
ПОЧЕМУ МИКРОФОНЫ ИГРОВЫЕ? 🧐
0:46
KEKTAR
Рет қаралды 496 М.
Samsung vs Iphone
0:21
Takadori1
Рет қаралды 17 МЛН
phone for yourself 📱#shorts
0:17
RELAXING DAILY
Рет қаралды 4,5 МЛН
КОМП-ПЫЛЕСОС
1:00
VA-PC
Рет қаралды 756 М.