Să instalăm o placă 3dfx Voodoo2 pe un sistem AM5 și Windows 11? Nimic mai complicat…

Cum ar fi să instalăm o placă 3dfx Voodoo2 pe un calculator AM5 cu Ryzen 9 și, mai apoi, ci chiar și în Windows 11? Este practic? În anumite situații, da. Mai ales dacă folosim și Windows 9x pe hardware modern. În ceea ce privește inițializarea nativă a plăcii sub Windows 10 sau Windows 11 pe 64 de biți, lucrurile sunt mai complicate dar nu imposibile… Totuși, ideea de a lansa jocuri pe hardware 3dfx autentic direct din Windows 11 este suficient de interesantă încât să merite experimentul, chiar dacă multe dintre jocurile compatibile Glide nu pornesc deloc în Windows 10 sau 11.

YouTube player

Ce este Voodoo2?

Probabil majoritatea dintre voi știți deja ce reprezintă un Voodoo2, însă merită o scurtă recapitulare.

Lansată la începutul anului 1998, 3dfx Voodoo2 era acceleratorul 3D pe care și-l dorea orice pasionat de PC gaming în special pentru că, la momentul apariției, era cea mai rapidă soluție disponibilă pe piață. Chiar dacă spre sfârșitul anului au apărut competitori puternici, precum NVIDIA RIVA TNT, Voodoo2 avea un avantaj unic: posibilitatea de a utiliza două plăci simultan prin tehnologia SLI (Scan-Line Interleave).

În configurație SLI, discuția despre performanță era practic încheiată. Un sistem cu două Voodoo2 reprezenta vârful absolut al gamingului PC în 1998 și începutul lui 1999.

Cum conectăm o placă Voodoo2 la un sistem modern?

Prima provocare a fost conectarea fizică. Întregul experiment a pornit după ce cineva m-a întrebat dacă rack-ul PCIe to PCI de la StarTech pe care l-am prezentat în alte video-uri poate funcționa cu un Voodoo2 sau un Voodoo3. Inițial am crezut că răspunsul va fi simplu. Nu a fost. Carcasa externă StarTech acceptă doar plăci PCI de dimensiuni reduse (half-length), iar Voodoo2 este mult prea lungă pentru a încăpea în interior. Soluția a fost să las placa în afara carcasei. Arată complet aiurea, dar funcționează.

Performanța în Windows 98

Sub Windows 98, rezultatele au fost surprinzător de bune. Placa a funcționat perfect pe un sistem bazat pe Ryzen 9 9900X. Driverele s-au instalat fără probleme, iar testele au confirmat că Voodoo2 nu este deloc intimidat de hardware-ul modern.

În Quake II am obținut aproximativ 62 FPS la rezoluția de 800×600, practic limita maximă realistă pentru această placă. De asemenea, 3DMark 2001 a raportat unul dintre cele mai ridicate scoruri pe care le-am văzut vreodată pentru un singur Voodoo2.

Un aspect interesant a fost comportamentul driverelor. Contrar așteptărilor, ultimele drivere oficiale 3dfx au oferit aproximativ 20% mai multă performanță decât popularele drivere modificate „Fast Voodoo”, considerate de mulți drept alegerea optimă pentru Voodoo2.

Până aici, totul părea să meargă perfect.

De ce alte plăci PCI nu funcționează la fel de bine?

Lucrurile s-au schimbat radical când am încercat alte plăci PCI, precum S3 Virge sau chiar Voodoo3. Rezultatul? Instabilitate totală. După mai multe teste, explicația pare să fie legată de cablul DVI de aproximativ un metru utilizat de adaptor. Acesta introduce o latență suplimentară pe magistrală. Plăcile precum Virge și Voodoo3 folosesc funcții avansate de PCI Bus Mastering și devin extrem de sensibile la astfel de întârzieri.

Consecința este că încep să retransmită continuu anumite operații pe magistrală, blocând în final întregul sistem.

Voodoo2 are un design mult mai simplu și evită această problemă, ceea ce explică de ce funcționează atât de bine în această configurație neobișnuită.

