Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
MSX-DOS (wikipedia.org)
161 points by pavlov on July 22, 2023 | hide | past | favorite | 49 comments


Everybody has heard of MS-DOS, but Microsoft’s backport to 8-bit systems is more obscure.

Since MS-DOS was practically a CP/M clone for 16-bit computers, Microsoft realized they could port it to 8-bit and it would be a binary-compatible cleanroom CP/M clone. And that’s what they did. It was sold as a standard for Japanese home computers — MSX, a predecessor of Xbox in both nomenclature and target market.

The person tasked with creating this 8-bit port was Tim Paterson, the original creator of MS-DOS. Usually the story of IBM PC and Microsoft paints Paterson as a victim of Gates’s licensing machinations, but this MSX-DOS episode shows he continued to have a profitable relationship with Microsoft:

’On 10 August 1983, Paul Allen called Tim Paterson, original author of 86-DOS and MS-DOS 1.x, asking him to do a "Z80 version of MS-DOS" for the MSX standard. At the time, Paterson was busy trying to get the first product of his startup Falcon Systems ready to go, so he suggested a few other developers, but Allen said he had already asked. Allen was in a hurry to get it done and nobody else could meet his timeline. Allen and Paterson finally agreed, and on 17 August, they signed an agreement to do "Z80 MS-DOS 1.25" for US$100,000 and the rights for Paterson's company to distribute MS-DOS 2.0, 2.5, and 3.0 with a hardware product without royalty.’


> Usually the story of IBM PC and Microsoft paints Paterson as a victim of Gates’s licensing machinations

Slight offtopic:

I'm always amused by 'Gates had nothing [aside the money from his parents] and M$ was successful only because he ripped Paterson' story.

When I point to what MS already did by then I only hear crickets.

> The 1980 year-end sales total $8,000,000. The 1980 Calendar Year employee headcount totals 40 people.

> Other products released in 1980: Basic Compiler 5.3, TRS-DOS COBOL and Basic, muLISP and muMATH, TRS-80 Editor/Assember, XMacro-86 Cross Assembler, COBOL-80 Compiler 4.0, BASIC Interpreter for Z8000, Olympic Decathlon (game), M/SORT, FORTRAN & COBOL for Apple II, RAMcard (memory expander for the Apple II)

https://learn.microsoft.com/en-us/shows/history/history-of-m...


The real "trick" wasn't getting DOS licensed to give to IBM, it was getting IBM to allow them to sell it themselves.


At the time it was assumed that other DOS licensees would be building their own architecture. There were several kinds of "DOS-compatible" computers, most notably the PC-98[0], which had MS-DOS and Windows ports but no IBM compatibility whatsoever.

Several other companies would then try to clone the IBM PC; they all got shut down for copying the BIOS code. The PC clone market only kicked off once Compaq was able to write a legally distinct BIOS.

Another part of the reason why Microsoft was able to sell IBM a nonexclusive license boils down to their existing business relationship. Microsoft was just their BASIC vendor and they sold BASIC to everyone. IBM wanted CP/M-86, but Digital Research was taking too long to ship it. Seattle Computer Products[1] was also making 8086-based computers but had no OS for them, so they wrote their own - QDOS. Microsoft was willing to buy QDOS and port it to the PC for IBM, which fixed IBM's biggest problem with the PC, so why wouldn't they take the license?

In order for IBM to object to taking a nonexclusive DOS license, they'd have to both realize that the clone market was going to be huge, and that the IBM PC BIOS would not be enough protection against clones. Both of which were not at all certain when the IBM PC was under development. Remember, the whole point of the IBM PC was to put together something quickly because they were playing catch-up to Apple and Commodore, not to build a computing empire like IBM's enterprise business.

[0] The machine Touhou started on. Also the machine so difficult to do animated graphics on that most developers made pornographic visual novels instead. Like to the point that the Japanese market would just assume PC games were porn.

[1] A subsidiary of the SCP Foundation


MSX was not a Japanese standard for home computers, although it was the home turf and simply was the most successful there. MSX was meant as a worldwide standard to replace the then current crop of computers with a interchangeable standard. (Atari and C64) were closed technologies.


Right. It was also popular in some Arabic language countries and South America at the very least.

Probably more correct to say it was a computer standard launched in Japan.


Philips was a big proponent of MSX.


Also in Europe.

I wrote my first lines of BASIC code on one as a kid.


Was MSX a standard similar to IBM Compatible?


It was certainly marketed and envisioned as an international standard to have interoperability. Most external devices (mostly ROMs) could work between brands.

