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.

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.

Windows 98 on Intel 13th Gen CPU, using Cregfix to bypass VCACHE error.

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.

YouTube player

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:

YouTube player

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:

YouTube player

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

Internetul și Windows 3.11

Dacă ținem dinadins să intrăm pe internet din Windows 3.11 acest deziderat este cu totul realizabil. Și nici măcar nu e foarte complicat!

Veștile bune vin din partea Intel și Realtek, principalii producători activi de chipset-uri pentru plăci de rețea. Deoarece există cerere în mediul business și industrial, atât Intel cât și Realtek oferă drivere DOS pentru plăcile lor de rețea. Aceste drivere sunt conforme NDIS 2.0 (Network Driver Interface Specification) și sunt grupate în funcție de viteza de transfer a plăcii de rețea. Așadar, avem la dispoziție drivere universale pentru plăcile de 100mbps, pentru cele gigabit (1000mbps), ba chiar și pentru cele 2.5G (2500mbps). Ei bine, driverele NDIS pentru DOS sunt numai bune în Windows 3.11, ba chiar merg și în Windows 95 și 98SE.

După cum putem observa, aceste drivere sunt updatate la zi.

Cum instalăm un driver NDIS în Windows 3.11?

Mai întâi facem click pe Network SetupNetwork DriversAdd Network Adapter.

În acest punct vom vedea o listă cu driverele deja incluse în Windows 3.11 și, dacă nu cumva avem o placă de rețea de la începutul anilor ’90, selectăm: Unlisted or Updated Adapter apoi indicăm folderul unde se află driverul.

Am instalat driverul ce urmează?

Driverele pentru placa de rețea nu vin la pachet și cu protocolul TCP/IP necesar pentru a ne conecta la internet. Acest protocol este în general implementat la nivelul sistemului de operare, însă în Windows 3.11 nu este inclus în mod standard. Acesta se poate adăuga separat și poartă denumirea de: Microsoft TCP/IP-32 3.11b. Acesta este disponibil doar pentru Windows 3.11. Pentru Windows 3.1 putem folosi funcționalitatea TCP datorită unui program foarte popular la acea vreme Trumpet Winsock. Despre acesta vom face un articol separat.

Protocolul TCP/IP vine la pachet și cu un set de utilitare:

După ce am instalat pachetul TCP/IP, trebuie să îl setăm ca „default protocol” apoi din pagina sa de configurare bifăm DHCP pentru a obține automat un IP de la router și asta e, suntem conectați la internet.

Ce browsere putem folosi?

Windows 3.11 nu vine cu niciun browser la pachet. Acest lucru s-a întâmplat mai târziu, iar pentru că Internet Explorer a fost inclus „cu forța” în Windows 98 Microsoft a dat de bucluc și a fost amendată pe fondul legislației anti-trust. Pentru Windows 3.11, cel mai nou Internet Explorer care se poate instala este cel ajuns la versiunea 5, acesta poate fi instalat ca upgrade peste versiunea anterioară.

Ei bine, odată intrați pe net și e ca și cum ne-am întoarce în timp, căci în general doar contemporane cu Windows 3.11 și 98 vor funcționa în parametri normali. Site-urile mai noi folosesc tehnologii incompatibile cu Windows 3.11 și fie vor refuza conexiunea cu browserul, fie se vor afișa anapoda.

Alături de Internet Explorer, avem la dispoziție și Netscape Navigator versiunea 4.08 din anul 2001.

Fără excepție, autnci când acccesăm google acesta va afișa ceva indiferent de browser
Unele site-uri întreținute în mod curent sunt optimizate pentru Windows 3.11.

Opera..

Dacă avem probleme cu Internet Explorer sau Netscape, putem apela la Opera. Ultima versiune pe 16 bit este 3.62 din anul 2000.

FTP

FTP – de la file transfer protocol – era un serviciu foarte popular la începuturile internetului. În prezent protocolul în sine a rămas aproape neschimbat și poate fi accesat cu ușurință din Windows 3.11. Unul dintre cele mai bune utilitare care poate fi folosit în Windows 3.x este Total Commander, iar acesta are și funcții pentru FTP:

You’ve got mail?

Fără îndoială, emailul a fost una dintre cele mai populare unelte care a acompaniat Windows 3.x în anii ’90. Chiar am putea spune că emailul crescut în popularitate și datorită Windows-ului care a simplificat cu mult interfața de utilizare. Mai putem folosi aceste funcții și astăzi?

Dacă avem un cont de email POP3 pe care-l putem configura, atunci avem noroc. Unele tehnologii de securitate ne vor sta în cale în Windows 3.x. Eu am reușit să creeze un cont de email pe @pinzaru.ro și l-am accesat din Windows 3.11.

