R/escogita logo

the steed kulka presence on the world wide web

Il sito perduto di Digiteam:

dieci anni di progetti non convenzionali

Parte III - Il software di sistema e i tool

L'ambiente videotex fu uno dei primi teatri d'azione della neonata Digiteam impegnata nei preparativi per il lancio di Lasernet 800. L'esordio fu una utility che trasformava schermate bitmap in schermate a caratteri grafici Viewdata (gli stessi ancora impiegati dai servizi Televideo), evitando così noiosi processi di trasposizione manuale basati su carta millimetrata, gomma e matita. Ma il tool più atteso dagli addetti ai lavori - sia di Lasernet 800 che dell'omologo britannico Micronet 800 - riprogrammava un popolare accessorio hardware per creare automaticamente le paginate di telesoftware dopo aver semplicemente caricato in memoria il programma desiderato. Per allora, una piccola rivoluzione made in Italy.

Micronet 800 TurboTel
1987

Micronet 800 è stato uno dei servizi di maggior successo sul Prestel britannico, una rete videotex molto in voga durante la seconda parte degli anni Ottanta, con milioni di utenti in tutto il Regno Unito. Una delle sue caratteristiche più gradite era il cosiddetto 'telesoftware', una tecnica che consentiva ai fornitori di servizi, come Micronet 800, di convertire normali programmi per computer in pagine videotex standard, dando la possibilità agli utenti finali di invertire il processo e salvare i programmi su nastro o disco per utilizzo successivo.

Quando Micronet 800 decise di offrire una sezione telesoftware per ZX Spectrum ai propri abbonati, poté constatare come gli editori di software fossero ben disposti a vendere i diritti dei propri programmi, ma poco collaborativi dal punto di vista tecnico. Le complesse procedure richieste per rendere un programma adatto per l'upload e il download telesoftware, infatti, erano alquanto laboriose, se non impossibili, senza una conoscenza tecnica di alcuni dettagli di ciascun programma.

Micronet 800 si rivolse allora a Digiteam, che sviluppò una soluzione universale chiamata TurboTel per rendere la lavorazione del telesoftware facile come premere un pulsante durante il normale funzionamento di un programma: le pagine videotex venivano create automaticamente al momento, in modo da essere immediatamente disponibili per l'upload su Prestel, rendendo l'intera operazione sicura, affidabile e del tutto trasparente sia per lo staff tecnico che per gli utenti finali.

Il pacchetto venne poi adottato anche da Lasernet 800, il servizio gemello di Micronet 800 sul Videotel italiano.



Prima dei telefonini Java, prima della Computer Telephony Integration su PC, il C6 conobbe un prolungato momento di gloria come strumento versatile - anche se non propriamente economico - in una lunga serie di applicazioni custom basate su microprocessore Zilog Z80. A fronte di un sistema operativo scarno ed essenziale, fummo incaricati di scrivere una libreria di funzioni di utilità per fornire il massimo supporto possibile agli sviluppatori di applicazioni occupando meno memoria possibile.

C6 1992
Libreria di supporto C6 OS

C6 rappresenta l'integrazione tra un telefono e un computer. Di dimensioni pari a quelle di un foglio A4, dotato di tastiera, display LCD, slot PCMCIA e varie porte di comunicazione, questo apparecchio ha rappresentato per diversi anni una delle piattaforme più diffuse per le applicazioni collegate al marketing e alle rilevazioni statistiche.

Le numerose applicazioni verticali realizzate su questa macchina hanno compreso programmi di gestione remota degli ordini da parte della forza vendita, sistemi per il controllo delle abitudini d'acquisto dei consumatori tramite l'invio dei codici a barre riportati sulle confezioni dei vari prodotti, e applicazioni per la trasmissione dei dati di rilevamento dell'audience televisiva.

Tecnicamente, il C6 dispone di un sistema operativo custom, e sia il microprocessore adottato che le ridotte dimensioni della memoria rendono pressoché obbligatorio scrivere le varie applicazioni direttamente in linguaggio macchina. La fondamentale necessità di rendere più veloci i tempi di stesura dei programmi ha portato all'implementazione di una speciale libreria di funzioni di supporto al sistema operativo, strettamente integrata con esso e capace di fornire ai programmatori tutti quei servizi (comunicazione, gestione della memoria, gestione del display) da loro più comunemente utilizzati e che raramente fanno parte dell'OS di macchine verticali come il C6.



