Why does DOS use 8.3 Filenames? [Byte Size] | Nostalgia Nerd

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 พ.ค. 2024
  • Back with another Byte size and another question; Ever wondered why DOS used short file names? Otherwise known as the 8.3 filename format. Further to that, do you want to know how we moved from these short file names to long file names with Windows '95? If so, then this is the episode for you.
    I'll be discussing, Windows NT, and the NTFS file system. FAT, Root directories, FAT16, FAT12.. even FAT8! There's a face of Bill Gates & Marc McDonald of Microsoft, along with Tim Patterson of Seattle Computer Products, as we delve into BASIC-86 and even 86 DOS, before Microsoft bought the rights back and made it into the short file name operating system of glory it became.
    ☟Sharing☟
    If you wish to share this video in forums, social media, on your website, *please do so*! It helps tremendously with the channel!
    ☟Subcribe☟
    th-cam.com/users/nostalgi...
    ✊Support Me! ✊
    *Please consider supporting the channel on Patreon*: www.patreon.com/nostalgianerd...
    Visit my eBay Shop: ebay.to/1QQpYyy
    Buy From Amazon (Amazon give a small commission to my affiliate account): AMAZON UK - amzn.to/2sTOsRW
    ★Join me on Social Media★
    Twitter: / nostalnerd
    Face: / nostalnerd
    Instagram: / nostalgianerd
    Web: www.nostalgianerd.com
    ★Equipment★
    Lumix G6 with Vario 14-42mm Lens
    Nikon D3200 with 40mm Macro
    Corel Video Studio Ultimate X9
    Corel Paint Shop Pro X6
    Blue Snowball Microphone
    ♜Resources♜
    Music is "Digital Solitude", "Real World" & "Take You Home" from the TH-cam audio library and Canyon.mid from Windows 3.1
    If you believe I have forgotten to attribute anything in this video, please let me know, so I can add the source in. It takes time to make these videos and therefore it can be easy to forget things or make a mistake.

