Menu

M-DOS e MSX-DOS

L’MS-DOS non è stato il primo sistema operativo targato Microsoft.

Infatti la casa di Redmond, sul finire degli anni 80, aveva in cantiere l’M-DOS (conosciuto anche come MIDAS), dedicato ai sistemi con processore Z80/i8080 dotati di terminali per l’I/O. Il Sistema era simile al CP/M e pensato come suo diretto antagonista.

La discesa in campo di IBM con il proprio PC fa spostare l’attenzione di Microsoft su tale piattaforma abbandonato del tutto l’M-DOS e la relativa piattaforma, tranne che per il mercato Giapponese dove l’intuizione di Kazuhiko Nishi porta alla creazione dello standard MSX, pensato per promuovere un’architettura comune da utilizzare nella realizzazione di microcalcolatori ad 8 bit.

L'intenzione era quella di realizzare uno standard in modo che qualunque software o dispositivo recante il logo MSX, fosse compatibile con i prodotti MSX sviluppati da qualsiasi produttore.

msxdos_logo

MSX Logo

All’abbreviazione “MSX”  vengono attribuiti due significati: “MicroSoft eXtended”, per via del linguaggio di programmazione embedded MSX-BASIC, e “Machines with Software eXchangeability”, ovvero Macchine con Software Interscambiabile. Quest’ultimo significato avvallato dallo stesso Nishi.

Inizialmente Microsoft sviluppa  l’MSX-Basic da fornire come software base per ogni sistema MSX compilant, installato direttamente nella ROM. Successivamente grazie all’introduzione del supporto dei floppy disk attraverso il BDOS (un bios specifico installato sul controller del dispositivo) la casa di Redmond decise di realizzare una versione speciale dell’MS-DOS con cui effettuare il boot da disco. Questa prima versione, 1984, viene chiamata MSX-DOS ed è chiaramente ispirata all’MS-DOS, ma strizza l’occhio al CP/M, allora molto diffuso sui microcalcolatori ad 8bit.  Infatti molti dei software più utilizzati per CP/M (WordStar, Turbo Pascal , "M80" assembler e "L80" linker) sono in grado di funzionare immediatamente sul nuovo sistema operativo senza necessità di essere  modificati e ricompilati.

Nei piani di Microsoft l' MSX doveva essere il sistema per uso home e l'MS-DOS il sistema per un ambito lavorativo/ufficio. Le applicazioni sviluppate per l’MSX-DOS erano in grado di accedere ai floppy (in realtà anche quelle per l’MSX-BASIC esteso) e, come il fratello maggiore, ammetteva un numero massimo di 8+3 caratteri per i nomi dei file. Inoltre, il numero dei file su disco era limitato a 112 e non erano supportate le sottodirectory.

msxdos_prompt

MSX Prompt

Nel dettaglio bisogna rilevare che l’MSX-DOS non prevedeva un boot-sector ma effettuava le attività di boot tramite le routine del BDOS e utilizzava il primo byte della FAT12 del disco per determinare i parametri del file system stesso. La presenza di due floppy drive era ininfluente per il boot: il controller era in grado di accorgersi in quali di esso era presente il floppy di avvio.

Ovviamente il formato dei floppy era completamente compatibile con l’MS-DOS e ciò fu un fattore particolarmente rilevante poiché il diretto antagonista, il CP/M, nonostante supportasse anch’esso i floppy aveva una miriade di formati, dipendenti dalla macchina su cui era in funzione.

Nel 1988 viene rilasciata la versione 2 che offre notevoli miglioramenti, tra i quali: supporto alle sottodirectory, gestione della memoria e, grazie all’introduzione di un clock real time nel nuovo standard MSX-2,un  time-stamping per i file. Le applicazioni scritte per la versione 1 erano in grado di girare  anche sulla nuova release, a patto di non richiedere un Mapping diretto della memoria o, in tal caso, utilizzando utility terze come Map.com

msxdos_oem

MSX OEM