IRC/ mIRC

Serverele IRC sunt sunt accesibile și din DOS, deci nu se pune problema să nu putem intra din Windows, mai ales că avem la dispoziție venerabilul mIRC care până la versiunea 5.91 a oferit suport și pentru Windows 3.x. Această versiunea poate fi folosită și în prezent având o funcționalitate aproape de 100%, în sensul că nu e mare diferența față de o versiune mai nouă pe 32bit.

Cum instalăm DOS & Windows 3.11 pe un SSD. Pas cu pas.

Dacă avem un calculator cu BIOS sau UEFI-CSM, avem toate șansele teoretice să putem instala mai întâi o versiune de DOS și, mai apoi, cireașa de pe tort: Windows 3.11. Procesul poate dura mai puțin de 10 minute, dacă avem la dispoziție un SSD/Hard Disk pe care să facem o partiție compatibilă cu DOS. Nu avem nevoie de unitate floppy iar mouse-ul și tastatura pe USB vor funcționa ca și cum ar fi PS/2, deoarece BIOS-ul va prelua semnalele USB și le va traduce pe înțelesul DOS/Windows 3.11.

Cum facem, pas cu pas

1) Descărcăm o imagine de dischetă de boot cu DOS de pe allbootdisks.com, recomandabil versiunea DOS 6.22. Putem încerca și venerabilul DOS 5 din 1991 – în cazul meu – a mers perfect pe un Ryzen 3900x cu placă de bază X470. Nu încercați cu discheta de boot de la Windows 95/98 care instalează DOS 7. Există un patch care permite să rulăm Windows 3x din DOS 7, se numeste WIN3x start, însă adăugăm încă un punct vulnerabil în configurația noastră, din moment ce oricum forțăm nota cu hardware foarte nou.

2) Facem un USB stick bootabil folosind o imagine de discheta de DOS cu ajutorul utilitarului UNetbootin.

3)Dedicăm acestui proiect un HDD/SSD mai vechi sau mai nou. Putem folosi și SSD-ul pe care avem acum Windows, dar va trebui să-l formatăm întrucât partiția FAT16 trebuie să fie la începutul discului. Dacă am ales această cale, e momentul să aflăm că este 100% realizabil să avem Windows 3.11 și Windows 10 pe același SSD, ba chiar putem bota în Windows 3.11 folosind bootmanagerul care vine la pachet cu Windows 10.

Pentru instalarea de mai jos, eu am folosit un SSD de 32GB de la Sandisk, căruia i-am șters toate partițiile și l-am făcut ca proaspăt luat din magazin. Se poate instala și pe SSD de capacitate mai mare, în orice caz, Windows 3x va vedea doar primii 8GB de pe un disk folosind accesul CHS prin BIOS.

Pentru a „curăța” SSD-ul, din Windows 10, cu ajutorul utilitarului diskpart apelăm la următoarele comenzi:

  • Diskpart (apăsăm tasta Windows – și scriem diskpart )
  • DISKPART ->List disk -> Select Disk 1 (unde „Disk 1” e discul pe care vrem să facem instalarea – îl putem identifica după mărime dacă avem dificultăți în a-l izola față de celelalte drive-uri conectate)
  • CLEAN pentru a șterge rapid partițiile(Comanda CLEAN ALL va avea același efect doar că va rescrie tot discul cu zero-uri astfel încât datele să nu poată fi recuperate cu soft-uri speciale, se recomandă în special atunci când vrem să înstrăinăm discul; comanda CLEAN ALL poate dura și 20-30 de minute în funcție de capacitatea discului)

4) Dacă vrem să obținem aceleași rezultate din DOS, bootăm de pe stickul USB și apelăm la utilitarul FDISK cu comanda fdisk

Pentru că am șters toate partițiile din Windows 10, ne-am făcut viața mai ușoară și ne rămâne doar misiunea de a crea o partiție primară DOS. Dacă nu le-am șters, apelăm la opțiunea no. 3: Delete partition or Logical DOS drive (de unde alegem varianta non-dos)

Pentru a crea o partiție primară, comenzile pe care le dam sunt în următoarea ordine:

  • 5. Change current fixed disk drive* (alegem discul unde urmează să facem instalarea)
  • 1. Create DOS partition or Logical DOS DRIVE
  • 1. Create primary DOS partition (musai să fie partiție primară)**