Con HAMMER riunimmo tutto il know-how accumulato in oltre un quinquennio trascorso a realizzare applicazioni multimediali su misura: un'area che imponeva un'ottimizzazione estrema dal momento che l'hardware di quegli anni non lasciava molti margini in termini di performance e, a differenza di oggi, i vincoli esistenti non potevano essere facilmente aggirati (per motivi tecnici o commerciali) con espansioni o upgrade di sistema. Insoddisfatti dai sistemi autore disponibili, adatti a poche e ben precise tipologie di applicazioni, e desiderosi di ridurre i tempi e i costi associati alla programmazione custom in linguaggio C, realizzammo quello che tecnicamente è noto come un "REXX function host" per associare capacità multimediali spinte alla flessibilità di scripting e comunicazione interprocesso del linguaggio REXX - o meglio, della sua validissima implementazione nativa per Amiga, ARexx. Il CD32, un Amiga con CD-ROM travestito da console, fu per un certo tempo un'alternativa economica, compatta e intuitiva all'impiego di PC multimediali, afflitti da difficoltà di configurazione e costi alquanto proibitivi. Il CD32 poteva invece essere riposto in una ventiquattr'ore, era collegabile indifferentemente a monitor o televisore, e anche una persona inesperta era in grado di inserirvi un CD-ROM e accenderlo: uno strumento ideale, per esempio, per la formazione aziendale in un periodo in cui non tutti disponevano ancora di un PC, tanto meno multimediale, sulla propria scrivania.

Il sistema autore HAMMER
1995-1996

Una soluzione custom per Amiga con prestazioni ottimizzate per la piattaforma CD32.

Parecchie applicazioni verticali necessitano di hardware poco costoso, immediatamente installabile, versatile e ricco di capacità multimediali. In questo caso la risposta più indicata è Amiga CD32, una console dotata di un sistema operativo preemptive multitasking che rappresenta l'unità low end della famiglia di computer Amiga.

Per l'implementazione di applicazioni multimediali su Amiga sono sempre stati disponibili diversi sistemi autore di ottima fattura, come ad esempio AmigaVision, Scala Multimedia (che esiste da poco anche per piattaforma Intel/Windows) e Mediapoint. La configurazione ridotta della versione base del CD32, però, ne ha sempre sconsigliato l'adozione nel caso di applicazioni di complessità superiore a quella di un semplice slide show: come accade anche su altre piattaforme, l'approccio seguito dalla maggior parte dei sistemi autore prevede che, per mantenere un livello di prestazioni adeguato di fronte alla crescita delle dimensioni e delle risorse di un'applicazione, l'utente si debba far carico di ampliare la configurazione hardware del proprio computer.

Se questo tipo di soluzione può essere perseguita nel caso di un'applicazione personale, diventa tuttavia antieconomica nel caso si abbia a che fare con installazioni di decine o centinaia di macchine.

Non solo: utilizzare un sistema autore, qualunque esso sia e su qualunque sistema operativo giri, significa essere costretti a seguire le strade previste dai suoi creatori, muovendosi quindi per ambiti predefiniti. Per questo motivo, si tende spesso a scegliere sistemi autori differenti per tipologie applicative differenti: una soluzione comunque non completamente soddisfacente, e che comporta - dal punto di vista dell'utente - dover acquistare, imparare e seguire l'evoluzione di più di un pacchetto, con conseguente dispendio di tempo, di denaro e di energie.

Per ovviare a tutti questi inconvenienti, Digiteam ha creato un sistema autore versatile adatto alla realizzazione di applicazioni multimediali su Amiga CD32 e, per estensione, su qualunque altro modello Amiga con sistema operativo 3.0 o superiore. Questo pacchetto è stato denominato HAMMER (Highly Advanced MultiMEdia Resource), e consiste in un host ARexx (l'implementazione del linguaggio REXX su Amiga) dotato di numerose funzioni per la gestione di testi, file audio, sequenze video CDXL fino a 256.000 colori, animazioni, immagini, interfacce utente grafiche, logica applicativa e monitoraggio del comportamento dell'utente. Particolari strategie di precaricamento e di ottimizzazione velocizzano il funzionamento delle applicazioni scritte in HAMMER, che risultano di risposta pressoché immediata anche se lette da CD ROM invece che da hard disk.

La scelta di ARexx come ambiente di lavoro di HAMMER permette inoltre di disporre di un linguaggio di programmazione standard completo, collaudato e ben documentato. Pur trattandosi di un linguaggio interpretato, l'overhead rimane minimo e tranquillamente sopportabile per la maggior parte delle applicazioni; nel caso particolare esigenze lo richiedano, è comunque possibile impiegare uno degli appositi compilatori esistenti sul mercato.

Il totale controllo esercitato sul sistema autore consente infine a Digiteam di implementare rapidamente nuove funzionalità specifiche secondo le particolari necessità che possono presentarsi di fronte a determinati progetti: alcune parti di HAMMER, come ad esempio quelle relative agli effetti grafici di transizione tra le videate, già seguono un design modulare che consente di estendere il sistema senza intervenire sul codice già scritto.

HAMMER non è disponibile commercialmente come sistema stand-alone: Digiteam offre infatti questo pacchetto integrato con il servizio di realizzazione del titolo.