MS-DOS has been Open-Sourced! We Build and Run it!

Поделиться
HTML-код
  • Опубликовано: 12 май 2024
  • Microsoft has released the code to MS-DOS 4.00 on GitHub; Dave takes you a tour of the code, builds it, and runs it on original hardware. For my book on life on the Spectrum: amzn.to/4bj29zo
    For Clarity on the timeline:
    - Microsoft licensed (non-exclusively) 86-DOS in Dec 1980 for $25,000
    - Paterson left SCP in April 1981 and worked for Microsoft from May 1981 to April 1982.
    - 86-DOS was purchased outright by Microsoft and renamed to MS-DOS on 27 July 1981 for $50,000
    - In March 1982, MarkZ became the dev mgr for MS-DOS 2
    The Code:
    github.com/microsoft/MS-DOS
    Remember that the code is open-sourced, but trademark law still applies!
    Any requests to contact me on Telegram, etc, are scams...
    Follow me on Facebook at davepl for daily shenanigans!
    Follow me on Twitter at @davepl1968
  • НаукаНаука

Комментарии • 1,2 тыс.

  • @PeterRichardsandYoureNot
    @PeterRichardsandYoureNot 15 дней назад +1238

    To this day I still laugh at the fact that Unix, macOS and dos all treat end of line differently. It has become a universal pain in the butt for developers.

    • @Z4KIUS
      @Z4KIUS 15 дней назад +97

      I'd love git to just stop messing with these, you can set it up so but defaults are just destructive

    • @aftardog
      @aftardog 15 дней назад +44

      Came from mainframe environment where file system had records. Took a while to get used to the idea that special character(s) determined records.

    • @slycordinator
      @slycordinator 15 дней назад +135

      It's of note, though, that MacOS has used Unix line endings since 2001 (when they released X). It's only the classic Mac releases that use carriage return for line endings.

    • @nkronert
      @nkronert 15 дней назад +40

      Good to hear that you can laugh about it. I cry about it on a weekly basis. Having said that, there are even worse things out there, like case sensitivity and the infamous special syntax regarding NULL in SQL.

    • @Elfcheg
      @Elfcheg 15 дней назад +12

      @@nkronert I feel your pain. It's 2024 and we still can't have simple select statement to display national characters correctly.

  • @koopa2k
    @koopa2k 15 дней назад +555

    only 6 years left until we'll be watching Dave compiling the ultimate MSDOS 6.22

    • @retinaquester
      @retinaquester 15 дней назад +67

      We all want to see MS-DOS 7.1. Released as part of Windows 98. With long filename support and Fat32. That was the Ultimate DOS. (You do have to Hexedit the Win98 logo's out of it.)

    • @koopa2k
      @koopa2k 15 дней назад +15

      @@retinaquester you didn't want to go all the way to the rather embarrassing Windows ME MS-DOS 8?

    • @retinaquester
      @retinaquester 15 дней назад +6

      @@koopa2k I thought they took peaces out of that version of DOS. Until 7.1 it keeps getting better.

    • @pankoza2
      @pankoza2 15 дней назад +18

      @@retinaquester I think you can just use the Logo=0 parameter in MSDOS.sys in Win98's DOS

    • @tenlittleindians
      @tenlittleindians 15 дней назад

      I doubt Bill Gates will still be alive 6 years from now. Who's going to hold the keys to the castle after he's gone?
      Sooner or later it gets passed on to someone willing to sell it off or give it away because they have no interest in "grandpa's old junk" in a shoebox in a closet somewhere.

  • @dixie_rekd9601
    @dixie_rekd9601 14 дней назад +252

    "my code is immortalised in the last major release"
    Dave, you've already immortalised your code and yourself through this channel. In 1000 years historians will turn to these videos to see what was really happening in the world of computer OS development during the era.
    and so the legend lives on.

    • @Logic44
      @Logic44 14 дней назад +18

      It's kinda crazy that I've been experimenting with DOS since I was 14, know the installation like the back of my hand, and now I'm watching the dude who made that possible. I wasn't even born in the DOS era, I just like older OSs...
      (Shoutout to WinWorld for keeping ISOs/Floppy images of DOS for free...)

    • @belstar1128
      @belstar1128 14 дней назад +6

      he is like the Archimedes of computers

    • @TonyWhitley
      @TonyWhitley 14 дней назад +4

      Nah, that's ARM and used RISC OS 🤪

    • @belstar1128
      @belstar1128 14 дней назад +2

      @@TonyWhitley I wanted to call him Plato but that existed too as a computer and Einstein too

    • @DavesGarage
      @DavesGarage  13 дней назад +71

      Thanks for the kind words! I do hope they preserve the first program I wrote:
      10 PRINT "DAVE"
      20 GOTO 10

  • @spitefulwar
    @spitefulwar 15 дней назад +417

    Marty! Fire up the DeLorean. We've got a date with history!

    • @lignow9762
      @lignow9762 15 дней назад

      You mean skynet and the rise of the machines.
      " there is good money in killing people" - Bob Dylan - masked and anonymous

    • @stickoutofthemud
      @stickoutofthemud 14 дней назад +3

      DeLorean just came out with an electric. Awesome looking ride.

    • @Robert08010
      @Robert08010 14 дней назад +7

      One point twentyone Jiggawatts!?!?!?!

    • @aaronposey7003
      @aaronposey7003 14 дней назад +2

      QDOS quick and dirty os. DOS. Dirty OS

    • @wishusknight3009
      @wishusknight3009 13 дней назад

      @@aaronposey7003 Dirty Old Sock.

  • @alisharifian535
    @alisharifian535 14 дней назад +48

    The MZ magic code that you see in the beginning of every MS-DOS executable (when opening them in a hex editor) is the initials of Mark Zbikowski.

    • @shimrrashai-rc8fq
      @shimrrashai-rc8fq 4 дня назад +1

      Not only is "MZ" on DOS executables and earlier Windows executables, it is on modern PE Windows executables too _and_ all-platforms UEFI payloads (I was rather surprised and amazed, when working to help make the firmwares for a modern _ARM_ computer system - a Rockchip RK3588-based board called the Firefly ITX-3588J - that the UEFI payloads for the Linux[!] kernel had good ole "MZ" at the beginning!). The reason for this is not just legacy cruft; it's so that it can be abortively loaded by an old DOS/Windows system to spit out an error that it is not compatible with it :D

  • @paulscarlett4346
    @paulscarlett4346 15 дней назад +170

    As a graduate of Waterloo in 79, I first saw a hierarchical file system on the Honeywell system operated by the Math faculty in my first year - 1974. The OS was GECOS -- and it had implemented the file system from Multics. I had heard of a system used by the grad students call Unix, but it was considered a toy compared to the Honeywell system. I believe this aspect of Multics, the file system, was it's greatest gift to the history of computer development.

    • @steveb1739
      @steveb1739 14 дней назад +9

      Haha, I used WATFOR and WATFIV Fortran in South Africa way back when...

    • @seansingh4421
      @seansingh4421 14 дней назад +4

      Honeywell was implementing ML into industrial food processing units at a huge scale before anyone even knew what ML was. I saw it with my own eyes 😳😳 and this is a pattern with them. Take an emerging tech or innovate such tech, implement it in its simplest form on a massive scale.

    • @IainShepherd1
      @IainShepherd1 14 дней назад +3

      The obscure Centurion minis of that timeframe had a "Library" system. A library was a collection of files, rather like a directory, but I believe they weren't nestable.
      The Centurions are being restored and explored by @UsagiElectric - a wonderful retro tech channel.

    • @sakkasouffle
      @sakkasouffle 13 дней назад +1

      just curious. do you still view Unix based architecture a toy nowadays? is there an evolution of Honeywell or equivalency? i'm a dummy and i'm being genuine.

    • @Ab_Irato
      @Ab_Irato 13 дней назад +1

      Sometimes it is weird as a developer to imagine people having roughly twice the experience of your age.

  • @Epsilonsama
    @Epsilonsama 15 дней назад +36

    Hopefully Microsoft releases 6.2 source code for preservation purposes. While this days DOSbox and FreeDOS are easier to work with from a user perspective this is still important for preserving history.

  • @YdenPL
    @YdenPL 15 дней назад +91

    I'm still not fully through the video but I saw Mark Zbikowski mentioned and haven't heard Dave mention that basically every .exe file there is, even today, starts with the magic number "MZ", Mark's initials. What a legacy, to be remembered in every piece of software for DOS and Windows to ever exist!

    • @JJFX-
      @JJFX- 14 дней назад +3

      I had no idea, that's really cool. Thanks for sharing.

    • @benhetland576
      @benhetland576 14 дней назад +5

      At least all the older files did. (COFF format if memory serves me right.) The newer ones use the Portable Executable format instead, where you find "PE" in the first few bytes of the file instead of "MZ".

    • @bighairycomputers
      @bighairycomputers 14 дней назад +10

      "Every man dies two deaths. The one with his last breath, and the one with the breath of the last time someone says his name."
      Or something like that.

    • @YdenPL
      @YdenPL 14 дней назад +13

      @@benhetland576 We both were partially incorrect. A PE format file actually includes everything we've mentioned.
      PE is based on the Unix standard COFF format, contains a 4-byte magic "PE\x00\x00" but also contains a stub DOS program (the one that just prints "This program cannot run in DOS mode") and that stub is right at the start, and still contains the "MZ" magic. So effectively PEs still contain "MZ" at the very start, with the "PE" magic coming later in the file.

    • @benhetland576
      @benhetland576 14 дней назад +3

      @@YdenPL tnx for checking. Yes, and the MSDOS stub also imbeds another feature inherited from the pre-DOS era: the Ctrl-Z end of (text) file marker. So if you TYPE file.exe only this text, which is at the beginning, will print and not the rest of the binary "garbage".

  • @gdauch
    @gdauch 14 дней назад +25

    'So, depending on who you believe - you cannot do this. But, I assure you that it works fine.'
    As I was listening to this while getting started with my day, it gave me a little chuckle. Can 100% appreciate the very gentle way of translating "hold my beer." Kudos sir.

  • @robspiess
    @robspiess 14 дней назад +24

    @8:29 oops, looks like you forgot to remove the "Title Text" from your onscreen animation. Love the video! Super interesting looking back at how MSDOS operated!

    • @jonnyphenomenon
      @jonnyphenomenon 14 дней назад +5

      I love these imperfections. It shows Dave is human, and it's like Easter eggs for us watchers.

    • @GooseMugs
      @GooseMugs 8 дней назад

      It's free engagement and quite clever

  • @JamieStuff
    @JamieStuff 15 дней назад +45

    The 360K floppy in a 1.2M drive was a thing. While it generally worked, the problem arose if you used the 1.2 to overwrite a track already written by a 360 drive, then read it back on a 360 drive. The narrower 1.2 track would not completely erase the 360 track, and that "leftover" signal would appear as noise to the 360 drive. I never ran into the problem, but then I had both drives in my computer.
    BTW, formatting and writing a bulk erased disk on a 1.2 drive would read just fine on a 360 drive.

    • @jimpalmer1969
      @jimpalmer1969 15 дней назад +2

      I always ran into trouble trying to read a 360K disk that had been overwritten with a 1.2M drive.

    • @pavelperina7629
      @pavelperina7629 14 дней назад

      Uh, I'm young, I don't remember this. Always had 1.2M 5.25" drive and 720k 3.5" at least. If I don't count floppy attached to Sharp MZ-800. Brings back some memories when best PC games were F-15 Strike Eagle, Grand Prix, Lotus and the rest were few kilobytes games such as AlleyCat or Sopwith inferior to games on ZX Spectrum.

    • @stargazer7644
      @stargazer7644 14 дней назад +2

      Came here to write this exact thing.

    • @therealjammit
      @therealjammit 14 дней назад

      This is why I used one of those cassette bulk erasers when doing that.

    • @BrightBlueJim
      @BrightBlueJim 14 дней назад

      @@pavelperina7629 There was a corresponding problem the other direction with 1.2M diskettes: you could read 720k diskettes on a 1.2M drive, but if you took a 1.2M diskette that had been formatted and used before, reformatting it for 720k would not produce floppies that could be read on a 720k drive, for the same track width reasons.

  • @deevs3973
    @deevs3973 15 дней назад +61

    That takes me back to my old DOS (yes MS-DOS, but also PC-DOS as well, so I'm calling it just DOS LOL) programming days. I started doing network related programming, and was very dependant on the functions defined in "Share", which I'm sure you already know, wasn't added to DOS till version 3.10. The old INT 21 calls in DOS calls still seems as fresh as when I did assemble programming using MASM and later, Borland's Turbo Assembler back on the early to mid 80s. I was very dependant on the DOS technical reference manual (actually IBM's PC-DOS manual, since I worked in a mostly IBM facility), and other programming books, especially a book called "Undocumented DOS". I later became an IBM employee, mostly working their midrange systems, but that's another story for another day. In any case, thanks for the trip down memory lane. Love your content.

    • @YT-Observer
      @YT-Observer 11 дней назад

      Yes, i was disappointed when the more "technical manuals" in the 5.25 binders were not provided after IBM DOS 2.0 i relied heavily on the information there - Just as i did the OS Data Structures and Systems Manuals for the 360 / system 3 / system 7 / System 34 & 36

    • @muzvid
      @muzvid 10 дней назад

      I think I still have a copy of Undocumented DOS on my bookshelf! Turbo Assembler and Turbo C were *so* much better than their Microsoft equivalents. They were faster and generated smaller and more efficient executables. Turbo Debugger was also an excellent tool.

    • @BenEColeman
      @BenEColeman 9 дней назад +2

      I mentored a recent college graduate back in the DOS days who, when he was a poor college student, had a computer, but only enough of DOS to boot the machine. None of the utility programs that come with DOS were included. He did, however, have Turbo Pascal, so he wrote his own utilities. He had what I came to call a "strangely shaped" knowledge of DOS. He knew nothing about the collection of utility programs that came with DOS, that the typical beginner *would* know, but he was very familiar with DOS internals, which he had to learn in order to write his own programs.

    • @deevs3973
      @deevs3973 9 дней назад

      @@BenEColeman That's interesting. I worked for a company called DNA (Device Network Architecture) Networks, Inc. At the time (early 80s), they developed a PC networking system before such a thing existed around the early days of PCs and DOS. This is long before Ethernet. They started this before companies like Novell and Lantastic were even a thought in anyone's mind yet. They had their own hardware and cabling, and developed their own software around this, which had file and record locking done their own way. They wrote their own BIOS chips for the 1st PCs, and their network code lived in them. All of this had to work on PCs with as little at 128k of memory. It all started out as a way to share expensive printers on more that one PC. Honestly, what they did was quite an achievement in its day. What was particularly interesting to me while I worked there doing tech support was, none of the devolvement tools they used were from the outside world. They created their own in house Assembler and Linker, several BASIC compilers, a C compiler, an in-house Debuger that was network aware. All of these tools were wrote using the Assembler they wrote. I used to joke around with them as to how they wrote the Assembler before anything else, and they would talk about the "chicken and egg" thing. LOL I am not sure I ever got an answer to that for them. In any case, working there was a fantastic learning environment, and I learned to use all their tools, which unfortunately was pretty much useless in the outside world where they folded and I need to secure another job. In my opinion, the things they did were better than what the competition (Novell and Lantastic) was doing, that eventually put them out of business. But that's the way it goes. Just because you created something better, doesn't mean you get to become the standard. Anyone remember Wordstar? Those awful commands are still in every modern piece of word processing software today.

    • @deevs3973
      @deevs3973 9 дней назад

      @@BenEColeman That's interesting because I worked for a company, DNA (Device Network Architecture) Networks, Inc., that created a PC networking product, before there was such a thing. They networked PCs together mostly, at the time, to share expensive printers and scanners, to reduce the cost of needing one attached to each PC in an office. They did it their own way, long before Ethernet and other types of networks (Novell, Lantastic, Ect) were even a thought in anyone's mind. It was back in the early days of the IBM PC and PC-XT, when the first versions of MS-DOS and PC-DOS were just getting started. The developers use their own in-house developed Assembler and Linker, their own versions of BASIC and C compilers, and an in-house developed Debuger that was network aware. They used nothing from the outside world. I remember once asking how they created their first Assembler before they has anything else, and was told a story about the "chicken and egg". LOL I'm not sure I ever got any sort of real answer. In the early days, all this needed to work on PCs that had 128k of RAM, and they wrote their own BIOSs with all the network code in them. As a side note, supposably they were sued by IBM for copying their BIOS code, and the developer printed out the source on a stack of green bar paper, and handed it to the judge and said "if anything is too close to their code let me know and I'll rewrite it". Take that with a grain of salt. That is the way it was told to me. They developed hardware and cabling as well. Remember, no Ethernet yet, so again, they did it their own way. While working there, I was around some really smart people, and learned a lot. I was a tech support person that did troubleshooting and minor code fixes and wrote utilities. As I learned to program using their tools, I came to realize, when the company ultimately folded due to competition from other companies that started developing networks (Novell and Lantastic), that my skills learnd there were unusable any place else unfortunately. It was an interesting time in my life, that I learn to appreciate later, and started to learn just how ahead of their time they really were. It is unfortunate that just because you have something that is better than the rest, it doesn't mean it will become the standard. Remember WordStar? Those awful commands are still in almost every modern word processor. I'm glad I got to tell there story again.

  • @mitchellstl
    @mitchellstl 15 дней назад +33

    That PS2 looks like it just came out of the box from IBM. thanks for sharing your unique history perspective! Really cool!

    • @nezbrun872
      @nezbrun872 15 дней назад +3

      We used these model 95 bad boys around 1993 or so for OS/2 & SQL Server backends, when IBM was also peddling their God awful SCSI RAID solutions.
      They had this feature where multiple drives would fail to start on cold boot, rendering the RAID invalid. The IBM engineer was called, he used the hammer in his toolkit to tap the drives to unstick the parked heads.
      The RAID config was stored in battery backed RAM on the HBA rather than across (or as well as) the drives... which was great until the HBA failed. OF course, there was no means to backup the config.
      That was the start of the death of IBM, we switched to Compaq. When your RAID solution is less reliable than a random bunch of disks, it's time to throw in the towel.

  • @stefanbuscaylet
    @stefanbuscaylet 14 дней назад +9

    XOR BX,BX was one clock cycle faster and one byte shorter than MOV BX,0 in the 8080 days. Great to see you MSFT guys knew this. I was using MASM pretty much the same time you were. I just didn’t work for Microsoft. Great job and thanks for posting this.

    • @TomStorey96
      @TomStorey96 14 дней назад +1

      Optimisation 101
      The power of working directly from registers, and XORing a value with itself produces zero. No need for any more bus cycles to load an immediate value.

    • @stefanbuscaylet
      @stefanbuscaylet 14 дней назад +2

      @@TomStorey96 Amen brother. I’d only use the c compiler if I knew ahead of time with the code it generated and agreed. My tattered and torn 8080 software reference guide (the one that told the number of clock cycles to execute) is still on my shelf and i know all these years later about half the 8080 instructions and the clock cycles the took. I still loved the 6502 better than 8080 instruction set.

    • @TomStorey96
      @TomStorey96 14 дней назад +1

      I've found Turbo C to generate assembly that isn't too far off what I would write by hand. You can probably still do better by hand but I'll take the tiny performance hit for more easily readable code. :)
      I like assembly but I'm way more productive in C and will use it when I can.

  • @prte100
    @prte100 День назад

    You will not be here forever, and Im really thankful that you explain the work you didt like 30 years ago or so (sorry, Im 29, never touchd MS DOS in real life^^), so your videos are historical recordings for the future, to tell people and explain them how it was then.
    Thanks for sharing your work and how its built, its really fascinating :)

  • @brian2590
    @brian2590 15 дней назад +20

    Sweet! I will have to build this. I had to learn MS-DOS, CP/M and DR-DOS as a teenager while working at a computer shop on the weekends. It was an odd time in the 80s as there was an equal demand for all three. Now in 2024 I see allot of interest in MS-DOS again with people wanting to build DOS only retro machines. Exciting times ahead, anxious to see what the community does with the code. Thanks for the video!

    • @zerog2000
      @zerog2000 14 дней назад +3

      wow, DR-DOS, now there's a name I haven't heard in a long time...

  • @toddhill1465
    @toddhill1465 15 дней назад +11

    IBM PC-DOS 3.11 was the gold standard when I was in college and also working at our local DuPont plant. They hesitated on 4.0 due to bad press and didn't advance until DOS 5.0 was released. We started using Windows 3.1 at the same time.

    • @MrVaskor
      @MrVaskor 8 дней назад

      Similarly I recall going from MS-DOS 3.1 to 5 without ever seeing 4.

  • @bigal1863
    @bigal1863 15 дней назад +131

    MSDOS 2.11 was what I cut my teeth on. Making an empty boot disk with the 4.0 boot sector wasn't cheating IMO. Here's your commendation for original thinking.

    • @macethorns1168
      @macethorns1168 15 дней назад +8

      Same.

    • @DonaldDucksRevenge
      @DonaldDucksRevenge 15 дней назад +6

      It was a common old school methodology

    • @chazcheadle
      @chazcheadle 15 дней назад +9

      This kind of tinkering, before google, was a huge part of my youth. And when getting things to actually work (or fix what I’d broken) was the greatest feeling.

    • @MikkoRantalainen
      @MikkoRantalainen 15 дней назад +5

      I think fdisk was able to write the required boot sector (which I think is hardcoded 512 bytes) so you could have checked how it was implemented if you didn't want to use the shortcut to use official boot disk to capture the image.
      Of course, without MS-DOS counterpart of POSIX "dd" command, writing the 512 byte image the boot sector might be a bit complex.

    • @lauram5905
      @lauram5905 14 дней назад +7

      ​@@MikkoRantalainen now that it's open source, you can certainly make MS-DOS POSIX-compliant ;)

  • @matt_b...
    @matt_b... 15 дней назад +10

    I seem to remember MSDOS4.0 being somewhat plagued with issues, with folks rolling back to 3.3.
    I am already subscribed to the channel. You're welcome!

    • @stargazer7644
      @stargazer7644 14 дней назад +2

      Yeah we refused to use 4.0. We stayed on 3.3 until 5.0 came out.

    • @schifoso
      @schifoso 14 дней назад

      It was a bloated and slow.

  • @DOSdaze
    @DOSdaze 15 дней назад +4

    Would love to see some longer deeper dives into the code of DOS. Perhaps explaining some of the clever tricks you had time use to get around limitations, or things that just needed unorthodox solutions. I'm sure you going over even the most mundane details would be fascinating.

  • @juanmacias5922
    @juanmacias5922 15 дней назад +11

    This was awesome, I had heard how uploading the files to Github messed up the formatting as it was upgraded to UTF-8.

  • @KYMarty
    @KYMarty 15 дней назад +36

    Love the stories. Takes me back to my early tinkering days. I started when everything was still DOS. I had an IBM PCjr. It was just enough different than an original PC that it forced me to learn a lot. I still have the original CPU that I swapped out for a V20 chip to double the CPU speed. Those were the days!

    • @lophilip
      @lophilip 15 дней назад +2

      I'm from the same era! You learned a lot about computers at that time from tinkering around, and you had to tinker a bit to get software, games, or new hardware working! It was an exciting time to be in.

    • @TheRealScooterGuy
      @TheRealScooterGuy 14 дней назад

      @@lophilip -- For some, it was aggravating as all get out.

    • @paulmadsen51
      @paulmadsen51 14 дней назад +1

      @@lophilip Remember trying fix all the IRQ conflicts so your mouse, modem, sound card, and CD-ROM could all work at the same time? Ahhh yeah, those were the days. Had to get the modem going so you could log into the local BBS's! I still remember how much I loved my first modem (Supra 2400 baud). And don't ever forget the wonderful Telix terminal program! Yeah baby!

    • @greggv8
      @greggv8 14 дней назад

      My PCjr with V20 CPU and 22NICE ran CP/M faster than my Xerox 820-II that had a Zilog Z-80. 22NICE was a Z-80 system emulator that could run on X86 CPUs *and* was able to activate the Z-80 hardware emulation in NEC's V20 and V30 CPUs so CP/M could run natively. 22NICE also set up the RAM and the rest of the system environment on a PC compatible for CP/M. I could use the same boot floppy on the Xerox, my PCjr and my 286.

    • @KYMarty
      @KYMarty 13 дней назад

      My first modem was 300 baud. In 1 hour online downloading from a local BBS I could almost fill a 360k floppy drive before my hour was up! The good ole days!

  • @Indrid__Cold
    @Indrid__Cold 14 дней назад +2

    My journey with MS-DOS began in 1988 at version 3.1. It was infuriatingly obtuse. The best book you could buy on it was the equivalent of learning how to speak English by reading Websters dictionary. Had it not been for a salesman named Chauncey, I suspect I would have given up after a month or so. However Chauncey asked if I'd like a modem with my new computer (a laptop that featured a lead-acid battery). The modem allowed me to connect to Compuserve and actually do something interesting with my new PC. Six months later I had figured out MS-DOS and shortly thereafter joined the IT business.

  • @lorensims4846
    @lorensims4846 15 дней назад +19

    On the Atari we called Atari DOS "DOS" because that was the BASIC command used to access the Atari DOS menu. DOS was just too generic a term back in the day to expect someone to just know which DOS you were talking about.
    The handheld Atari Portfolio used a version of MSDOS 2 because MSDOS 3 needed to be able to write back to itself and Atari needed the DOS to be in ROM.
    I've always thought of MSDOS 3.3 as the standard and everything that came later as just adding more bells and whistles.

    • @JCCyC
      @JCCyC 15 дней назад +1

      3.3 was the sweetest spot. 5 was a close second. Edit: I'll be really really happy when MS releases either of these's source.

    • @david672orford
      @david672orford 14 дней назад +2

      For a while in the late 1970's into the second half of the 1980's practically every personal computer with floppy drives had a DOS. The popular TRS-80 computers had TR-DOS. Heathkit computers had HDOS and so on.

    • @tachikomakusanagi3744
      @tachikomakusanagi3744 14 дней назад

      I remember the Atari ST had TOS.

    • @DaFetrow
      @DaFetrow 14 дней назад +1

      I always wondered why my portfolio had DOS2. Thanks!

    • @benhetland576
      @benhetland576 14 дней назад

      @@JCCyC second that, 3.3 was quite "functional". However, I found that 2.11 was the last version not to mess with things behind the scenes, and instead do what you told it to. If you copied a disk, that's what you got, an exact copy. In ver 3 it started trying to be "smart", and for instance changed the disk label (identifier) on the copy.

  • @lucyinchat
    @lucyinchat 15 дней назад +5

    I can’t wait until Dos6.2 is open sourced. freeDOS will love it.

  • @phillee2814
    @phillee2814 15 дней назад +5

    I was already a Digital Research user with CP/M on my prior 8-bit system, so stayed with them and went to DR-DOS when I eventually bought my first PC (a 286, which had a 40-MB HDD). That, at the time, was the only way to run the 40-meg HDD as a single partition, which made me pretty happy. The largest MS-DOS partition at the time was 32meg, and I saw no good reason to slice it up.
    I made some slightly strange OS decisions along the way, not using Windows personally until I could get NT, although I used a pile of variants of Windows at work, and CP/M-86 into the bargain. But for my own use, I kept up with the NT route, which proved to be the winning track to be on. I still run legacy versions on air-gapped machines locally, to get use out of a few programs that stopped being maintained by the writers, and which I was never able to get running on more recent versions of Windows.
    You are more likely to find me on an open-source OS these days.

  • @arothfuchs
    @arothfuchs 14 дней назад +1

    I thoroughly enjoy your videos. I was a Systems Engineer at Compaq Computer from 1992 to 2001 and can relate to everything you talk about!! Thanks for all the trips down memory lane. Cheers!

  • @Nintendokater
    @Nintendokater 15 дней назад +65

    MS-DOS is so important in computer history! So this step is fantastic

    • @Qohist
      @Qohist 15 дней назад +12

      ever heard of unix? (leave me alone please i was just saying not trying to attack anyone like that one guy below did")

    • @Juanguar
      @Juanguar 15 дней назад +8

      @@QohistUnix served a very different demographic

    • @TheInfidel_SlavaUA
      @TheInfidel_SlavaUA 15 дней назад +4

      @@Qohist shooo shooo

    • @butsukete1806
      @butsukete1806 15 дней назад +2

      @@Qohist It was ok, but VAX/VMS was better.

    • @Qohist
      @Qohist 15 дней назад +1

      @@Juanguar i know ms dos was meant to be a desktop os unix was for servers but im just saying

  • @bkbreyme
    @bkbreyme 14 дней назад +10

    The requirement for "MS-DOS" specificity may have been a holdover from the 80's when we had multiple DOS's that were not necessarily related. For example, we had Atari DOS, Apple DOS, Commodore DOS etc. None of these things were related in any way. At the time DOS was just generic for "Disk Operating System" and did not have any specific meaning beyond that. DOS only became synonymous with MS-DOS as IBM "clone" PC's took over the market in the mid-to-late 80's, with almost full takeover by about 1990.

    • @chacal5844
      @chacal5844 14 дней назад

      In the 70s there was also IBM DOS for the System\360 mainframe :)

    • @nickwallette6201
      @nickwallette6201 14 дней назад +2

      No, I'm sure this was 100% a company-wide mandate to reinforce the mentality that "the only DOS is MS-DOS." Microsoft was _fiercely_ competitive at this time, and not above sabotaging compatibility with "Not-MS-DOSes". The FUD, along with OEM strong-arming, was successful, though. I had _heard_ of alternative DOSes, like PC-DOS (which wasn't really an alternative, at least until version 5 or 6), DR-DOS, etc. ... but I had never seen them. The closest I got was an AST machine that, while it shipped with MS-DOS, used PC-DOS naming convention of ibmbio sys and ibmdos sys instead of io sys and msdos sys. I'm not sure why the discrepancy, and the disks were definitely labeled MS-DOS and had an MS-DOS setup program. Still, it was drilled into your head that MS-DOS was the only way to fly. That was NOT an accident.

    • @OldAussieAds
      @OldAussieAds 14 дней назад +1

      Not to mention DR-DOS.

    • @fcassia
      @fcassia 12 дней назад

      Microsoft really really hated digital research getting into their turf with DRDOS

    • @OldAussieAds
      @OldAussieAds 12 дней назад

      @@fcassia I don't doubt it. I reckon that was the reason for wanting everyone to say "MS-DOS". Anyone can say they're DOS, but only Microsoft can say they're MS-DOS.

  • @asicdathens
    @asicdathens 15 дней назад +7

    I remember a guy that made the interrupt.lst file (Ralf Brown's Interrupt List) for MS-DOS describing all INTXX calls, parameters and returns.

    • @maxmuster7003
      @maxmuster7003 15 дней назад +3

      There is a html version online with a table of interrupt numbers. But the original is inside some zip files.

    • @nickwallette6201
      @nickwallette6201 14 дней назад +2

      I bet that was ... fun ... to figure out. At least, the portions not well-documented and released to civilians.

  • @shortguy1952
    @shortguy1952 15 дней назад +5

    I used to install IBM XTs in the government with all their software. I was EXTREMELY popular. It changed how everyone did business. The snotty mainframe and PDP-11 people got left in the dust. Good times.

  • @jfseaman1
    @jfseaman1 15 дней назад +27

    I lived this. So, cool to see acurate history.
    Had CP/M systems as well.

    • @LarryRobinsonintothefog
      @LarryRobinsonintothefog 15 дней назад

      Had it mainly in college.

    • @greenrocket23
      @greenrocket23 14 дней назад

      If I may ask, what was your experience with CP/M like? Was it better, worse or about the same as DOS?
      Thank you for your time

    • @LarryRobinsonintothefog
      @LarryRobinsonintothefog 14 дней назад +1

      @@greenrocket23 CP/M was pretty primative compared to DOS (especially later DOS with Unix like features), but at the time we took in stride. Never used CP/M+.

    • @jfseaman1
      @jfseaman1 14 дней назад

      @@greenrocket23 Like Larry said. Primitive, simple. Source of "Int 21" and many of the command options. "DOS" copied "int 21" for "compatibility".
      It was the 80s, now I'm 66. There has been a lot of O/S and programming since.
      If I was a RETRO enthusiast, CP/M, CM/M+ with better directory structures, yeah, I'd play with that.

    • @mikafoxx2717
      @mikafoxx2717 14 дней назад

      CP/M came first, in the 70's and worked on more primitive 8 bit CPU's. QDOS which turned into MS-DOS was based on CP/M in usage thanks to familiarity but took advantage of the more capable 16 bit 8086 and storage media at the time. Fat12 and on was a QDOS creation, CP/M used a more primitive method to keep track of used blocks on the drive, using a bit field, which scales poorly to larger drives.​@@greenrocket23

  • @WyrdieBeardie
    @WyrdieBeardie 14 дней назад +5

    Mark Zbikowski is why the DOS header starts the way it does... "MZ"

  • @skesinis
    @skesinis 15 дней назад +12

    This brings back so many memories!! MS-DOS 4.01 was my first operating system on my first PC back in 1991! I had a Samsung 386sx/16MHz at the time, with 2MB RAM, 40MB Seagate ST-157A IDE HDD, and a Tseng Labs ET3000 SVGA with half the video RAM installed, (I think it was 256Kb), along with a colour VGA monitor (just up to 640x480) which would be the bare minimum system to run Windows 3.0 in 386 enhanced mode!
    I don’t remember if the boot menus were introduced in later versions of MS-DOS, but I remember using them a lot to customise the memory configuration and drivers for each reboot, just to make enough space in RAM to run certain memory hungry programs or games of that era.

    • @starfrost6816
      @starfrost6816 14 дней назад +1

      Boot menu was MS-DOS 6 fwiw

    • @skesinis
      @skesinis 14 дней назад

      @@starfrost6816 I think that I was also using 4DOS a bit earlier than MS-DOS 6, and I first intruduced selective loading of programs in autoexec.bat back then, but I can’t remember for sure. It could just as well be on plain old MS-DOS 6 the first time I used boot menus… I definitely had multiple configurations much earlier with diferent boot diskettes for some games, or by copying config.sys and autoexec.bat pairs from a stash directory for the same purpose before the menus.

  • @James1095
    @James1095 6 дней назад

    My recollection from back in the days when my family had an original 8088 PC and a then-modern 386sx is that the 1.2MB drive would read and write 360k disks just fine, however a 360k disk written by the 1.2MB drive would usually no longer work in a 360k drive. The problem being that the tracks of a 40 track drive end up right down the middle between two tracks of an 80 track drive, the 80 track drive would need to be able to half-step in order to write a 40 track disk with the same alignment. I don't know if this was the case for all drives, but I do specifically remember having problems going back and forth between the original full height 360k drives in the IBM PC and the Teac 1.2MB drive in the 386.

  • @llwellyncuhfwarthen
    @llwellyncuhfwarthen 14 дней назад +2

    The reason it was always referred to as MS Dos was a lot of companies prior to MS Dos v5 had 'individual' versions of Dos that they had partially licensed from IBM or MS (lots of historical quirks in this era). I remember Tandy Dos (which was a MS dos clone with Tandy specific commands added into the base operating system code), there was of course IBM Dos, and MS Dos, I had a number of different system specific Dos because I was curious about electronics and each companies unique code.

  • @Placeholderhandle1
    @Placeholderhandle1 15 дней назад +5

    Been waiting for this! Looking forward to hearing your takes!

  • @markward4532
    @markward4532 14 дней назад +2

    Thank you Dave, I remember using MSDOS and liked it, those were the days, editing autoexec.bat and config.sys to load drivers into small amounts of ram. Now computing is so complex!

    • @paulmadsen51
      @paulmadsen51 14 дней назад

      Remember TSR (terminate and stay resident) programs? DOS wasn't multitasking, but this was a bit of a hack to get something running behind the scenes to provide background services. I don't remember what I was running, but I do remember fussing around with HIMEM.SYS and disk caching to try to clear up enough of that 640k because TSR's couldn't run in the high memory area or extended memory, as I recall.

  • @TropicalCoder
    @TropicalCoder 3 дня назад

    In school we had a CP/M server with an array of Z80 powered terminals. It had a big Winchester drive that stored our accounts. Later my first computer was a 286 with a Hercules graphics card running MS_DOS. I'm not certain of the version but on the bookshelf beside me I have a copy of "DOS 6: A Developer's Guide", so it must have been that. That was the first computer book I ever purchased. I see now it still has a price sticker on it - $17.99 "Special" which makes me recall that I bought it at a computer book fair, and it was after I had already figured out a lot of stuff without such a reference. That book was my pride and joy and my capability to code in DOS really took off from there. I certainly remember the INT 21 with the command in the AH register was the key to it all.

  • @frigifide
    @frigifide 14 дней назад +2

    Super cool man. Glad you're around to keep this knowledge alive.

  • @3characterhandlerequired
    @3characterhandlerequired 15 дней назад +12

    I hope this makes dosbox even better somehow.

    • @ralphmacchiato3761
      @ralphmacchiato3761 15 дней назад

      It could

    • @unvergebeneid
      @unvergebeneid 15 дней назад +7

      I mean, FreeDOS has been a thing for over a decade.

    • @nickwallette6201
      @nickwallette6201 14 дней назад +4

      It probably won't. At this point, the free software investment in reverse-engineering DOS is pretty much complete.

  • @UncleKennysPlace
    @UncleKennysPlace 15 дней назад +17

    The first release of MS-DOS 4.0 was extremely memory hungry, IIRC.

    • @mikejones-vd3fg
      @mikejones-vd3fg 15 дней назад +6

      i hope you fed your hungry DOS

    • @mlegos
      @mlegos 15 дней назад +3

      Memmaker

    • @stargazer7644
      @stargazer7644 14 дней назад +4

      Yeah, it's been too long to remember the details, but I do remember 4.0 was a turd and we didn't use it. We stayed on 3.3 until 5.0 came out.

    • @BrightBlueJim
      @BrightBlueJim 14 дней назад +6

      @@stargazer7644 Funny how they keep releasing source code for the versions nobody liked.

    • @rashidisw
      @rashidisw 14 дней назад +1

      @@mlegos When MS-DOS 4.0 was first released, MemMaker wasn't available yet.

  • @Shiunbird
    @Shiunbird 11 дней назад

    I'll be forever grateful for smartdrv. I remember taking HOURS to install NT 4 and frustratingly hearing the CD-ROM drive spin up and down. Then a friend of mine came in and...
    "Have you loaded smartdrv?"
    OOOOOOOOO THE GLORY!

  • @henrikstenlund5385
    @henrikstenlund5385 6 дней назад

    I started using MS-DOS around 1982 and used it a lot after that. I also wrote a lot of ASM code, entire programs. I had all forgotten how tedious it was and what a bear to maintain and develop further.

  • @AdamMPick
    @AdamMPick 15 дней назад +3

    Stainless steel mouseball? Me likes.
    Love how your first impression of the code was "that is not how you keep the formating".

    • @concinnus
      @concinnus 8 дней назад

      That ball alone, unless it's hollow, weighs more than a Finalmouse UltralightX.

  • @Plagueheart
    @Plagueheart 15 дней назад +6

    Physical Box art for Applications back in the day were real art. I fell in love with the MS-DOS 6.x Box Art. Even Microsoft C++ 6+, The CD-ROM for C++ 6 was nice looking with the 3D Blocks Typography. Miss these days

  • @Fastball115
    @Fastball115 14 дней назад

    Half the time I have no idea what you are talking about, but I love this channel! I remember booting up MS-DOS and playing my first games off floppy disks. Awesome to see how it works in the back-end.

  • @owenoj
    @owenoj 15 дней назад +2

    I've really enjoyed your videos taking us all back in time of how the dev life was back at Microsoft. I live in the UK and I remember growing up with Windows 95/98, 2000, etc. Now I'm a senior software engineer working with .NET C#, it's always peaked my interest how Windows was built! Cheers Dave for that!

    • @Innesb
      @Innesb 14 дней назад

      “Piqued”?

  • @Chris.Brisson
    @Chris.Brisson 15 дней назад +10

    Your dog isn't the only one snoring. 🛌 Just kidding, this is fun stuff. I can't wait to rewrite MS-DOS 4.0 using Borland C++.

  • @BastetFurry
    @BastetFurry 15 дней назад +4

    I bet the reason for insisting on calling it MSDOS in the office was because of DRDOS/NovellDOS. 😅
    By the way, you can set the reported DOS version in Dosbox, "ver set 4 00" should have done the trick.
    And i remember that not all commands checked for the version, MSCDEX didn't and i used it (yes, bad kitty, bad bad kitty) on NovellDOS because NVCDEX was somehow slow as molasses.
    And for testing such a system, 86box or PCem can emulate an old PC pretty good, even down to the dreaded CGA artifacts if you want.

    • @wmrg1057
      @wmrg1057 15 дней назад +2

      Don't forget TRS-DOS, MICRO DOS, and others for the TRS-80

    • @nathanr7931
      @nathanr7931 14 дней назад +1

      Yes it works.

  • @KibaSnowpaw
    @KibaSnowpaw 10 дней назад

    I have fond memories of finding out where the game launch file was. I can't remember if they used .exe files in MS-DOS; it's been too long. But I do remember hopping from folder to folder using the keyboard, since it wasn't like Windows 3.1. It was before the OS had a real UI, or you could call it a UI but only barely by today's standards.
    Anyway, I grew up with MS-DOS and then Windows 95. I never had Windows 3.1 or NT, and all the others between 95 and MS-DOS. I did try NT later in life, about 20 years ago, when someone I knew had an old PC with it on. He even gave me the install disk, which I still think I have somewhere.
    Later, my dad got his PC dual-booted with Windows 98 and MS-DOS, and my mom got a Windows 98+ PC when that OS came out. So I've been on Windows since the beginning of time.

  • @willynebula6193
    @willynebula6193 15 дней назад +2

    The fact that you can simply explain what is happening in assembly Dave.
    I kindly ask you for MORE !!!
    Please and thank you.

  • @manojsahu-hr9qe
    @manojsahu-hr9qe 15 дней назад +44

    Man ms dos was something every body loved and hated at the same time

    • @samuelhulme8347
      @samuelhulme8347 15 дней назад +15

      Just like Windows.

    • @nezbrun872
      @nezbrun872 15 дней назад +14

      Things were different. Instead of spending hours on the internet going into endless rabbit holes looking for solutions, you spent hours with jumpers, editing config.sys & autoexec.bat, and rebooting, on the impossible task of getting everything to work together.

    • @not_kode_kun
      @not_kode_kun 15 дней назад

      ​@@samuelhulme8347 one must be getting a really fat check from Microsoft to dare claim they love Windows in this day and age

    • @jovetj
      @jovetj 14 дней назад +1

      I never hated it. I don't hate Windows either... I do hate what it's become, though.

    • @BrightBlueJim
      @BrightBlueJim 14 дней назад +1

      @@jovetj ..said somebody, at every new release.

  • @nezbrun872
    @nezbrun872 15 дней назад +18

    a) 1.2MB vs 360KB floppies, IME you got lucky there fella.
    b) "Memory test takes about a minute to run and then the system will finally boot": oh, and what amazing progress we've made on that in 40 years 😜

    • @nkronert
      @nkronert 15 дней назад +2

      One would think that writing 360k floppies should work if one were to write 2 adjacent tracks using an 80 track drive with the same data, but issues with sync timing accuracy and track length differences would probably make an even bigger mess than just writing every other track (on a virgin floppy).

    • @BrightBlueJim
      @BrightBlueJim 14 дней назад +2

      It really isn't a problem at all, if you either start with unformatted diskettes or degauss them before formatting. The problems only happen when there is anything at all written on the odd-numbered tracks.

    • @nurmr
      @nurmr 14 дней назад +2

      Just be glad the memory test prints progress. The early ones don't, so the computer doesn't print _anything_ on the screen (not even a flashing cursor) until the memory test has completed.

    • @LRM12o8
      @LRM12o8 13 дней назад

      Nowadays it's Windows updates that slows down your boot and they won't be done in just a minute! 😂
      (Not an issue on Linux though ^^)

    • @henningerhenningstone691
      @henningerhenningstone691 2 дня назад

      Having to wait 1 minute with nothing on screen sounds oddly familiar to me as an AM5 user 😅

  • @christopherguy1217
    @christopherguy1217 14 дней назад +1

    My first PC was an AT clone running MS-DOS 3.0 and it came with Windows 1.0. It had 360 KB 5.25 inch floppy and a 3.5 inch 720 KB rigid floppy disk. The optional 20 MB hard disk cost $600 so I learned to swap disks quickly.
    I learned to program in C (Borland Turbo C 1.5) and assembler on that machine. I used that PC on my first professional programming job running a 2400 bps modem to transfer files. Even back then 640 KB was too small for my work. It wasn't until the 80386 came out that we could access more.

  • @Gts2pro
    @Gts2pro 3 дня назад

    I still have the original version of MS-DOS , on 3.5 FD , high density floppies (‘I case know one knew what FD was ) . I loved Ms Dos , back in them days ,

  • @goodmanke
    @goodmanke 14 дней назад +3

    I haven’t seen content about ReactOS on this channel but I’m curious on Dave’s opinion. It’s basically a GPL “rewrite” of Windows Server 2003 currently. I tried it in a VM recently, actually it was better than expected, could use total commander and firefox 53 and it didn’t crash 😂
    All the source is public and said to be using genuine non-MS code.
    PS: Task manager is implemented already :)

    • @gaius_enceladus
      @gaius_enceladus 13 дней назад +1

      @goodmanke - I've played around with ReactOS - it's great! Huge respect to the devs there, they've done great work!
      I also have great respect for the Haiku devs - they're doing awesome work too!

  • @Logic44
    @Logic44 14 дней назад +3

    I bet seeing this code brought back a lot of memories.
    I've been experimenting with DOS 6.22 since I was about 13 or 14 years old. As someone born in 2003, that's pretty odd, but I didn't care.
    I've been a computer/IT nerd since I was 10, and now, a decade later, I finally get to see who made my favorite version of DOS possible!

    • @smiththers2
      @smiththers2 14 дней назад

      im glad to see your birth year did not dissuade you from learning the older OS, as i was born 20 years earlier than you, and i never felt like i could get into the stuff that was even a little bit older than myself. i have always wished i was born about 15 years earlier so that i could be around when software was starting to be made from scratch. to this day i still have no idea how it all works on the hardware level. i tried taking some computer courses but ultimately it felt too much for me to pick up. i can use and build computers just fine, but i will always have this missing chunk of information....

  • @davidinark
    @davidinark 14 дней назад +2

    I use GreaseWeazle for all kinds of disk formats and (other than operator headspace issues) have not had any issues using a 1.2mb drive to do it. Great vid btw!

  • @LuneLovehearn
    @LuneLovehearn 15 дней назад +1

    listening to you is like listening to that tech savvy uncle that is "boy, I will tell you a story about the old days of tech" and I can't get tired of listening

  • @foolcat23
    @foolcat23 15 дней назад +3

    I dimly remember that as a student, I wrote TSR (terminate and stay resident) programs with MASM, hooking into INT 8 to get called and executed periodically. There was a full-screen text mode editor simply called M (M.EXE), which was pretty advanced at the time; it supported column-based marking and copy/pasting.

    • @nurmr
      @nurmr 14 дней назад

      I wrote a TSR that hooked the open file int21 function and printed the file name on the last line of the screen so that I could see what files were being loaded as programs started.

  • @DrFiero
    @DrFiero 15 дней назад +8

    I remember typing in a program on his very early PC for a guy "way back when" since he didn't type very well.
    Then saving it... to.. cassette. :O

    • @kstricl
      @kstricl 14 дней назад +1

      At the age of 7, my sister and I would sit down at the Vic 20. I would read and she would type.
      Only time we weren't fighting 😂

    • @Innesb
      @Innesb 14 дней назад

      @@kstriclThat’s nice to hear. I hope you have more good memories.

  • @MrUwphotography
    @MrUwphotography 20 часов назад

    My father bought an IBM "Portable" PC for some odd reason. He had no real interest in computers. I managed to find some simple games for the little amber screen, use the dual floppy drives to run TurboTax and dream of what could be. I got crazy and installed more RAM and eventually a hard drive. Amazing! My love of computers was born.
    Oh, the last time I really understood what the hell was going on was DOS 3.1? GUI did not help me at all.

  • @ACatTooFar
    @ACatTooFar 11 дней назад

    Hey Dave - really glad I found your channel - we can wait to read your book. I have Asperger and have always considered a different way of processing as a blessing more than a curse

  • @EboWalker
    @EboWalker 15 дней назад +5

    Awesome 👍

  • @volvo09
    @volvo09 15 дней назад +10

    I always love your "retro" Microsoft content!
    8:44 lovely full tower ps2!
    I dream of finding a full tower 486 some day.

    • @bobvines00
      @bobvines00 3 дня назад

      I still have our 486 "tower-and-a-half." We built it using a case that was at least 30-inches (0.76-m) tall. I'll have to dig it out one day to see if it will still run. I *think* that I still have every computer (except one 386 system) that I ever had, starting with a TRS-80 Model III. All of my following machines ran either MS-DOS or different versions of Windows (3.11, NT, and up until Windows 7). Then came my PDP-8s (which take a *lot* of space, being rack-mounted), and I was given a C-64 by a coworker whose wife decided that he didn't need to keep it anymore. My original 8086 machine (a clone) "works," except that the ~10MB HDD finally died and decided to no longer turn (I suppose the heads stuck to the platter).

  • @wearwolf2500
    @wearwolf2500 15 дней назад +2

    I believe the key with the 40/80 track drive thing is not to go back and forth. Clean the disk with an external magnet to get rid of any left over data, write it on the 80 track drive if that's what you have, use it on the 40 track drive. I think you mainly get into problems when you take a disk written on a 40 track drive, overwrite it with an 80 track drive and then read it back on the 40 track drive. The 80 track drive doesn't completely overwrite the data written by the 40 track drive and that can lead to interference when reading back on a 40 track drive which can see the part of the track that's been overwritten and the part of the track that hasn't.

    • @nickwallette6201
      @nickwallette6201 14 дней назад

      Bingo.
      The assertion that "writing 360K disks on a 1.2MB drive works fine" is true if, and only if, the disk is _completely_ empty when you start, and you never ever mix writing to the disk on the different drives. Write once, read many -- fine. Write once, update on the 40-track drive -- probably fine. Write on the 40-track drive, then write on the 80-track drive -- discover the "lore" first-hand.

  • @ConwayBob
    @ConwayBob 9 дней назад

    That wasn't just your dog snoring! Seriously, this is great stuff, Dave. I loved MS-DOS 4.x when it was the latest and greatest sliced bread. I continued to use MS-DOS through version 6.22 for which I still have an unopened, shrink-wrapped box with the 5.25-in floppies. One of these days I'll pick up a vintage PC clone at a garage sale and give that old horse another ride.

  • @sebastianibanez7219
    @sebastianibanez7219 15 дней назад +3

    love the kobayashi maru reference

  • @ferrinkatz6796
    @ferrinkatz6796 15 дней назад +3

    Could you please push your fixed version back to a fork on GitHub with the fixes you did?

  • @greggv8
    @greggv8 14 дней назад +1

    When I got my first 1.2M 5.25" floppy drive I quickly learned to not cross-write 360K disks between 1.2M and 360K drives. Take a disk with data written with a 40 track drive, format it and write to it in a 1.2M drive then try reading it in the 40 track. If you don't have read errors you're lucky.
    360K disks work fine for writing in a 1.2M (or 720K 5.25") if they're never written to with a 360K drive.

  • @William-nw4sk
    @William-nw4sk 11 дней назад

    I have a computer that used to run Windows 95 and MS-DOS 6.22. It is an IBM Sureone POS 4614 from 1996. Thank you for your work on those OS's! That computer is sitting next to my modern Windows 10 computer right now! It is currently running MS-DOS 3.31.

  • @jantestowy123
    @jantestowy123 15 дней назад +3

    Been waiting for this one...

  • @skiprope536
    @skiprope536 15 дней назад +4

    Open source for all.

  • @DonVintaggio
    @DonVintaggio 12 дней назад

    13:40 many mice from that era came with a steel ball plus an exterior rubber shell so they had the needed mass to actuate over the X-Y rollers and enough traction to roll over a smooth surface, like glass.Which is an advantage over both the IBM steel ball model and light-operated mice.

  • @AdamosDad
    @AdamosDad 14 дней назад

    I started with DOS 2, later when 5 came out I could not put it on my machine because of the low density of my floppy drive. So, I took my machine to work and used Procomm to download it straight from the sever over a serial port. After win98 I used DR Dos. I realy enjoyed this one Dave.

  • @ultrametric9317
    @ultrametric9317 15 дней назад +6

    You know I remember the early days but have completely forgotten why MSDOS 4 was a bust. But it was - a big bust. In real life, I dealt with MSDOS 3.30 and then the next common release was DOS 6.0, quickly followed by 6.2 with Stacker -er- DBLSPACE very quickly followed by 6.22 with DRVSPACE. Then it was now and history stopped.

    • @fuzzy1dk
      @fuzzy1dk 15 дней назад +1

      I saw someone comment that MS have only released source for the versions of DOS that were unsuccessful ;)

    • @peterclifton8231
      @peterclifton8231 15 дней назад +2

      Haven't checked the rest of the comments but back in the day we referred to 4.01 as A Mess DOS. Or where the heck did all my low memory go. MSDOS 5 felt like an apology and was the version I rocked right up until Windows 95.

  • @archivushka
    @archivushka 15 дней назад +3

    8:31 title text

  • @joshbydlon5205
    @joshbydlon5205 15 дней назад +2

    I had an xt that ran dos 3.11. Me and a buddy upgraded to 6.22. The 360k floppy was just big enough to get the 6.2 sys command on it. Copied the rest of the files via telex and zmodem over 2400 baud between our houses. Took a few overnight copy sessions before it was complete.

  • @MrEditor6000
    @MrEditor6000 14 дней назад +1

    I powered up my Marvel-Inspired Multiverse portal and checked the Universe where Microsoft didn't
    force their employees to say "MS DOS".
    Over there, Microsoft Stock (Ticker MSFT), filed chapter 11 in 1993 following failure after failure of their products due to the market not understanding why they needed yet ANOTHER umpteenth DOS program.
    IBM closed today with a 2.9T Market cap.
    --Returning to current timeline.
    --...
    --Welcome back Mr. Stark
    -- MSFT closed today with a 3.07T Market cap

  • @Pritam252
    @Pritam252 15 дней назад +3

    Now i can see MS-DOS. Literally.

    • @SpeccyMan
      @SpeccyMan 15 дней назад +1

      No. Actually.

  • @MrDowntemp0
    @MrDowntemp0 15 дней назад +3

    I get why MS might not want to release versions of Dos past 6.2, the ones that are essentially part of Windows 95. But why do you suspect they haven't open soured 6.2?

  • @derekhaddow
    @derekhaddow 14 дней назад +1

    It's all way over my head, but im hooked none the less. ❤ your channel Dave.

  • @hiphopgrinch
    @hiphopgrinch 13 дней назад

    at 7:45
    Line 130 comment - "Pow !"
    Line 136 comment - "Blam !"
    Love it!

  • @orchishgrunt7888
    @orchishgrunt7888 15 дней назад +6

    I've always wanted an EXE file that loads a message saying "For my fan OrcisGrunt on {date}! - Mark Z" digitally signed by Mark Z. It would be cool to have a compiled application featuring the MZ header and Mark's Digital Signature.
    Why can't software rock stars compile and sign stuff like pop rock stars?

    • @RCShadow
      @RCShadow 15 дней назад

      Here is a question for you. What makes an .exe vs a .com?? And no, I don't mean an internet domain name here. It's an MSDOS question and a very easy one.

    • @pankoza2
      @pankoza2 15 дней назад

      @@RCShadow the format itself

    • @overbored1337
      @overbored1337 15 дней назад +2

      @@RCShadow The com is basically just a small exe with the header omitted, replaced with default values, so its basically a raw binary program with defaults like shared code/data/stack segment, no entrypoint & no relocations to name a few

    • @ch2laughlin
      @ch2laughlin 12 дней назад

      @@RCShadow .exe format starts w/ MZ. Com is older and was inherited from CP/M. IIRC the MZ format / exe's start with MS/PC DOS 2.0

    • @bobvines00
      @bobvines00 3 дня назад

      @@RCShadow The ".com" files are up to 64K in size, ".exe" files are anything larger than that, if memory serves.

  • @sejtano
    @sejtano 15 дней назад +8

    if github changes the file formatting, maybe they should release a zip file too, so files don't get ruined,
    the website modifying files is an unnecessary headache and a shame

    • @paulsaulpaul
      @paulsaulpaul 15 дней назад +5

      It's a setting in git. I don't think github modified the files. How line breaks are converted when cloning the repo and when committing is configurable in the git config. He cloned the repo to a mac, so he likely had his git configured to convert the line breaks to unix format. When he exposed the file system to dosbox, he had broken line breaks.

    • @phillipsusi1791
      @phillipsusi1791 11 дней назад

      @@paulsaulpaul Yep, totally how you configure git. It always stores files as-is, but you can ask it to translate the line endings when you check out the files.

  • @freezombie
    @freezombie 14 дней назад +2

    Shocked to learn that Dave’s garage is an actual garage with cars in

    • @DavesGarage
      @DavesGarage  14 дней назад +4

      Lawn mowers, the whole deal!

  • @RobertCorrington
    @RobertCorrington 15 дней назад +2

    The finest digital archeology on the interwebs. Keep up the great work, Dave.

  • @jazzerbyte
    @jazzerbyte 15 дней назад +3

    Would be interesting to explore some small multitasking demo

    • @overbored1337
      @overbored1337 15 дней назад +1

      As far as I know, it was done by hooking the timer interrupt

    • @jazzerbyte
      @jazzerbyte 15 дней назад +1

      @@overbored1337 The timer interrupt hook could be used with any version of DOS by any program, including Desqview to simulate multitasking. If MSDOS 4.00 was called "multitasking" out of the box, it should support simultaneous programs running or have a formal multitasking API.

    • @overbored1337
      @overbored1337 14 дней назад

      @@jazzerbyte I always used the timer interrupt because of backwards compability, because even 386 instructions were discouraged in real mode dos programs long into the pentium era.

  • @iheartlreoy8134
    @iheartlreoy8134 15 дней назад +5

    So you worked on developing msdos and I got the dynamic window manager working on arch Linux, were basically the same now 😅

    • @SpeccyMan
      @SpeccyMan 15 дней назад +1

      All that and you never learned the important role played by the apostrophe in contractions!

  • @bryanramer6439
    @bryanramer6439 15 дней назад +1

    Thanks again Dave. It feels like I have an insider to Microsoft every time I watch your videos

  • @farab4391
    @farab4391 14 дней назад

    Ah, the good old days of working and developing in MS DOS. And yes, for the first year before I got my first 20MB hard drive, swapping disks, especially when playing something like a Sierra adventure game, was second nature. Try and explain that to someone now and they'll think you are crazy and from the dark ages 🙂

  • @Joss_The_VCat
    @Joss_The_VCat 15 дней назад +4

    Microsoft finally doing something Open Source?!
    man... i am gonna break it's code >:D
    I'mma have fun with this, thanks Dave :D

    • @wasd____
      @wasd____ 15 дней назад +1

      MS-DOS was always open source if you wanted to decompile it back to ASM :P
      It's not like PCs back then had stuff like TPMs that could be used to encrypt the code on-disk or block access to stop it from just being read plainly and seeing what was going on.

    • @Joss_The_VCat
      @Joss_The_VCat 14 дней назад

      @@wasd____ tbh, not like if i had the brain enough to decompile it as it was...
      as well, i guess it was worth to have waited for MS to open source it instead of reverse-compiling it :P
      legal terms...

  • @shinzon0
    @shinzon0 11 дней назад +6

    So Dave, where actually are the changes you made to the code to build it? It is not buildable as files are missing and symbols are reffered that are not correctly defined. Also there is an insult for Tim in the code, which is really .... how shall I say... wow. Tim Patterson was by no means brain damaged... he did all the hard work in the beginning. Thank you Tim. Also I found another channel from another Microsoft Co-Worker from that time that says that these sources are maybe a mixture of DOS 4.01 and DOS 4.0 and the sources have been somehow manipulated and are not historically accurate. I also find it strange that Microsoft is not able to store a correct backup copy of DOS and I cannot see why they haven't tested the files before uploading... it it SHOULD be of historical value.

  • @wolfgangkoehler1299
    @wolfgangkoehler1299 11 дней назад

    Your "old" hardware looks so pristine in the video - cool!

  • @frumbert
    @frumbert 13 дней назад

    I really like that CP/M came with not only a big old hefty manual but also the full assembly language source code, all printed in there for you to follow.

    • @gaius_enceladus
      @gaius_enceladus 13 дней назад

      @frumbert - I've never tried CP/M but I have great respect for Gary Kildall who wrote it - he was a genius!
      Definitely deserves to be more widely remembered than he is.

  • @Brian-vs9sd
    @Brian-vs9sd 15 дней назад +4

    "famously developed it in just a few months"... Hmmmm

  • @DrFiero
    @DrFiero 15 дней назад +5

    "555 views" -- just good timing I guess.
    (geek joke)

  • @orychowaw
    @orychowaw 10 дней назад

    This takes me back to the days when I made a local book shop order me a copy of "Dissecting DOS". They where far outside their depth, but manged to get it thanks to me having the ISBN... that was in the mid-90s

  • @AneurynPlays
    @AneurynPlays 13 дней назад

    I imagine the reason they wanted to make sure MS DOS was specific is because they wanted to make sure there was a widely recognised separation between their Microsoft product and other DOS systems, they didn't want it to become ubiquitous. See: all the legal issues that come with calling all permanent markers a "Sharpie".