Windows 10 și Windows 11: partea cu adevărat interesantă

În 2006, un dezvoltator cunoscut sub numele de Ryan „Colourless” Nunn a creat un driver experimental pe 64 de biți pentru plăcile Voodoo. Acesta funcționează ca un strat de compatibilitate care păcălește vechile biblioteci Glide să creadă că rulează într-un mediu Windows NT4.

Surprinzător, acest driver poate fi instalat și astăzi pe Windows 10 x64 și Windows 11. Există însă o condiție obligatorie: dezactivarea verificării semnăturii digitale a driverelor (Driver Signature Enforcement). Instalarea driverului nu înseamnă însă automat că totul funcționează.

Inițial, driverele se încărcau corect, însă bibliotecile Glide afișau o eroare de tip „map memory”.

Din fericire, problema fusese rezolvată încă din perioada Windows XP Professional x64. Înlocuirea DLL-urilor Glide cu versiuni modificate a eliminat complet eroarea.

În cazul Windows 11 a fost nevoie și de câteva schimbări suplimentare ale sloturilor PCI, plus dezactivarea semnăturii driverelor la fiecare instalare, însă rezultatul final este impresionant:

Da, un 3dfx Voodoo2 din 1998 poate funcționa în Windows 11 23H2.

O placă video lansată în urmă cu aproape trei decenii, un driver experimental din 2006 și un sistem de operare modern din 2024–2025. Este exact genul de combinație improbabilă care face hobby-ul hardware-ului retro atât de fascinant.

Concluzie

Experimentul demonstrează încă o dată cât de flexibil poate fi ecosistemul PC. Deși nimeni nu a proiectat vreodată un Voodoo2 pentru a funcționa pe o platformă AM5 sau în Windows 11, cu suficientă răbdare se poate… Este utilă pentru utilizarea de zi cu zi? Nu neapărat. Este fascinant să vezi tehnologie din 1998 funcționând pe un sistem de ultimă generație? Cu siguranță. Iar pentru pasionații de hardware retro, uneori acesta este motivul principal pentru care merită să încerci astfel de experimente.

Un SSD M.2 NVMe pe un Pentium II?

Un SSD M.2 NVMe pe un Pentium II? N-ar trebui nici măcar să existe o astfel de discuție. La o adică, Pentium II a fost lansat în 1997, prima placă de bază cu PCI Express a apărut abia în 2004, iar SSD-urile NVMe au sosit aproximativ un deceniu mai târziu. Așa că ideea de a instala un astfel de SSD pe o placă de bază din 1997 pare mai degrabă o întrebare capcană pe care ai putea să o primești la un interviu de angajare la Google. Și totuși… dacă înțelegi cu adevărat cum funcționează PCI Express, ideea începe să pară surprinzător de rezonabilă. Cel puțin în teorie…

Dacă preferi să urmărești videoclipul de pe YouTube – ceea ce ar fi absolut grozav, bineînțeles – dă click pe linkul de mai jos. Acest articol conține în mare parte aceleași informații, plus câteva detalii suplimentare care nu au mai încăput în versiunea video.

YouTube player

Dar o placă de bază Pentium II are doar sloturi PCI…

Corect. O placă de bază Pentium II dispune doar de sloturi PCI clasice și nu are nici urmă de conector M.2. Însă aici intervine partea interesantă a poveștii. PCI Express nu a înlocuit PCI aruncând totul la gunoi și pornind de la zero. A fost proiectat încă de la început pentru a fi compatibil la nivel software cu standardul PCI original.

Din perspectiva sistemului de operare, un dispozitiv PCIe arată exact ca un dispozitiv PCI: aceeași alocare de resurse, același proces de enumerare și același model de drivere. Magistrala a evoluat radical la nivel hardware (comunicație serială în loc de paralelă, conexiuni punct-la-punct în loc de magistrală partajată și o lățime de bandă mult mai mare), dar interfața software a rămas intenționat aceeași.