But remember PCS were for businesses until about the early 90s when games became more popular as the decade rolled on and PCs became affordable as well. IBM compatible was more a necessity for other brands to sell their PC as compatible for businesses, so it became a standard by popularity, not from a top to bottom decision.

People at home bought home computers roughly in the 80s.


I think the games became more popular because the hardware became cheaper and more capable. Before the early-to-mid 90s a PC or compatible might cost $2000, outside the budget for a lot of families. Buying a computer just for games didn't make sense when a specialized game system was so much cheaper.


Kind of, MSX was designed as a standard for 8 bit computers, while IBM compatible happened by accident.


That's how I remember it, too...


>Usually the story of IBM PC and Microsoft paints Paterson as a victim of Gates’s licensing machinations

I don't think that Tim Paterson is portrayed as a victim, but rather Seattle Computer Products owner Rob Brock.

>Paul Allen negotiated an agreement with SCP owner Rod Brock in January, implying that Microsoft had a whole stable of customers eager to run 86-DOS. The deal would essentially allow Microsoft to act as middleman — or, if you like, retailer — in these transactions. For each customer to whom they sold a license for 86-DOS, they would pay SCP $10,000, or $15,000 if the license also included the source code. They would also pay SCP an initial fee of $10,000 to begin the agreement. [...] In reality, of course, Microsoft had no stable of eager licensees. They had just one, the biggest fish of all: IBM. Microsoft sold just one license under the agreement, acquiring IBM’s operating system for them complete with source for just $25,000.

[...]

Rod Brock at SCP was a disappointed man. The legion of 86-DOS licensees he had anticipated following the Microsoft deal hadn’t materialized, and now he had lost Paterson, the one software guy at his hardware-focused company, to Microsoft. [...] He started to shop 86-DOS around a bit, looking for someone willing to take over support in return for an exclusive license to it. Gates pounced immediately, offering SCP a much-needed $50,000 for the deal — with one crucial difference. He stipulated that Microsoft would not be buying an exclusive license, but would be buying the software itself, outright. They would then grant the exclusive license to SCP, essentially turning the deal on its head.

[...]

Computer Products straggled on for a few more years, but finally went under in 1985. Rod Brock did, however, still have one thing of immense value. You’ll remember that Brock had sold 86-DOS to Microsoft outright, but had received an exclusive license to it in return. With his company failing, he decided to cash out by selling that license on the open market to the highest bidder. [...] The whole thing devolved into a complicated legal battle, one of the first of many for Microsoft. In the end Brock did not sell his license, but he did receive a settlement check for $925,000 to walk away and leave well enough alone.

https://www.filfre.net/2012/05/the-ibm-pc-part-3/


In The Netherlands, the MSX was produced by Philips. Before that, there was the Philips P2000, which also had a Z80 processor and had a BASIC ROM jointly developed by Philips and Microsoft. I wonder if there is overlap in the code?

[1] https://en.wikipedia.org/wiki/Philips_P2000


I don't agree with your interpretation of MSX being a XBOX predecessor in any way, especially in target market.

It was a standard largely adopted for home and business computers that could run arbitrary code and, despite the strong game library, it wasn't meant for games. In many countries it was extensively used for business applications by small businesses and independent professionals due to the decent specs and low cost.


I think the Xbox reference from op was just about the naming scheme of appending an X; it's all "Xbox one x", Xbox series x" etc. Not in terms of the software itself being a natural predecessor of Xbox.


I believe Xbox is named that because it was originally, tragically, named the "DirectX Box". DirectX had the X because it was a combination of several APIs, all called DirectPlay, DirectSound, etc.

But perhaps in a larger sense, maybe Microsoft just has a fetish for the letter.


MSX was a Japanese home computer standard indeed, developed in collaboration with Microsoft, who provided the BASIC ROM implementation. It became very popular in Japan and in a number of European and South American countries. I wasn’t aware that MSX-DOS was also started by Microsoft but I am not surprised. Later versions of the OS were developed by ASCII corporation in Japan.

Fun fact is that the source was released not long ago with restrictions, and there is a newer version developed by an enthusiast called Nextor. Still in use today by many hobbicists.


> the source was released not long ago

That sounds interesting. Could you perhaps provide a link? I cannot seem to find anything by myself.


Check the readme on this:

https://github.com/Konamiman/Nextor


For those not familiar with the MSX line of computers, here's an interesting interview with Bill Gates about it.

https://shmuplations.com/billgates/

