Acum se poate! Windows 98 / ME pe ultima generație de procesoare Intel și AMD!
Dragi tovarăși si prieteni,
Până nu de mult Windows 98 era fructul interzis pe calculatoarele Intel de ultima generație. Nu atât Windows 98, cât toată generația 9x – Windows 95, 98 FE + SE, precum și Windows ME. Toată această generație se lovește de următoarea eroare când încercăm să instalăm pe hardware mai nou de generația 10 de la Intel, respectiv seriile 5xxx de la AMD:
While initializing device VCACHE:
Windows protection error. You need to restart your computer.
Această nu este o eroare nouă, apărută acum pe calculatoarele de ultimă generație. Pe hardware-ul disponibil la apariția Windows 95/98 eroarea VCACHE era cauzată în special de probleme fizice cu memoria RAM (module SIMM/DIMM defecte) sau din cauza altor probleme de stabilitate cauzate de overclocking. Așadar, se știa că problema este cauzată în principal de memorie dar o vreme bună vreme nu s-a știut cauza exactă a acestei erori care s-a manifestat pe sistemele Intel începând cu generația 10 și pe cele AMD Ryzen, seriile 5xxx sau mai noi.
Ținând cont că folosim sisteme foarte rapide, te poți gândi că problema este cauzată de hardware … dar nu cei 4Ghz ai procesorului, SSD-ul sau memoria DDR4/DDR5 cauzează probleme. Odată ce am scăpat de eroarea VCACHE Windows 98 funcționează perfect și pe un sistem cu un procesor foarte rapid cum ar fi un Intel Raptor Lake, generația 13.
Ei bine, eroarea VCACHE este cauzată de o setare implicită din BIOS, respectiv din modulul CSM a celor de la AMI (American MegaTrends). Iar cum în momentul de față aproape că nu există placă de bază fară un BIOS AMI, eroarea s-a manifestat practic pe plăcile de bază apărute din 2020 încoace cu BIOS AMI.
Din fericire, userul Mintsuki i-a dat de cap si a creat un mic patch de numai 80 de baiți care rezolvă definitiv acestă problemă. Iată explicația lui Mintsuki care a postat chiar la unul din videourile mele de pe YouTube:
”Este vorba despre un registru al procesorului care spune dacă codul kernel-ului ar trebui sau nu ar trebui să provoace erori de pagină (page fault) atunci când se scrie cod în pagini marcate ca read only. Inițial, arhitectura x86 nu avea un astfel de control și nici un fel de scriere a nucleului pe pagini read only nu producea nicio consecință. În jurul erei 486 (dacă nu mă înșel) și-au dat seama că este o prostie și că era nevoie și de un caz de utilizare pentru ca nucleul să poată provoca erori de pagină pe paginile care nu pot fi scrise (gândiți-vă la schimbarea pe disc și alte virtuale). Așa că au adăugat această „funcție” – dar din moment ce x86 este despre „backwards compatibility”, această caracteristică, la fel ca multe altele, este blocată în spatele unui bit de control în registrul CR0 (și anume CR0.WP). Evident, nu face bine pentru compatibilitate dacă bitul este activat implicit, așa cum putem vedea în acest caz. Multe firmware-uri UEFI moderne activează bitul, la fel ca multe sisteme de operare moderne, dar apoi nu reușesc să-l șteargă atunci când predă controlul unui sector de boot moștenit folosind CSM. Probabil că nimeni nu a prins asta vreodată; dar, de asemenea, trebuie să aveți în vedere că BIOS-ul CSM nu are se bazează pe un standard specificși, prin urmare, nu spune nimic despre starea în care ar trebui să se afle registrele de control, în afară de bunul simț. Deci, ar trebui să fie rezolvat de către furnizorii de firmware UEFI? Da, IMHO. Ei măcar consideră că asta este un bug? Greu de spus. Și plus, cregfix.com va fi în continuare util, deoarece nu ne putem aștepta ca toți furnizorii UEFI și producătorii de plăci de bază să livreze firmware-uri fixe, în special pentru modele mai vechi… Și, vorbind despre modele mai vechi, aș dori să subliniez că am urmărit această problemă timp de aproximativ 5-8 ani înainte de a afla în sfârșit cauza principală…”
În concluzie, tot ce trebuie să facem ca să scăpăm de această eroare este să copiem patch-ul cregfix.com în autoexec.bat. Aveți patch-ul mai jos pentru download.
Un video făcut la cald pe YouTube în momentul când a apărut acest patch, in noiembrie 2023.
CREGFIX funcționează foarte bine și cu Windows Millenium, doar că aici trebuie să activăm MS-DOS mode, detalii despre această procedură găsiți în video-ul de mai jos:
My computer in octombrie 2000
Știți momentul ala când cauți ceva și găsești altceva…? Ei bine, eu am găsit un CD de backup din anul de gratie 2002. Datele s-au copiat fără probleme chiar si dupa 20 de ani fabricantul CD-ului chiar se lauda pe coperta cu “lifetime durability”. Asa sa fie! Dar nu despre CD-uri voiam sa discut ci despre un screen shot din 29 octombrie 2002. Cum de unde stiu ca fix de atunci? Fișierul, bineînțeles, și-a păstrat data de creare dar, mai mult de atat, este un screenshot cu msn.com care-ți arata mare în coltul din dreapta ca este “Octomber 29”.
Mai intai, m-am întrebat daca e chiar un screen shot autentic de pe PC-ul meu de atunci sau o fi fost downloadat de pe net. M-am convins repede ca eu sunt autorul dupa ce am văzut software-ul instalat.
Asadar ce avem noi aici?
Windows 98SE – recunoaștem dupa zona de Quick Launch din Taskbar, unde găsim si ce software ava un utilizator din mileniul trecut. Da, anul 2000 face parte din secolul XX…
Winamp – Ce altceva? (Ce ascultam – THE CARS…..? )
Microsot Word 2000. Office 2000 a fost lansat în iunie 1999.
Microsoft Outlook – Un Outlook mai avansat decat versiunea „Express” care venea la pachet cu Internet Explorer
The Bat! Un client de email care există încă și în ziua de azi. Este făcut ce frații nostri de la RIT Labs, Chișinău.
Total Commander – Firește! N-are cum sa fie PC-ul meu fara TC. Pentru cei care au lucrat in DOS cu Norton Commander, TC a fost o alegere naturala. Mi-e si acum greu sa copii fișiere utilizând Windows Explorer sau alta interfață. * Inițial Total Commander purta denumirea de Windows Commander, dar dupa niște dispute legale domnul Christian Ghisler, autorul, a fost nevoit să renunțe la partea „Windows” din denumire.
Cum instalam Windows 98SE pe un PC modern
1. Activam CSM din BIOS. Daca CSM nu e, nimic nu e…
2. Facem o partiție FAT32 pe un SSD sau HDD. Dupa ce am creat partiția, e musai sa o facem activa. Operațiunea se poate realiza și din Windows 10 cu ajutorul disk management sau de pe un stick bootabil cu DOS. (sau chiar de pe stickul de instalare cu Win 10)
3. Dupa ce am creat partitia, copiem kitul de instalare cu Windows 98SE, respectiv folderul WIN98 de pe CD-ul de instalare. ( sau copiem tot conținutul CD-ului intr-un folder)
4. Cu ajutorul UNetbootin facem un stick bootabil cu DOS
5. Bootam de stickul cu DOS si facem partitia FAT32 bootabila – folosind comanda sys C: (aceasta comanda va copia fisierele command.com si IO.sys pe C: de vom putea boota astfel in MS-DOS)
6. Dupa ce am folosit comanda sys C:, copiem de pe stick-ul bootabil si fisierul edit.exe pe C: (s-ar putea sa avem nevoie de el) dupa care scoatem stick-ul, restartam
7. Din meniul de boot, selectam partiția cu DOS pe care tocmai am creat-o de unde rulam setup.exe din folderul cu kitul de instalare WIN98 (folosim comanda CD pentru a naviga printre foldere; daca, de exemplu, am pus kitul de instalare in folderul kit scriem cd kit
dupa care setup
8. Daca primim o eroare atunci cand rulam setup.exe, trebuie sa facem niste modificari:
a) copiem din folderul WIN98 fisierul himem.sys direct pe C:
b)scriem edit config.sys si introducem urmatoarea linie device=himem.sys /M:1 (comanda edit nu va functiona daca nu am copiat fisierul edit.exe pe C: – pasul 6)
9. Repornim si repetam pasul 7 – instalarea a pornit! Dupa ce trecem cu bine de prima parte a instalarii la primul restart vom primi eroarea „Insufficient memory to initialize Windows. Nu ne panicam! Scriem edit c:\windows\system.ini scrunde adaugam la sectiunea [386Enh] urmatoarea linie: MaxPhysPage=20000
10. Restartam si continuam instalarea până cand apare primul blue screen. Iarasi, nu nu ne panicam… restartam din nou… et voila… Welcome to Windows 98!
Aceeași poveste intr-un video de 25 de minute:
02:55 – Cum facem un stick bootabil cu DOS
05:15 – Asus Prime B460 Plus – update de BIOS si activam functia „CSM” – Compatibility Support Module
07:20 – Cum facem SSD-ul bootabil cu sys.com
08:15 – Windows 10: cum facem o partitie FAT32 „activa”
10:00 – Cum scapam de eroarea: „Not enough free Extended/XMS memory to run Setup.”
13:28 – Cum rezolvam partea cu: „Insufficient memory to initialize Windows”
15:35 – Mouse-ul a luat-o razna? Exista o explicatie/solutie(i)!
17:55 – Cum rezolvam cu hardware-ul PCI/PCI-Express care este NU recunoscut initial
21:00 – Cum instalam drivele NDIS2 pentru placa de retea
22:54 – Intram pe mIRC din Windows 98
2020 – Hardware compatibil cu Windows 9x care poate fi cumpărat de nou
Misiune imposibilă? Mai găsim în iunie 2020 hardware pe care să-l putem comanda de nou și care să funcționeze în Windows 98? Ei bine, avem vești grozave pentru pasionații de sisteme de operare retro: mai găsim! Bineînțeles, lista nu e foarte lungă, pentru că în mod firesc producătorii de hardware au renunțat de mult să ofere suport pentru familia Windows 9x (95, 95OSR2, Windows 98, Windows 98SE, Windows Me)
Totuși, anumite chip-uri contemporane cu aceste sisteme de operare au supraviețuit până în prezent și pot fi cumpărate chiar pe interfață PCI-Express. Astfel de hardware hibrid ne ajută să umplem golurile lipsă la o instalare retro pe un PC de ultimă generație: sunet, USB, placa de rețea sau chiar video. De exemplu, am instalat Windows 98 pe un Ryzen 3900x și acesta este pefect funcțional cu LAN, sunet și video.
Procesor x86 + CSM = retro-comapatibilitate
Dar sigur merge procesorul? Oh, da! Toate procesoarele x86, inclusiv cele pe 64bit multicore, sunt compatibile cu DOS, respectiv Windows 1/2/3.x/95/98/Me. De la bun început arhitectura x86 a fost gândită să fie backward-compatible și această caracteristică distinctă a ecosistemului x86 a rămas valabilă și până în ziua de azi.
Cu plăcile de bază povestea e puțin diferită. Chiar dacă, prin arhitectura sa, procesorul este perfect compatibil, sisteme de operare mai vechi au nevoie de BIOS pentru a putea fi instalate. Din fericire, aproape toate plăcile de bază care implementează mai noul sistem UEFI vin echipate cu un modul de compatibilitate (CSM, de la Compatibility Support Module) care va oferi aceleași funcții ca și BIOS-ul tocmai pentru compatibilitatea cu sistemele de operare mai vechi. Din moment ce Windows 10 nu are nici cea mai mică problemă să funcționeze în tandem cu clasicul BIOS, asta însemnă că putem activa modulul CSM și alături de Windows 10 să instalam orice sistem de Windows operare dorim, apoi putem boota de pe care avem chef.
Pe o configurație formată din procesor Ryzen 3900x și placă de bază X470, un VooDoo 3 PCI am putut instala următoarele sisteme de operare:
- Windows 1.x (1985)
- Windows 2.x (1987)
- Windows 3.0 (1990)
- Windows 3.1 (1992)
- Windows 3.11 (1993)
- Windows 95A (1995)
- Windows NT 3.51 (1995)
- Windows NT 4 (1996)
- Windows 95 OSR2 B/C (1996/1997)
- Windows 98 (1998)
- Windows 98SE (1999)
- Windows Me (2000)
- Windows 2000 (1999)
Windows 95A ( prima ediție – chiar din 1995) rulează perfect și stabil pe o configurație de top din 2020. Avem acces la rețea folosind drivere de DOS pentru placa on board, video și accelerare 3D datorită unei plăci 3dfx Voodoo pe slot PCI și sunet printr-o altă placă de sunet clasică pe slot PCI, respectiv Aurel 8820.
Așadar, știm că putem instala clasicul Windows 98 pe sistemul nostru, dar funcționalitatea va fi una redusă deoarece nu vom avea drivere pentru video și nici sunetul nu va funcționa. Cea mai la îndemână soluție e să reciclăm din hardware-ul mai vechi, care știm că e compatibil cu Windows 98, de exemplu o placă video din seria GeForce 6 sau o placa de sunet Creative Soundblaster Live sau Audigy. Dacă nu avem la dispoziție sloturi clasice PCI – nicio problemă, putem folosi plăci pe slot PCI-Express – interfață care este perfect compatibilă cu Windows 9x cu condiția să avem drivere.
Așadar ce plăci pe USB/PCI-Express găsim de cumpărat de noi ca să finalizăm instalarea Windows 98.
I. Plăci USB PCI-Express [VIA 6212]
În acest context, am cumpărat recent o placă StarTech PCI Express High Speed USB 2.0 Card. Deși producătorul nu pomenește nimic de Windows 98 (nu vrea să dea senzația că vine antichități) am recunoscut imediat ultra-compatibilul chip VIA 6212L.
Și într-adevăr, chipul VIA 6212L este prieten de familie cu Windows 9x. Aceasta va fi recunoscut chiar în Windows 95 OSR2, dar pentru că Win95 nu oferă cine știe ce suport pentru device-urile USB nu ne este foarte util. În Windows 98/Me este altă viață – această placă va fi recunoscută cu driverele originale din 1999 și vom suport nativ pentru USB 1.1 – asta înseamnă ca a recunoscut mouse=ul, tastatura și placa de sunet externă pe USB. Dacă instalăm driverele oficiale obținem și suport USB 2.0 și suportul se extinde la: stick-uri wireless LAN și alte device-uri care vor să funcționeze exclusiv în modul USB 2.0.
II. Plăci de sunet PCI-Express [CMI-8738]
Dacă am avut un calculator asamblat undeva după anii 2000, e foarte probabil să fi avut o aventură cu o placă de sunet externă, pentru că nu ne-am mulțumit cu sunetul on-board. Începând cu anii 2000 și până în prezent Chip-ul C-MEDIA CMI8738 a reprezentat soluția cea mai ieftină pentru o placă de sunet externă cu mai mult de 2 canale. Ei bine, aceste plăci pot fi cumpărate și în prezent deoarece oferă drivere la zi pentru Windows 10, dar vor merge la fel de bine și în Windows 98.
III. Placi de sunet pe USB
Una dintre noutățile aduse de Windows 98SE a fost suportul pentru standardul USB – Audio. După mai bine de 20 de ani, dispozitivele care aderă la acest standard vor fi recunoscute automat în Windows 98/Me datorită unui driver de clasă universal. La fel cum sunt este recunoscut, de exemplu, mouse-ul.
Momentan în Windows 10 folosesc o placă de sunet externă ceva mai avansată de la ESI (U24 XL), aceasta a fost recunoscută fără probleme și în Windows 98SE și pot folosi ieșirea optică. În Windows 98/Me vor funcționa toate dispozitivele audio generice: plăci de sunet USB ieftine (generic USB audio), precum și căștile USB.
IV. Plăci de rețea gigabit PCI-Express
Plăcile de rețea sunt printre cele mai retro-compatibile echipamente hardware. Atât Intel cât și Realtek oferă drivere NDIS 2.0 pentru DOS pentru plăcile lor de 1000mbps sau chiar 2500mbps. Putem așadar folosi aceste drivere de DOS împreună cu placa de rețea on board și am rezolvat conexiunea la net în DOS/ Windows 3.11/Windows 95/98SE. Dacă vrem să folosim drivere speciale pentru Windows trebuie să găsim o placă de rețea PCI-Express cu chip Realtek 8168B. De exemplu aceasta, care există pe stoc la momentul în care scriu articolul.
V. Plăci video PCI-E [Matrox G550]
Să fim serioși! Plăci video pentru Windows 9x nu se mai produc de prin anul 2006, imposibil să găsim ceva nou de cumpărat. Așa ziceam și eu până când am dat de Matrox G550 PCI-E 1x. Acestă placă din motive necunoscute încă se găsește de cumpărat de nouă la un preț exorbitant dacă e să o tratăm din perspectiva performanțelor 3D.
VI. Placi SATA/RAID [JMB363]
Aceste plăci PCI-E la SATA se dovedesc utile în special dacă vrem să avem drivere de producător pentru interfața AHCI/SATA. În rest, atât DOS-ul câte și Windows 95/98/Me se va putea instala în modul AHCI prin suportul oferit de BIOS. Nu vom avea cine știe ce viteză, dar dacă folosim un SSD aproape că nu se cunoaște. Apoi, putem folosi driverele AHCI de la R. Loew pentru a avea viteze mari de transfer.
SSD-urile vor funcționa fără probleme în DOS, Windows 3.x și Windows 9x. Sistemul de operare nu este interesat de tehnologia folosită discul identificat ca C: prin intermediul BIOS-ului. Acesta va accesa și scrie datele folosind aceleași rutine indiferent că avem un hard disk sau un SSD.
Să reciclăm cu ajutorul adaptoarelor PCI-E – PCI
Dacă deja avem hardware compatibil cu Windows 9x dar este pe slot PCI clasic atunci ne putem orienta către un adaptor PCI-E – PCI. Aceste adaptoare vor transforma slotul PCI-Express într-unul PCI clasic fără nicio diferență pentru sistemul de operare.
Suport AHCI în Windows 95/98/ME? Da, se poate!
AHCI vine de la Advanced Host Controller Interface și este un standard creat de Intel pentru implementarea bus-ul SATA. (de la Serial-ATA) Primele plăci de bază cu SATA au apărut în anul 2003, când Windows XP era în plină expansiune, dar și epoca în care Windows 9x/ME încă aveau un cuvânt de spus, drept dovadă Microsoft a fost nevoită să le prelungească suportul cu doi ani până în iulie 2006.
În mod firesc, sistemele de operare lansate înainte de apariția AHCI/SATA nu oferă suport nativ pentru acest standard. În aceste condiții interfața AHCI a fost gândită să emuleze standardele deja implementate – respectiv standardul PATA, cunoscut și sub denumirea de IDE. (deși din dpdv tehnic se poate nuanța)
Așadar, atunci când ne-am cumpărat primul hard disk SATA cel mai probabil l-am folosit în modul compatibil IDE. Adică hard disk-ul nostru a fost controlat de sistemul de operare folosind același rutine ca și la hard disk-urile mai vechi pe care le conectam cu acea panglică lată pe placa de bază. Cu alte cuvinte, cabluri diferite – dar același protocol.
AHCI în Windows 9x
Avem vești bune! Compatibilitatea standardului AHCI nu se limitează doar la posibilitatea de a rula în modul PATA. Standardul AHCI oferă suport pentru controlul hard disk-ului prin BIOS, folosind int 13h. Asta înseamna că vom putea folosi standardul AHCI împreună cu versiunile antice de DOS din anii ’80, respectiv vom putea accesa hard disk-ul și din toate versiunile de Windows care se bazează pe DOS: Windows 1x, 2x, 3x, 95, 98 & Me.
Atunci când sistemul de operare se bazează exclusiv pe BIOS pentru a controla hard disk-ul vom avea parte de o rată de transfer va fi limitată. Cât de limitată? De câțiva MB/s. Am obținut maxim 10MB/s pe o placa de bază X470. În practică, nu prea mai contează această viteză limitată în condițiile în care folosim un SSD și un sistem de operare/programe mai vechi care oricum lucrează cu fișiere de mici dimensiuni. Un sistem de operare precum Windows 98 se va încărca sub 10 secunde. Nu vom simți o nevoie acută de o viteză mai mare, decât atunci când lucrăm cu fișiere de mari dimensiuni.
Și totuși, cum ar fi să avem suport AHCI și în Windows 9x și, astfel, să avem rate de transfer de zeci de mega pe secundă?
Ei bine, acest lucru este posibil datorită lui R. Loew (1952-1919) care a conceput drivere AHCI pentru Windows 9x. Pînă în anul 2019 acestea nu au fost distribuite ca software gratuit, ci puteau fi achiziționate de la autor contra $20. În 2019, după ce R. Loew a trecut în neființă, familia a pus gratuit aceste drivere la dispoziția publicului în mod gratuit. Pot fi găsite pe archive.org sau chiar la sfârșitul articolului.
Cum instalăm AHCI Patch?
De ce avem nevoie?
DOS
Windows 95, 98, 98SE or ME.
AHCI capable Motherboard and/or Card(s).
Conținut pachet:
AHCI.PDR AHCI Driver
AHCI4.INF 4 Port Driver INF File
AHCI6.INF 6 Port Driver INF File
AHCILDR.COM BIOS Replacement for older AHCI implementations
AHCIMAP.COM AHCI Disk Driver Mapper
README.TXT This File
LICENSE.TXT License File
HISTORY.TXT Revision History
Așadar, avem două fișiere .inf: ahci4.inf pentru plăcile de bază cu 4 porturi SATA și ahci6.inf. Putem folosi ahcimap.com pentru a determina câte porturi avem la dispoziție. Nu încele din urmă, avem și fișierul ahci.pdr care este driverul în sine. Dacă lucrurile merg prost după instalare, putem șterge redenumi acest fișier și Windows-ul va reveni fără nicio altă setare la starea anterioară, conectarea prin BIOS. Fișierul AHCILDR.COM e doar pentru situații de urgență, când avem un controller SATA mai vechi și după ce instalăm patch-ul Windows va da o eroare. Acesta trebuie chemat la dotorie prin introducerea unei linii suplimentare in autoexec.bat: C:\adresă\ahcildr.com, unde adresă
e folderul în care l-am descărcat.
Porturile SATA vor fi văzute în Windows 9x ca un „PCI Card”. (cu semn de exclamare galben în Control Panel/Device manager)
Pentru a instala driverele vom face click pe toate device-urile „PCI Card” necunoscute, vom selecta „Update Driver” și vom indica drept locație pentru drivere folderul cu fișierele de mai sus, de unde selectăm ahci4.inf sau ahci6.inf. Nu deranjăm alte device-uri care nu au drivere dar sunt recunoscute drept „Ethernet Controller” sau „Multimedia Audio Device” pentru că este evident că nu acolo se ascunde controller-ul nostru SATA.
Autorul ne indică să repetăm mișcare pentru toate device-urile PCI necunoscute, deoarece în funcție de câte drive-uri avem conectate, este posibil ca BIOS-ul să raporteze mai multe porturi AHCI.
SATA patch
Deși suportul pentru AHCI a fost instalat și vom avea viteze mari de copiere, Windows încă nu e convins că sistemul nostru a renunțat la accesul prin BIOS și va raporta că funcționează tot în „compatibility mode”. Pentru a rezolva și acest ultim aspect, trebuie să mai instalăm un patch tot de la R. Loew. Acest patch va modifica fișierul esdi_506.pdr astfel încât să se înțeleagă cu interfața AHCI.
După acest ultim pas, SSD-urile noastre vor fi listate în Control Panel iar Windows va raporta ca este optimizat pentru performanță maximă. Mulțumiri, R. Loew!
DOWNLOAD:
- AHCI patch by R. Loew
- SATA patch by R. Loew
Adaptor PCI-E 1x- USB pentru Windows 98/Me/2K?
Ne-a apucat nostalgia și am instalat un sistem de operare scos la pensie (98/ME/2000/XP etc) pe hardware de ultimă generație dar nu avem parte de USB? Într-o primă etapă, BIOS-ul va avea grijă să emuleze tastatura și mouse-ul USB – le vom putea folosi – dar povestea noastră se oprește aici pentru că porturile USB de pe placa de bază nu vor să colaboreze de nicio culoare. (exceptând culoarea galbenă și semnul exclamării din device manager) Dar tocmai pentru că ne plac provocările ne încăpățânam să continuăm aventura.
Lucrurile sunt mai simple dacă PC-ul nostru are deja vreo câțiva ani vechime și are în dotare un slot PCI clasic. Pur și simplu instalăm o placă PCI-USB și astfel ajungem la o înțelegere cu orice sistem de operare Windows 9x. Totuși, pe un sistem mai vechi, înainte de instala o o placă dedicată avem mari șanse să o scoatem la capăt și cu USB-urile incorporate dacă încercăm să căutam drivere/patch-uri.
Pe altă parte, plăcile de bază mai noi nu mai oferă suport nativ pentru interfața PCI. Pentru a oferi suport PCI clasic, producătorii trebuie să adauge un chip bridge – acest lucru se întâmplă dar mai mult pentru produse de nișă. De exemplu, Biostar X470GTA este o placă de bază lansată în iulie 2019 și vine la pachet cu 2 sloturi PCI. Dacă avem un sistem cu componente din ultimii 2-3 ani – și nu am ținut dinadins să avem măcar un slot PCI clasic pe placa de bază – atunci trebuie să ne orientăm către interfața PCI-Express 1x. Se poate?
Ce ar fi să folosim o placă PCI-Express 1x?
Da, avem vești bune! Putem folosi o placă PCI-E 1x care folosește un chip compatibil cu Windows 98/ME/2000/XP & co. Nu sunt multe oferte de acest fel, dar am găsit un producător (StarTech) care s-a încumetat să folosească un chip VIA6212L USB 2.0 gândit pentru interfața PCI pe interfața PCI-Express. Nu a trebuit decât să adauge un chip bridge care să transfere semnalul PCI pe interfața PCI-Express.
Windows 98 prieten bun cu chipsetul USB VIA
Ryzen 9 vs Pentium II – benchmark pe direct în Windows 98
După ce am instalat cu succes Windows 98SE pe un Ryzen 9 3900x nu am putut rezista tentației de a rula niște benchmark-uri cu Sisoft Sandra 99 – care are înregimentate spre comparație hiturile anului 1998, no. 1 fiind Pentium II 450Mhz, secondat de AMD K6-II 400. Firește, procesorul Ryzen 9 tactat la 3.8Ghz este o bestie când îl comparăm cu PII 450Mhz – lansat în august 1998, contra modestei sume de 669$. Și totuși, cum se descurca față de un Ryzen 9 3900X 12 core lansat în iulie 2019 la o nimica toată de 499$?
Mai întâi, o precizare importantă: în Windows 98 procesorul va fi testat doar în regim single core, așa este arhitectura Win9x. Și da… restul de 11 core-uri vor sta într-o relaxare deplină.
Benchmark memorie
Începem cu un benchmark cu privire la rata de transfer a memoriei RAM care ne dă încredere în privința acurateței rezultatelor. Așadar DDR4 la 2133Mhz mai este denumit și PC4-17066 – de la viteza teoretică de 17066MB/s. Ei bine, SiSoft Sandra a măsurat viteza memoriei DDR4 ca fiind de 17979MB/s. Nu-i rău deloc pentru un software scris în 1998, când în luna iunie Samsung abia lansa primul modul de memorie DDR de 64Mb. Bineînțeles, a mai durat o vreme până ce DDR a început să devină o chestie comună, vorbim de anii 2000 deja. La 290MB/s, rezultatele pentru generația SDRAM sunt dezamăgitoare, însă lucrurile stau mult mai bine în următoarele benchmark-uri.
Benchmark instrucțiuni pe secundă
Următorul benchmark se raportează la MIPS, care vine de la Milions Instructions Per Second. Așadar, mai jos, avem un procesor la 450Mhz care poate efectua 1220 de milioane de instrucțiuni pe secundă în timp ce concurența rulează la 3800Mhz (x8.44) și poate efectua 22481 MIPS.
La un calcul băbesc, reiese că Ryzen 3900 x are o rată de 5.9MIPS per 1Mhz, pe când un Pentium II 450 poate duce 2.7MIPS per Mhz. Trebuie să recunoaștem că nu-i deloc rău pentru un Pentium II. Cu toate îmbunătățările aduse în ultimii 20 de ani, te așteptai ca la IPC (instructions per clock) avansul să fie de o magnitudine mult mai mare în cazul procesoarelor noi.
Benchmark multimedia
Ultimul test este cu privire la capabilitățile multimedia ale procesorului. Aceste test trebuie pus în contextul apariției pe piață în 1997 a procesoarelor Intel cu instrucțiuni MMX. ((Back in 1997, la un magazin de calculatoare: Un Pentium „memeics”, vă rog!)) MMX vine de la MultiMediaeXtensions… și, după cum ne putem da seama din denumire, aceste instrucțiuni sunt optimizate pentru manipulare de date multimedia: sunet, imagine, video.
Cu ceva timp în urmă, pe aceeași instalare de Windows 98 am testat și un i7. Toate rezultatele le găsiți aici.
4GB RAM in Windows 98/Me? Da, se poate. #R. Loew.
Windows 98 nu este prietenos când vine vorba prea multă memorie RAM. Cel mult, poate să se înțeleagă cu 1GB RAM, o cantitate oricum mult prea mare pentru PC-urile din zilele sale de glorie. Majoritatea plăcilor de bază contemporane nici nu suportau 1GB RAM. De exemplu, un chipset foarte în vogă care a făcut echipă cu Windows 98 – Intel 440BX – suporta procesoare Pentium II/III și 512MB SD-RAM.
Așadar, problema cu prea multă memorie RAM a apărut în general după anul 2004, când PC-urile începeau să aibă mai mult de 1GB dar Windows 98 era încă în cărți, ba chiar Microsoft i-a prelungit suportul cu încă 2 ani, până în iulie 2006. (motivul a fost că 1/3 din PC-urile conectate la internet în toamna lui 2003 încă rulau Windows 98 așadar era prematur să i se retragă suportul la data programată și anume ianuarie 2004)
Pe lângă limitările hardware și prețul relativ prohibitiv al memoriei RAM, un alt factor determinant pentru care PC-urile rulau cu relativ puțină memorie RAM era datorat optimizării software. Asta însemna că un producător de „rit vechi” că să-i zicem așa, întotdeauna căuta să-și optimizeze codul pentru a rula cu cât mai puțin RAM și pentru a fi compatibil cu cât mai multe configurații. Dacă în 1998 un PC cu Windows 98 avea 32MB RAM, un 486 care rula Windows 95 avea probabil 8MB sau 16MB – nu puteai să pierzi acești clienți, sau să-i forțezi să cumpere mai mult RAM pentru a folosi produsul tău.
Cum facem totuși să avem mai mult de 1GB RAM?
Deși din punct de vedere tehnic e cu totul realizabil să reconfigurezi sistemul de operare pentru a folosi mai mult RAM, însă Microsoft nu a mers pe această cale și a lăsat lucrurile neschimbate. Ar fi fost un update major pentru un sistem de operare deja cu actele de pensionare pe masă și, dacă în urma update-ului, 0,1% din PC-uri nu ar mai fi putut intra în Windows era deja o problema gravă și greu de gestionat.
Neoficial, pasionați precum R. Loew (1952-2019) au reușit să scoată un patch care elimină aceste limitări din sistem. R. Loew, zis și Rudy, a trecut în neființă anul trecut, iar familia a lăsat moștenire comunității online software-ul scris de către acesta. (nu toate patch-urile marca R. Loew erau gratuite, iar cel pentru memorie costa 20$)
De unde descărcăm patch-ul?
Software-ul scris de R. Loew, este acum disponibil în mai multe locații. Un loc sigur și care va rezista în timp este pe archive.org sau aici.
2020?
În 2020, în general vorbim de configurații cu 8GB, 16GB, 32 sau 64GB. Acum folosesc 32GBGB DDR4 și chiar în momentul la care scriu acest articol am deschis Photoshop, două browsere și vreo 30-40 de tab-uri – toată afacerea, inclusiv memoria ocupată de Windows 10 se ridică la 7.4GB RAM, adică 77% din memorie stă degeaba. Sunt 32GB prea mulți pentru utilizarea zilnică, cu siguranță da. În alte scenarii, precum prelucrarea de conținut video 4K mai multă memorie nu strică niciodată.
VESA BIOS Extensions – driver video universal pentru Windows 9x
Conform Wikipedia,
VESA BIOS Extensions (VBE) este un standard VESA, actualmente la versiunea 3, care definește o interfața software ce poate fi utilizată pentru a accesa placi video compatibile la rezoluții și la adâncimi de biți mari. Această interfață este diferită față apelurile BIOS „tradiționale” int 10h, care sunt limitate la rezoluții de 640 × 480 pixeli cu o adâncime de 16 culori (4 biți) sau mai puțin. VBE este disponibilă prin BIOS-ul plăcii video, prin utilizarea unor vectori de întrerupere care redirecționează către aceste extensii.
Majoritatea plăcilor video mai noi implementează standardul VBE 3.0, care este și cel mai capabil. Versiunile mai vechi ale VBE oferă doar o interfață în modul real, care nu poate fi utilizată fără o penalizare semnificativă a performanței din cadrul sistemelor de operare în mod protejat. În consecință, standardul VBE nu a fost aproape niciodată utilizat pentru a scrie driverele unei plăci video; fiecare producător a trebuit astfel să inventeze un protocol proprietar pentru comunicarea cu propria sa placă video.
Așadar, VBE s-a dorit un standard prin care să se poată accesa unele funcții suplimentare ale plăcilor video, fără a fi nevoie de un driver specific de la producător. O asemenea idee pare grozavă în contextul în care producători precum Intel, ATI sau nVidia nu mai oferă drivere pentru sisteme de operare mai vechi și, din moment ce plăcile lor sunt compatibile VBE, acestea ar fi putea fi accesate printr-un driver universal, altul decât standard VGA.
În practică, lucrurile nu sunt chiar atât de grozave, deoarece standardul VBE prezenta un interes practic în epoca când Windows era dependent de MS-DOS. Asta însemna că în Windows se obținea funcționalitate completă folosind un driver specific, iar în DOS o funcționalitate extinsă prin VBE fără să fie nevoie de un driver special. În aceste condiții, interesul pentru standardul VBE a scăzut de la an la an, plăcile video foarte noi fiind mai mult în teorie compatibile VBE. Oficial, ATI suportă VBE 2.0, iar nVidia VBE 3.0
VBEMP 9x Project: Universal VESA/VBE Video Display Driver
Drivere universale pentru Windows 9x le puteți accesa de aici. Acestea au fost updatate în 2014 și suportă o serie de plăci video de la Intel, ATI și nVidia, precum și plăci mai vechi precum cele de la Cirrus Logic & co. Marea majoritate a plăcilor compatibile VBE, sunt ceva mai vechi și au deja drivere pentru Windows 98. Am încercat aceste drivere cu o plăci video foarte noi (nVidia 2070 Super model lansat iulie 2019) și nu am avut succes în Windows 98, dar aceste drivere au mers în Windows ME.
Veștile bune par să vină înspre dinspre plăcile video Intel, acestea ar fi cele mai compatibile VESA, inclusiv cele din generația Haswell – Intel HD 4000. Nu am încercat, dar am observat că Intel HD-urile randează perfect Winodws 3.1, fără niciun fel de artefacte.
Windows 98 în Full HD – episodul cu monitorul
Rezoluția tipică pentru un PC cu Windows 98, echipat cu monitor de 14 sau 15 inch, oscila între 800×600 și 1024×768. Pe monitoarele de 14 inch 800×600 era chiar o rezoluție mai uzuală, la „1024” iconițele și textul deveneau prea mici pentru unii utilizatori, mai ales că unele monitoarele CRT ieftine nu aveau o claritate deosebită. Să nu uităm nici de practica din epoca monitoarelor CRT când diagonala vizibilă a monitorului era, de regulă, cu 1 inch mai mică. Un monitor de 14 inch avea în realitate o diagonală vizibilă de 13 inch. Păi, ce s-a întâmplat cu cu ultimul inch? Ei bine, acesta făcea parte din tubul de sticlă care era de 14 inch și era acoperit de plastic.
Suportă Windows 98 rezoluții Full HD?
Da, fără nicio problemă. Aceste rezoluții existau dinainte ca standardul Full HD să devină ceva comun. În revista Maxim PC din ianuarie 1999, vedem o reclama la plăcile nVidia Riva TNT care suportă rezoluții de 1920×1200, respectiv standardul UXGAW. Pentru utilizatorii obișnuiți, aceste rezoluții maxime reprezentau doar niște cifre seci, fără nicio aplicabilitate în practica de zi cu zi. Benchmark-urile în jocuri se făceau la 800×600 și 1024×768, peste aceste rezoluții frame rate-uk avea de suferit serios. Mai mult de atât, acceleratoare foarte populare precum VooDoo 2 nu acceptau rezoluții mai mari de 800×600. Pe de altă parte, în mediul profesional, monitoarele de la 21inch în sus erau familiarizate cu rezoluții înalte, de până la 2048×1536.
VooDoo 3 – max resolution: 2048×1536
În anul 1999 s-a lansat și 3dfx VooDoo 3, placa mea preferată, și pe care am folosit-o la ultima instalare de Windows 98. Acesta suportă standardul QXGA cu o rezoluție maxima de 2048×1536. Când am instalat-o în Windows 98 s-a înțeles din prima cu monitorul și a permis setarea rezoluției maxime, full HD 1920×1080.
Rezoluția maximă în Windows 98?
Din punct de vedere tehnic, Windows 98 nu are o limită cu privire la rezoluția maximă, aceasta este dată de specificațiile tehnice ale plăcii video. Plăcile video care funcționează sub Windows 98 suportă maxim: 2560×1600 pixeli.