A fost o decizie extrem de inspirată, deoarece alternativa ar fi fost un coșmar: pentru fiecare sisteme de operare ar fi trebuit să se rescrie componente fundamentale ale sistemului doar pentru a suporta un nou tip de magistrală. Astfel, când PCI Express a debutat în 2004, puteai instala o placă video PCIe nouă într-un sistem care rula Windows 98, Windows NT sau Windows XP, iar aceasta era recunoscută imediat, fără actualizări ale sistemului de operare. Sistemul nu trebuia să știe și nici să îi pese că la nivel hardware lucrurile se schimbaseră.

Această compatibilitate retroactivă este exact motivul pentru care putem folosi și astăzi, cu adaptorul potrivit, un dispozitiv PCIe pe o placă de bază PCI. Și tot ea face posibil întregul experiment „NVMe pe Pentium II”.

SSD-urile M.2 NVMe sunt, de fapt, dispozitive PCIe standard

Da, SSD-urile M.2 NVMe sunt pur și simplu dispozitive PCIe standard într-un format fizic diferit.

Un adaptor M.2 către PCIe face exact ceea ce sugerează numele: conectează pinii conectorului M.2 la echivalentele lor dintr-un slot PCIe. Fără magie, fără conversii complexe. Doar o remapare fizică a conexiunilor.

Prin urmare, dacă poți conecta un dispozitiv PCIe într-un slot PCI clasic, atunci poți conecta și un SSD NVMe într-un sistem Pentium II.

Și da, acest lucru este posibil folosind un adaptor PCI-to-PCIe bazat pe un cip precum PEX8112. Acest cip funcționează ca un traducător bidirecțional: îi spune SSD-ului NVMe că rulează pe o conexiune PCIe x1 și, simultan, îi spune BIOS-ului că are în față un dispozitiv PCI obișnuit.

În teorie, SSD-ul NVMe ar trebui să apară pur și simplu ca încă un dispozitiv pe magistrala PCI. Din acel moment, totul devine o problemă de drivere.

Două lucruri care pot merge prost înainte să ajungi la drivere

1. Linia de alimentare de 3,3 V

Primele implementări PCI furnizau doar 5 volți. Reviziile ulterioare au introdus și alimentarea la 3,3 V. Multe plăci PCI sunt universale și funcționează cu ambele tensiuni, însă SSD-urile M.2 NVMe necesită obligatoriu 3,3 V, aceasta fiind tensiunea lor standard de funcționare.

Adaptorul PCI-to-PCIe transmite pur și simplu alimentarea disponibilă în slot. Dacă tensiunea de 3,3 V lipsește, adaptorul nu poate compensa, iar SSD-ul nu va porni.

Vestea bună este că placa de bază Intel 440BX utilizată în acest experiment oferă 3,3 V pe sloturile PCI, deci nu există probleme.

Ca referință însă, o placă Socket 7 bazată pe chipsetul VIA MVP3, lansată la doar câteva luni după 440BX, nu oferă 3,3 V pe magistrala PCI. În acel caz, întregul proiect ar necesita modificări hardware suplimentare.

2. Scanarea bridge-urilor PCI de către BIOS

SSD-ul NVMe se află în spatele unui bridge PCI-to-PCI suplimentar, ceea ce este perfect valid din punct de vedere al specificației PCI (standardul permite până la 256 de bridge-uri).

Totuși, unele BIOS-uri mai vechi nu scanează dispozitivele aflate dincolo de primul bridge sau nu alocă resursele corect. Acest lucru poate compromite complet configurația înainte ca sistemul de operare să fie încărcat.

Driverele: vestea bună

Majoritatea SSD-urilor NVMe (cu câteva excepții timpurii, precum Samsung 950 Pro) nu includ un Option ROM clasic pentru boot prin BIOS. Ele presupun că firmware-ul plăcii de bază conține deja un driver NVMe.

Evident, o placă de bază din 1997 nu are așa ceva.

O soluție interesantă ar fi încărcarea unui bootloader compatibil NVMe prin Option ROM-ul PXE al unei plăci de rețea, însă acest subiect merită un articol sau un videoclip separat.

