I love that they specify that they’re not accepting pull requests.
Even funnier when it’s their own platform and it has been missing the feature to disable them for so long afaik
The MS-DOS v1.25 and v2.0 files were originally shared at the Computer History Museum on March 25th, 2014 and are being (re)published in this repo to make them easier to find[.]
In 2014, MS-DOS 1.25 and 2.0 were released under a Microsoft shared-source license (Microsoft Research License) which forbids redistribution
In 2018, both versions were published to GitHub and relicensed as MIT, making them properly open-source
Today, MS-DOS 4.00 was added to that repo, also under MIT.
Oh.
Ignore them. Send a pull request with the full source of Arch Linux.
Nah, just a giant compiled binary blob. That’s what all the cool hackers do these days.
I’ll try a supply chain attack! That’s a good trick!
dumb question maybe, but where is the full source of arch Linux? My understanding is that its just vanilla Linux that uses the pacman package manager.
Am I wrong in saying the pacman is the Arch source? Or is there more going on in the tar ball?
Cheers! It looks like this is then the PKGBUILD
https://gitlab.archlinux.org/archlinux/packaging/packages/base/-/blob/main/PKGBUILD?ref_type=heads
In which case, there are no packages defined there which are Arch specific except pacman. So… pacman is the Arch source, right?
A lot of these packages have Arch-specific modifications. For example, filesystem doesn’t even have a non-Arch upstream as it defines the filesystem layout. That PKGBUILD and everything it depends on is the Arch source. Distributions are defined by which packages they include.
ah, thanks for the clarification!
is archived
There is even a sentence in
README.md
that makes it explicit:The source files in this repo are for historical reference and will be kept static, so please don’t send Pull Requests suggesting any modifications to the source files […]
Somebody fork it then?
Time to fork!
LOL, some of the comments in the source are gold.
https://github.com/microsoft/MS-DOS/blob/main/v4.0/src/DOS/ABORT.ASM
Note: We do need to explicitly close FCBs. Reasons are as follows: If we ; are running in the no-sharing no-network environment, we are simulating the ; 2.0 world and thus if the user doesn't close the file, that is his problem ; BUT... the cache remains in a state with garbage that may be reused by the ; next process. We scan the set and blast the ref counts of the FCBs we own. ; ; If sharing is loaded, then the following call to close process will ; correctly close all FCBs. We will then need to walk the list AFTER here. ; ; Finally, the following call to NET_Abort will cause an EOP to be sent to all ; known network resources. These resources are then responsible for cleaning ; up after this process. ; ; Sleazy, eh?~
This is what people mean when they say hostile to users damn wow
I imagine that’s already a compatibility thing. If the os closed the file handles at that point but the program was expecting to do that, it might crash.
i remember writing .bat files and pretending they were really fancy update scripts when i was like ten they did nothing but it was still fun :)
Like half of my job is writing .bat files to automate stuff locally and not tell my boss that all I do anymore is double click the right things in the right order…
You can put in a timeout command at the end, and then call the next .bat file.
For example “TIMEOUT /T 60” waits for 60 seconds before resuming, or you can override it by pressing any key.
So if you know how long the wait time between scripts is, just write a master.bat and call them in order, with adequate waiting time in between.
This guy is a master bat-er
Or just use the
@CALL
command to call them in order without having to guesstimate how long they run.Okay so the dumb part is a lot of this is me abstracting away our complex build system. I’ve basically bubble-gummed a dedicated build system in top of it for only the tasks I do. At a certain point if I start adding configurations or timing I might as well just wrap it in gradle or something. But the system that I’m calling is already their attempt at simplifying another build system that’s underneath it that was written by the old guard using arcane sorcery. The whole thing is a mess
Next step, bind them to unused keys on your keyboard and press them in the right order
I suggest Autohotkey ;)
op’s job is now turning on the computer and setting off ahk.
Just set up a drinking bird to set off AHK.
op’s job is now overseeing a drinking bird
Wow a promotion; fancy!
i propose to create a menu in which you can define what batchfiles to run in what order. its been a while since i worked with batch files, but if memory serves right, that should be doable, no?
Yes. You could make menus and capture keystrokes in batch files
My autoexec.bat back in windows 3 asked if you wanted windows or a command line (most games didn’t like the memory overhead of being loaded from windows)
I’d recommend scheduled tasks instead. Why be involved at all? :-)
Do you ever list your job title as Batman?
No, because the IRS wants to tax Batman
only if they keep the it room as dark as possible and whenever someone walks in for help they jump up onto the desk with a flashlight and yell "I’M BATMAN’ while wearing a cape and underpants.
Tra-la-la!
50% hero. 100% cotton.
Well I work from home so I do keep my room dark, I like to have a blanket over my shoulders, it’s not uncommon for me to just be in my underwear… Honestly I’m most of the way there
I had a job like that and powershell was a godsend. I let it slip when I accidentally set the multiplier for the delay randomiser too low and it did a months work in a morning. I ended up writing a guide for the others there when I left but sadly everyone but me had computers that supported newer versions of Windows where the scripts ended up broken. They asked me to come back and update it the Monday after I left. I asked if they would pay me to do it. They said no. Then I said no.
This is part of why I still have manual kickoffs for mine. Never need to worry about work getting done while I’m away or getting done suspiciously fast. Also they should have paid you lol, the dingdongs. Would cost a lot more just in work lost having someone else spend time deciphering and fixing it. They could always get someone else up to speed with the system after it is fixed by you so there’s little or no down time
They were important to boot games that needed most of your limited memory.
640k should be enough for anybody
tell that my mouse driver, the soundblaster driver and the cdrom driver fighting over every single byte of that precious ram 😩
Bill Gates denied saying this, by the way.
Or to play the demo made by the warez group that cracked it before launching the game.
I still use bat h files and the system scheduler to automate a shocking amount of my job.
Please use punctuation.
punctuation is a scam created by the shadow government
yeah punctuations is silly who cares
Typicalcommingfromashillforbigwhitespace!
It isn’t. There’s a reason for it.
I guess we now have a timeframe in which to expect the release of Windows.
30+ years after death. Better than 70+ years of copyright 🤷
FreeDos is better anyways
I wonder if this is of any use to them or if they’re already too far ahead.
To my knowledge, FreeDOS has been a fairly complete implementation of DOS for a very long time, so this is probably not useful to them.
Good question lmk if you find the answer. I just use FreeDos to play Chex quest
They couldn’t use it. MS DOS is released under a licence that restricts redistribution
It says here you can modify and distribute: https://github.com/Microsoft/MS-DOS/blob/main/LICENSE
They changed it to MIT. You can basically do what you want with it.
Neat!
Sure, but it’s still really interesting from a historic point of view.
MS-DOS, Source public available on March 25 2014 with MS Research License, released with as Free Software MIT license in 2018, this yer released as Open Source MS-DOS 4.0. Anyway, the Source code was available since 2014, only different licenses since then.
Take that FreeDOS!
Look at me, I AM FREE DOS now
Pretty soon they’ll need to change the name to HipsterDOS.
FreeDOS before it was cool.
deleted by creator
Probably Microsoft is trying to “save” some of its reputation after adding ads to Windows 11 one more time
They found a new 0-day exploit
They probably only got clearance from their lawyers (or IBM’s lawyers) just now.
A lot of proprietary software includes bits from other proprietary software that they don’t have the rights to open-source. And untangling and removing those bits takes time and effort.
What’s the use case that would upset Microsoft the most?
Idk, maybe fork it under the name MS-DOSNT
😆👏👍
Use it to program an functional DOS emulator for MacOS 8?
So cool, thanks. As a kid I spent so much time in DEBUG, stepping through DOS’s executables, and especially the Interrupt handlers. It’s so neat to see the actual source code-- way easier to read and follow. I didn’t know it was all written in assembly, from within Debug it sometimes seemed so messy and convoluted that I just assumed more was written in C.
Look at them, embracing open source like this, how wonderful.
I’m sure the only reason why they waited this long is that they needed to make sure it’s old enough that the companies they stole code from can’t sue.
Can’t wait for the OSS community to fork it and build some cool shit on top of this /s
Well, this should be incredibly useful for Dosbox and improving playability of retro games, right?
Perhaps, if there are some very specific compatibility issues that haven’t been solved yet.
That said, MS-DOS 4 isn’t even the most recent version, the last one was 6.22 to my knowledge, and IIRC a lot of games tended to require at least version 5 or 6.
deleted by creator
2 things, the project exists and is called ReactOS. 2nd, the kernel in the versions of Windows anyone thinks about is the NT kernel which they will never release to be open source. The NT Kernel was built specifically so that they didn’t have to use DOS to make Windows work.
And look at all of they ways they are extending the open source community via github and copilot!
They sure are extinguishing any posible fear I may have about the absolutely destroying anything beautiful.
when rust
deleted by creator
Question - did you delete your comment less than an hour after posting it? Or am I seeing that as some kind of glitch in the Sync app?
To me, your comment just says “deleted by creator.”
He left it in moist air and it rusted
deleted by creator
This one lasted at least 11 hours ¯\(◉°◉)/¯
Good decision in the long run I suppose
Where is the ctrl+alt+del function defined? I just want to see what made that sequence work. I’d also be interested in where ctrl+break is defined.
Ctrl+alt+delete was a separate interrupt line direct from the keyboard. That is, when you pressed the three keys, the interrupt signal was asserted, causing the CPU to jump to the interrupt service routine, which should be in the source code package.
is it in the source code, or is it just passed right to BIOS?
It was originally a BIOS interrupt, but eventually got captured by the OS. Here’s Dave Bradley talking about inventing it https://m.youtube.com/watch?v=K_lg7w8gAXQ
Bill does not think that is funny.