ความคิดเห็น • 534

  • @famitory
    @famitory 7 ปีที่แล้ว +115

    out of curiosity, what does DOS do when it encounters a file whose extension is more than three charecters? do .JPEGs get turned into .JPEs, or is it smart enough to turn them into .JPGs?

    • @Nostalgianerd
      @Nostalgianerd  7 ปีที่แล้ว +80

      famitory Extremely good question! I'm a bit upset I didn't cover it in the video. But I'm fairly certain that anything after the first 3 extension characters are simply truncated.

    • @pelgervampireduck
      @pelgervampireduck 7 ปีที่แล้ว +42

      it's ignored, plain DOS without the lfn "layer" displays it as .jpe
      I think even if the filename is short like bla.jpeg DOS displays it as bla~1.jpe

    • @seancdaug
      @seancdaug 7 ปีที่แล้ว +62

      Yeah, "bla.jpeg" is represented as "bla~1.jpe" for DOS. It needs to be, otherwise it could cause collision with another file in the same directory actually name "bla.jpe". _Anything_ that can't be represented as a traditional 8.3 filename gets the tilde-numeral treatment for that reason.

    • @KuraIthys
      @KuraIthys 7 ปีที่แล้ว +37

      It's pretty simple actually.
      DOS filenames are 12 characters long. The extension, while sort of treated as being special, is internally just a part of the filename.
      So if it was saved by an old dos tool, you'd never end up with anything other than an 8.3 filename. So a JPEG file made with such a dos tool would almost certainly use the .jpg extension.
      However, later versions of DOS and windows (remember windows 95 technically still hides a version of dos underneath - which means DOS 7 existed for some time)
      which support long filenames store the long name somewhere else, and then store a legacy 8.3 filename just in case the file needs to be read by an older system.
      The Older versions of DOS that ONLY support 8.3 filenames won't do anything - a File without a valid 8.3 filename would effectively be invisible to such a system.
      However, the operating systems that support long filenames would ensure that any long filename has a valid 8.3 filename (most likely by truncating the extension and filename itself, though other schemes are possible)
      Though I should point out that Windows 10 is starting to make the generation of 8.3 filenames optional.
      I found this out when trying to find a solution to files windows couldn't copy.
      - Basically, unix files;
      Unix lets you use ANYTHING in a filename, even if that would be a stupid idea (you can destroy your filesystem in a UNIX system by naming a file certain kinds of things)
      Windows has a set of characters that are illegal in a filename.
      However, what happens when you write a file with a UNIX system and give it a filename that's illegal in windows?
      Well, it's not good... And it can cause a lot of headaches for windows users.
      Windows DOES display the file, but you cannot perform any operations on it - it cannot be copied, moved, deleted, or even renamed.
      So... How do you deal with this? - For a while I thought there was no solution other than getting a unix system to change the filename, or obscure dubious utilities.
      Turns out I was wrong though;
      A Command prompt will do.
      Assuming the generation of 8.3 filenames is still enabled, these files with illegal (unix) filenames still generate valid 8.3 filenames.
      So the solution here is surprisingly simple - Use a command prompt tool to rename the file and remove the illegal characters. - this works because while the long filename contains illegal characters, the 8.3 filename generated for it does not.
      So you refer to the file by it's 8.3 filename, but give it a new long filename, and the problem is solved.
      That's probably a weird aside, but it's worth remembering if you ever end up with headaches caused by unix filenames on a windows system...

    • @mikeonthecomputer
      @mikeonthecomputer 7 ปีที่แล้ว +5

      famitory The tilde (~) notation is only a convention implemented by operating system drivers and not mandated by the file system. The shortname doesn't necessarily need to have any apparent relation to the long name, but it definitely helps when using DOS or Win16 apps that won't know how to display or use long names. The tilde notation was introduced by Windows 95, even though VFAT was introduced earlier in Windows NT 3.5. Windows NT 3.5 through 2000 (5.0) would just truncate the name, the base part coming from text before the last period (if any) and the extension from the text after the last period -- in case of conflicts, it will fudge the last 2-3 characters until it comes up with a unique short name. Windows XP (NT 5.1) implemented the same shortname behavior as Windows 95/98/Me and the VFAT driver through Windows 10 remains the same as then.
      Linux has several options when generating shortnames on VFAT. One method, implemented just to avoid patent lawsuits, fills the shortname entirely with DEL characters, which are supposed to be illegal under DOS but the long names still apparently work on both Linux and Windows; this method isn't really used much if at all. It has different mount options to implement the same short name generation mechanisms as either old Windows NT or Windows 95, as well; most of the time, it'll default to the Windows 95 style, and if you never use the volume under DOS or with DOS/Win16 applications, you might never really see the shortnames or care about them...

  • @The4Crawler
    @The4Crawler 5 ปีที่แล้ว +7

    Great video. Back in a previous career, I was on the original OpenGL design team. 95% of the team were Unix (Irix) programmers from SGI and myself and I think one other person were from the PC graphics division as SGI. At the time, the Pharlap 32-bit DOS extender and Metaware 32-bit C compilers were the tool base for PC graphics programming.
    In the first meeting I was invited to, it was announced that they wanted to maintain DOS file name compatibility, or 8.3 as explained in this video, for the OpenGL code tree. So the head guy stands up and says they'll be adhering to 12 character file names, as 8 + sizeof (".") + 3 = 12. This way they could have a file names like "rectangle.c". I stood up and spent about 10 minutes explaining to the team that it's an 8 character base name and 3 character extension and the "." is hard coded, it really is 8.3 not 12.
    They finally got it and in the end, I think they gave up on that idea as it would be too painful to butcher up file and directory names to comply with 8.3 naming. And by the time OpenGL was released, it was on Windows NT or XP anyway and no need for a DOS version. At that same time, I did the very first port of OpenGL to Windows and developed a full windowing system-independent library that let you compile and run the exact same code on Unix and Windows. That toolkit library got shot down along with the 8.3 file naming.

    • @snooks5607
      @snooks5607 2 ปีที่แล้ว +1

      thanks for the anecdote. was that library something like GLUT? why was it shot down?

    • @The4Crawler
      @The4Crawler 2 ปีที่แล้ว +1

      @@snooks5607 That was for the entire OpenGL source code base.

  • @nrdesign1991
    @nrdesign1991 7 ปีที่แล้ว +83

    Ah, good old PROGRA~1

    • @scottbreon9448
      @scottbreon9448 5 ปีที่แล้ว +1

      Dankmeme.s

    • @CODMarioWarfare
      @CODMarioWarfare 5 ปีที่แล้ว +5

      C:\DOCUME~1\OWNER\MY~1\

    • @ChloekabanOfficial
      @ChloekabanOfficial 5 ปีที่แล้ว +3

      SUCH CRAZY NOW BECAUSE, WELL, I DON'T REALLY KNOW WHY IT IS CURREN~1 SUCH CRAZY

    • @lingux_yt
      @lingux_yt 4 ปีที่แล้ว +2

      GOODIDEA.MAN

    • @MCAlexisYT
      @MCAlexisYT 3 ปีที่แล้ว

      Leandro R ERROR 404 WEBSITE NOT FOUND

  • @carvoloco4229
    @carvoloco4229 7 ปีที่แล้ว +16

    At 3:31, if the asterix is still a reserved char you may want to try replacing it with the obelix. It takes up a little more space, but it is not reserved :-) Thanks, Nostalgia Nerd, for an informative video as usual.

  • @CholoCPC
    @CholoCPC 7 ปีที่แล้ว +15

    Fun fact: even early 8bit computers could often stray from the 8.3 naming format in some cases as the restictions was only needed under disc/fat. So like loading from tape you name your file a whopping "Ghostbusters" &"Ghostbusters2". This kinda accidentally also protected the game/program from being "pirated" onto disc too.

    • @CholoCPC
      @CholoCPC 6 ปีที่แล้ว +4

      Files would still be readable and unchanged in size & functionality, but a "forced" renaming of the files on tape from like "Ghostbusters" & "Ghostbusters2" to 8.3 format like "Ghostbus.bas" & "Ghostbu2.bin". Now "Ghostbus.bas" would still be fully executable but somewhere in the file there will be a command to load the next file and it would fail as Load"Ghostbusters2" wont work as the file is renamed. A similar Load"" command to load in the next file on tape wouldnt work either, Of cause if we are talking about commercial games then there was a whole bunch of custom tape protections that prevented the data from being copied even from tape to tape (odd audio sync, 100s tiny 1 byte files, weak signals etc).

    • @Mostlyharmless1985
      @Mostlyharmless1985 5 ปีที่แล้ว +1

      almost every single 8 bit filesystem worked better than DOS's 8.3 nonsense.
      AppleDOS allowed for 30 characters, uppers and lowers, and even control characters, and allowed for 8 file types. This was the 70s. ProDos was a bit saner, 15 characters, letters, and numbers, and had 256 major filetypes and 64k subtypes. You could describe nearly every data type on earth in metadata, in 19freaking83. In 1984 you had the MFT, which allowed for 255 character names, and two datastreams per file. and then in 1985 you had HFS which had 31 character names, any character except : and the same 2 datastreams for each file. And that's just the Apple side of the house, the Unix guys were even wilder.
      It's frankly embarrassing that Microsoft had to whack such a crappy patch over an even more embarrassing and arbitrary limitation

    • @CptJistuce
      @CptJistuce 4 ปีที่แล้ว

      ​@@Mostlyharmless1985 In fairness, MS-DOS's 8.3 naming scheme was hardly arbitrary. It was inherited from CP/M, which MS-DOS was, shall we say, heavily inspired by(and strove to be compatible with). And CP/M was important, because it was THE standard for business computers of the day. So yes, the home computers had less restrictive file names, but MS-DOS copied the standard for computers that were not viewed as fancy toys*. Microsoft's attempts to maintain backwards-compatibility have ensured that limitations and quirks of CP/M are still handled today in Windows 10. Even in 64-bit Windows, which doesn't even allow 16-bit code execution.
      *I say this as someone who grew up on a 99/4a, with case-sensitive 11-character file names. The system was also intentionally incompatible with, and more limited than, the business division's "real" computers. They thought it would prevent the lucrative minicomputer market from being destroyed by cheap personal computers. It only stopped it from being destroyed by TI's personal computers.

    • @Mostlyharmless1985
      @Mostlyharmless1985 4 ปีที่แล้ว

      CptJistuce I’ll call it arbritrary and maintain it as arbritrary. It was a choice given to FAT to give it 8 bytes for the name and 3 for the extension and reserved 10 bytes for doing absofucking nothing. The name could have been 18 bytes long, easily. It’s not like FAT was in any way shape or form compatible with CP/M.

  • @DavidWonn
    @DavidWonn 4 ปีที่แล้ว +4

    It’s not commonly known that spaces were actually legal in the old 8.3 DOS filenames. The problem was that very few 16-bit applications of the time knew how to deal with them properly.
    On my channel, I demonstrate several techniques for generating such obscure filenames natively in DOS in one particular video. It also leads to generating duplicate filenames in Windows 95 / 98 vía glitches in the rename algorithm, which can be done at will.

  • @sacredbanana
    @sacredbanana 7 ปีที่แล้ว +16

    I started dancing when CANYON.MID started playing

  • @JohnGotts
    @JohnGotts 7 ปีที่แล้ว +53

    It was so refreshing switching to UNIX in 1993 and then to Linux in 1994. 255 character filenames came to UNIX in 1983 and before then the limit was 14 characters, dating back to the early 1970's. In that world long filenames had been around for a decade. Files imported from Microsoft systems looked like a joke.

    • @EwanMarshall
      @EwanMarshall 7 ปีที่แล้ว +8

      Indeed, FAT is a terrible filesystem in comparison.

    • @mipmip5759
      @mipmip5759 7 ปีที่แล้ว +6

      still windows filesystem doesn't distinguish between upper and lower case in filenames

    • @AlexM1983DHUN
      @AlexM1983DHUN 7 ปีที่แล้ว +2

      You can activate that with a simple registry setting:
      HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\KernelObCaseInSensitive = 0.
      But, be careful! Some drivers are not written with case sensitive OS in mind (ATI/AMD's Catalist for instance) and the user land driver components wont be able to communicate with their kernel land counter parts through the Object Manger's \Device object directory.

    • @EwanMarshall
      @EwanMarshall 7 ปีที่แล้ว +5

      Until windows 10 max path length is only 260 characters in windows (compared to 4096 in linux and other UNIX implementations). And even in windows 10, it still requires a registry switch to use longer than 260 characters

    • @rashidisw
      @rashidisw 7 ปีที่แล้ว

      4096? thats odd, i using "wget" with parameter less than 2048 characters and still said the saved file name need to be truncated.

  • @hgbugalou
    @hgbugalou 6 ปีที่แล้ว +41

    As a 15 year IT veteran, underscores > spaces.

    • @AnonymousFreakYT
      @AnonymousFreakYT 6 ปีที่แล้ว +3

      When I have to create files that need a date in the filename, I still stick to YYYY_MM_DD_DESCRIPTION.EXT format, even though it's longer than 8.3, old habits die hard.

    • @HappyBeezerStudios
      @HappyBeezerStudios 5 ปีที่แล้ว

      If the system can store it, using CamelCase isn't bad either.
      But agree on the date convention, it's the best to sirt stuff in the right order.

    • @illilya
      @illilya 5 ปีที่แล้ว

      for a second because i scanned that so fast, i wanted to jump on you for saying that anything is better than spaces, and it made me want to go off about tabs vs spaces in code. tabs should only ever be used in a makefile because... it stupidly has to. 2-space indentation master race here.

    • @KidPrarchord95
      @KidPrarchord95 5 ปีที่แล้ว

      I use neither

  • @arvizturotukorfurogep6235
    @arvizturotukorfurogep6235 6 ปีที่แล้ว +11

    As much as I love DOS, but oh boy, even Commodore 64 filenames were less limited than MS-DOS filenames!
    Filenames of 16 characters long, and can use any character from the PETSCII chart. No extension part of the name because system automatically determines filetypes.

    • @tomwilson2112
      @tomwilson2112 6 ปีที่แล้ว +1

      That's not really true... while the system knew the difference between PRG, USR, SEQ, and REL files, those files could contain any kind of data... there's not actually any way to know whether a file contains a SID tune, a graphic image, or a text document.

    • @HappyBeezerStudios
      @HappyBeezerStudios 5 ปีที่แล้ว

      Embedded metadata in the beginning of the file is a gondsend.

    • @QuantumScratcher
      @QuantumScratcher 2 ปีที่แล้ว

      So you can do FILE▩AAAA on a C64 but not on DOS for 2 reasons:
      - The PC tile set doesn't contain the 'checker' character (at least I don't think so), but the 64 tile set does.
      - That name is 9 characters long.

  • @Palooka37
    @Palooka37 ปีที่แล้ว

    I love how so many things like this I just completely took for granted, it's so interesting to find out actual reasons for these things. Thanks man.

  • @MaxOakland
    @MaxOakland 3 ปีที่แล้ว +3

    More flexible file names is one of things that really made me appreciate Macs and they’re still a bit more flelxible, which I really appreciate

    • @craigjensen6853
      @craigjensen6853 2 ปีที่แล้ว +1

      Yeah, even all these years later you can still run into issues with it. For instance, I like to use the DOS command "robocopy" but it doesn't work with spaces. Even in modern Windows 10, if you have a user name with a space in it, it causes all kinds of issues as it gets represented by a tilde in some places. I just had a W10 machine with username "AP #2" and nothing would install properly as it couldn't find where it decompressed the temporary files. It causes issues on the network too. Windows has just gotten so incredibly bloated and band-aided and riddled with bugs as a result.
      I recently switched back to MacOS after a 25 year absence. They have declined in quality too but it's still lightyears ahead of Microsoft when it comes to usability.

    • @MaxOakland
      @MaxOakland 2 ปีที่แล้ว

      @@craigjensen6853 I agree. I want Apple to increase their quality again but it’s amazing how bad Windows still is. Maybe Microsoft could step it up so Apple has to compete more

  • @MNGoldenEagle
    @MNGoldenEagle 7 ปีที่แล้ว +2

    I remember using WordPerfect 5.1 for DOS and discovering that it was completely fine with you using spaces in your filenames. I felt like I had discovered a hidden secret about DOS, but really it was just discovering another discrepancy between what the filesystem supported and what the shell supported. Kinda just like how NTFS supports case sensitivity and any character you want, but the Win32 subsystem freaks out if you don't conform to its rules.

  • @AnimalFacts
    @AnimalFacts 7 ปีที่แล้ว +90

    Who you calling FAT?

    • @catsoften
      @catsoften 7 ปีที่แล้ว +1

      Animal Facts where does the hard drive get the fat? is it like printer ink cartridges?

    • @theharbingerofconflation
      @theharbingerofconflation 7 ปีที่แล้ว +10

      You at 32 and ya mom at 16, also 640K ought to be enough for anybody.

    • @AnimalFacts
      @AnimalFacts 7 ปีที่แล้ว

      Hase lol

    • @michaelparker2449
      @michaelparker2449 7 ปีที่แล้ว +8

      You're not just FAT you're exFAT.

    • @AnimalFacts
      @AnimalFacts 7 ปีที่แล้ว

      LOL... Good stuff.

  • @jayminer
    @jayminer 7 ปีที่แล้ว +20

    I love how mod-files on the Amiga was often named mod.filename only to mess with DOS-users :)
    The C64 had 16 character filenames (on disks) and the Amiga allowed for 30 characters (IIRC). The DOS limitation of 8.3 always felt really ugly to me but then I was a hardcore Amiga-fan back then!

    • @matt47110815
      @matt47110815 5 ปีที่แล้ว +4

      The MOD in front of Filenames was on the Amiga actually an Identifier for Tracker Programs. Early Soundtracker Songs were split into the MOD file and Instruments Directory (Samples).

  • @FennecTECH
    @FennecTECH 7 ปีที่แล้ว +59

    I dont use spaces simply because escaping them on the console is rather irritating

    • @700gsteak
      @700gsteak 6 ปีที่แล้ว +3

      I don't use underscores because typing a underscore requires 2 key presses vs 1 for a space. :p

    • @tomwilson2112
      @tomwilson2112 6 ปีที่แล้ว +7

      "on the console"? Which console? In Windows, you just put quotes around the filename. In *nix - yeah, spaces bad. Spaces\ really\ suck.

    • @GRBtutorials
      @GRBtutorials 6 ปีที่แล้ว +6

      Tom Wilson In Mac and Linux you can use quotes as well and even drag’n’drop the file from Finder or the file explorer on Linux! But still a PITA since you have to either open the file explorer or remember to put quotes. I prefer short, with no space nor underscores, filenames.

    • @romannasuti25
      @romannasuti25 5 ปีที่แล้ว +4

      They can be annoying, but most modern shells (zsh, fish, bash with autocomplete, etc) will automatically escape spaces for you by writing the file name up to the first space, then tabbing. Generally, I don't have problems with it because of this despite using Linux, MacOS, and Solaris from most to least.

    • @JoeStuffz
      @JoeStuffz 5 ปีที่แล้ว +4

      Tab!

  • @lurkerrekrul
    @lurkerrekrul 7 ปีที่แล้ว +3

    Important tip: Under Windows 98 (and possibly Win95), there's a setting in the Scandisk prefs called "Validate Long Filenames". I'm not sure what definition they were using for the word "validate", but if you turn that setting off, it will FUBAR your drive!
    Back when I had a Win98 system, Scandisk detected a long filename error, but wouldn't tell me what file it was. After Googling the error, I found a forum post that said to turn the Validate Long Filenames setting off and Scandisk would no longer complain. The explanation sounded plausible and turning off validation shouldn't cause any problems, right? I mean surely Microsoft wouldn't be so stupid as to put a harmful option in Scandisk without including sufficient warnings about any negative side effects, would they? Of course they would!
    What it actually did was tell it to go through every single file on every single drive and rename them to the DOS 8.3 character filenames!
    Naturally, even though a reference for the long filenames still exists, there's no way to undo this damage. I found one program that would let you recover a single file at a time with the proper long filename, but that's not practical for a drive full of files. It was a demo version and the kicker is that the full, commercial version doesn't even have that ability! I was ready to buy the damn thing and it couldn't even do what the demo copy did!
    Another freeware program would show me both the long and short names, but wouldn't let me do anything with them. I ended up copying and pasting the names into a text editor and making script files to rename whole directories at a time. Of course that program didn't differentiate between deleted and non-deleted files, so the scripts always had to be hand edited to make sure it was renaming the proper files. And that only really worked for my data files, I still had to re-install the OS and all my programs from scratch.
    I swear if I ever meet the idiot responsible for that setting, I'm going to prison, because I will strangle that SOB! What kind of a moron names a system destroying option "validate"? It should be named "Don't fuck up your system [On/Off]".

    • @ki5aok
      @ki5aok 6 ปีที่แล้ว +1

      And, thus, you learned the hard way that many people in forums on the Internet do not know what the hell they are talking about. Wait until you have to use Linux, as the previous statement is more apparent with that OS.

  • @TorgieMadison
    @TorgieMadison 7 ปีที่แล้ว +2

    Ohhhhh, canyon.mid ... I knew thee well. Blew my mind at the time; I had never heard such magic from a computer before!

  • @SeaJay_Oceans
    @SeaJay_Oceans 3 ปีที่แล้ว

    Hey, after moving up from cassette tapes and paper note cards with time markers - 8.3 File Names were a GOD SEND !

  • @OldieBugger
    @OldieBugger 5 ปีที่แล้ว +1

    I added a functionality over DOS filenames once, in one application I wrote back in the old days. The data in the files in question were in config-type format: "keyword=value
    ". And the first line in each file contained the long name of the file, to be shown to the user instead of the actual file name. It worked reasonably well.
    My maximum length was something like 60 - 80 chars (I don't remember exactly), long enough to be useful but not more than what could be shown in the screen easily.

  • @sircompo
    @sircompo 7 ปีที่แล้ว +2

    Asterisk, not Asterix!
    Loved the MIDI file (canyon.mid) playing when you went on to discuss Windows. Brings back memories of working at Creative Labs in my teens.

  • @tjockiskatten
    @tjockiskatten 7 ปีที่แล้ว +1

    The nostalgia is overwhelming!

  • @tomservo5007
    @tomservo5007 7 ปีที่แล้ว

    I'm always impressed with your custom graphics.

    • @Nostalgianerd
      @Nostalgianerd  7 ปีที่แล้ว

      Tom Servo why thank you squire.

  • @mikeonthecomputer
    @mikeonthecomputer 7 ปีที่แล้ว +1

    It was a nice note that OS/2 had already circumvented FAT's file name restrictions before Microsoft introduced VFAT. ;)
    Linux had a similar method as well, though with a much more fully-featured metadata file (named __LINUX_.___ on the FAT), called UMSDOS, providing long file names (with the full assortment of characters available on Unix, including control characters), ownership, permissions, and special file types (block, character devices, symbolic links, even hard links!). The FAT names generated for these files were truncated and massaged into DOS limitations not entirely dissimilar to (old) Windows NT's mechanism -- a name like "This is a text document.txt" might become "THIS#IS#.{__" on the FAT (file name extensions have no special meaning in Unix, so they weren't exactly preserved in the shortname versions on UMSDOS). UMSDOS appeared in 1992 and predates VFAT by a couple years, and did all these extensions without changing or breaking the underlying FAT structure (VFAT was a bit controversial because any existing file system checking software believed the long name extensions were invalid entries and removed them).

  • @aMondia
    @aMondia 6 ปีที่แล้ว +11

    I still use underscore instead of a space when I name files, and I'm not even sure why. It just feels right.

  • @lawrencedoliveiro9104
    @lawrencedoliveiro9104 6 ปีที่แล้ว +1

    Back then, Unix systems only allowed 14-character names. I was using VMS, which started out with 9.3 names, and then went to 31.31. Before that, it was RSTS/E, which only had 6.3 names.

  • @kaltblut
    @kaltblut 7 ปีที่แล้ว +4

    oh my god 4DOS ! that was the shit back in the DOS 6.22 days. it made you a DOS wizard.

    • @700gsteak
      @700gsteak 6 ปีที่แล้ว

      4dos was the bees knees. btw it's free now in case you didnt know

    • @AnonymousFreakYT
      @AnonymousFreakYT 6 ปีที่แล้ว

      One of the few shareware apps I actually paid for. :-D

  • @davidlandry3487
    @davidlandry3487 4 ปีที่แล้ว

    The nostalgia of that song at 6:18! That was the first MIDI file I ever played and thought it was the coolest music ever.

  • @proxy1035
    @proxy1035 5 ปีที่แล้ว

    the fact that going into the documents folder using "CD DOCUME~1" on the Windows 10 CMD works is just amazing. plus any other long file name of course

  • @ckbsz5836
    @ckbsz5836 7 ปีที่แล้ว

    love your vids man.

  • @AnonymousFreakYT
    @AnonymousFreakYT 6 ปีที่แล้ว +1

    I remember messing with people by creating file names with "spaces" in them in the 8.3 DOS days.
    While the actual space character wasn't allowed, the "nonbreaking space" (nbsp) character *WAS* allowed. Which you could type at the command line by holding Alt and typing "255". So "EFF YOU.TXT" that they couldn't figure out how to delete.
    Or if you *REALLY* wanted to mess with them, you'd use a short file name with an arbitrary number of nbsps after it to pad it. Maybe you'd pad it to the full 8.3, maybe you'd have it 7.3... Maybe you'd leave it with "no extension," but really have two nbsps as the extension.

    • @DavidWonn
      @DavidWonn 4 ปีที่แล้ว

      True spaces (ASCII 32 decimal) actually were allowed in pure DOS. I posted several techniques for generating them in a video on my channel. The problem is that so few 16-bit programs know how to handle them properly. It certainly makes a layer of "security through obscurity" even more extreme than the nbsp method.

  • @Omnifarious0
    @Omnifarious0 4 ปีที่แล้ว

    Unix, which both CP/M and MS-DOS borrowed a lot from, originally allowed 14 letter filenames with any characters you wanted except for '/' and the null character.
    That's because directory entries were exactly 16 bytes long and the filesystem used two bytes to point at a structure on disk called an inode that contained all the metadata about a file except for it's name. Stuff like its size, permissions, and where to find the data.
    Because of the way Unix has a strict distinction between kernel and user space, moving to longer filenames was much less of a big deal.

  • @gentuxable
    @gentuxable 7 ปีที่แล้ว +10

    My whole music collection wouldn't work with 8.3 anymore! Ironically Microsoft started using long file names as soon as they implemented it, the Programs folder Windows 95 installed was called "Program Files" which under DOS became PROGRA~1 when "Programs" would have nicely fitted into 8.3. Or subsequently "Documents and Settings" in Windows 2000 which took until Vista to change to a more sensible "Users"

    • @negirno
      @negirno 7 ปีที่แล้ว +10

      I heard that they went with "Program Files" to make third party developers aware that file names in Win95 onward can contain spaces, so they code their applications with this in mind.

    • @dzezikus
      @dzezikus 6 ปีที่แล้ว +1

      That is not true. windows 2000 is not related to DOS. It was never limited to 8.3. It means Windows 2000 and its predecessor was long name compatible by design. It was the other way around. short names was added to Windows 2000 to make it compatible with Windows 95 software. please do not mix the line DOS/windows 3.11/95/98/Millenium/disscontinued with Windows 3.51/4.0/5.0(2000)/XP/2003/Vista/7/2008..... The DOS and graphic GUI for DOS called Windows is discontinued. O nly the native Windows is continued, and native Windows was always long name compatible

    • @700gsteak
      @700gsteak 6 ปีที่แล้ว +1

      NT has always had sfn support otherwise it wouldn't have been able to read fat16 drives.

    • @johnfrancisdoe1563
      @johnfrancisdoe1563 5 ปีที่แล้ว +1

      700gsteak And NT 3.10 could even run from a FAT16 drive with no LFN support.

    • @1pcfred
      @1pcfred 4 ปีที่แล้ว

      usr is more sensible

  • @tsull24
    @tsull24 7 ปีที่แล้ว +60

    @echo off

    • @arvizturotukorfurogep6235
      @arvizturotukorfurogep6235 6 ปีที่แล้ว +2

      CLS

    • @OctavioSalguero
      @OctavioSalguero 6 ปีที่แล้ว +2

      DELTREE /Y C:\

    • @Turborider
      @Turborider 6 ปีที่แล้ว +5

      In earlier DOS versions it's just "ECHO OFF"

    • @rafee9442
      @rafee9442 5 ปีที่แล้ว +3

      Turborider no then it would just spit out "off"

    • @Turborider
      @Turborider 5 ปีที่แล้ว +4

      Rafee Samith, No it wouldn't, I'm talking about the early versions like 3.20. The command ECHO has two parameters, ON and OFF. So it's like that: ECHO [parameter] (text). If you open the autoexec.bat file for instance, the command is just ECHO OFF.

  • @eladghost99
    @eladghost99 7 ปีที่แล้ว

    soon 100k subs,great channel.

  • @tiikoni8742
    @tiikoni8742 7 ปีที่แล้ว +8

    Haha! I also still avoid spaces and special characters in filenames. No harm to play safe :-)

    • @MisterCOM
      @MisterCOM 7 ปีที่แล้ว +1

      Tiikoni i only use spaces when i am working on something big an the i change them later when i am done

    • @peterknutsen3070
      @peterknutsen3070 6 ปีที่แล้ว +1

      Tiikoni
      I avoid doing a bunch of things, for fear of screwing up the computer, but using long file names isn't one of them. I grew up using the Amstrad 454, then Amiga 500, then A1200. So I arrived late to MS-DOS and win3.1.

    • @700gsteak
      @700gsteak 6 ปีที่แล้ว

      Same. If I'm name a file of my own, I get rid of all spaces and just capitalise the first letter of each word.

  • @clemstevenson
    @clemstevenson 7 ปีที่แล้ว

    This is the point where I excuse my ignorance by saying something like "I don't get paid to know this stuff, but I'm glad that someone else does. So, as long as plugging bits of a computer into other bits of a computer gets results, I am quite happy with the arrangement."

  • @Benrob0329
    @Benrob0329 7 ปีที่แล้ว +1

    I would love it if you would do some episodes around the Unix family of operating systems :PP

  • @RighteousBruce
    @RighteousBruce 6 ปีที่แล้ว

    You make amazing vids cheers

  • @nucflashevent
    @nucflashevent 6 ปีที่แล้ว +2

    I make file and folder names longer, but to this day I use underscores to show spaces because it's a huge pain in the ass to access file and folders with spaces using terminal commands, lol.

  • @paulsmith8289
    @paulsmith8289 7 ปีที่แล้ว +1

    Great video. How about a short video on the directory separator character of backslash for Windows and forward slash for the rest (*nix especially). I think Windows supports forward slash better now thankfully. Backslash seems to be universally regarded as an escape character now so Windows paths always seem odd, so c:\t
    can be interpreted as c: followed by a tab and newline for instance.

  • @TheJamieRamone
    @TheJamieRamone 7 ปีที่แล้ว

    Good video dude, very well researched!
    So when r u gonna make a documentary bout music trackers? :)

  • @pcuser80
    @pcuser80 7 ปีที่แล้ว +2

    The 8.3 filename system is inherited from cp/m
    Even the extension .COM is from cp/m, the EXE file is specific MSDOS.

  • @nimrodlevy
    @nimrodlevy 7 ปีที่แล้ว

    amazing history lesson, many many thanks!

  • @SporkmanBW
    @SporkmanBW 7 ปีที่แล้ว +1

    Here's the funny thing: I never grew up on DOS - my family's first computer ran Windows 95. And despite that, my default for file naming conventions is in line with UNIX of all things - no spaces, or underscores in place of them if there's no other sensible option. It's mostly down to the fact I've had files uploaded to university systems mangled because they contained a space.
    Also, I've used the PROGRA~1 shortcut to avoid weird issues with Java Classpaths - Google Web Toolkit's early versions could be VERY particular about spaces. (Yes, it STILL works on modern Windows.)

    • @dzezikus
      @dzezikus 6 ปีที่แล้ว

      Windows 95 is just a gui for DOS. The DOS family was discontinued with Windows 98/millenium. Microsoft decided to discontinue DOS. Only Native Windows was continued Windows NT 3.51/ NT 4.0/ NT 5.0 (renamed to 2000) , XP, 2003, Vista, 2008... For filenames. you can use whatever you Want even your national characters. and it works because of UNICODE. You are not limited to ASCII. There is no DOS compatibility enforced anymore

  • @iggytse
    @iggytse 3 ปีที่แล้ว

    I had forgotten about that file name character limitation. It's rare that I even use a command shell in Windows 10 these days.

  • @ryani4472
    @ryani4472 5 ปีที่แล้ว

    Wow blast from the past. My first desktop was an Amstrad.

  • @Sinn0100
    @Sinn0100 4 ปีที่แล้ว

    Oh man, I love DOS, Windows 3.1, Windows 95, Windows 98, Windows XP, Windows XPS1, Windows XPS2, Windows 7, and Windows current for today. Even though I grew up using all of these there were a few....shall we say problematic releases. I remember Windows ME's release and what an absolute nightmare it was. I stayed very far away.
    However, my roommate at the time jumped on ME as soon as it was available. We had at the time high speed internet (Earth Link) and it took him the better part of four days to get the entire OS. He tried to get me to install it on my PC as well. It took him 4 attempts before the full install took and once he got it running...it locked up. It got so bad that his PC would only boot in Safe Mode. We wound up having to do a fresh install of Windows 98....he lost everything.
    Sorry, this video brought back a rush of memories that I haven't thought about in years. I remember playing Everquest while he feverishly attempted to get ME to run and accept his video card drivers so he could join us. He actually became so angry that he bashed his keyboard over his tower exploding it into a million pieces. It was actually a vety funny sight and it probably didn't help that I was cackling like a hyena as he was in mid rampage. Now, I'm not a small guy by any standard 6 foot 1 inches at 180...but he dwarfs me . He...I'm not kidding here 6 foot 8 inches of pissed off wielding that keyboard like a battleaxe. What made it so damn comical was this full sized keyboard looked like small exploding TV dinner in his very angry hands. We were finding keys for months after that all over our pad. I thought he was going to wing the keyboard at me as I was not helping the situation. The live updates of what me and my party were doing wasn't particularly helpful. ;)

  • @8bvg300
    @8bvg300 6 ปีที่แล้ว

    Pc1512 was my fist pc. Still remember Dr DOS and Gem. Great little machine. The days of parking the hard drive and cga prince of Persia!

  • @mstcrow5429
    @mstcrow5429 7 ปีที่แล้ว +61

    You mean DR-DOS wasn't pronounced as "Doctor-DOS? Crap.

    • @Nostalgianerd
      @Nostalgianerd  7 ปีที่แล้ว +25

      mstcrow5429 I am afraid not, it's Digital Research DOS.... although I often still call it Dr. DOS, because... what the hell

    • @700gsteak
      @700gsteak 6 ปีที่แล้ว

      I like calling it Doctor-Dos too because d-r-dos sounds too close to derr dos. lol

    • @EpicB
      @EpicB 5 ปีที่แล้ว +3

      You mean people called it "Doctor DOS"?

    • @Lightblue2222
      @Lightblue2222 4 ปีที่แล้ว +1

      D.ude R.eally? D.at'sum O.bnoxious S.hit.
      You're all fired from computer school.

    • @justinm2037
      @justinm2037 4 ปีที่แล้ว +1

      oh man that brings me back i bought a computer from bizmart a 386 40 mhz that came with dr dos

  • @galfisk
    @galfisk 7 ปีที่แล้ว

    Ooh, monochrome CRT scan lines... nostalgia
    Good video too, I did know the basics, but not the details.

  • @gmcmaster1985
    @gmcmaster1985 7 ปีที่แล้ว +17

    I prefer Obelix to Asterix.

    • @Nostalgianerd
      @Nostalgianerd  7 ปีที่แล้ว +4

      Graham McMaster he's like the Sam to Jon Snow

    • @UmVtCg
      @UmVtCg 6 ปีที่แล้ว +4

      Too bad its asterisk

    • @howardg2010
      @howardg2010 5 ปีที่แล้ว +1

      When he says 'vis' and 'vat' instead of 'this' and 'that' then you should expect 'asterix'. No respect for his own muvver tongue.

  • @user-ej3iw8lw3w
    @user-ej3iw8lw3w 2 ปีที่แล้ว

    8.3 filename was typical of FAT 16, although the VFAT extension got around this limitation, allowing for files to be conveniently named up to 255 chars

  • @catsspat
    @catsspat 4 ปีที่แล้ว

    4DOS! Nostalgia Bomb!
    I actually purchased 4NT. I still have the original 3.5" disks of it.

  • @wisteela
    @wisteela 7 ปีที่แล้ว

    Another excellent video

  • @typograf62
    @typograf62 7 ปีที่แล้ว

    I still have directories on my Win7 that are in uppercase and only 8 characters. They have served me well and have been inherited. At work many programmers feel uncomfortable having file names other than 8.3. And some of those people never knew DOS.
    If I remember it right it was indeed possible to have file names with spaces in MS-DOS but then it was rather difficult to manipulate them from a command prompt. That was the idea.

  • @SproutyPottedPlant
    @SproutyPottedPlant 7 ปีที่แล้ว +5

    Great video as always that explains why I could never find program files in DOS as a kid. Is that what PROGRA~1 directory was?

    • @falkerhard
      @falkerhard 7 ปีที่แล้ว +1

      kids... :)

    • @fynnkarn-wadden234
      @fynnkarn-wadden234 7 ปีที่แล้ว +1

      Yup!

    • @MrFairhill
      @MrFairhill 7 ปีที่แล้ว +5

      Imagine my confusion with a Norwegian version of Windows while having applications installing themselves in both «Programfiler» and «Program Files». You would in a DOS environment have PROGRA~1 and PROGRA~2 and you wouldn't find out right away which of the folders you were accessing.

    • @kbhasi
      @kbhasi 7 ปีที่แล้ว +1

      Of course, Windows prior to Windows 95 simply had programs install into their own folders on the root of the system drive, rather than their own folders inside a "Program Files" folder.

    • @shana_dmr
      @shana_dmr 7 ปีที่แล้ว +1

      They actually made it with spaces specifically to enforce correct handling of LFNs by software developers:)

  • @simbone
    @simbone 6 ปีที่แล้ว +2

    DOS itself supported spaces in filenames just fine. For example, you can simply fopen("MY FILE.TXT","w"); in a C program in DOS. But good luck in deleting it again as almost no application supported it (wildcards like ? might work though).

    • @johnfrancisdoe1563
      @johnfrancisdoe1563 5 ปีที่แล้ว +1

      simbone Which is why OS/2 stored long filenames in " LF NAM.DAT" or something like that (it was separate from the similarly protected Extended Attribute file.

  • @izzieb
    @izzieb 7 ปีที่แล้ว

    I remember when Windows used to show you the DOS name of a file. Was quite useful.

  • @0e0
    @0e0 6 ปีที่แล้ว

    i still catch myself following this convention in 2018

  • @PanterHZ
    @PanterHZ 7 ปีที่แล้ว

    I can certainly understand the reason why the 8.3 format was used in the first place, but I have trouble with understanding why Microsoft had to wait until 1995 for coming up with a solution that allowed longer file names. Meanwhile, other computer platforms (including most 8-bit ones) supported long names already. But they were of course affected by this limitation as well, and one example is when the CD-ROM standard (ISO 9660) was developed. Here it was essential to come up with something that would work on ALL computer platforms - even the most primitive ones. And thus, the 8.3 format had to be used.
    I purchased a C64 related CD with various emulators and games many years ago, and I really found it ironic that it was only within a emulated Commodore 64 I could see what the games were called. Figuring out this info by just looking at the .D64 files themselves, was almost impossible due to the 8.3 file names used.

  • @cbmsysmobile
    @cbmsysmobile 6 ปีที่แล้ว +2

    One copy of FAT stored as backup. Yeah, like that ever worked. Lose the FAT, lose the disk.....or spend hours with Norton Diagnostics etc trying to get it back

  • @oleimann
    @oleimann 7 ปีที่แล้ว

    Commodore was different with filenames: 32 characters (including extensions, if wanted) on AMIGA OFS and FFS, which already felt liberating coming from DOS. The older 1541 5.25i Disk Drive even used 16 characters (30 bytes total per directory entry, 144 entries per disk). Directories only in 3.5i floppies in 1581 drive, though.

  • @Ben-fr8gi
    @Ben-fr8gi 5 ปีที่แล้ว

    I've only just started feeling comfortable using spaces in filenames...about 20 years after it stopped mattering. Old habits can last.

    • @johnfrancisdoe1563
      @johnfrancisdoe1563 5 ปีที่แล้ว

      Okto STOP, spaces still mess up commands, even in "powershell" (the underpowered .NET shell for masochists).

  • @Chaos89P
    @Chaos89P 7 ปีที่แล้ว

    And love for FAT appears in programs such as DOSBox!

  • @ffmfg
    @ffmfg 6 ปีที่แล้ว

    4DOS descript.ion files are a great thing. It's still supported in certain file managers and I still use it sometimes.

  • @robindp
    @robindp 5 ปีที่แล้ว

    Nice video! Windows 10's Command Prompt can still list filenames in their 8.3 glory - try "dir /X" (no quotes).

  • @finalbossoftheinternet6360
    @finalbossoftheinternet6360 7 ปีที่แล้ว +1

    Back in the day, IBMers called Paterson's operating system QDOS, or the Quick and Dirty Operating System.

  • @KuraIthys
    @KuraIthys 7 ปีที่แล้ว +1

    You know what gets me? I still semi-routinely run into filename length problems.
    Not because of filenames themselves, but because of the path length.
    Turns out a LOT of windows software and even some of the drive formatting that supports long filenames is actually hamstrung by other issues.
    Yes, you CAN use 255 character long filenames now, but you really shouldn't.
    Why?
    Because the PATH length is constrained to 1024 characters.
    And if you end up with a path longer than that, you get problems, and may even end up not being able to copy or move files around as a result.
    This means that if you had a set of directories that were 255 characters long, and a 255 character filename...
    You would only need a directory tree 4 levels deep to almost hit a problem, and 5 levels would be impossible.
    In more typical cases that I've run into, the filenames are about 120 characters (typically the worst are browser cache related files), and then you have like 15 levels of directories that are each about 10-30 characters long...
    And suddenly you have a problem copying files around...
    Anyway, DOS filenames huh. Basically it's just that the data structure that stores filenames originally only had 12 bytes for a name... XD

    • @johnfrancisdoe1563
      @johnfrancisdoe1563 5 ปีที่แล้ว

      KuraIthys Officially Windows programs are restricted to 260 characters for the full path and compiled into most programs. 1024 is the limit on some UNIX-style systems (with others using 4096 etc.). Only the Gnu Hurd tries to make life difficult by requiring all programs to support infinitely long file names, but they haven't made a working version that ran for more than a few years.

  • @negirno
    @negirno 7 ปีที่แล้ว +4

    In some cases, Win95 would forget long file names, at least it happened to me. Our mp3 file names became truncated. That's why I've recommended using tags from the get go.

    • @AlexM1983DHUN
      @AlexM1983DHUN 7 ปีที่แล้ว +4

      That could only happen if you started an old DOS based disk utility, later versions of Win95 came with a DOS version that would detect direct disk access attempts and it would block them by crushing the system if you would try to run them by booting diretly into command prompt. Under Win95 the OS would just simply kill the bad behaving DOS program. After that the system would give an error message of illegal operation/direct disk access/file sharing violation or something like that.

    • @negirno
      @negirno 7 ปีที่แล้ว +1

      We encountered these regularly, and we didn't use any DOS based disk util that I know of. I think the fact that .JPE was registered as separate file extension by default (or at least from when IE was bundled with the system) so the user can open .jpeg files with their long names lost, points to that we weren't the only one experiencing it.

    • @dzezikus
      @dzezikus 6 ปีที่แล้ว

      That is why I never used windows 95, 98. Windows NT 4.0 was much better. then windows NT 5.0 called later Windows 2000. Finally microsoft abandoned 95/98/millenium line and only Windows NT was continued, because Windows 95/98 was only a graphical interface for DOS when NT was pure OS.

    • @700gsteak
      @700gsteak 6 ปีที่แล้ว

      win95 had flakey fat32 support which were highly unstable and could scramble your hard drive or lose files at any minute. It takes years to make a reliable disk format and when win95 came out fat32 was still very green. Getting crosslinked files was a very common problem with fat32 in the win9x days.

  • @larrygall5831
    @larrygall5831 6 ปีที่แล้ว

    Anyone remember the BSOD "VFAT device initialization failed"? Hearing VFAT reminded me of the fun days in IT trying to figure out what that meant. lol
    And spaces in filenames? I use them all the time. Makes for a neat folder. With 1200 video files, it get's hard to find what you're looking for if they're not clear and spaced.

  • @steingat
    @steingat 5 ปีที่แล้ว

    Fun fact, if you run Dos 6.22 scandisk on a partition with LFN's it will "correct" what it sees as errors in your file system and now program files will be progra~1 for all of time!

  • @Spudcore
    @Spudcore 6 ปีที่แล้ว

    More often than not, I still use underscores in filenames rather than spaces. It's an asterisk by the way, Asterix is a beloved French cartoon character.

  • @BilalHeuser1
    @BilalHeuser1 7 ปีที่แล้ว

    Files of 8.3, eight for the name and three for the type, have been around since CP/M and maybe earlier. CP/M (Control Program for Microcomputers) was an OS that was popular on Intel 8080 and Zilog Z80 based computers.

  • @julienmorris7051
    @julienmorris7051 7 ปีที่แล้ว

    This guy has 10 years experience in IT. When I questioned him on the validity of facts on another video (I have 30 years IT experience) - he called me "sonny" and explained he was an "expert". God help anyone who takes his advice.

  • @fluffed_coyote1487
    @fluffed_coyote1487 6 ปีที่แล้ว +4

    If Bill Gates had a nickel for every time Windows crashed... Oh wait, he does.

  • @LordMarcus
    @LordMarcus 7 ปีที่แล้ว

    Was surprised you never mentioned "FAT" stood in as an acronym for "file allocation table".

  • @HR-wd6cw
    @HR-wd6cw 3 ปีที่แล้ว

    I still find it funny how in programming languages like C/C++ on older DOS-only machines (that only supported the 8.3 filename spec) you could save files with spaces in them and cause all sorts of problems. Of course, you could also use a programming language to remove the files too, but it was a bit trickier. Creating them was easier. Removing them sometimes required crafty work either in a programming language like C/C++ or using special DOS tools. I bet the 8.3 filename limitations was a nightmare for programmers of large applications that have hundreds or thousands of files where you'd have to come up with unique names for the files but were limited on naming to the 8.3 spec. Today, this isn't a problem and you can have a long filename such as "Lib.Math.Finance.TVM.dll".
    The one thing that I never really figured out or bothered to read up on, is why DOS had two types of program files (.COM and .EXE). I understand the EXE are really applications, and COM are more or less utility applications (like command-line programs) and maybe that's the primary distinction....?

  • @okaro6595
    @okaro6595 2 ปีที่แล้ว

    Windows 98 included the same file manager as Windows 3.1 and it had not been updated to support long names. If anyone used it to copy files (why would anyone) it stripped the long filenames. NT 4.0 had it also but it supported long names.

  • @SirKenchalot
    @SirKenchalot 7 ปีที่แล้ว

    Very interesting as ever. I never even knew there was a Windows NT 3.1; I thought NT started with 3.5. Was that a version of 3.1 built on the NT framework instead of DOS? I shall have to read more about it.

    • @johnfrancisdoe1563
      @johnfrancisdoe1563 5 ปีที่แล้ว

      Andy Kench It was a brand new NT 1.0 system (lots of early bugs) with an almost complete "clone" of the Windows 3.10 user interface. 3.50 - Daytona was a faster version with lots of optimization. 3.51 added most of the additional Windows 95 APIs so programs could be more easily made for both. NT 4.00 added the Windows 95 user interface and moved the display drivers etc. from winsrv.dll in csrss.exe to win32k.sys in kernel. NT 4.00 SP3 added features for 3GB RAM per process and features needed by Microsoft's Citrix clone. NT 5.00/2000 was the first attempt to fully replace Windows 9x, but it lacked some entertainment features, so NT 5,01/XP added those.

  • @cjxordi
    @cjxordi 4 ปีที่แล้ว

    Isn't now the pull path limited to 256 characters? 🤔 I thought I saw somewhere in my C++ project long time ago path array 256...

  • @billlumburgh8272
    @billlumburgh8272 7 ปีที่แล้ว

    gotta love the canion.mid music

  • @astrosteve
    @astrosteve 5 ปีที่แล้ว

    I first found out about the tilde-numeral thing when someone using Windows 95 sent me a file while I was using Windows 3.1. I was confused at first as to why she was giving her files such odd names.

  • @amigalemming
    @amigalemming 4 ปีที่แล้ว

    Amiga file systems used to provide at least 32 character file names and additionally file comments with up to 256 characters.

  • @robehickmann
    @robehickmann 7 ปีที่แล้ว +1

    In modern versions of windows it's just 'command prompt' not 'DOS command prompt'. It does not run DOS any more. Command lines are still a valid way of interacting with a computer and can do a number of things GUI's fail at. They are easily scripted for one thing.

    • @Nostalgianerd
      @Nostalgianerd  7 ปีที่แล้ว

      robehickmann Yes, you're correct. But it's derived from DOS.

    • @roberthickman4092
      @roberthickman4092 7 ปีที่แล้ว

      As far as I know only in a conceptual sense., NT was a ground up rewrite and redesign, it has a CLI, some of the commands are derived from DOS, but the underlying code is not MSDOS, it's 32 or more recently 62 bit code.

  • @michalnemecek3575
    @michalnemecek3575 5 ปีที่แล้ว

    Also in MS-DOS, if you have a folder with a dot and 3 characters following it (ex. lfn.lfn) it will act as a folder, but it will appear to have a lfn extension

  • @jan_harald
    @jan_harald 6 ปีที่แล้ว +8

    since xp, "_COMMAND PROMPT_" IS NOT "_*DOS* COMMAND PROMPT_"

    • @tomwilson2112
      @tomwilson2112 6 ปีที่แล้ว +2

      Technically true for all NT-derived systems. NT had its own command processor, CMD. You could *also* load command.com, but it was slower and had fewer features.

    • @ailivac
      @ailivac 4 ปีที่แล้ว

      That's still not as bad as calling a Linux terminal/shell a "DOS prompt.". DOS's command line is at best a crude approximation of a small subset of what the Bourne shell could already do years earlier. And Microsoft hasn't really grown out of it after almost 40 years, unless you count the confusing and overengineered PowerShell.

    • @wordart_guian
      @wordart_guian 4 ปีที่แล้ว

      There's a new prompt coming Next year though.

    • @HappyBeezerStudios
      @HappyBeezerStudios 4 ปีที่แล้ว

      Not only is there the COMMAND.COM DOS promt in DOS-based systems, but also the NTDVM COMMAND.COM , NT's own CMD.EXE, PowerShell and the Ubuntu Terminal.
      And you can natively run 4 of them on the same system.

  • @nethernoah484
    @nethernoah484 6 ปีที่แล้ว

    Did Unix have that same restriction?

  • @Foebane72
    @Foebane72 7 ปีที่แล้ว +9

    Atari (8-Bit) DOS had 8.3 filenames back in 1979, I figured that Microsoft simply copied them. Another plus for the excellent Atari 8-Bit platform. Please review it, Nerd.

    • @KarlBaron
      @KarlBaron 7 ปีที่แล้ว +5

      Meanwhile the Apple II DOS allowed a comparatively luxurious 30 character filename

    • @SpearM3064
      @SpearM3064 7 ปีที่แล้ว +7

      That was due to limitations of the Atari DOS, and general weirdness. Such as using 128 bytes per sector when *everybody else* was using 256 bytes per sector. Which is why the Atari could store only 88 KB per disk (Apple 140 KB, Commodore 170 KB) until the double density 1050 drives came out.
      To fit eight directory entries per sector, Atari DOS only had 16 bytes per entry, which was fine since it only needed 11 for the filename, 2 to identify the first sector of the program, 2 for the number of sectors in the program (so it could tell you how long the program was), and 1 flag byte.
      Anyway, no, Microsoft did *not* copy Atari DOS. Microsoft *and* Atari copied CP/M, which had 8.3 filenames in 1974, five years before Atari had them.

    • @Foebane72
      @Foebane72 7 ปีที่แล้ว

      Thanks for the clarification, Spear.

    • @SpearM3064
      @SpearM3064 7 ปีที่แล้ว +2

      You're welcome. I hope my previous reply didn't come across as sounding a bit harsh. I didn't mean it that way; I was trying to be informative, not sassy.
      Really, even though I was a Commodore guy, I liked the Atari computers too. (Actually, I liked all the 8-bit computers.) There were a few things about the Atari that just bugged me... but then again, I know for a fact that Atari programmers complain about some things on the Commodore computers, too. :)
      For example, not only was the Atari only able to store 720 sectors per disk, but DOS.SYS and DUP.SYS sucked up about 12% of that, because unlike Commodore, Atari went with a DOS that had to be loaded into the computer's RAM. (The Commodore drives have their own CPU, RAM, and ROM; the DOS is actually built into an 8K ROM.)
      Of course, if you were using a VIC-20 or Commodore 64, you usually ended up loading a "DOS Wedge" anyway (which only used about 1 KB of RAM), to make it easier to use the drive from the command line. But the point is, on the Atari, you had to install extra RAM to use a disk drive. For the first few production runs, the Atari 400 originally had just 4 KB, and the Atari 800 had just 8 KB; to use a disk drive, you had to have at least 32 KB. (Eventually, the Atari 800 started shipping with the max of 48 KB.)

    • @CptJistuce
      @CptJistuce 4 ปีที่แล้ว

      Microsoft was actually copying Digital Research's CP/M. They took great pains to ensure that MS-DOS was fairly compatible with CP/M, as it was THE system of choice for business users. DR, in turn, was copying DEC, since CP/M was inspired by, but not directly compatible with, DEC's TOPS-10(first released in the late 60s!). And DEC, of course, is the granddaddy of all business computers.
      So it was a dated standard even at the time, but it WAS the standard.

  • @AnonymousFreakYT
    @AnonymousFreakYT 6 ปีที่แล้ว

    Minor quibble - you talk about Win95 supporting VFAT, and "IBM's OS/2 was ahead..." At the time of OS/2's addition of extended attributes for FAT file systems, OS/2 was still a co-production of Microsoft and IBM! HPFS was introduced in "Microsoft OS/2 1.2", and extended attributes for FAT came with it.
    www.tavi.co.uk/os2pages/eadata.html
    upload.wikimedia.org/wikipedia/en/2/2c/MS-OS2-v1.0-diskettes.jpg
    (Yes, I ran Microsoft OS/2 on machines back then - but was blown away by IBM OS/2 2.0's release, and was a dedicated OS/2-head until about the time of Windows 98 SE.)

  • @catsoften
    @catsoften 7 ปีที่แล้ว

    you can only choose from 8.3 different files names? Is nateblewupthekitchen a choice?

  • @liamvg
    @liamvg 6 ปีที่แล้ว

    Thought you were going to mention the later improvements to DOS commands such a using * to jump to the first matching to switch dirs. e.g. "cd progra*" Those didn't come along until later until DOS 6 or ("7" Windows 95) I think

  • @AlexM1983DHUN
    @AlexM1983DHUN 7 ปีที่แล้ว

    Actually, Windows NT 3.5 long before Windows 95 supported VFAT and OS/2 extended attributes at the same time (even combined) with addition of transacted FAT handling in a IFS called FastFAT.sys and does these days. Even Windows 10's fastfat.sys is looking for a hidden "ea data. sf" file in the root directory of any partition or disk or any other mass storage device. And if it finds it it will actively use it to store extended attributs.

  • @timharig
    @timharig 7 ปีที่แล้ว +1

    Long filenames are great but some characters are better restricted from filenames as they really mess with shell/batch scripting.

  • @DodoGTA
    @DodoGTA 7 ปีที่แล้ว +4

    It's impossible to fit this video into few bytes of data

  • @beholder2012
    @beholder2012 6 ปีที่แล้ว

    03:44 "In the early days it seemed enough" - no, it seemed not, even "back in the day". Using Commodore 64 we had 16-characters long filenames, and Commodore DOS e.g. had no problems with spaces in filenames. Although we used 170 kb diskettes, not harddisks.

  • @doncarlin9081
    @doncarlin9081 5 ปีที่แล้ว +1

    I remember on my Apple II+ we could have file names longer than 8 characters.

  • @Quirriff
    @Quirriff 5 ปีที่แล้ว

    On a slightly related subject old macs (before OS X) didn't have file extensions at all, but the system could still recognise them....I don't know why.

    • @mariannmariann2052
      @mariannmariann2052 4 ปีที่แล้ว

      Because metadata (in the file header or something)

  • @swytchblayd
    @swytchblayd 7 ปีที่แล้ว

    I like long-name format. It lets me give descriptors to my pr0n in the filename rather than having to remember what SMYD~39.JPG was :)

  • @crane550
    @crane550 5 ปีที่แล้ว

    Aaah, Chips Challenge music.