Pentru acest experiment am pornit sistemul de pe un hard disk SATA și am testat dacă Windows 98 poate recunoaște SSD-ul NVMe.

De ce Windows 98? Pentru că acesta era sistemul de operare folosit de majoritatea posesorilor de Pentium II. Eu cu siguranță îl foloseam.

Și, oricât de improbabil ar suna combinația „NVMe + Windows 98”, ea nu este imposibilă. La sfârșitul anului 2025 exista deja un driver NVMe funcțional pentru Windows 98.

Driverul original pentru Windows 2000/NT a fost scris de Dominik Behr, iar portarea pentru Windows 98 a fost realizată de SweetLow. Ambele sunt ușor de instalat și surprinzător de fiabile.

Cum driverul NVMe era deja instalat în sistemul meu Windows 98, SSD-ul a fost detectat chiar de la prima pornire și a solicitat repornirea sistemului.

Acesta a fost un semn bun, deși oricine a lucrat cu hardware retro știe că există o diferență uriașă între un driver care se instalează și unul care funcționează efectiv.

După repornire: SSD NVMe complet funcțional în Windows 98, conectat prin magistrala PCI clasică.

Viteze de transfer: ce poate face de fapt magistrala PCI

Spre deosebire de PCI Express, magistrala PCI clasică oferă o lățime de bandă totală de 133 MB/s, partajată între toate dispozitivele conectate, nu per dispozitiv.

După ce luăm în calcul overhead-ul protocolului și alte limitări, vitezele reale de citire ajung în jurul valorii de 100 MB/s în CrystalDiskMark.

Samsung PM981 NVMe SSD benchmarked in Windows 98

Aceste valori cresc dacă sistemul este overclockat. Atunci când frecvența magistralei PCI urcă de la 33 MHz la aproximativ 36–37 MHz, vitezele de transfer cresc până la circa 110–114 MB/s.

Pentru comparație, atunci când am testat același SSD NVMe prin același adaptor PCI-to-PCIe într-un slot PCIe x1 real, am obținut aproximativ 200 MB/s, deoarece bridge-ul funcționa la 66 MHz în loc de 33 MHz.

Am testat aceeași configurație și în Windows NT. Driverul NVMe pentru NT, utilizat printr-o conexiune PCIe completă, poate împinge acest SSD Samsung până la aproximativ 1,4 GB/s.

Sunt cifre impresionante pentru un sistem de operare lansat în 1996.

Prin magistrala PCI însă, rezultatele revin inevitabil în zona celor aproximativ 100 MB/s.

Este această configurație cu adevărat utilă?

Aș spune că da, și nu doar ca un experiment de tipul „pentru că putem”. Dacă ai un SSD NVMe scos din uz într-un sertar și îți dorești cea mai rapidă soluție de stocare pentru un sistem PCI clasic, această variantă poate fi mai ieftină decât ruta tradițională bazată pe carduri CompactFlash.

Cardurile CF se comportă mai mult ca niște unități IDE clasice și oferă o compatibilitate excelentă, însă nici ele nu sunt ieftine, iar adaptorul necesar reprezintă un cost suplimentar.

În multe cazuri, o placă PCI-to-PCIe și un SSD NVMe rămas disponibil pot reprezenta soluția mai avantajoasă.

Mai departe: placa XBridge (sdz-mods.com)

Cineva a dus deja această idee și mai departe.

Daniel de la SDZ-Mods a dezvoltat recent un adaptor PCI-X către NVMe care funcționează și în sloturi PCI standard. Pe o magistrală PCI-X, capabilă de până la 1 GB/s, adaptorul a atins aproximativ 800 MB/s într-un sistem SGI O2. Sper să pun mâna pe unul dintre aceste adaptoare în viitorul apropiat. Deși, mai întâi, va trebui să găsesc un sistem PCI-X.

Windows 11 pe o placă de bază Intel i865 cu DDR1 si AGP 8X?

Windows 11 pe o placă de bază Intel i865 (un chipset lansat în 2003) nu sună foarte fezabil, dar  funcționează. Și da, avem o placă video AGP 8X, procesor quad-core, decodare video hardware și chiar accelerare în Firefox, iar toate merg pe o platformă care rulează cu DDR1.