The short history is that it was somewhat modeled on the "post-IBM" IBM-PC market dynamic, with there being an industry standard hardware platform that originated from a single maker (in this case ASCII), but available to anybody, with Microsoft supplying core software components. However, it was to target the 8-bit micro computer market, which at the time had an absolutely dizzying number of incompatible computers even though they often relied on very similar core components (Z80 or 6502 processors, similar audio, similar video, etc.)

There was intention to bring it worldwide, and it made its way out of Japan and into Europe, South America, and even a few parts of the Middle-East. However, it never really made it in the most competitive markets of North America and the UK. In the U.S. Jack Tramiel made it a point to underprice and over-feature the Commodore line of computers to beat the MSX and everybody else in the 8-bit market. And in the UK, the ultra-low priced ZX Spectrum line (as well as a healthy market in the BBC Micro and others) kept it out.

Ultimately, the 8-bit market just vanished anyway and there were no real credible compatible upgrade paths out of it. There was a 16-bit MSX variant based on the R800 released (the TurboR), but the MSX market was dead by then.

The MSX is mostly well known these days as an early home for Konami at a similar time as the Nintendo Entertainment System. The MSX computers feature almost a parallel universe of high-quality Konami titles that either exist only on the system, or are alternate takes on famous NES games.

If you want to see what the MSX was like, I'd suggest looking at MSX2 or MSX2+ games as being the closest to what NES players might remember. The original MSX was very similar to the Colecovision in terms of power and the games can be somewhat underwhelming.

There's a number of online emulators, I'd highly suggest seeking out one that hosts Space Manbow, a completely unique Konami side scrolling shoot-em-up that's absolutely as good as anything else contemporary.

https://www.file-hunter.com/MSX/index.php?id=spacemanbow


> The original MSX was very similar to the Colecovision in terms of power and the games can be somewhat underwhelming.

And in fact the Coleco Adam was pretty much 95% of the way to being an MSX, but not quite enought to be compatible - a similar story to the first series of SpectraVideo machines (318 and 328) (edit: and the Memotech MTX series)

edit 2: perhaps 95% is a little overgenerous, Adam used a different audio chip (and didn't use MS Basic[1]), so maybe 80% of an MSX

[1] although the basic wasn't in ROM, so in theory you could have msbasic loaded from an external source anyway, although I don't think it was ever ported to the adam. Instead it used a 'clone' of appleBASIC.


>Alternate take

Metal Gear on the NES it's very inferior to Metal Gear 2 on MSX.

Also, well, Castlevania on the NES it's a bit better than Drakyula in the MSX.


As a MSX user, my recollection is that this was very distant because required a lot of hardware add-ons (at least for the popular Philips VG-8020).

Anyone using MSX-DOS back in the day?

What CP/M programs were you running?

Really curious to know!


You didn't need hardware add-ons, only a 3.5 inch floppy drive (didn't run from tape). I never used cp/m programs on it, but there were quite a lot of cracked games that used msx-dos to run. And if I remember correctly, the Hitech compilers were .com files as well. I programmed in hex (just typing hex in memory addresses) with a memory monitor tool. I didn't even know the assembly instructions of what I was doing. I learned assembly & c using Hisoft. Before I switched to PC I knew how to create both 'bare metal' and msx-dos programs in assembly and c.

I knew about cp/m, but never had (as far as I know) any software for it.


Many of the later MSX models had a disk drive built in and came with MSX DOS. I was running MSX DOS on a Philips VG8235. I remember playing around with CP/M software such as Turbo Pascal and Wordstar.


So many memories playing around with a Spectra Video MSX as a kid. Mostly playing games, occasionally trying to draw stuf or making sounds using Basic. Some programs could only be started from msx dos.

Later, when most households in the Netherlands where start getting PCs (80286/386/486 era), I felt right at home using msdos.

Nowadays I really appreciate vaporwave aesthetics and I'm sure it's because of being absorbed in the world of msx computers, including reading magazines and such, as a kid.


Same


I knew about MSX-DOS but never realized it was CP/M compatible at the binary API level.


I have some more history of it here: https://www.abortretry.fail/p/disk-operating-systems

Effectively, MS-DOS was a port of CP/M to 8086 that got some upgrades overtime. When it was ported to MSX, Tim Paterson used an ASM translator he wrote, and the CP/M compatibility was a natural result.


That's a great history.

I did spot some small errors:

> Tim Paterson at Seattle Computer Products had developed a reverse engineered CP/M for 8086 S-100 bus microcomputers, DOS-86.

You have the name backwards. It was 86-DOS.

