Why Do You Need DOSBox?
HTML-код
- Опубликовано: 19 дек 2019
- Check out the Massdrop x HIFIMAN HE4XX Planar Magnetic Headphones at dro.ps/tq-4xx-2
Why do you need a PC emulator program to run games on...a PC?
Techquickie Merch Store: www.lttstore.com
Follow: / linustech
Leave a reply with your requests for future episodes, or tweet them here: / jmart604 - Наука
One thing not mentioned why DOSBox is also needed (even for older 32bit OS), is the lack of driver support for essential hardware of DOS era. Like sound cards. Today everything in Windows is DirectX based, including sound, but at those times each card had its own quirks, level of compatibility with older games and special hardware access based on its settings.
I think the last time I was able to use DOS compatible sound card was with Win98. With XP (NT kernel), so many things stopped working altogether.
If a piece of software doesnt run on a newer OS then driver support is moot anyway.
Also, there's a plethora of hardware that works under DOS and newer OSes.
Additionally, older software supporting DOS used standards even when there was no apis available. You dont have to program for specific hardware, you can program for a standard.
I remember Windows XP supporting our DOS games we had on floppies. Those games suppoted essentially only onboard PC speaker, so any incompatibility with sound card wasn't simply noticed. However since we've got new motherboard which didn't include onboard PC speaker, the games produced no sound at all, sadly. Starting with Windows 7 we installed after Windows XP expired its support, the games stopped working natively, so I had to install DOSBox in order to be able to play the old games again. Thankfully, the computer still had its original floppy drive, so I didn't have to download the games from gray corner of the internet. It's impossible now since we've got an entirely new computer. Our old one slowed down so significantly it couldn't perform easy tasks without lagging so much.
@@CZghost You can get external floppy drives if you still want to play the games on modern hardware without downloading.
@@jonnyOysters Yeah, I know. And I certainly want to buy one, just not for my laptop, rather for our new desktop computer. And some brand new floppies (or at least never used ones), too.
The same game could look entirely different on different cards, which still blows my mind
Actually ,even the original 8086 could address up to 1 MB of memory or even more. But it was using the wacky as hell scheme of the real mode.
It was much clearer than the accessing in the protected mode.
@@okaro6595 for small programs yes, but all that wacky pointer math ends hurting on the long run and making you wish you had linear memory access.
Unless we're talking 286 protected mode, that one was disgusting.
That's because it had segment and offset registers which were 16bit but overlapped meaning with different combinations of segment and offset registers you could get the same memory location. The resulting address width is 20bits meaning 1MB as you have said. Nowadays actual addressable memory is along the lines of 40bits depending on the architecture. 64 bit CPUs do internally have 64 bit registers but addressable memory is locked essentially.
Their whole explanation of CPU (instruction) bit width to memory address size capability was completely wrong. Even the 4GB RAM limit that Microsoft puts on 32-bit versions of Windows is completely arbitrary and not actually based on the limit of the CPU, but rather marketing.
The original 8086 had a 20-bit memory address space.
Why do you need DOSBox?
1-Play Doom
2-Play Doom II
3-Play FInal Doom
4-Masters of Doom
5-Plutonian Doom
6-TNT Doom
7-Repeat.
Awww yeah.
You forgot about duke nukem, Shadow warrior, and blood. Oh yeah and also heretic and hexen as well. Even some versions of the original quake
A sourceport like Chocolate Doom will give you a better (and more authentic, believe it or not) experience on a modern PC than running Doom in DosBox will... Same goes for the Chocolate variants for Heretic and Hexen.
@@AFFL1CTED1 Yeah no one uses the original DOSBox to play games, we all use ports to scale 1080p and stuff
There are flash ports of Doom on newgrounds though 🤔
Do note that every x86 or x86_64 processor can run in real mode so you could install DOS (putting driver issues to one side for now) and play games completely natively but you would have to reboot each time you wanted to switch between Windows and DOS
Yes but the only with PC speaker sound
@@intel386DX - Sad but true. I have a PCI Express serial card, but no PCI Express Sound Blaster 16...
@@LordRenegrade even PCI sound blaster compatible cards are rare , I do not think that PCI-express Sound Blaster compatible even exists
2:37 talks about Virtual 8086 mode, shows an 8085
I noticed that as well.
A 8088 would have at least been more appropriated
80
I own a Tandy TRS Model 200 that has an 8085 in it - kind of an improved Intel 8080, which CP/M was geared around (though the Zilog Z80 sort of cornered the CP/M scene). The Tandy doesn't run CP/M - it has niffty ability to switch between a suite of built-in apps that are bank switched - makes for very brisk access to productivity apps. Kind of impressive for 1984 tech given the limitations of the hardware
THANK YOU for this video. I can't believe how hard it's been to find information explaining WHY you can't run lower bit apps on higher bit systems, not just that there's compatibility issues. Like, yes, I know they don't work. No one wants to explain WHY. Again, thanks.
@1:29 Looks like Madison was bending the pins on that CPU
how about emulating 32 bit emulator to emulate 16 bit programs, on a 64 bit machine ?
how about
*no*
you forgot 8 bit
At the end you will trapped inside of a matruschka doll.
*Harvard wants to know your location*
@@cesaru3619 there is no 8 bit x86 cpu
I've been using DOSBox for over ten years now. It has improved significantly since I first found it.
Use dosbox at work,
MOUNT C
C:
Aaaah can't remember the other commands😭
1. use the wiki
2. autoexec
mount c c:\dos\
autoexec.bat
DEL /F *
who the f use mount command in dosbox? lol use a frontend st00pid.
DIR/W
640K RAM is enough for everyone!
Yes, I am that old.
HIMEM.SYS determined that was a lie...
You will never need more than 640 kilobytes of RAM -Bill Gates
@@markusTegelane Last HIMEM.SYS XMS driver use 4GB address space on Intel 80386DX and newer CPUs in 16 bit mode. But a lot of memory is not free to use.
I like to use the linear framebuffer in DOS/DOSBOX located in the 4.th GB. Linear address in hex C0000000 with S3 config in Dosbox. In some weeks i am 60 years old.
@@drabberfrog And now Windows can eat up 2GB of RAM and make a dual core PC barely usable.
Well lucky for me my 486SX/33 with my Pentium Overdrive slapped in a few years later is still kicking! If memory serves me it’s running DOS 6.21 last I remember. Made by AOpen if anyone remember them.
I remember them, and they made a Pentium 4 class motherboard I'd LOVE to get my hands on... it has a tube, a real, glow in the dark vacuum tube, in the audio section.
Software never rusts
Oh feel the speed of that 386 SX. Upgraded to DX and that sweet math co-processor. Grand Prix Legends loved it.
Yeah i pulled out my 486SX and popped in a 486DX. I was flying high
ok grandpa.
Emu87.exe is your best friend on 80386sx. Start to use my first fpu opcodes.
I was working on a project to replace this really old Windows 98 machine that ran a legacy MS DOS program. The first solution was to use a older version of VMware that was compatible with Windows 10 and supported VM of FreeDOS. We couldn't get the parallel card to recognize and the screen resolution would not scale to any monitors. We eventually settled on just installing FreeDos and make a FreeDOS and all hardware worked.
I love the "SourceFed" like video format. Keep it up and maybe do multiple subjects with differing hosts in one video like this. That would be amazing!
I think an important point is missing: Programs aren't just written to run on the hardware but also communicate with the OS (a lot) and if the OS changes some of this doesn't work anymore. Typical example is old programs trying to write to random folders in C:/ which there is no access to anymore in modern windows versions. Back then the whole concept of access rights did not exist ... Edit: Also user and application data was the same thing. Now savegames would have to be written in specific folders for the windows user while back then they usually went into the same folder where the program is installed into (which will now be read only)
Good presentation. No failed attempts at humor. Upbeat but not over the top. Well done.
Gotta admit, some of your explanation went over my head but I'm grateful for your knowledge regardless! Thank you!
I actually used it to run a really old cnc lathe (weird conversational machine). Takes a little config to get the serial port working but you you do what you got to.
I just passed the first sem in Computer Science using this program
Me too
Hi, May i ask can dosbox use to create POS system? If yes, can state some of the function which available to create in dosbox? :( Computer System first sem assignment want us to do that but i not sure about what can I do @@ All research I had did only found about dosbox is using to run game...
Most cpus startup in real mode and switch to protected mode early in boot up. It’s not the computer that’s incompatible it’s the OS
Exactly, for example LGR installed the original MS-DOS 6.22 on a ryzen 1600X pc some time ago
Well, it’s both. You don’t have good sound compatibility without an ISA sound card supporting adlib, gm etc. modern computers could possibly do this but the drivers and hardware isn’t being made for that.
Yes. Most modern sound cards aren't compatible with DOS programs. I have installed Windows 1, 2, & 3 on modern computers. Windows 1 & 2 supported all their features(they don't do sound or networking). Windows 3 couldn't really do sound, but it supported all its other features, including networking.
This videos is so basically wrong from one end to the other you could spend an inordinate amount of time debunking all of it.
@@1pcfred I actually just saved this vid to my watch later list. Not worth it? I haven't known these guys to get a bunch of stuff wrong in videos. Maybe 1 or 2 minor errors, sure
I use DOSBOX all the time at work in an industrial setting to connect to old RTUs.
Excuse me, but the Intel 8086 had a 20 bits long memory address bus, so you was able to address 2^20 bits = 1MB of memory. You still used 16 bits of memory addresses, due to the linear memory model. The memory was divided to 64KB segments. (2^16) The memory address of these segments always ended with 0000, so you didn't have to store these values. When you wanted to access a specific byte of the memory, you needed the segment address, and it's offset value in the 64K big segment. (Also a 16 bit value.) When you added these two numbers, (segment + offset) you've got the exact address of the given byte. It was a pain in the ass to use, but was a pretty clever trick to address more memory with less numbers.
Pretty stupid trick. Look how IBM did virtual memory.
(For starters, non-virtual linear address space was 24 bits, 14 years before the 8086 was introduced)
(Also, "protected mode" (supervisor or problem program states) from the very beginning in 1964)
you were, able to... you didn't have...
@@akarmiakarmika7054 sry for my ridicolous mistakes, I'm a hungarian dude
Marcell, the segment was shifted four bits to the left (equivalent to multiplying by 16) prior to adding it to the offset. So it's Address = (Segment
@@LordRenegrade You're correct about the shifting, I was a litte inaccurate there. I've read stories, that the 8086 architechture was created in two weeks. Sure, it is a weird solution to address memory like this, but I don't know how it should done better, if you want to work with 20 bit adsresses on a 16 bit CPU.
BTW, I don't know why they choosed 20 bits lenght to the memory address bus.
Maybe Intel enginieers was high during development. Sadly, in the IT competition, not always the best product wins.
This type of content is absolutely brilliant for Techquickie. Go through the history of compression in honor of Silicon Valley ending.
what a history lesson, nicely presented a lot of information, should be taught in IT basics ...
I have that BenQ monitor showcased in the example early in the video. Mines a BenQ V2400W. It has a green line down it because of slight degradation around the panel, but it still works.
Wow just that little mention and screenshot of Windows 95 brought up my nostalgia for my first computer!
There's also PCEm to emulate the really old DOS hardware.
16 bit refers to the data path not the address bus. The 80286 was a 16 bit CPU that had a 24 bit address bus. A bigger issue was the segmented memory model used in the x86 CPUs. There are 4K addresses for every byte in memory due the overlapping memory registers in real mode.
How quick have you been to a teckquickie video
pretty freaking quick
Cuckoo the Taco 33 seconds
"techquickly"
I'll see myself out.
When the video was not yet uploaded yet...
Wow that’s quick
LHX Attack Chopper time
I remember shooting the camels that looked like cardboard standups on the desert map :D
Aw dang it, now I wanna fly some sorties.
Lol dude. I just recently started playing that again on an old 266mhz thinkpad.
Nice always wondered about this. Great video.
Actually, real mode has mostly been used in single-task mode. So, there isn't much problems with memory sharing, when you share it with nothing else at the same time.
0:29 I built my first PC in that case almost 15 years ago!!! Love me some old school Raidmax goodness :-)
The Raidmax Sagitta was really good back then
A leak from the NT 4.0 source now allows us to run the official ntvdm on x64 versions of Windows, so that's cool
But can it run
Windows 3x?
Yes, yes it can
can run windows 95, 98 and Me.
@@cesaru3619 Never had any luck with 95. Can't speak of 98 and Mistake Edition since I've never tried them on Dosbox.
@@cesaru3619 Windows 95a is very doable. The rest is not. You get serious dll errors and crashes without serious work. Vogons.org has an extensive resource for emulating old hardware. I have put in at least 48 hours into my own personal portable dosbox setup. Tons of fun tricks / hacks to get it working.
@TrueGamer 125 Nice. I tried a few times with 95 but gave up and used virtualbox 98se instead.
@TrueGamer 125 just use pcem and install windows 98se you can play any old 3d games including voodoo
Speaking of Doom, you can turn on IPX protcol in DOSBOX. IIRC XP was the last version of Windows that had supported it.
Awesome. Truly awesome video, questions aside.
Thanks for helping teach me about the world of IT.
2:09 Did he mean to say, "mid 1990s"
Im high school times I used DOSbox to run old PCB software (Tango) at home lol.
We used that one year in a lab with really old and slow win xp computers.
Eventually we got some win 10 computers with Eagle.
2:10 it should be noted that there are more rings, although not all of them are always present depending on which os/hardware you are on
Protection Ring:
3: User Mode
2: Drivers
1: Drivers
0: Kernel
-1: Hypervisor
-2: System Management Mode
-3: Intel Management Engine
You could also have drivers in ring 0(this might be used if you're porting from a system that only has 2 "rings").
I still play DOS games, it feels like going back to those times :)
Don't forget DosBox even has ultrasound support and unofficial builds have MT32 and 3dfx support so you can run your old games with good sound and 3d effects.
I love my DOSBOX. MS-DOS games are the most interesting time in retro gaming. Doom II and Blood are my favourites.
My favorite DOS game is "Raptor: Call of the Shadows." Whenever I run that game on DOSBox, I use the following audio settings: Gravis Ultrasound for the music, and Sound Blaster 16 for the sound effects.
If you want to play Doom 2 today then run it in a source port. The original binary was rather limited.
@@1pcfred I do most of the time, zandronum it is, but sometimes i go back to the original
@@GeoStreber Zandro is OK for online multiplayer but GZDoom has more features for single player. I don't really multiplayer game. I have Doomseeker setup and ready to go but I never use it. I just play local mod campaigns. Because I like that better.
Thank you, you gave me hope
Doom was actually a 32 bit game. Lots of DOS game were 32 bit, they used the "dos4gw protected mode runtime" to enter 32 bit mode from the 16 bit DOS.
Another notable DOS game I know that used the DOS4GW runtime was the original 1994 version of “Raptor: Call of the Shadows.” Whenever I run this game on DOSBox, I use the following audio card settings: Gravis Ultrasound for the music, and Sound Blaster 16 for the sound effects.
Dosbox also enables to Play Ultima 7 under Linux or Windows. The unreal mode was so wacky even on Windows 95 era, requires to boot to pure DOS node!
'Protected mode' was not only in PCs but in the DSi and/or the 3DS since the 3DS has 275MB? Of RAM and DS games required only 4MB/16MB (4 -NDS and 16 for NDSi) it made sense for the rest of the RAM to be inaccessible while in this mode and in,y used for the 3DS' system software, Nintendo called this 'DS Mode'
that's just a virtualization layer with a ds operating system in it with some bits of data shared. they're the same cpu architecture. Kinda like qemu, or virtualbox.
i can feel the teleprompter
1:05 Small correction: The original 8088/8086 had already a 20 bit addressable memory space . So it could address already 1M byte of memory (in theory) The older 8 bit CPU had typical a 16 bit address space (hence the typical 64 kbyte limit of 8 bit computers) It's a common mistake. 8 , 16, 32 bit etc refers to the width of the main registers! Not the maximum addressable space. Starting from 80386 (32 bit CPU) the main registers and address registers (instruction pointer, etc ) are the same width. The rest of the video is quite accurate
Is dosbox a compendium of all these different emulators? Would be nice to have all compiled into one program.
01:44
You can trust me to real your memory. I’m 4Real
or use 4dos
Thanks for showing this after i found out about DOSbox and played my childhood games smh
Phones can emulate N64 smoothly now. I replayed Ocarina of Time with updated texture packs on a Droid Turbo a few years back.
finally after years :D
What a lot of people don't realize is that you can run Windows 3.3 out of D-fend Reloaded. That allows me to run old Windows games using Windows 3.3 that can't run in Windows 10.
DOSBox can also run the old-school Borland Graphics Interface (BGI). I was able to resurrect a few of my earliest programs because of it!
Before this video was posted i bought and played origenal doom. Nice timing.
20 years ago was 2000. No one in their right mind was still using one of those pizza box-style Macs in 2000. Those old things were low-end even for their time, and that was very early 90s.
Wow Linus looks so nice with this new tracksuit
Ah yes, the times where I played:
- Commander keen
- Jazz Jackrabbit
- One must fall 2097
- Biomenace
- Doom
- Jill of the jungle
- Wacky wheels
and so many other titles... was amazing.
Those games were my jam 25 years ago when I first got my 486 SLC2/66... good times.
Yo, Jazz Jackrabbit that was the best.
While I was looking at the picture of the 386 that they used, something seemed off, but I couldn't quite place it.
After staring at it a little longer, I realized that it's not in a socket. It's just resting on the traces of some random PCB.
Were you guys not able to find an old compatible motherboard, or was this a stock photo?
Netmech! Wonder if that DOS emulator has an IPX to TCPIP emulator as well.
I recommend you Dosbox-X wich contains a bunch of optimisations and is a quite active project.
You also have PCEm wich run very good too.
Btw, there is also another problem : using windows 16 bits programs under x86/x64.
But Microsoft is here with a genius solution : the win32s thunking layer aka how to load a win16 binary with a 32/64 bits program.
You also forgot to mention that prior to Windows Vista, the native emulation support was much broader, up to Windows XP, which supported emulating Real Mode with the screen resolution and mode change, that allowed you to play games natively in Windows. However, starting with Windows Vista, this support was removed, so even in 32bit versions of Windows from Windows Vista, you had to use a 3rd party emulator to run MS-DOS games.
It was the WDDM drivers model that remove native support for VESA that NTVDM relies for graphics, correct ?
Now I can play my old Magic School Bus and Duke Nukem II games on my Windows 10 PC! Thanks!
2:17 Is it a mistake the both ring 1 and ring 2 say "Device Drivers" or am I missing something?
It might be. I think only some device drivers need to be in ring 1, & some can be in ring 2. Also, some systems have drivers in ring 0 with the OS kernel.
OTVDM is a third party 16-bit virtualization layer for windows 64-bit. It is still in the testing stage so not super reliable yet, although this is only good for 15-bit Windows apps not dos.
Cool. Not something I expected to see here.
I've been involved in DOSBox development off and on since around 2013 (not mainline branch so much as offshoots and ports to assorted alternative type OSes).
To play TES II: Daggerfall, duh.
@@KUPOkinz That is Daggerfall Unity you ILITERATE SKOOMA CAT!
@referral madness Though there is mods that can be installed in Daggerfall Unity, more so than the original. So the skies the limit.
@@elijaheumags5060 still waiting for the mod renaissance for daggerfall unity
Anyone that still plays Daggerfall in the current year has heard of Daggerfall Unity.
The original running simulator...
Video Suggestion: How do people discover vulnerabilities in software and hardware? Who does this?
I'd like to see a video about magnets vs. electronics. (i.e. how far away should I store my nametag from my Switch?)
is there a way to like easily put something on your walls or something to block outside wireless signals.
0:07 coincidence kinda, all of the games shown are Sega Genesis games made by Sega(except the one on the top left which is Mega Man 2 which is an NES game made by Capcom
Heck with Doom. I am loading Descent after watching this video.
That was the first game playable over the internet. It didn't support TCP/IP, but its IPX networking structure survived being encapsulated over TCP/IP, with Kali. Unlike Doom.
Do you know if dosbox will run games that came out in late 1999 or early 2000s? I have a problem with Rainbow Six Rogue Spear, for some reason it won't run on my windows vista laptop which exceeds the minimum requirements.
I should go install Duke nukem 3D with this I still have the CDs
Just replayed Cyberia and Mission Critical 🙂
0:32 i actually have this case along with the mobo and gpu and neon tube, somewhere.
Yo me too!!
I somehow managed to run a copy of the original doom without an emulator. (not the one on the gog store) I downloaded it on a dodgy website, and at first it didn't want to run. Then I opened the folder, clicked autorun, and it asked for a dll file. I downloaded the dll file from another dodgy website, and clicked on the autorun.exe file. The graphics where breathtaking. There was a little, stretched, black and white image in the corner, that showed what I was playing. It occupied like 1/30 of the screen, and was stretched horizontally. And why would it have colors?
It was the 8 bit CPUs that could use 64 KB. 16-bit processors could access 1-16 megabytes.
Who are the ones down voting? Console gamers? 😂
Computer literate people. What's said here is wrong so many ways it isn't even funny. I blame it on Windows mind rot.
no, linux salty crybabies.
Patrik Malmgren-Rask ..cuz he sounds drunk and duschey
I'm a console gamer that also plays on PC but I like this video
Time to go get Midtown Madness running on my laptop
You could have posted this video one and half week before since i was working on it......I also wanted this video...But nice i liked it.....
1:20 a bit more work hahaha that killed me
The number of bits that define the system as 16bit is not the address bus, but the data bus. The 16bit x86 processors had a 20bit address bus and could access 1MB of memory. The 16bit motorola 68000 processors had 24bit address bus and could access 16mb of memory. Also if you install DOS on a modern PC it should be able to run most old games, without sound, since you don't have an ISA slot for a sound blaster. You could have had. The ISA bus is still part of the architecture, but modern motherboards don't expose it as a physical slot unfortunately.
The long mode simply does not support the real mode or the virtual86 mode. This is a hardware limitation and Microsoft could not have changed it. It could have been possible to support 16-bit Windows programs though.
16 bit might be obsolete, but some software is vital if its never been done in new platform.
Last time I was this quick 360p was a thing
What a specific video
Horrendous memories of turbo C starts kicking in
I swapped the hifiman ear pads fur sheep skin, adds much bass, check it out
Master of Orion 1 in a window work great.
For a second I thought I was listen to a review of THE MATRIX.
Didn't the 8086 have a 20bit address bus followed by 24bit on the 80286 for 1mb and 16mb address space? The 8086 did have a 16bit data bus...
It isn't just 16-bit compatibility either. Every DOS game back in the day shipped with their own drivers for different sound and video cards too. It's pretty unlikely that any of those drivers are compatible with today's video and audio hardware. (Although modern video cards still have some of the barebones VGA capability built in, even today, the performance is way in the dumps and compatibility is spotty at best.) But we still need emulators. These days they either emulate the aforementioned hardware outright (no sound cards come with FM synths on them these days) or remap the register writes to something that modern hardware can use (USB mice, keyboards, so on).
The first question is, "Do I need this video?"
In 64bit you can (I think) run 16bit through compatibility mode
Tech quickienot to mention some games are only designed to run out of specific Hertz or clock speed from the CPU.