* Această comandă schimbă discul asupra căruia vrem să facem modificări. Dacă bootăm de pe un stick USB acesta va fi discul fix nr. 1. Dacă avem și alte SSD-uri, inclusiv pe PCI-Express acesta vor fi listate de catre FDSIK, ca discuri fixe cu diverse partiții de maxim 8GB sau mai puțin. Ca sa nu încurcam borcanele, recomand deconectarea celorlalte SSD-uri astfel încât să avem doar stickul bootabil și SSD-ul pe care vrem să facem partiția de 2GB.

5) După ce am folosit fdisk și repornim PC-ul partiția noastră o sa primească o litera de acces. În mod normal aceasta va fi C: sau D:. (presupunem că nu mai avem conectate alte discuri cu partiții FAT16)

Este momentul să formatăm partiția, folosind clasica comandă „format”. Fără alți parametri scriem:

format C: (sau D:)

6) E momentul să transferăm sistemul cu comanda sys C: sau sys D: Acest transfer înseamnă că avem minimul de fișiere ca să pornim calculatorul în DOS.

6.1) Optional: în caz că nu pornește instalarea și primim o eroarea cu privire la memoria extinsă. Copiem de pe discheta de boot driverul pentru memoria extinsă himem.sys si editorul text edit.com. Avem nevoie de acestea pentru a crea m fișierul text config.sys în interiorul căruia scriem următoarea linie DEVICE=HIMEM.SYS /M:1 . Switch-ul M:1 de la IBM  va rezolva de regulă problema, pentru un calculator HP am folosit switch-ul /M:14

7) Foarte important este să facem partiția activă. Chiar dacă am folosit comanda SYS noastră nu este încă bootabilă. FDISK din DOS 5/6 ne lasă sa facem partiții active doar de pe discul 1, care în cazul nostru este discul bootabil. FDISK-ul care vine pe discheta de boot din Windows 95 / 98 e mai înțelegător, dar și acolo trebuie să folosim un parametru special (fdisk /actok)

Din fericire, putem rezolva problema partiției active cu diskpart din Windows 10 sau pe stick-ul de instalare cu un Windows mai nou.

Din Windows 10 am folosit seria de comenzi

diskpart > select disk > seclect partition > active – pentru a face partiția de 2GB activa.

8) Descărcăm dischetele de instalare Windows 3.11 pe pe winworldpc.com. (de departe, cel mai recomandat site pentru instalări retro) Dacă ne întrebăm care e diferența majoră dintre Windows 3.1 și 3.11 aceasta este suportul TCP/IP care ne permite conectarea la net este disponibil doar în Windows 3.11.

8) Imaginile de dischete vin împachetate într-o arhiva 7zip. Ca să ne facem viața mai ușoară Descărcăm 7zip, selectăm toate imaginile de dischete facem click dreapta și le extragem conținutul într-un singur folder. Cineva de la Microsoft a avut ideea genială de avea nume diferite pentru fiecare fișier de instalare, deci nu se încurcă lucrurile dacă vom extrage toate fișierele într-un singur folder. Odată ce avem toate fișierele la un loc, instalarea va merge fără nicio întrerupere și va dura câteva zeci de secunde pe un SSD. Dacă am uitat să dezarhivăm vreo imagine de dischetă instalarea se va opri ți ne va cere să introducem discul X pe care se află fișierul Y.

7) Copiem folderul cu kitul de instalare pe partiția de 2GB. Ii dam o denumire de până la 8 caractere, de ex Win3kit, Win3 etc

8) Bootam de pe partiția de 2Gb și la promptul DOS scrie:

CD nume_folder, apoi setup.

9)În mod normal, mouseul pe USB va funcționa absolut OK în Windows 3.11. Ca o ironie, avem bătăi de cap în edițiile ulterioare de Windows. Dacă mouse-ul totuși nu funcționează: folosim tasta TAB pentru a naviga printre butoane și tasta SPACE/ENTER pentru a le apăsa. Sau putem folosi și combinația ALT + litera subliniată a unui buton. De exemplu, în imaginea de mai sus că apăsăm butonul Continue – apărăm Alt + O.

10) Hopaa, primim o eroare cu privire la memorie. Știm deja, avem prea multă. Revenim in DOS si scriem:

edit c:\system.ini – derulam până la secțiunea [386Enh] -unde adăugăm următoarea linie:

PageOverCommit=1

L-am instalat! Ce fac acum?

Ca să ne dăm mari la prieteni și să le arătăm că putem intra pe net, am putea începe prin a instala placa de de rețea, atât Intel cât și Realtek oferă drivere de DOS care vor merge ca unse în Windows 3.11. Microsoft oferă și suport complet TCP/IP pe 32bit cu DHCP și tot tacâmul.

Putem instala Microsoft Office, Adobe Phothosop s.a.m.d.

