Con
il presente comunicato è mia intenzione chiarire
definitivamente ed in maniera ufficiale gli argomenti dibattuti
in un recente topic su forumzone.it tracciando un excursus
storico del mio operato volto a rendere note le modalità
attraverso le quali esso si è evoluto in questi anni.
Innanzitutto
mi scuso con gli utenti del forum per le affermazioni molto
pesanti del sottoscritto che, certamente inopportune nei toni e
poco consone allo strumento di comunicazione utilizzato, sono
state invero indotte da esasperate condizioni d'animo dovute ad
un attacco alla mia persona tanto duro quanto inatteso.
I
primi driver Amigamerlin ed il loro sviluppo.
La
serie dei driver che porta il mio nome è nata per gioco
oltrechè per passione quando 3dfx,
cessata improvvisamente la sua attività alla fine del 2000,
lasciò di fatto gli utenti privi di qualsiasi supporto, ivi
compreso l'aggiornamento del software quanto mai necessario
essendo in corso a quei tempi la migrazione nel mondo dei
personal computer verso la piattaforma Microsoft Windows XP.
Nella nascente rete globale di appassionati 3dfx che si andò
formando a partire dai primi mesi del 2001, raccoglitrice di
personalità diverse per nazionalità e cultura ma accomunate
dal sogno di mantenere nel proprio case la scheda video
preferita pur essendo venuto meno il fondamentale riferimento
del produttore, operò per un breve periodo un gruppo di
programmatori americani noto come
X-3DFX. Il loro lavoro permise la
distribuzione agli utenti finali di due driver set,
rispettivamente i kit 1.07.00 per Windows 98/ME e Windows 2000,
che garantivano il supporto alle DirectX 8 appena pubblicate;
sfortunatamente però erano presenti in essi numerosi bug
ed incompatibilità con le applicazioni. Per
nulla scoraggiati da questo parziale insuccesso e non poco
spronati dal costo sostenuto per l'acquisto della Voodoo5 5500,
paragonabile a quello di una odierna GeForce 6800 GT, ed avendo
inoltre preso atto che l'americana nVIDIA, che assorbì 3dfx,
non avesse alcuna intenzione di tutelare gli interessi di quelli
che, come me, erano di fatto diventati suoi utenti, alcuni tra
questi, ed io tra loro, crearono, quasi fossero stregoni voodoo,
dei driver kit rigorosamente non ufficiali mediante mix di
file ovvero mediante il packing ibrido delle vecchie librerie
(3dfx) e delle nuove allora disponibili (X-3DFX). Il mio
primo driver, per l'ambiente Windows 9x, fu il risultato
vincente di un mix di altri driver, ufficiali e non,
unitamente ad una ottimizzazione dei registri. Intanto
faceva capolino Windows XP, sistema operativo per il quale le
schede 3dfx erano completamente prive di driver ufficiali mentre
quelli forniti da Microsoft avevano solo il supporto per il 2D
(nessuna accelerazione Direct3D, nessun supporto per Opengl). In
tanti, nella Community mondiale che nel frattempo si era
numericamente evoluta intorno alla board di X-3DFX, si
cimentarono nel mixare
driver per questo sistema operativo con tweaking anche molto
avanzati dei registri ma sfortunatamente i risultati ottenuti
erano molto scarsi poichè la Voodoo5, e con essa le Voodoo2,
Voodoo3, Voodoo4 e Banshee, rimaneva inutilizzabile con la
quasi totalità dei giochi del tempo.
Decisi allora di tentare una strada differente nonchè
irta di difficoltà, consapevole che il punto cardine del
problema consistesse nel fatto che le librerie Glide (la 3X,
ponte per le Opengl, e la 2x, necessarie per l'interfacciamento
Glide) non erano supportate da Windows XP. Inoltre la sezione
Direct3D, su cui 3dfx aveva solo parzialmente lavorato ed in
ogni caso lo aveva fatto avendo come riferimento Windows 2000
piuttosto che Windows XP, era acerba e soffriva di numerosi bug. All'epoca
non erano disponibili i sorgenti del codice reference
ma solo e soltanto un vademecum
scritto da Reid Campbell degli X-3DFX
dove veniva descritto il funzionamento dei registri e le varie
voci che potevano essere attivate, documento che poi venne
pubblicamente distribuito da NuAngel di
X-3DFX. Durante le mie ricerche sul
Web ed in particolare su Sourceforge.net (Glide branch) mi
imbattei in Colourless
prima e Koolsmoky poi. Entrambi,
scrittori di codice con la passione per 3dfx, stavano tentando
di effettare un porting delle glide3x sotto XP dai sorgenti
linux con approcci alla problematica completamente diversi.
Testai le loro librerie ed alla fine scelsi quella di
Koolsmoky. Chiesi all'autore l'autorizzazione per inseririla
nella distribuzione dei miei driver ed egli molto
gentilmente acconsentì.
Il mix fu vincente e le mie ottimizzazioni
dell'.inf andavano a braccetto con l'innesto della nuova
libreria: il driver Amigamerlin 2.0a per
Windows XP si dimostrarò ben presto un ottimo pacchetto,
consentendo di ottenere dall'hardware un funzionamento
performante e con una compatibilità verso il software non
raggiunta da nessuna delle alternative non ufficiali esistenti.
Da allora sono sempre rimasto in contatto con Koolsmoky il
quale mi rendeva partecipe di tutti gli sviluppi del suo lavoro:
egli scriveva il codice ed io ottimizzavo l'inf.
Koolsmoky era divenuto un elemento cardine nello sviluppo
della serie di driver Amigamerlin.
Infatti riuscì a portare le glide3x ad un livello mai
raggiunto prima, toccando tutti i settori, reimpostando ed
alleggerendo l'FSAA, inserendo tecniche di HSR, il rendering a
32 bit in Glide. Nel frattempo Colourless sviluppava un wrapper
per le Glide2x.
La circostanza che mi colpì profondamente
era che i due programmatori di cui sopra stavano
spendendo un'ingente mole di tempo per risolvere gli stessi
problemi ed in maniera non coordinata. Da qui l'idea: perchè
non creare un gruppo che lavorasse in maniera organizzata? Quel
gruppo, opportunamente integrato per coprire tutte le esigenze e
le specializzazioni richieste dalla scrittura del codice,
sarebbe divenuto poi il team
Amigamerlin. Parlai dell'idea sia a Koolsmoky che a
Colourless i quali però a loro volta erano stati già
contattati da 3dfxunderground
(poi 3dhq) ed avevano accettato di
entrare a far parte del team di 3dfxunderground
finalizzato alla programmazione di nuovo software per
3dfx. Da questi mi venne proposto di unirmi a loro: accettai,
facendo però presente che ero fortemente legato a 3dfxzone.it.
Non sembrò essere un problema. Intanto
Koolsmoky si stava occupando della sezione Direct3D con la
riscrittura del miniport di sistema (3dfxvsm.sys) che interfaccia il driver
del controller grafico all'hardware principale in Windows 2000 ed
XP. Conflitti interni, che ebbero a verificarsi in
3dfxundergrund, ritardarono l'uscita di un nuovo driver:
contattai allora Koolsmoky
che mi autorizzò alla divulgazione delle novità che aveva
implementato in un package
che portasse il mio nome. Il kit Amigamerlin 2.1 fu un vero
toccasana in quanto, unitamente ad una nuova ottimizzazione dei
registri, beneficiava del nuovo miniport di sistema, compliant
nella programmazione alle specifiche DirectX 8, che si sposava
perfettamente con la vecchia libreria 3dfxvs.dll, dedicata
alla gestione del Direct3D. In più, risolveva
errori grafici in alcuni giochi e non soffriva di blocchi.
Intanto
da 3dfxunderground
nasceva 3dhq e con esso il
Revenge.
Facendo
parte del team di 3dfxunderground
come Beta Tester ed Electronical Engineering mi vennero
svelati alcuni retroscena, ad esempio che non tutto ciò che
apparteneva a 3dfx era stato venduto ad nVIDIA, e mostrati
alcuni brevetti che sarebbero dovuti rimanere ai legittimi
proprietari. Si parlava di ex ing. 3dfx che si stavano
organizzando per mettere in cantiere qualcosa di nuovo.
Simultaneamente notavo che i miglioramenti degni di nota che i
driver non ufficiali stavano compiendo erano dovuti al fatto che
si stava lavorando sui sorgenti 3dfx, gli stessi che sarebbero
stati distribuiti pubblicamente circa 7
mesi dopo da Nuangel. Pensai allora, sbagliando col senno di
poi, che la cosa potesse essere veritiera. Chi
avrebbe potuto innescare la fuoriuscita dei sorgenti se non i
personaggi ex 3dfx? In più, mi venne messo a disposizione
materiale coperto da NDA (datasheet del VSA reference
programming language ed altro). Chi avrebbe potuto dare loro
tale materiale se non gli ex 3dfx? Come se non bastasse,
all'interno della sezione di ingegnerizzazione del progetto Revenge,
era menzionato tra gli altri un ex responsabile in 3dfx dell'
Hardware Design della Voodoo5 6000, che si sarebbe unito al
gruppo a breve:
Hank Semenec di Quantum 3D.
Mi dissero inoltre che Aquoess
era in grado di finanziare un simile progetto e che erano state
avviate trattative per la commercializzazione del Revenge
(Creative ed Hercules). Quando conobbi
Hank, in maniera fortuita poichè chiesi aiuto a lui per una
Voodoo5 6000 rotta, parlammo a fondo del Revenge. Mi
disse che era vero che c'era stato un contatto tra Aquoess ed ex ingegneri 3dfx ma che poi, dopo un brevissimo
periodo di interazione, lo lasciarono perdere e che il
Revenge era una bullshit. Capii
allora tante cose, mi dissociai e me ne andai in silenzio,
evitando esternazioni in pubblico per non alimentare ulteriori
polemiche dopo quelle che si erano già verificate e che
avevano gettato fin troppo fango su un sito, 3dfxzone.it,
al cui nome, oltre che al mio, si era pronti ad associare la
paternità della questione Revenge
ignorando in mala fede o, mi auguro, per semplicistica mancanza di
informazione tutti i meriti ed i risultati raggiunti nel
perseguire una strada in cui nessuno o quasi aveva creduto nel
lontano principio del 2001.
11
3dfx Voodoo5 6000 in Italia
Con
Hank i rapporti diventarono ottimi: mi disse che in Quantum 3D
vi erano circa 150 schede video Voodoo5 6000,
campioni di una prototipazione rimasta li; mi disse anche che
molte di queste schede erano da buttare ma che una certa
percentuale poteva essere messa a posto.
Quale migliore occasione per portare in italia le tanto
agognate 6k?
Hank, da nostalgico 3dfx quale tuttora è, comprò l'intero set
dalla Quantum 3D e rese stabili una parte delle board. Inoltre
dotò me e Koolsmoky di una Voodoo5 6000 per lo sviluppo dei
driver. Allora
pensai: perchè non offrire la possibilità ad altri
appassionati di mettere le mani su un pezzo da collezione tanto
desiderato per la particolarità della sua architettura (quattro
chip grafici 3dfx su un unico PCB)?. Pregai Hank affinchè si
impegnasse nel tentativo di rendere stabili le schede che
avevano seri problemi di lockup. Dopo circa 2 mesi nacque il PCI
rework che stabilizzava le schede. Il
prezzo fu stabilito in base ai costi reali ed in funzione del
fatto che solo il 30% era in grado di funzionare.
In italia ne sono arrivati 11 sample.
3dfx
Rampage in Italia
Intanto
si infittirono i rapporti ed aumentarono le conoscenze dei
personaggi di rilievo. Venni a sapere che esisteva un unico
prototipo del Rampage, funzionante e tenuto segreto. Era conteso
da numerose realtà del Web ingolosite dal fatto che esso
potesse essere valido strumento per uno scoop di incredibile
rilevanza mondiale. Il giocattolo però costava parecchi soldi.
Come fare? L'occasione era unica: ne discussi con un amico che
si offrì di coprire il lato economico, Paolo
Chiocchio aka Sirta di Nexthardware.com.
Dopo una trattativa durata a lungo e dopo aver convinto
l'interlocutore che eravamo persone estremamente serie riuscimmo ad
accaparrarci il mitico R A M P A G E. Arrivò in
italia “il macellatore”, unico nato, quasi pronto per essere
commercializzato e datato Novembre 2000 (a dicembre 2000 3dfx chiuse i
battenti), accompagnato però da un driver troppo acerbo per permetterne
l'impiego con i sistemi operativi Microsoft.
Verso
gli Amigamerlin 3.x XP
Nel
frattempo 3dhq chiuse i battenti, travolta dal ciclone Revenge,
e quanti programmavano nel team di 3dhq meditarono di
abbandonare. Per loro ero diventato un amico ed un
confidente e, quando gli chiesi di continuare, accettarono con
entusiamo proponendomi essi stessi di utilizzare il mio
nick per identificare le release che si sarebbero succedute. Dal
canto mio mi preoccupai di andare alla ricerca di talenti che
potessero aiutarci ulteriormente nello sviluppo e cominciai
parallelamente ad apprendere i rudimenti della programmazione dei driver. Lo
sviluppo della sezione Direct3D continuò. Vennero
aggiunti:
1)Supporto
per il 4Way SLI (pieno supporto alla Voodoo5 6000 in XP).
2)Supporto
per l'overlay.
3)Supporto
per il quarto VSA-100 della Voodoo5 6000.
4)Supporto
per tutte le modalità FSAA (2x – 4x – 8x)
Ecco
che presero corpo e vita gli Amigamerlin
3.0. Con essi arrivarono anche i primi complimenti da
parte di personaggi di spicco ex 3dfx: tutto ciò confermò a me,
e a chi in 3dfxzone.it mi era stato sempre accanto, che la
strada intrapresa era quella giusta. Nella board americana di
X-3DFX si è fatto più volte riferimento a noi Crazy Italians
poichè "riescono a fare miracoli con le
Voodoo".
Diventammo con i fatti e di fatto il riferimento mondiale per
gli utenti 3dfx.
Lo sviluppo continuò su tutti i fronti.
Vennero
tra l'altro studiate implementazioni per aumentare il frame rate utilizzando
tecniche di Temporal AntiAliasing, oggi tanto di moda, via Glide. Queste vennero poi accantonate in quanto
giudicate non confacenti alle aspettative.
MesaFX
ovvero architettura 3dfx e OpenGL
In
Opengl non si poteva fare più di tanto
in quanto i sorgenti Opengl non erano disponibili e
comunque non potevano essere utilizzati se non pagando le
licenze. Alternative? Le MesaFX.
Personaggio basilare nello sviluppo delle Mesa nonchè
mantainer delle stesse è Daniel Borca.
Lo contattai per conoscere la sua disponibilità. Accettò di
buon grado di iniziare una collaborazione con 3dfxzone.it.
Venne anch'egli dotato gratuitamente di
una Voodoo5 6000, di una Voodoo2 X24 e di una
Voodoo5 5500 per poter coprire tutti i possibili
utilizzatori 3dfx.
Le MesaFX presero corpo: furono via via risolti numerosi bug ed aggiunte feature fondamentali quali un
motore T&L molto potente ed un Vetex engine notevolissimo.
Viene aggiunto il pieno supporto per la texture compression, il
trilinear filtering ed il rendering a 32 bit (senza scendere a
compromessi ovvero scegliendo esclusivamente la qualità a
discapito delle perfomance).
Dopo un periodo di alpha testing che ha
interessato circa 27 release diventano pubbliche le MesaFX
5.1. E' un vero sucesso ed un capolavoro di porting. Nascono
successivamente le 6.1 con un motore
T&L ancora migliorato e l'aggiunta di innumerevoli
estensioni, vengono raggiunte e superate per molti aspetti le
Opengl standard in dotazione da 3dfx.
Arrivano di nuovo i complimenti di personaggi importanti,
quali Scott
Sellers, che ci definisce amorevolmente crazy
guys, anch'egli.
Arrivano altri successi, cominciano a girare in maniera fluida
quasi tutti i giochi a cui puntavamo. Qualche nome? Never Winter
Night, Return to Castle Wolfstain, Call of Duty (a 32 bit) ed
infine Doom 3. Molti giochi grazie alle MesaFX girano su una
Voodoo2 del 1998.
Grazie
per l'attenzione,
Amigamerlin
3dfxzone.it
Co-Admin
|