CP/M-86
# CP/M-86

Il CP/M-86 è una versione del sistema operativo CP/M di Digital Research inizialmente sviluppata per gli Intel 8086/8088 e poi estesa per supportare altri processori x86. I comandi sono identici a quelli del CP/M-80, la prima versione del sistema distribuita per il processore Intel 8080. I file eseguibili del CP/M-86 usano l'estensione ".CMD".

Il CP/M-86 è stato successivamente reso compatibile con l'MS-DOS e commercializzato come DR-DOS.

## Il CP/M-86 e il PC IBM

Agli inizi degli anni ottanta IBM decise di produrre un personal computer di larga diffusione, il PC IBM. La scelta del sistema operativo da utilizzare ricadde inizialmente sul CP/M, che all'epoca dominava il mercato. IBM contattò quindi Digital Research, che aveva da tempo annunciato una versione del suo CP/M per i processori 8086 senza però averla ancora distribuita.

Le trattative tra Digital Research e IBM non andarono a buon fine per diversi motivi: primo per il rifiuto iniziale di Digital Research nel firmare l'accordo di non divulgazione che IBM richiedeva per tutti i suoi colloqui di affari, e secondo per non voler accettare una licenza commerciale basata sul pagamento di un importo prefissato al posto del solito sistema basato sulle royalty che Digital Research normalmente richiedeva per i suoi prodotti.

IBM decise perciò di rivolgersi a Microsoft, con la quale aveva già stretto un accordo per la fornitura dell'interprete Microsoft BASIC, chiedendo di fornirle anche un sistema operativo. Microsoft contattò quindi Seattle Computer Products che già commercializzava per il suo computer Gazelle un proprio sistema operativo denominato 86-DOS, scritto da Tim Paterson ricalcando il CP/M. Microsoft ottenne una licenza sul software che le permetteva di rivendere il prodotto a terzi.

Microsoft adattò l'86-DOS all'hardware del PC e lo presentò ad IBM, che rimase soddisfatta del prodotto, decidendo di acquistarne la licenza e ridistribuendolo come PC-DOS insieme al suo computer. Poco prima della commercializzazione del PC, Microsoft acquistò tutti i diritti dell'86-DOS da Seattle Computer Products..

Quando il PC IBM arrivò sul mercato, il fondatore di Digital Research, Gary Kildall, vide la forte somiglianza che c'era fra il PC-DOS ed il suo CP/M e minacciò IBM di denunciarla per violazione della proprietà intellettuale di Digital Research. Per non finire in tribunale, IBM si accordò con Kildall per offrire il sistema operativo di Digital Research come alternativa al suo PC-DOS. Kildall adattò quindi il suo CP/M-80 al processore 8086 e produsse il CP/M-86. Purtroppo questa operazione richiese alcuni mesi e, quando il CP/M-86 fu disponibile, nel 1982, il PC-DOS era già stato acquistato da numerosi utenti. Inoltre IBM offriva il suo sistema operativo al costo di 40 dollari a copia mentre il CP/M-86 fu offerto a 240 dollari a copia, rendendolo di fatto un'alternativa poco appetibile.

Kildall in seguito accusò IBM di aver deliberatamente effettuato questa scelta per impedire in pratica l'acquisto del CP/M-86 ma il motivo di questa differenza di prezzo risiede nel fatto che Microsoft accettò il pagamento di una licenza con un diritto fisso mentre Digital Research richiese ad IBM il pagamento di una royalty per ogni singola copia, costringendola quindi a vendere il CP/M-86 ad un prezzo molto più alto del suo PC-DOS.

A causa di ciò il PC-DOS fu adottato dalla maggioranza dei clienti del PC IBM, affermandosi come nuovo sistema operativo standard.

## Versioni

Il CP/M-86, derivando dal CP/M-80, possedeva la stessa struttura basata sulla divisione fra le routine che costituivano il BIOS, ossia quelle deputate alla comunicazione con l'hardware della macchina e che erano specifiche per ogni computer, e quelle che costituivano il BDOS, ossia il kernel del sistema operativo, uguale per tutte le distribuzioni. Ognuno dei 2 componenti aveva perciò un numero di versione proprio: il primo, applicato all'intero sistema, era quello visualizzato all'avvio del sistema; il secondo era invece quello del BDOS. Le versioni note del CP/M-86 sono le seguenti:

* CP/M-86 1.0 (BDOS 2.2): distribuita nel mese di gennaio del 1982, è la prima versione del CP/M-86, distribuita con i PC IBM.
* CP/M-86 1.1 (BDOS 2.2): distribuita nel mese di marzo del 1983, supporta i dischi rigidi.
* CP/M-86 Plus 3.1 (BDOS 3.1): presentata nel mese di ottobre del 1983, è una versione del CP/M-86 realizzata per il computer Apricot PC. Contiene il kernel multitasking del Concurrent CP/M, capace di eseguire 4 compiti contemporaneamente.
* Personal CP/M-86 1.0 (BDOS 3.1): presentata nel mese di novembre del 1983 per il computer Siemens PG685.
* Personal CP/M-86 3.1 (BDOS 3.3): sviluppato per i computer serie F di Apricot (gennaio 1985), permetteva di usare i dischetti formattati con l'MS-DOS.
* Personal CP/M-86 2.0 (BDOS 4.1): versione del sistema per il Siemens PC16-20 (1986). Questa versione conteneva lo stesso BDOS del DOS Plus.
* Personal CP/M-86 2.11 (BDOS 4.1): versione del 1986 progettata per il Siemens PG685.

Tutte le versioni del Personal CP/M-86 contengono dei riferimenti al CP/M-86 Plus, suggerendo così che esse derivino dal codice del CP/M-86 Plus.

