News for hackers. Stuff that matters.
Re:The Life of MS-DOS by andai on Sunday February 13, 2022 @06:21PM (#30326614)
>Because of its similarity to CP/M, it was easy to port programs originally designed for CP/M on 8080 and Z80 processors to QDOS, which targeted 8086 processors.

I read somewhere[0] that a major reason for DOS's success was that it had thousands of programs "already written" for it on launch day due to backwards compatibility with CP/M software. Iirc the same article argued that backwards compatibility is Microsoft's (and Intel's) greatest strength. I can run programs compiled on Windows 95 on Windows 10 today. They go really far with this -- one version of Windows had a hack built into the kernel to work around a bug in SimCity![1]

[0] Placeholder for source, if someone finds it!

[1] https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost...

Re:The Life of MS-DOS by wtallis on Sunday February 13, 2022 @06:40PM (#30326765)
A lot of that CP/M compatibility comes from the fact that the 8086 had a high degree of backwards compatibility with the 8080/8085 (and thus also the 8008). It wasn't actual binary compatibility, but the instruction set was either a strict superset or close enough (albeit with different encoding) that you could take an 8080 program written in assembly language and run it through an appropriate 8086 assembler to produce a valid 8086 binary. Since the processor made it possible to port software that seamlessly, it made sense for operating systems to also provide a compatible ABI.
Re:The Life of MS-DOS by exidy on Monday February 14, 2022 @01:54AM (#30329029)
Not only this, but MS-DOS supported the CP/M style "Call 5" system call interface as well as the "modern" MS-DOS "int 21" system call interface, which is why to this day there is a jmp instruction at 0005h of the .com file format.
Re:The Life of MS-DOS by Falkon1313 on Monday February 14, 2022 @02:00AM (#30329058)
The backwards compatibility remains a huge feature of DOS and Windows.

Sure some new games are cross-platform and work in Linux and Mac, but for anyone who's been gaming for awhile, most of your favorites are PC, and a lot of 'em will still work. A few of the ones that used oddball custom memory management near the end of the DOS era won't work on a modern system. And some that used custom VB controls in the Win-95 era. But a surprising number overall still do.

One that amuses me is SST.[1] Written in the late-60s to early 70s on a mainframe, then ported to PC in the early 90s, still works just fine in Windows 10 (last updated in 2019). Still has a teletype terminal style interface, but also it still just works. And sure, a lot of that was due to the porting done in the 90s, but a lot is also just due to the basic stability of the platform.

That's a game my dad might've played in school, and my grandson could play now.

I wonder how much software written today will still 'just work' in 30+ years? Sure, we can use virtual machines and emulators and such, but without that, will anything written today still 'just work' the way old software does? So much now is constant churn with monthly/weekly/daily updates and dependencies and everything - constant maintenance to keep it running. So many network dependencies even for things that don't need them. I'd say most of us aren't really building software to last.

And if nothing is built to last, that great value of backward compatibility and longevity is lost. Which is kinda sad.

[1] https://almy.us/sst.html

Re:The Life of MS-DOS by justsomehnguy on Monday February 14, 2022 @12:05AM (#30328569)
> [0]

Probably not the article you want, but has a little tidbits:

https://news.ycombinator.com/item?id=27399039

Re:The Life of MS-DOS by andai on Monday February 14, 2022 @12:51AM (#30328796)
Woah, neat! Thanks for sharing.