In case it wasn’t sufficiently obvious already: A forensic expert now confirmed that 86-DOS, née QDOS, and (by extension) MS-DOS were not copies of CP/M, either on source or binary level. This comes hardly as a surprise, despite years (nay, decades) of vague accusations against Tim Paterson and Microsoft.
Proving that 86-DOS was a copy of CP/M was always going to be very much an uphill battle based on what was known of the operating systems. 86-DOS ran on 16-bit 8086 systems, while CP/M at the time was 8-bit only (8080, Z-80); in fact the unavailability of CP/M on the 8086 was the sole reason why 86-DOS was written in the first place.
While 86-DOS was compatible with the CP/M API, it used a completely different disk management strategy (based on the FAT idea of Microsoft’s Marc McDonald) and DOS-formatted disks were never compatible with CP/M. In addition, 86-DOS supported the 8086 segmented architecture and accepted 16:16 far pointers for input/output buffers passed to DOS (because the segment address was passed in DS, small model programs, including those converted from CP/M, could ignore this feature). There was no equivalent in 8-bit CP/M. Continue reading