https://en.wikipedia.org/wiki/86-DOS

> Lineo eventually sold to DeviceLogistics in 2002.

DeviceLogics.

https://en.wikipedia.org/wiki/DeviceLogics

> The last versions were DR-DOS 8.1 and EDR-DOS 7.01.08 WIP 2011.

Hang on. This is conflating 2 entirely separate lines of development.

DrDos Inc continued work and released DR-DOS 8 and 8.1. However, it was shown that they used code from FreeDOS without giving credit and without releasing the source. The product was withdrawn.

Earlier, in 1997, Caldera released some of the DR-DOS 7.01 source code under a permissive but not FOSS license: https://www.zx.net.nz/netware/drdos/caldera.shtml

It changed its mind and withdrew it again as of 7.02, which was once again closed source. (Apparently the company found some old Novell backup tapes and was able to re-incorporate some Novell bug fixes which had been lost.)

Udo Kuhnt picked up this open source, and continued enhancing it. That is where Enhanced DR-DOS comes from. It's entirely separate and parallel to DrDos Inc's work on v8.

> From Lineo forward it would appear that Udo Kuhnt was the lead developer/manager.

He was an independent FOSS developer working on the open source code for the DR kernel 7.01. He had nothing to do with Lineo at all. (AFAIK!)


Thank you. Updated the article with your corrections.


In addition, books like this one describe some of those CP/M APIs.

Advanced Assembly Language

https://www.abebooks.com/servlet/BookDetailsPL?bi=3157744535...


My MSX came with both CP/M and MSX/DOS and as I recall CP/M programs could not be run in MSX/DOS.

This is also somewhat supported by the Wikipedia article: “To be able to run (slightly modified) CP/M software Microsoft decided to implement functionality”


Could it be due to a different disk format? MSX DOS is supposed to be able to run binaries in its own filesystem (FAT12), but I reckon it probably didn't support CP/M filesystems (which weren't unified really, each machine often had its own variety).


Msx wasn't cheap in South America, buy was way cheaper than IBM-PC.

Having BASIC built-in was the easiest way to learn something about programming. Few books, few magazines, creativity was the way to go.


On my Phillips MSX2, I had MSX-DOS, with an office suite called E.A.S.E. , also made by Philips

It had all the apps, wordprocessor, spreadsheet, database, charts.

I think there was also a DTP application, dynamic publisher


What I learned is CP/M, the first versions of MS DOS, including this MSX-DOS, did not have directories. Just a flat list of files. Weird.


It’s not an unknown limitation for floppy disc only file systems to not have subdirectory support, you only have 80-400KB[1] of data on the disc so can’t have too many files on a disc anyway. Why waste precious RAM and disc space (either in FS metadata overhead, or just more DOS code) on a feature that isn’t really vital? I think Apple II DOS 3.x is the same (and also on the original Mac FS although it was hidden by the UI). Once hard drives began to become reasonably affordable it became a problem so you get updated systems like MS-DOS 2, ProDOS etc.

[1] by the time high density floppies came out newer file systems were available.


Full circle, now we have cloud storage made of buckets which are just flat lists of keys (which sometimes pretend to have directories by putting slashes in the keys ...)


Floppies were your directories, in a very tangible sense. Filesystem directories only became a relevant feature when hard drive support was added in MS-DOS 2.0.


MS-DOS 2.0 bringing in hierarchical directories, pipes, and few other things (all credited to Unix) is considered by some the point where CP/M actually lost.

Before, DOS was playing catch up by ease of porting from CP/M, afterwards it was actually bringing in new features users wanted.


When you've only a bit of storage, directories aren't that important. If you've got enough stuff, a disk as a directory mostly works.

It's only when you start having high capacity (5mb or so) fixed drives that directories are really needed.


Makes me wonder what other ways we could've gone other than hierarchical.


Well, CP/M actually had a number of "user areas", the default one being USER 0. Some tools actually used that to simulate directories (AFAIR they kept the number to name mapping in a hidden file somewhere).


Once you have the basic concept of a filesystem, mapping names to chunks of data, I think directories are a natural extension. It's an aid to both the human and the computer.


From MSX, Konami games are brilliant. Also Metal Gear 1 and 2.


[flagged]


DOS was beautiful because:

  1) it was small,
  2) it was pretty useful when compared to the raw disk access without any notion of a file or directory,
  3) it allowed a software market to exist,
  4) in turn, this led to abundance of software that otherwise would not be possible.
In general, it was a dawn of the personal computer industry. Without it, you would not be able to write your messages now.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: