L'Apple DOS, acronimo di Apple Disk Operating System, è stato il sistema operativo per dischi che Apple ha fornito dal 1978 fino al 1983 in abbinamento alle unità a dischi Disk II vendute per i personal computer della serie Apple II. È stato sostituito dal ProDOS.
L'Apple DOS fu distribuito in tre versioni principali: DOS 3.1, DOS 3.2 e DOS 3.3. e ognuna di esse fu seguita da una versione che ne corresse i bug e solo nel caso dell'Apple DOS 3.2 essa ebbe un proprio numero di versione (3.2.1) mentre le altre mantennero il numero originale. La versione più nota e usata fu la 3.3, distribuita nel 1980 e aggiornata successivamente nel 1983 per la correzione di bug.
Storia La prima unità a dischi prodotta da Apple fu il Disk II, sviluppata da Steve Wozniak e Randy Wigginton. Quando fu presentata all'inizio del 1978 al Consumer Electronics Show, l'unità era stata ultimata da pochissimo e Wozniak e Rigginton non avevano avuto il tempo di sviluppare anche un sistema operativo a dischi (DOS) per poter gestire in maniera comoda i file ma avevano scritto solo alcuni comandi di base per posizionare la testina in un settore del disco e leggere/scrivere dati da quel settore. Terminata l'esposizione, Jobs contattò la Shepardson Microsystems per scrivere un DOS vero e proprio per il Disk II. A questo lavoro fu assegnato il programmatore Paul Laughton, che lavorò insieme a Wozniak e Wigginton per sviluppare il DOS richiesto. Il contratto fu stilato il 10 aprile per un importo di 13.000 dollari. La consegna della versione finale del DOS era stata fissata per il 15 maggio, lo sviluppo del DOS fu portato a termine in soli 35 giorni. Anche alla Apple gli ingegneri lavorarono alacremente per produrre un numero sufficiente di unità a dischi per l'inizio della commercializzazione. Ciò comportò che non ci fu il tempo materiale per preparare un manuale dell'utente e, per questo motivo, il DOS fu distribuito inizialmente senza una documentazione ufficiale ma solo con alcune note sulle principali caratteristiche e su alcuni comandi. Fu solo con la distribuzione della versione 3.2, avvenuta nel mese di febbraio del 1979, che un manuale degno di questo nome fu reso disponibile agli utenti.
Dopo il 1980 lo sviluppo degli Apple II e dell'Apple DOS subirono un rallentamento dato che Apple concentrò i suoi sforzi sugli Apple III e il relativo sistema operativo Apple SOS. Nel 1983 il DOS 3.3 subì un paio di aggiornamenti, principalmente per correggere alcuni bug del sistema e per migliorare il supporto ai nuovi Apple IIe, distribuiti in quello stesso anno.
Senza estensioni prodotte da terzi, l'Apple DOS poteva leggere solo i dischi da 5"¼ delle unità Disk II e non poteva accedere ad altri tipi di memoria di massa quali dischi rigidi, RAM disk o dischi da 3"½. La struttura del DOS era tale per cui non era possibile gestire più di 400 kB per disco senza riscrivere la maggior parte del suo codice: questo fu il principale motivo per cui Apple abbandonò il DOS nel 1983 sostituendolo con il nuovo ProDOS.
Il ProDOS manteneva il limite a basso livello dei 16 settori per traccia sui dischi da 5"¼ del DOS 3.3 ma introduceva un nuovo formato ad alto livello che era in grado di gestire dispositivi con capacità fino a 32 MB: ciò permise al ProDOS di supportare i nuovi dischi da 3"½. Tutti i computer Apple dall'Apple II Plus in avanti potevano far girare sia il DOS 3.3 che il ProDOS: i primi necessitavano, però, della "Language Card" (l'espansione di memoria) per usare il ProDOS. L'Apple IIe ed i modelli successivi integravano questa scheda nel proprio hardware e potevano perciò usare il ProDOS senza ulteriori modifiche. Il ProDOS includeva un software per copiare i file dai dischi Apple DOS. Nonostante le maggiori funzionalità del ProDOS, molti utenti continuarono ad utilizzare l'Apple DOS ben oltre il 1983.
L'abitudine di Apple di salvare una copia avviabile del sistema operativo su ogni singolo disco permise ai produttori di software commerciale di non preoccuparsi di quale versione del DOS l'utente possedesse. Esisteva anche un programma chiamato DOS.MASTER che permetteva agli utenti di avere diverse partizioni virtuali del DOS 3.3 su un'unità formattata con il ProDOS, con il vantaggio di poter avere molti programmi DOS nati per i dischetti floppy su un unico disco rigido.
Il DOS 3.3 continua ad essere commercializzato da Syndicomm su licenza esclusiva.
Nel 2013 è stato rilasciato il codice sorgente in assembly dell'Apple DOS, liberamente scaricabile per fini non commerciali.
Versioni Versioni di sviluppo e 3.0 Le versioni dalla 0.1 alla 2.8 furono versioni di sviluppo. La versione 2.8 fu terminata nel mese di giugno del 1978 e presentata alla Apple per la fase di verifica. Alla Apple decisero però che il nome DOS 2.8 non era piacevole per cui incrementarono la numerazione della versione fino alla 3.0: questa versione fu considerata come "beta", utilizzata quindi come test. Corretti i bug che l'affliggevano, Apple decise di incrementare ancora la numerazione portando il DOS alla versione 3.1 prima della commercializzazione, per indicare che il codice era cambiato rispetto alla beta.
Apple DOS 3.1 L'Apple DOS 3.1 fu distribuito nel mese di luglio del 1978 (meno di un anno dopo l'introduzione degli Apple II), divenendo il primo sistema operativo basato sui dischi di qualunque computer Apple.
Successivamente fu distribuito un aggiornamento che correggeva alcuni bug che affliggevano il primo DOS. La nuova versione, che manteneva la numerazione 3.1, sistemava il problema del numero di linea in un listato che non poteva essere maggiore di 255, permetteva la presenza di più di un comando DOS per linea di programma, e correggeva la routine usata per creare una copia "master" dell'Apple DOS con il comando MASTER.CREATE, che sulla 3.1 originale funzionava solo quando il controller per i dischi era inserito nella porta di espansione nº 7 dell'Apple II ma, durante la progettazione, in tale porta fu deciso di inserirci la scheda video ed il controller venne spostato sulla porta nº 6 (curiosamente, le schede video venivano inserite nella porta nº 3, lasciando quindi la porta nº 7 vuota). Esisteva anche un altro tipo di disco DOS, il cosiddetto "slave", creato con il comando INIT: rispetto ad un disco "master", la cui copia del DOS si adattava dinamicamente al quantitativo di memoria che trovava sulla macchina su cui era usato, un disco "slave" avviava la sua copia del DOS allocando lo stesso quantitativo di memoria della macchina su cui era stato creato. Se, per esempio, veniva creato un disco "slave" su un Apple II con 16 KB di RAM, se tale disco era usato su un computer con 48 KB di memoria, il sistema ne allocava solo 16. Ecco, quindi, che l'uso di un disco "master" era molto importante ed il bug del comando MASTER.CREATE limitativo.
Apple DOS 3.2 e 3.2.1 Agli inizi del 1979 Apple presentò l'Apple II Plus, un'evoluzione dell'Apple II: insieme all'hardware fu rinnovato anche il sistema operativo, con la presentazione dell'Apple DOS 3.2. Rispetto agli Apple II, al posto dell'Integer BASIC i modelli Plus integravano nel loro firmware un nuovo BASIC con supporto per i numeri in virgola mobile, l'Applesoft BASIC, ed una nuova funzionalità di autoavvio: se il computer trovava un controller per unità a dischi al momento della sua accensione, avviava il disco eventualmente inserito. Da tale caratteristica il firmware prese il nome di "Autostart ROM". La nuova versione 3.2 aumentava anche il numero di tipi di file gestibili ed introduceva il comando UPDATE 3.2 che convertiva un disco "slave" in un disco "master". Infine, il DOS 3.2 era arricchito di diversi giochi e programmi dimostrativi delle capacità delle nuove macchine. Del DOS 3.2 esistono 2 versioni, entrambe con lo stesso numero di rilascio: l'unica differenza è l'assenza, nella prima versione, dell'Applesoft BASIC.
Nel mese di luglio del 1979 Apple presentò l'Apple DOS 3.2.1, una versione che differiva dalla 3.2 solo per la risoluzione di alcuni piccoli bug, tra cui quello relativo alla temporizzazione che affliggeva il comando COPY, che falliva la copia di un disco quando si usavano 2 unità contemporaneamente. Con questa distribuzione veniva anche introdotto un sistema di numerazione delle versioni che usava una terza cifra ad indicare una modifica minore, un sistema che ha continuato ad essere utilizzato fino ai giorni nostri.
Apple DOS 3.3 L'Apple DOS 3.3 fu distribuito nel mese di agosto del 1980. Rispetto al DOS 3.2, introduceva diverse migliorie tra cui la capacità di gestire le superiori capacità di memorizzazione offerte dalle nuove PROM P5A/P6A montate sugli ultimi controller che potevano leggere e scrivere i dati ad una densità maggiore: grazie a queste PROM le tracce potevano ora contenere fino a 16 settori (4 kB) contro i precedenti 13 (3,25 kB), facendo aumentare la capacità totale di un dischetto da 113,7 kB a 140 kB per lato. Di questi, 16 kB erano usati dal DOS per il file system e per la copia del DOS 3.3, lasciando 124 kB di spazio per i programmi ed i dati dell'utente.
Il DOS 3.3 non era però retrocompatibile: non poteva leggere o scrivere sui dischetti formattati con una versione precedente del DOS. Per risolvere questo problema Apple rese disponibile un software denominato "MUFFIN" che serviva a copiare i file di un disco ante DOS 3.3 su un disco DOS 3.3. Apple non distribuì mai una versione per l'operazione inversa e la comunità di utenti produsse in proprio una applicazione denominata "NIFFUM" che convertiva un disco DOS 3.3 nel formato compatibile con le precedenti versioni. Esistevano anche delle applicazioni commerciali (come il software "Copy II Plus") che erano in grado di copiare i file tra i due formati (e successivamente anche da e per i dischi formattati con il ProDOS).
La versione 3.3 permetteva anche di passare con più facilità dall'Integer BASIC all'Applesoft BASIC se il computer aveva una scheda di espansione, la "Language Card", o una scheda con un firmware esteso, la "Firmware Card".
Esistono 3 versioni del DOS 3.3. Apple, nel corso della sua commercializzazione, aggiornò 2 volte il sistema operativo senza però cambiare numero di versione: la prima versione è quella pubblicata nel mese di agosto del 1980. Si riconosce dal fatto che i file FPBASIC e INTBASIC occupano entrambi 50 settori sul disco. la seconda versione compare in concomitanza con l'inizio della commercializzazione dell'Apple IIe, e per questo il sistema operativo è talvolta indicato come "DOS 3.3e". Il sistema introduce la possibilità di disattivare all'avvio la scheda "80-column card" dell'Apple IIe e corregge un bug del comando APPEND (introducendone però un altro). Questa versione è identificabile dal fatto che i programmi FPBASIC e INTBASIC occupano ciascuno 42 settori sul disco. la terza versione viene distribuita poco prima del rilascio del ProDOS. L'unica differenza con le precedenti versioni è la risoluzione definitiva del bug del comando APPEND.
Caratteristiche I dischetti formattati con il DOS 3.1 utilizzavano 13 settori per traccia, ognuno di 256 byte, con 35 tracce per ogni lato del disco: in totale, lo spazio a disposizione era di 113,75 kB per lato, di cui circa 10 kB erano riservati per memorizzare lo stesso DOS e la directory del disco, lasciando all'utente finale 100 kB di spazio utile. Le unità dischi potevano accedere ad un solo lato per volta, obbligando l'utente a girare il dischetto per operare sul lato inferiore. I nomi dei file potevano contenere fino a 30 caratteri, inclusi gli spazi ed i caratteri di controllo: l'MS-DOS, per confronto, continuò fino al 1995 a supportare nomi lunghi solo 11 caratteri, di cui 8 per il nome vero e proprio e 3 per l'estensione.