Versiuni mai vechi ale acestor software-uri populare pe găsim pe archive.org sau pe winworldpc.com Nu trebuie sa ne preocupe în mod special partea cu licența, căci nici pe producători nu-i mai interesează aceste versiuni de acum 20-25 de ani. Deținătorii site-ului winworldpc.com au declarat că a primit o notificare de la Microsoft în legătură cu Office XP care este o versiune relativ mai nouă (a fost scoasă inițial de pe site), dar le-a fost permis să distribuie versiunile mai vechi.

Putem intra pe mIRC

mIRC-ul funcționează ca-n zilele bune în Windows 3.11 și nu duce lipsă de utilizatori pe #ROMANIA.

Putem intra și pe net? Da, firește, dar vom avea o experiență limitată, deoarece doar site-urile mai vechi se vor afișa corect. Ultimele browsere pentru Windows 3.11 datează din anii 2000, respectiv Internet Explorer 5.0 sau popularul de atunci Netscape, ultima versiune pe 16bit fiind 4.08. Există și o versiune de Opera, dar se pare că este cea mai puțin preferată din cauza bug-urile cu care vine la pachet.

Netscape 4.08 reușește și după 20 de ani să se înțeleagă cu motorul de căutare google
Din DOS putem folosi browserul Arachne, însă acesta necesită configurare suplimentară.

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.

Windows Millenium la rezoluție 1920×1080 folosind driverele VBEMP 9x Project pe o placă nVidia 2070 RTX Super.
Același Windows Me, de această dată randat cu un Radeon RX580 de 8GB. Implementarea VESA mi s-a părut mai bună pe placa Radeon.

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.

MS-DOS 5.0, since 1991

MS-DOS 5.0 a fost lansat în iunie 1991 și, în mai puțin de un an, a făcut echipă câștigătoare cu Microsoft Windows 3.1, care a fost lansat în aprilie 1992 și s-a dovedit un succes pentru Microsoft.

MS-DOS 5.0 a fost prima versiune care a venit la pachet cu himem.sys, un manager pentru memoria superioară, care a fost mai apoi inclus în mod standard în toate versiunile ulterioare de MS-DOS. Acesta a mai venit și Microsoft Editor (edit.com) propriul editor text. În mare, versiunile viitoare au rămas la fel la nivel de funcționalitate.

Despre MS-DOS 5.0 în revista PC-Magazine din septembrie 1991.

Recunoașteți interfața?

23 de ani mai târziu când, undeva prin anul 2014, unii dintre noi mai instalau Windows XP și aveam parte de aceeași interfață clasică de la MS-DOS 5.0. Suportul pentru Windows XP a încetat pe 8 aprilie 2014, când acesta după încă mai deținea 15% cotă de piață.

MS-DOS 5.0 în 2020?

MS-DOS se poate instala pe orice PC care are BIOS. PC-urile x86 care nu mai au BIOS folosesc arhitectura UEFI care, în majoritatea implementărilor, oferă și un modul de backward compatibility (CSM – Compatiblity Support Module) care face ca PC-ul nostru să se comporte ca și cum ar avea BIOS. Cu suportul CSM activat și datorită arhitecturii x86 și a modului real, am instalat fără nici cea mai mică problemă MS-DOS 5.0 pe un Ryzen 9@3.8Ghz cu 32GB DDR4 și pe SSD în modul AHCI. Nici una dintre aceste specificații extraterestre pentru anul 1991 n-a intimidat în niciun fel sistemul de operare. În materie de spațiu de stocare, MS-DOS vine cu limitările FAT16, adică partiția maximă poate fi de 2GB. Cu binecuvânatarea BIOS-ului, MS-DOS va primi acces la SSD-urile noastre, le va vedea inclusiv pe cele nVME. Cum este și de așteptat nu dar nu va înțelege mare lucru din sistemul de partiții și fișiere curent, de exemplu în cazul unei instalari Windows 10, va recunoaște partiția de sistem care are aproximativ 500mb și singura care este „trendingul” vremii. În rest, prin intermediul BIOS-ului doar primii 8GB de pe un disc vor fi accesibili, asta înseamnă că trebuie să facem partiția FAT16 pentru DOS 5 la începutul discului.

Cum vede DOS 5 un SSD de 512GB? Partiția de sistem făcută de Windows 10, care are 500MB, o recunoaște ca fiind HPFS (un sistem de fișiere pentru OS/2). Cât despre restul, rezultatul „dă cu virgulă”. Chiar și așa, dacă vrem să facem o partiție bootabilă cu fdisk vom reuși fără nicio bătaie de cap.

Cum instalăm DOS 5?

În general, dacă e să lucrăm în DOS, fie pentru gaming retro sau ca să instalăm un Windows 3.x, este recomandabil să folosim DOS 6.22. Totuși dacă vrem musai să instalăm DOS5, o putem face cu UNetbootin. Eu, de exemplu am instalat de exemplu Windows 1.0 folosind DOS 5.

Cu Unetbootin e atât de simplu să facem un stick bootabil, încât poza de mai jos exemplifică tot procesul. Pur și simplu dăm „browse” ca să încărcăm imaginea de dischetă bootabilă cu DOS 5 și selectăm unitatea USB. Atât!

De unde luăm imaginea cu discheta de boot de DOS 5? De regulă, de pe allbootdisks.com.

Reclama MS-DOS 5

YouTube player

Cum instalam Windows 1.0 pe un PC ultimul răcnet

Windows 1.0 a fost lansat în 1985, toamna. Datorită retro-compatibilității arhitecturii x86 acesta poate fi instalat și pe un sistem de ultimă generație. Cea mai nouă configurație pe care am rulat Windows 1.0 în modul real este un Ryzen 3900x, pe o placă de bază cu chipset X470, 32GB RAM DDR4 @ 3200 și o placă video RTX 2070 Super.

Revenind la mijlocul anilor ’80, Windows 1.0 a făcut o impresie decentă și cam atât, nu a fost luat foarte serios, drept dovadă nici nu sunt multe programe și jocuri dezvoltate pentru Windows 1.x si 2.x. Principalul atu al Windows 1 și anume posibilitatea folosirii unui mouse, venea într-o perioadă PC-urile obișnuite nu erau echipate în general cu mouse. Windows 3.x este la cu totul alt nivel și chiar este un sistem cu care poți să faci lucruri interesante, mai ales că ai la dispoziție Office, Photoshop, Premiere și alte sute de titluri disponibile. Cu Windows 3.11 te poți conecta la Internet folosind TCP/IP. Nu e de mirare că, cu toate limitările sale, Microsoft a retras efectiv Windows 3.11 de pe piață în 2008.

A fi sau a nu fi… sistem de operare

Pentru că Windows 1.0 pare să fie mai mult o interfață grafică pentru MS-DOS, s-a pus problema dacă acesta este cu adevărat un sistem de operare. Trebuie să ținem cont că Windows 1.0 funcționează cu propriile sale drivere pentru hardware ceea ce este cu mult peste nivelul unei simple interfețe grafice.

Driverele incorporate în Windows 1.01
Printre driverele de mai sus putem observa și HPLASER.DRV pentru imprimantele HP LaserJet introduse în 1984.

Stranger Things

Datorită mega-popularității serialului Stranger Things, care aduce un omagiu anilor ’80 , și care în ultimul sezon a ajuns în epoca Windows 1.0, Microsoft i-a făcut puțină reclamă anul trecut. Sezonul 4 care are loc în 1986 când are loc și evenimentul de la Cernobîlul și care se integrează de minune în povestea Stranger Things.

De unde obținem Windows 1.0?

Evident, nu de la Microsoft. Pentru sisteme de operare retro există un singur site de referință, iar acesta se numește winworldpc.com. În caz că winworld pică, o să pun spre download kitul la sfârșitul articolului.

Odată ajunși la pagina de descărcare, descărcăm și Windows 2.0 pentru că avem nevoie de driverul pentru mouse, respectiv fișierul mouse.drv. Windows 1.0 nu va colabora cu mouse-ul nostru pe PS/2 . (în 1985 nici nu era inventat standardul).

Nu mai am unitate dischete, ce fac?

Nicio problemă, nimeni nu mai are. După ce descărcăm kitul de instalare – care este o arhivă .7z de 528KB – vom folosi 7zip pentru a extrage kitul de instalare.

Arhivă în arhivă: fișierele noastre sunt conținute în 5 imagini de dischete. Pentru a face lucrurile extrem de simple, 7zip ne lasă să extragem din imaginile de dischete toate fișierele la un singur loc, utilizând comanda Extract Here.

După ce am selectat toate cele 5 imagini de dischete și am folosit comanda Extract Here, vom avea în același folder cele 155 de fișiere necesare pentru instalare. Microsoft folosește nume unice pentru fiecare fișier, singurul pentru care ni se va cere confirmare de suprascriere este fișierul readme.txt. Pe acesta putem să-l rescriem fără nicio grijă.

Back to DOS

Pentru că Windows 1.0 este mai mult o extensie pentru DOS și mai puțin un sistem de operare per se, din moment ce avem fișierele de mai jos pe o partiție bootabilă de DOS, putem porni instalarea. Windows 1.0. folosește o interfață de tip text pentru instalare și trebuie să ne exprimăm opțiunile folosind cifre sau litere: C to Continue, Q to Quit, Y pentru Yes și N pentru No etc.

