Tre Punto Cinque - Ultimi ma non meno importanti di Bernardo Innocenti <[email protected]> Abstract In quest'ultima puntata della nostra mini-serie alla scoperta dell'OS 3.5 completeremo la panoramica sul nuovo sistema operativo parlando di tutti i sottosistemi che finora erano rimasti esclusi. Datatypes La tecnologia dei Datatypes, introdotta per la prima volta nella versione 3.0 di AmigaOS, costituiva un'innovazione inaspettata, la cui reale portata non venne compresa appieno per molto tempo. A quei tempi ogni sistema operativo possedeva un proprio insieme di formati nativi per ogni tipo di file. Per importare dati provenienti da altri ambienti si doveva spesso ricorrere a programmi di conversione. Come tanti altri concetti presenti in Amiga, i Datatypes costituivano una tecnologia resa disponibile ben prima del suo tempo. Se l'idea era assolutamente rivoluzionaria, lo stesso non si può dire dell'implementazione, decisamente inferiore alle necessità degli utenti. MultiView era spesso messo da parte in favore di una miriade di programmi specifici (visualizzatori di immagini, animazioni, testi e suoni. Ognuno di questi superava MultiView sia in velocità che in ricchezza di opzioni. Inizialmente un altro deterrente era la disponibilità di un numero molto limitato di Datatypes. A questo posero rimedio gli sviluppatori di programmi freeware e shareware, che negli anni a venire inondarono Aminet con Datatypes per tutti i gusti. In AmigaOS 3.1 furono apportate alcune migliorie ai Datatypes, tra cui il supporto per le animazioni, ma le prestazioni rimasero piuttosto deprimenti. Nel frattempo le capacità grafiche e sonore di Amiga furono ampliate da una ricca scelta di hardware di terze parti, ma i Datatypes rimanevano legati ai limiti del chipset AGA: 256 colori e suono stereo a 8bit. Il team di CyberGraphX risolse il problema rilasciando tempestivamente una versione riscritta del picture.datatype con supporto per immagini true-color, seguita qualche tempo dopo dalla versione alternativa inclusa in Picasso 96. Entrambi i Datatype recavano numero di versione 43 ed esponevano la medesima interfaccia verso i programmi. Successivamente un gruppo di programmatori unì i propri sforzi nel DTA (Datatypes Association), con lo scopo di favorire lo sviluppo del sistema dei Datatypes. Il DTA rilasciò su Aminet la nuova datatypes.library V45 unitamente ad una serie di specifiche che miravano ad estendere il concetto dei Datatypes per risolvere i problemi presenti dell'architettura originale. Tra questi, ricordiamo l'impossibilità di decodificare “al volo” le immagini (utile ai browser) e la totale mancanza di supporto per i formati streaming, come il RealAudio e l'MPEG-2. Alla nuova libreria si affiancava una versione riscritta di MultiView, chiamata GMultiView e arricchita da numerose opzioni aggiuntive. Nel frattempo il noto Stefan Ruppert progettò un sistema che sostituiva ed estendeva il lacunoso sistema di help ipertestuale conosciuto come AmigaGuide. L'hypertext.datatype costituiva il fulcro di un insieme di Datatypes per la gestione degli ipertesti che avrebbe dovuto comprendere anche l'HTML. Lo stesso Stefan realizzò UniView, un altro valido sostituito di MultiView. Con il rilascio di AmigaOS 3.5, il sistema dei Datatypes ha goduto di un ulteriore raffinamento ad opera dell'instancabile Olaf Barthel. La datatypes.library V44 (è questo il numero di versione che contraddistingue tutti i moduli dell'OS3.5) è stata estesa con alcune funzioni che semplificano l'embedding dei Datatypes all'interno di altri oggetti. Inoltre è stata prevista la possibilità di passare un buffer in memoria come origine dei dati anziché un file. Inspiegabilmente, Olaf ha preferito apportare qualche miglioria alla versione originale piuttosto che riprendere il lavoro svolto dal DTA. Il risultato è che la datatypes.library V45 rimane tuttora decisamente più avanzata della versione distribuita con l'OS 3.5. Il picture.datatype V44 è in realtà una versione riveduta e corretta del V43 distribuito con Picasso 96, anch'essa scritta da Olaf Barthel. Numerose ottimizzazioni hanno portano la velocità a livelli accettabili, con una favorevole ricaduta su tutti i programmi che ne fanno uso, primo tra tutti AWeb. Purtroppo non è ancora prevista la decodifica progressiva delle immagini. Per tutti gli altri Datatypes di sistema non sono presenti modifiche sostanziali, eccetto la rimozione di tutti i bug segnalati dai beta testers. IPrefs IPrefs è un programma che viene lanciato nella Startup-Sequence e controlla numerose impostazioni del sistema. IPrefs è in grado di rilevare i cambiamenti dei file di preferenze in ENV:sys/ per applicare immediatamente le nuove impostazioni. L'introduzione dei sistemi RTG e della grafica true-color aveva reso IPrefs inadeguato per la gestione dello sfondo dello schermo Workbench. Anche in questo caso la comunità di sviluppatori Amiga intervenne per colmare la lacuna lasciata da Commodore. FastIPrefs, disponibile su Aminet, risolveva efficacemente il problema degli utenti CyberGraphX e Picasso 96. Nell'OS 3.5 IPrefs ha subito un'opera di restauro completa, per mano del solito Olaf Barthel. Oltre ad essere RTG-friendly e compatibile con le estensioni di FastIPrefs, il nuovo IPrefs controlla le preferenze del Workbench e di ReAction (rendendo così obsoleto il vecchio comando CAPrefs). ConClip La nuova versione dell'OS 3.5 aggiunge le funzioni di cut & paste anche ai gadget stringa, rendendo così inutili i numerosi patch che svolgevano la medesima funzione. ASL I requester di sistema sono sempre stati considerati troppo lenti e scomodi. Per questo molti utenti utilizzavano patch di vario tipo per sostituirli con quelli, decisamente più versatili, forniti dalla reqtools.library. Parte di queste motivazioni cadono con l'OS 3.5, perché la asl.library è stata ottimizzata ed arricchita di funzioni al punto da tornare ad essere un'alternativa più che valida alla ReqTools. Il lavoro continua Il primo aggiornamento dell'OS 3.5 (Boing Bag 1) è stato completato a breve distanza dal rilascio ufficiale del prodotto. Nei mesi successivi il team di sviluppo di AmigaOS ha continuato a lavorare per correggere i bug segnalati e anche per introdurre qualche nuova miglioria. Nel momento in cui scriviamo il rilascio del Boing Bag 2 viene dato per imminente, perciò sarà probabilmente già disponibile quando leggerete queste righe. Tra le novità di rilievo spicca il nuovo ram-handler con supporto dei softlinks, prestazioni decisamente superiori e la correzione di numerosi bug di vecchia data. Heinz Wrobel è stato inoltre così cortese da riscrivere il comando Execute per eliminare tutte le limitazioni ed i bug che affliggevano la vecchia versione. Altro modulo storico che viene finalmente ricompilato e corretto è il console.device, che gestisce le finestre della shell. In presenza di schermi in formato chunky-pixel, la nuova console non tenta piu' di “ottimizzare” lo scrolling sfruttando le caratteristiche planari del chipset AGA, cosa che impediva di utilizzare il processore grafico presente sulla scheda. Anche al Workbench è stata apportata qualche piccola miglioria, come la possibilità di inserire dei sottomenu nel menu Tools. La squadra di AmigaOS 3.5 è ricca di personaggi dotati di grande abilità e motivazione ed ha già ampiamente dimostrato di essere all'altezza di condurre lo sviluppo del sistema operativo più unico ed innovativo che sia mai esistito. NOTE PER L’IMPAGINATORE: Gli stili del testo (Courier, grassetto e italico) devono possibilmente essere mantenuti.