YouTube player

Hardware-ul

Build-ul folosește o placă de bază ASRock 865PE Conroe bazată pe chipset-ul Intel 865PE lansat tocmai în mai 2003. Aceasta este una dintre foarte puținele plăci de bază care are suport pentru procesoare precum un Core 2 Quad Q6600 dar pe un chipset proiectat pentru Pentium 4 și DDR1.

Partea bună e ca Windows 11 – până la versiunea 23H2 – poate rula pe orice procesor pe 64 de biți cu suport SSE3, fără modificări de kernel. Trucul este să ocolești verificările inițiale de hardware în timpul instalării, ceea ce necesită exact două clicuri dacă pregătești stick-ul USB cu Rufus. Atât.

Ce s-a întâmplat cu suportul AGP în Windows?

Windows 10 versiunea 1507 și 1511 încă au venit cu suport nativ pentru magistrala AGP din fabrică. După aceea, Microsoft a eliminat discret acele fișiere necesare pentru inițializarea portului AGP. Asta inseamna ca orice placa AGP fie ca rula in modul PCI daca driverele permit si nu se va initializa si in Device Manager va aparea o eroare Code 43.

În mod implicit, un port AGP apare în sistemul de operare ca un bridge standard PCI-to-PCI. Asta e suficient pentru a boota in Windows. Dar pentru a debloca pentru ce a fost de fapt proiectat AGP e nevoie de un driver GART dedicat. GART înseamnă Graphics Address Remapping Table și este specific chipset-ului. Plăcile Intel au nevoie de un driver Intel GART. Chipset-urile VIA și AMD au nevoie de ale lor.

Cum am rezolvat pe placa mea

Driver-ul Intel GART este un fișier numit AGP440.sys și funcționează pe toate chipset-urile Intel AGP. A fost extras din versiunea Windows 10 1507. Mai departe am modificat un fișier INF (dintr-un pachet de drivere AMD AGP gasit pe net) astfel încât AGP440.sys să fie asociat cu ID-ul hardware corect al bridge-ului PCI-to-PCI.

Odată ce ai identificat bridge-ul corect în Device Manager, dai click pe “Update Driver” si alegi INF-ul modificat, iar dupa un restart AGP440.SYS va trece la muncă. În momentul în care Windows 11 s-a încărcat cu AGP440.sys la bord, Radeon HD 4650 a prins viață la Full HD. Code 43 dispărut, fără probleme.

De ce HD 4650 specific?

Seria Radeon HD 4600 a fost ultima în format AGP. Cipul RV730 este cel mai avansat silicon pus vreodată pe o placă AGP dar mai important e că a primit drivere pe 64 de biți cu suport oficial până la Windows 8 iar Windows 11 este în continuare compatibil cu WDDM (Windows Display Driver Model) folosit în Windows 7/8, astfel că ultima versiune Catalyst cu suport AGP din 2012 se instalează și rulează în Windows 11.

Partea bună e că decodarea hardware H.264 funcționează în continuare în Windows 11. Media Player Classic Home Cinema, inclus cu K-Lite, detectează corect capacitățile de decodare hardware iar Firefox folosește de asemenea accelerare hardware prin OpenGL.

La capitolul benchmarkuri, scorul 3DMark 2001 s-a apropiat de ce ai obține pe Windows 10 pe când avea suport AGP nativ, deși rămâne sub Windows 7.

Windows 11, capătul drumului pentru AGP

Începând cu versiunea 24H2, Microsoft impune setul complet de instrucțiuni SSE4.2. Binarele 24H2 sunt compilate cu instrucțiuni SSE4.2 iar asta inseamna ca nu putem ocoli cu editări de registry. Niciun procesor care suporta SSE4.2 nu poate fi montat pe placi de baza cu slot AGP, deci 23H2 este ultima versiune de Windows 11 care funcționează, In orice caz Windows 23H2 primește în continuare actualizări de securitate, dar doar pentru edițiile Education și Enterprise.