Comanda subst

Ca să ajungem la minunatele ecrane de mai sus, nu putem rula setup.exe dacă acesta se află într-un folder pe litera C: (cel puțin, nu din prima încercare). Să nu uităm: suntem în 1985, iar cei de la Microsoft se așteptă în mod obligatoriu ca noi să pornim instalarea – întocmai ca niște oameni în toate mințile – de pe unitatea de dischete, adică A:

Așadar suntem într-un mic impas, pentru că o partiție FAT 16 de DOS va primi litera C: atunci când bootăm de pe ea. Din fericire, începând cu DOS 5, există comanda externă subst (externă: adică necesită fișierul subst.exe) prin care putem aloca o literă de unitate unui folder, inclusiv litera A. Sintaxa este următoarea:

subst [<Drive1>: [<Drive2>:]<Path>] 

subst A: C:\kit

După ce folosim comanda de mai sus, folderul C:\kit se va da drept unitatea A: și când scriem setup.exe totul merge conform planului, drept dovadă ecranul de mai sus prin care suntem anunțați că s-a finalizat instalarea. (Presupunem că în folderul „kit” sunt fișierele extrase adineauri. )

Pentru ca această comandă să funcționeze, e suficient să copiem fișierul subst.exe pe C:\ dacă nu avem o instalare completă de DOS, care include toate utilitarele.)

Să setăm și versiunea de DOS cu setver

Setver.exe, la fel ca și subst.exe, face parte tot din echipa specială DOS 5 (și următoarele) pusă pe „păcăleală”. Setver va face ca un program – care are nevoie de o versiune specifică de DOS – să creadă că versiunea curentă de DOS este fix cea de care are nevoie. Ca să ne iasă acest truc copiem setver.exe pe C: și adăugăm următoarea linie în config.sys:

DEVICE=SETVER.EXE WIN100.BIN 3.34

Windows 1.0 va crede că folosește DOS 3.34 și va porni în sfârșit.

Drive-ul cu Windows 1.0 accesat din Windows 10. În folderul Windows avem, firește, sistemul de operare. Avem subst.exe și setver.exe pe C:\ . Mai avem folderul Win1 din care am rulat setup.exe. Mai avem și edit.com ca să edităm config.sys, deși o putem face la fel de bine și din Windows 10

La mine s-a instalat dar n-a pornit. E momentul pentru VGASETUP.EXE!

Ce să vezi, și eu am pățit la fel. În cazul meu, problema era de la placa video RTX 2070 Super care n-a vrut să pornească în modul EGA care este implementat în driverul EGAHIRES.DRV, respectiv ccel mai bun mod de afișare din 1985. Deși RTX-ul e compatibil cu standardul VGA (introdus în 1987) și implicit și cu standardul anterior EGA – pur și simplu sistemul de bloca când intram în Windows. Rezolvarea vine odată cu instalarea unui driver VGA 640×480 și rularea VGASETUP.EXE – fișier pe care-l creează acest utilitar.

Faceți click pe imagine pentru a descărca driverul.

Ca să folosim acest driver trebuie să reluăm procesul de instalare și să copiem WIN1VGA.EXE în folderul de instalare, aceta va patchui niște fișiere și va crea un VGASETUP. EXE de pe care vom porni instalarea și vom putea selecta ca mod video VGA. Iată propriile sale instrucțiuni de instalare:

Instrucțiuni ~~~~~~~~~~~~
1. Extrageți toate fișierele de instalare Windows 1.0 într-un director pe hard disk. [ceea ce noi am făcut deja]    (de exemplu, C: \ WINSETUP).
2. Copiați WIN1VGA.EXE în acel director și rulați-l. Un nou driver și un nou program setup va fi creat.

Victorie! Avem Windows 1.0 perfect funcțional!

Kitul de instalare

Ce ar fi să avem toate fișierele de instalare Windows 1.0 deja dezarhivate într-un singur folder inclusiv driver-ul pentru mouse + driverul VGA gata instalat (pornim instalarea de pe vgasetup.exe) + subst.exe si setver.exe într-o singură arhivă de 554 KB?

https://www.pinzaru.ro/kit_windows_1.0.7z

x86 Real Mode – zeul compatibilității retro

Dacă ar exista un zeu al retro-compatibilității, acesta ar purta denumirea de x86. De ce? Pentru că procesoarele care suporta arhitectura x86, inclusiv modele de ultimă generație x86-64 precum Ryzen 9 cu 12/16 core-uri, suportă modul real de operare. În acest mod memoria maxima adresabilă este de 1MB, iar software-ul are acces direct către fiecare adresă de memorie, inclusiv adrese I/O și periferice. Modul real se trage din arhitectura primelor procesoare x86 (8086, 8088, și 80186) acesta fiind și singurul mod în care acestea operau.

Windows 1.0 pe Ryzen 3900X?

Pentru că procesoarele x86 moderne suportă acest mod, putem rula software scris în anii ’80 direct pe hardware de ultimă generație. De exemplu, pe un procesor AMD Ryzen 3900x cu 32GB DDR4 și o placă video nVidia RTX 2070 Super – am instalat DOS 5 pe un SSD, de unde am pornit instalarea Windows 1.01 – software ce datează din anul de grație 1985. Singura problema de incompatibilitate a fost driverul video. În 1984 a fost lansat standardul EGA (Enhanced Graphics Adapter) iar în 1987 standardul VGA (Video Graphics Array) care a rămas printre noi și-n ziua de astăzi. Practic toate PC-urile din 1990 și până astăzi ofera suport pt acest standard. Cum Windows 1.0 a fost lansat in 1985, nu știa decât de standardul EGA și deși un adaptor VGA e compatibil și cu standardul EGA, RTX-ul pur și simplu n-a vrut să meargă în Windows 1.0 în mod EGA. Poți să-l învinovățești? Problema s-a rezolvat cu un driver VGA adițional și, minune, Windows-ul a pornit. Cu o placa video mai veche ar fi mers și modul EGA.

De ce a fost menținut pe post modul real?

La începutul anilor ’80, 1 megabyte de memorie era considerată o cantitate relativ mare. La o adică, un PC IBM 5150  suporta intre 64K si maxim 256K RAM de memorie on board, la care se mai puteau adăuga până la 640K prin intermediul unor plăci de extensie – nici nu se putea atinge limita de 1MB oferită de modul real.
Totuși, limita de 1MB de memorie RAM  s-a dovedit o problemă majoră mult mai rapid decât s-a anticipat. Problema a fost rezolvată de Intel prin arhitectura 286 care putea accesa până la 16MB RAM, fiind introdus și un nou mod de operare denumit „protected mode”.  Acest nou mod a venit la pachet cu funcții avansate însă era necesar ca sistemul de operare să fie special scris pentru noua arhitectură.  Ce te faci însă cu software-ul scris specific pentru modul real? Dintr-o dată nu-l poți folosi pe un PC mai nou? Nu, nici vorbă. Unul din conceptele de bază ale arhitecturii x86 este acela de „backward compatibility”. Această compatibilitate retro înseamnă că software-ul mai vechi trebuie să să ruleze în mod nativ pe hardware-ul mai nou, ceea ce s-a și întâmplat. Pentru a realiza acest deziderat, procesoarele 286 au fost concepute să pornească mai întâi în modul real și modul protejat să fie activat la cerere. Aceeași filosofie s-a aplicat și mult mai avansatele procesoare pe 32bit -386 introduse în 1985. Acestea puteau accesa până la 4GB memorie, puteau folosi și memorie virtuală dar în același timp erau perfect compatibile cu software-ul scris pentru modul real. Să nu uităm că MS-DOS funcționează în modul real motiv pentru care putem rula diverse versiuni de DOS și pe cele mai noi procesoare.

Cât costa un PC IBM 5150 în 1981?

O nimica toată, doar vreo 4300 de dolari în banii de astăzi…

IBM PC 5150 1981

Apple? Think different.

Cum stă Apple la retro-compatibilitate? Teribil.  Nici nu se pune problema să luăm un software scris pentru un Macintosh scris în anii ’80 și să-l rulăm în mod direct pe hardware de ultimă generație. Apple a folosit inițial procesoare Motorola, din 1994 până în 2006 a adoptat procesoare PowerPC de la IBM, apoi a trecut la arhitectura x86 din 2006 în prezent. Bineînțeles, aceste generații sunt incompatibile între ele.

DOS-ul nu este chiar mort

Un articol de Brett Nordquist

George RR Martin, autorul celebrului serial de fantezie Game of Thrones a explicat motivele pentru care folosește un computer DOS care rulează WordStar 4 spunând: „Dacă aș fi dorit o majusculă, aș fi tastat o majusculă. Știu cum să lucrez cu tasta Shift. ”

YouTube player

După câteva zile de la dezvăluirea lui Marin, internetul era plin de fani ai cărților și seriei HBO, întrebându-se de ce un autor ar alege intenționat instrumente vechi față de cele moderne disponibile pe Windows sau Mac. Mulți oameni au glumit că vechiul software a fost parțial responsabil pentru întârzierile din ultima versiune a seriei, dar la o privire mai atentă asupra motivelor lui Martin descoperim o serie de avantaje de care pot benefica scriitorii atunci când folosesc DOS.

Mare Fan DOS, George RR Martin

Calculatorul cu DOS al lui Martin nu este conectat la internet, ceea ce reduce întreruperile (precum și virușii) și permite sesiuni de scriere mai consistente. WordStar este un procesor de texte simplu, spre deosebire de unele programe software de astăzi care încearcă nu numai să corecteze greșelile de ortografie, dar oferă și sugestii gramaticale. Și mai există DOS, chiar el! Spre deosebire de Windows, DOS nu necesită actualizări săptămânale sau patch-uri. DOS a fost, de asemenea, construit în zilele de dinaintea multitasking-ului. Așadar, mai multe programe în același timp nu este ceva realizabil, însă rularea unui singur program, cum ar fi WordStar, se circumscrie ideei de concentrare maximă.

Deși există mai multe variante DOS, Microsoft este compania responsabilă pentru răspândirea în masă a acestui sistem de opere, acordând licențe pentru primii constructori de PC-uri. MS-DOS a fost lansat în vara anului 1981 și ultima sa varianta, DOS 8, a fost inclusa în Windows Me în anul 2000. Am cumpărat primul meu computer în 1993 de la acum defuncta companie ZEOS Computers, și a venit standard cu Windows 3.1 și MS-DOS 6.0. Aproape fiecare joc disponibil la acea vreme rula pe MS-DOS și nu aveam prea multe motive să pornesc Windows, decât să mă uit la interfața grafică. Comparativ cu Windows la acea vreme, DOS era stabil și rapid.

Dar, nu numai RR Martin este interesat de DOS, așa că am decis să arunc o privire mai atentă asupra a ceea ce, dacă este cazul, se petrece astăzi în jurul acestui sistem de operare. După ceva cercetare, am reușit să stabilesc că astăzi DOS este folosit în principal în trei scopuri: oferirea de suport pentru bus-uri clasice de transfer a datelor, jocuri DOS clasice și sisteme încorporate. Acest lucru are mult sens, deoarece fiecare dintre aceste scenarii necesită un software ușor care funcționează aproape de hardware și asta este un lucru pe care DOS îl face foarte bine.

Ca multe alte produse software concepute înainte de Internet, DOS nu a fost conceput ca o platformă capabilă de rețea. Jim Hall, care a dat startul proiectului Free-DOS în urmă cu mai bine de 20 de ani și este încă implicat în el astăzi, a spus: „DOS a fost conceput cu mult înainte de TCP și rețele, și nu are suport pentru rețea în kernelul său.. Aplicațiile își încarcă acum propriul suport și nu avem niciun fel de cale de a ne îndepărta de asta. ” Această afirmație doar limitează ceea ce poate face DOS într-o epocă în care trăim în Firefox sau Chrome și aproape orice altă aplicație care presupune o conexiune la Internet persistentă.

Majoritatea companiilor s-au mutat de mult timp la software pentru Windows, Mac sau Linux. Deși există o mulțime de programe abandonware disponibile pentru DOS, nu există încă o mulțime de programe comerciale încă construite. Unul dintre puținele produse pe care le-am găsit a fost un sistem de farmacie de la National Health Systems care încă funcționează pe DOS. Una dintre cele mai populare aplicații DOS a fost WordPerfect, iar Universitatea Columbia chiar oferă  instrucțiuni despre cum să obții WordPerfect pentru DOS care rulează pe un computer Windows 7 sau Windows 8. Își mai amintește cineva că a accesat codurile de revizuire cu o apăsare a tastei F11? Au fost perioade mai simple.

Deci, în timp ce DOS ar putea să nu fie mort, nu este probabil să fie reînviat pentru o audiență mai mare oricând în curând. Linux a preluat o bună parte din piața încorporată unde DOS obișnuia să joace. Jocurile de astăzi sunt la fel de probabil rulate pe consolă de la Sony sau Microsoft, deoarece sunt un computer desktop.

Dar va exista și un loc pentru DOS în inima păcănitorului. Hall surprinde bine acest lucru atunci când spune: „În general, cred că distracția cu DOS este un factor important”, a spus el. „În acest sens, seamănă și cu un model de tren. Puteți învăța să știți multe despre asta și puteți face multe cu voi înșivă, dar nu l-ați folosi pentru naveta dvs. zilnică. ” Pentru aceia dintre noi care nu așteaptă următoarea tranșă a Game of Thrones, să sperăm că DOS va rămâne mai mult timp.