Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Retro PC - 386DX/486DLC

PGA socket mod na 386 MB KMC-A419-8 ver. 1.0

      30.5.2022 Nkter zkladn desky 386 mly na sob pipjen CPU v proveden SMD. Tato deska se zrovna vyrbla ve 2 variantch, bu s pipjenm CPU nebo s PGA patic. J mam variantu s pipjenm CPU AMD Am386DX-40 a tak m napadlo, e bych si mohl na desku dopjet PGA patici, abych v n mohl testovat i jin CPU. V ppad CPU AMD revize C a novj se to navc zjednoduuje tm, e tyto CPU maj pin FLT# (54), kter ho kompletn odpoj od sbrnice a nen ho tak teba vypajovat z desky. Abych mohl dle poteby pepnat mezi onboard CPU a CPU v patici, pivedl jsem nezapojen pin FLT# na jumper, jeho druh pin jsem zapjel do GND prokovu footprintu neosazen pamti U21. Jeliko m pin FLT# intern pull-up cca 100 kΩ na VCC (amprmetrem jsem namil proud 46 µA do zem) a drtov spoj je pomrn krtk, tak jsem dn extern pull-up nepidval. Pokud bych chtl onboard CPU vyadit trvale, staila by mal kapka cnu na propojen pin FLT# (54) a GND (55) hned vedle.

KMC-A419-8 CPU socket mod with FLT# pin KMC-A419-8 with CPU TX486DLC-40 KMC-A419-8 with CPU TX486DLC-40 KMC-A419-8 with CPU TX486DLC-40 test KMC-A419-8 AMI BIOS setup-chipset features
socket mod TX486DLC-40 TX486DLC-40 TX486DLC-40 AMI BIOS setup

      Dle jsem na desce rozil velikost cache na 256 kB pomoc dalch ty 32kB DIL SRAM ip a vymnil jsem 8kB tag SRAM za 32kB tag SRAM. Metodou pokus-omyl jsem nael sprvnou kombinaci jumper: JP5 = on, on, on; JP5 = 1-2 (pvodn nastaven pro 128 kB cache bylo: JP5 = on, on, off; JP6 = 2-3). UPDATE: nael jsem popis jumper k desce KMC-40A, kter vypad velmi podobn a m i stejn rozmstn jumpery.
      Do desky jsem zkusil osadit CPU TX486DLC-40, kdy u ho BIOS podporuje a otestoval propustnost pamovho subsystmu pomoc DOSovho programu CCT386. Jak je vidt, rychlostn skoky nastvaj dle oekvn na hranici blok 256 kB (L2) a 1 kB (L1). Zajmav je, e 386DX dosahuje pi vyuit cache vce bod ne 486DLC s kaskdou L1 a L2 cach (zejm njak overhead). Pro ladn nastaven L1 cache v CPU poslou program cyrix.exe pro DOS, zde je vchoz nastaven dle BIOSu. Nastaven wait states u RAM nelze v SETUPu mnit, pouze lze ladit nastaven refreshe.
      V programu Norton SysInfo CPU Benchmark dolo oproti 386DX k nrstu z 43,0 na 65,4 bod (o 52%). V programu Norton Diagnostic jsem v System Board Testu zjistil, e na 486DLC neprojde CPU Arithmetic Test, netum z jakho dvodu, ale jinm programm to zejm nevad. Nakonec jsem jet do desky nastrkal 8 MB RAM a FPU IIT 3C87-40, abych mohl spustit Quake. Na hran to ale opravdu nen, ve VGA rozlien 320 x 200 jsem doshl v testu timerefresh 1,067 FPS na 386DX a 1,268 FPS na 486DLC (zrychlen o 19%). Test jsem provedl jet jednou s lep VGA kartou Diamond Stealth Pro S3 Vision 928 (msto low-end Relatek RTG3105), ale na vsledek to nemlo podstatn vliv: 1,295 FPS. Zde je tak screenshot a report z programu SpeedSys s onboard CPU 386DX. Na TX486DLC se mi SpeedSys zaseknul pi detekci CPU ("Processor: Cyrix"). Pak jsem se dozvdl, e dvod je patrn v uritch odlinostech specifickch registr CPU TI TX486DLC a Cyrix Cx486DLC, kter SpeedSys te pes I/O instrukce a na nkterch deskch/chipsetech me toto extenzivn oukvn zpsobit ztuh. Pozdji jsem SpeedSys upravil tak, aby fungoval na 486DLC/SLC, vsledky jsou v tabulce ne.
      UPDATE1: Od Duana jsem dostal matematick koprocesor ULSI Math*Co DX US83C87 40 MHz, s kterm se Quake vrazn zrychlil na 1,690 FPS, po petaktovn ISA na 20 MHz jet o trochu vce na 1,725 FPS. Pozor na nastaven "ISA CLK Speed" v SETUPu! Celou dobu jsem se domnval, e dlika dl frekvenci CPU 40 MHz, ale ona dl pmo vstup krystalovho osciltoru 80 MHz. Lze nastavit hodnoty CLK2/ 2 (40 MHz), 3 (26,7 MHz), 4 (20 MHz), 5 (16 MHz), 6 (13,3 MHz), 8 (10 MHz), 10 (8 MHz) a asynchronnch 7,15 MHz. Kupodivu mi vtina dosud pouitch ISA karet neprotestuje, narazil jsem a u CGA/MDA repliky Graphics Gremlin, kde je strop na 10 MHz.
      UPDATE2: Podailo se mi najt 16k x 4-bit SRAM ip QS8888-20P a tak jsem pro nj na desku dopjel DIL22 patici na pozici U21. V BIOSu v menu "Advanced Chipset Setup" je pak mon nastavit poloku "Write Buffer/Back Cache" na "Back". V benchmarku SysInfo a CheckIt se aktivace Write-Back cache nijak prokazateln neprojevila, v CCT386 byl dokonce patrn pokles bod penosov rychlosti u velkch blok ze 192 na 153 bod, ale v Doomu (doom.exe -timedemo demo1, FPS = 35*gametics/realtics) jsem zaznamenal drobn zrychlen z 9,14 FPS na 9,46 FPS (+3,5%). S VGA S3 Vision 928 jsem se pak dostal ma 11,70 FPS.
      UPDATE3: Nael jsem optimalizovanou verzi engine Doom8088 pro star CPU 8086/286/386 a grafiky MDA/CGA/EGA/VGA vetn textovho reimu. M vak adu omezen, jako e lze hrt pouze Doom 1 epizodu 1, nejsou texturovan stropy a podlahy, b v nim rozlien (max. 240 x 128), zvuk jde pouze pes PC speaker (bez hudby), lze spustit jen -timedemo demo3... S VGA verz v nejvy kvalit (d386myh.exe) jsem doshl 20,72 FPS, u EGA verze ve vy kvalit (d8088eh.exe) jsem doshl 26,68 FPS u barevn VGA verze (d286cga.exe) jsem doshl 44,78 FPS a u textmodov MDA verze (d286mda.exe) jsem doshl 57,01 FPS. Dal trochu optimalizovanou plnohodnotnou verz pro 386 a VGA je DJDOOM zkompilovan v DJGPP, kter je jen o trochu rychlej ne originln Doom - doshl jsem s nm 12,41 FPS.
      UPDATE4: Nael jsem optimalizovanou verzi engine 486Quake pro star CPU 386/486/586 a zkusil ji otestoval na nejlep HW konfiguraci s 16 MB RAM a ISA na 20 MHz. Timerefresh zrychlil na 1,974 FPS a timedemo z 2,5 na 2,7 FPS.
      UPDATE5: Zjistil jsem, e po urit dob bhu, jak se CPU zaheje (top dost, ale ruka na nm v pohod udret jde), tak zane bt nestabiln. Tato nestabilita se typicky projevuje jen v nronjch PMode aplikacch a Windows. Nap. dpmild32.exe z HX DOS Extenderu mi hzel zcela nelogicky chybu "Invalid module handle 0001" a crashnul s Exception 0D. Kdy jsem na vrek keramickho pouzdra CPU posadil masivn hlinkov pasiv, tak bhem pr vtein chyba zmizela a HX DOS Extender zaal normln fungovat. Blb je, e u tchto zkladnch desek se nepotalo s dnm uchycenm chladie do desky i patice a pmo na CPU nic lepit nechci.

CCT386 test Am386DX-40 with 128kB cache CCT386 test TX486DLC-40 with 1kB L1 cache and 256kB L2 cache Norton SysInfo CPU Benchmark of Am386DX-40 with 256kB cache Norton SysInfo CPU Benchmark of TX486DLC-40 with 1kB L1 cache and 256kB L2 cache Norton Diagnostic CPU Arithmetic Test failed on TX486DLC-40
Am386DX-40, 128kB TX486DLC-40, 256kB Am386DX-40, 256kB TX486DLC-40, 256kB NDiag TX486DLC-40


Vroba a test replik 4MB 30-pinovch SIMM

      24.9.2023 Na tto desce jsem narazil na takov podivn chovn pamovch modul. Mm zde osazeno celkem 8 stejnch 1MB SIMM s ipy Goldstar GM71C4400AJ70 (1M x 4, 70 ns) s paritou. MemTest 2.11 i 4.00 mi hlsil asi 300 chyb v bitu 17 v rozsahu 1,3 - 1,8 MB. Nechal jsem v desce jen 4 SIMMy a jejich prohazovnm jsem se snail lokalizovat vadn modul. Nael jsem celkem 3 podezel SIMMy. Ty generovaly chyby, ale jen pokud byly vloeny do patice SIMM8 (u kraje desky). Zbyl SIMMy fungovaly bez chyb i v tto patici. Vhodnm prohzenm SIMM se mi tak podailo doclit, aby dn chyby v MemTestu nebyly.
      Jak jsem dle zjistil, deska nem rda 4 MB SIMMy, sice s nimi nabootuje, ale MemTest hz spoustu chyb u vech SIMM, kter mm a pochybuju, e by byly vechny vadn. Podobn se chovaj i v dal 386 MB, ale v jin desce pro 386SX, kde sta osadit 2 moduly, tak chyby nehz. Patrn to njak souvis s nastavenm refreshe, ale Hidden Refresh u mm zapnut i nejkrat dobu refreshe na 15 µs. Nkter DRAM ipy vyaduj refresh period 16 ms, jin 32 ms a 4M ipy maj typicky 2048 nebo 4096 dk, zatm co refresh ta v chipsetu me podporovat jen 1024 dk. Novj 4M pamov ipy by mly mt svj vnitn ta dk, kter by ml bt pouit, pokud BIOS (chipset) umouje nastavit volbu "CAS before RAS" msto star metody "RAS-only refresh", ale tuto volbu v SETUPu nemm.

      9.10.2024 Zapjel jsem 4 ploky 4MB 30-pin SIMM navrench Alexandrem Grozou, kter jsem si u dve nechal vyrobit v JLCPCB. Osadil jsem je EDO DRAM ipy GD417404BJ-6 vypjenmi z jednoho 16MB 72-pin SIMMu. PCB ver. 1.2 rev. B umouje pomoc pjec propojky osadit jak FPM tak EDO DRAM. Paritn ipy 4M x 1 nemu nikde sehnat a tak jsem je zatm vynechal. BIOS tto desky umouje kontrolu parity vypnout, take to zas tak nevad. Osadil jsem tyto 4 moduly do desky a projel MemTestem - vsledek byl OK bez jedin chyby.

4 new assembled 4MB 30-pin SIMMs, PCB design by Alexandru Groza KMC-A419-8 AMI BIOS setup-chipset features
osazen SIMMy AMI BIOS setup - WB

      9.11.2025 Letos jsem na radioburze v Holicch sehnal jeden 16MB 72-pinov SIMM, kter jsem vyuil jako donor 8 FPM DRAM ip TMS417400DJ-60 pro osazen dalch ty 4MB 30-pinovch SIMM modul od Alexe (bez parity). Pvodn i nov osazen SIMMy jsem projel MemTestem a proly OK, ale kdy jsem do desky KMC-A419-8 osadil vech 8 SIMM, tak u byl systm nestabiln. Hzel nhodn chyby v MemTestu, padal Quake a tuhly Win95. A to i kdy jsem zkusil vypnout ob cache a nastavil nejpomalej asovn. Asi u je to pi FSB na 40 MHz pro chipset pli velk kapacitn zt (tak tm to nebude, kdy bez problm funguje s 8 1MB SIMMy), tak jsem se musel spokojit jen s 16 MB RAM.

      28.1.2026 Byl jsem obdarovn jednm neobvyklm oboustrannm 32MB 72-pinovm SIMM, kter ml 8 paritnch bit msto bnjch 4. Vyuil jsem ho jako donor 16 FPM DRAM ip 4M x 4 TMS417400ADJ-60 a 8 paritnch FPM DRAM ip 4M x 1 GM71C4100CJ-60 pro osazen dalch osmi 30-pinovch SIMM modul od Alexe. S drcem jsem se pak rozdlil a poslal mu zpt 4 zapjen 30-pinov SIMMky.

desoldering memory chips from 32MB / 8-bit parity 72-pin SIMM 8 new assembled 4MB 30-pin SIMMs, PCB design by Alexandru Groza Norton Diagnostic Memory Test OK
odpjen DRAM ipy osaz. SIMMy Norton Diagnostic Test

      8.2.2026 Zkoumal jsem trochu podrobnji jak vypad refresh na zkladn desce Soyo SY-015G. Osciloskopem jsem sledoval prbhy na 2 nejvych adresnch linkch A10, A9 na patici SIMM (se 4MB moduly). Abych eliminoval rzn pseudonhodn prbhy zpsoben tenm dat, zastavil jsem CPU instrukcemi CLI a HLT. Pokud byla v SETUPu vypnut volba "Hidden Refresh", tak byly na A10 i A9 vidt pravideln zk pulsy s periodou 15,6 µs. Pokud jsem zapnul "Hidden Refresh", tak byla linka A10 trvale v log. 0 a pulsy byly vidt jen na A9. DRAM by asi mla pouvat intern refresh ta. Nicmn systm byl nestabiln v obou ppadech. Ne uvdm tabulku alespo nkolika zkladnch desek a chipset, kde byly 4MB SIMM testovny.

MB chipset CPU funknost nastaven
KMC-A419-8 ALi M1419 Am386DX-40 OK, max. 4 moduly Hidden Refresh enabled
Soyo SY-015G Macronix MX83C305/306 Am386DX-40 siln nestabiln nem vliv
Abit AB-FU3 Chips F82C351/355/356 Am386DX-33 siln nestabiln nem vliv
NetMate AOV476KP66E VLSI VL82C106/320/331 i386SX-20 OK, 2 moduly
Octek Panther II 386SX OPTi 82C206/283 i386SX-20 OK, 4 moduly 0/0 R/W wait states
Shuttle HOT-307 OPTi 82C391/392 Am386DX-33 OK, 4 moduly Hidden Refresh enabled
PC Chips M326 SARC RC4018A4 i386DX-33@40 nestabiln
Biostar MB-1333UCG BIOTEQ 82C3491/493 Am386DX-40 OK, 4 moduly
AcerPower V5 SiS 85C310/320/330 386/486DX OK, 4 moduly CAS latency +1


XTIDE BIOS na 386 MB KMC-A419-8 ver. 1.0

      27.11.2022 Jeliko tato 386 podporuje disky pouze v reimu CHS do 504 MB, rozhodl jsem se vyzkouet OpenSource projekt XTIDE Universal BIOS, kter pidv podporu slueb INT 13h s LBA a umouje tak pouvat disky o kapacit a 128 GB. Na XTIDE jsem narazil u nkdy dve, ale myln jsem se domnval, e je to roziujc BIOS jen pro uritou 8-bitovou ISA kartu pro PC-XT, kter jet nem podporu disk v systmovm BIOSu. Avak XTIDE lze s vhodou pouvat i na 286, 386, 486, kter u podporu disk maj, ale obvykle kapacitn dost limitovanou. Ke vzjemn kolizi by dojt nemlo, sta v systmovm BIOSu zakzat vechny disky a XTIDE si je inizializuje pozdji.
      Jednou z monost, jak XTIDE do systmu pidat, je pout starou sovou kartu s patic na BootROM, kter umouje zavdt OS ze st u bezdiskovch stanic. Za tmto elem jsem vythl ze uplku 10Mb ISA sovku D-Link DE-250CT, kter podporuje 8kB EPROMky, to je tak akort. XTIDE lze sthnout u jako pedkompilovan moduly v nkolika variantch. Sthl jsem si soubor ide_386.bin pro platformu 386, kter se vejde do 8 kB Varianta ide_386l.bin je vt a obsahuje navc textov interaktivn menu. Staen image je nutn naped zkonfigurovat pomoc utility xtidecfg.com, kter tak image zarovn na sprvnou velikost a pepot kontroln souet. Ve vchozm nastaven jsem nepoteboval nic mnit. Pak jsem image vyplil do 8kB EPROMky MBM2764 programtorem LabProg-48LV, stril do patice na sovce a po zapnut PC se nic nestalo. Dovtpil jsem se, e nejprve bude teba BootROM njak povolit. Jeliko karta nem dn jumper, ale m sriovou EEPROM, bylo jasn, e se to nastavuje konfiguran utilitou. Tu jsem nael zde, po rozbalen sta spustit soubor setup250.exe a v menu "Set Up Configuration|Remote Boot" nastavit na Enabled, vybrat volnou adresu pro mapovn BootROM (vybral jsem si CC00h) a uloit. Po t u XTIDE normln nabhnul na konci POSTu.

sovka D-Link DE-250CT s BootROM XTIDE XTIDE BIOS booting DOS from 10GB HDD Seagate Medalist ST310232A
D-Link DE-250CT boot s XTIDE z HDD

      XTIDE jsem vyzkouel s nkolika klasickmi disky a SSD s rznmi vsledky. Jako prvn jsem testoval HDD Seagate Medalist ST310232A 10 GB. Bhem detekce se disk 2x rychle po sob vypne a zapne (asi cold reset disku), co se mi pln nelb. Tak pi intenzivnm zpisu v nkterch programech se disk zaal vypnat a zapnat. V benchmarku CheckIt doshl penosov rychlosti 1,57 MB/s a prmrn pstupov doby 8,3 ms. Jako dal jsem vyzkouel o nco novj Seagate Barracudu 7200.7 ST340014A 40 GB, kter se pi detekci ani zpisech nevypn (jen zarachot hlavama a jinak funguje OK.
      Pak jsem zkusil SSD Transcend TS32GPSD330 32 GB MLC s pasivn redukc z IDE 44 pin na IDE 40 pin, ale XTIDE ho nedetekoval. Ani systmov BIOS ho neuml pout s runm nastavenm na omezenu velikost 504 MB. Tento SSD mi funguje v desce Abit BX133-Raid na onboard adii v soutbridge intel PIIX4, ale nedetekuje se v mm retro PC s Pentiem Pro se soutbridgem intel PIIX3. Netum pro, podle manulu by ml SSD podporovat LBA i CHS reim a penosov reimy PIO 0 - 4. Dal SSD Samsung MZMPC032HBCD-000D1 32 GB MLC mSATA v redukci mSATA - IDE 44 pin z AliExpressu dopadl jet he - zasekl PC bhem POSTu tak, e se nelo dostat ani do SETUPu. A to docela zvltnm zpsobem, vimnte si vynechanch psmenek, nkter zas maj poruen font. Docela by m zajmalo, jak je mon obraz takto rozbt, kdy znakov genertor na grafick kart funguje celkem autonomn (fonty jsou uloeny v EPROMce VGA BIOSu). Zkusil jsem vythnout sovku s XTIDE, ale nemlo to dn vliv. Jinak tento SSD funguje sprvn jak v Abit BX133-Raid, tak v Pentiu Pro. Nakonec jsem jet vyzkouel Compact Flash kartu Transcend 16G B Ultra 133x v m redukci CF-IDE a ta fungovala sprvn. V benchmarku CheckIt doshla penosov rychlosti 1,85 MB/s a prmrn pstupov doby 0,3 ms.

damaged font at POST screen when hung with Samsung MZMPC032HBCD-000D1 SSD 2x COM & LPT & GAME & IDE adi s ipem Acer M5105 ISA
zsek v POSTu s SSD IDE adi ISA M5105

      2.12.2022 Na VOGONS fru m uivatel rasz_pl upozornil na to, e mj IDE adi m bufferovanou pouze 1/2 sbrnice a e by to teba mohlo dlat problmy. Natst na desce adie je krom osmice sriovch 33Ω odpor i footprint na poctiv buffer (i dve se takto etily nklady). Rozhodl jsem se tedy odpory vypjet a osadil tam obvod SN74LS245. Bohuel to nepineslo dnou zmnu chovn. A kdy jsem vyhrabal jin IDE adi, tak pestal POST se SSD Samsung tuhnout, avak stejn se oba SSD v XTIDE nedetekovaly.

vypjen sady odpor 33R vmna odpor za buffer SN74LS245 2x COM & LPT & GAME & IDE adi s ipem MX16C452QC ISA
vypjen odpor 33Ω pipjen SN74LS245 jin IDE adi ISA

      Protoe m toto podivn chovn SSD vrt hlavou, vyzkouel jsem je v dalch 2 starch zkladnch deskch. Ve 486 s ISA adiem a AMI BIOSem, kter u m autodetekci disku, tak se oba detekuj s nesprvnou hodnotou cylindr (15 hlav a 63 sektor odpovd) a malou kapacitou, ale nejde z nich bootovat. XTIDE nedetekoval SSD vbec. V NETmate 386SX s VLSI chipsetem a integrovanm IDE adiem se oba SSD detekuj s men kapacitou 1834 MB. SSD Transcend lze pouvat s omezenou kapacitou pes systmov BIOS nebo pes XTIDE s plnou kapacitou. V benchmarku CheckIt doshl penosov rychlosti 693 kB/s a prmrn pstupov doby 1,6 ms. Zatm co SSD Samsung pi detekci sice tak vype kapacitu, ale v zpt chybu "Error initializing hard disk controller 0" a XTIDE ho nedetekuje vbec. Pro plnost jsem jet v desce KMC-A419-8 vyzkouel nskou obousmrnou redukci IDE-SATA s plotnovm SATA diskem Seagate Barracuda 7200.9 ST3160812AS 160 GB, ale chovala se stejn jako mSATA redukce, pi detekci jen krtce blikla LED.

Samsung MZMPC032HBCD-000D1 SSD auto detection and error on NETmate 386SX MB Samsung MZMPC032HBCD-000D1 SSD not detected in XTIDE on NETmate 386SX MB
chyba detekce SSD XTIDE netetekuje SSD

      6.12.2022 Jako dal krok jsem provedl experiment s bootem DOSu z diskety, na n jsem nahrl svou utilitu SMB, kter m.j. um na pmo komunikovat s diskem pomoc ATA pkaz. Naped jsem poslal pkaz IDENTIFY DEVICE a SSD Transcend odpovdl, ale ada poloek byla chybn (nap. nzev a S/N disku) a nesedl kontroln souet. Dle jsem zkusil pest sektor 0 (MBR) metodou CHS i LBA a oba proly bez chyby a peetl jsem z disku njak data. Problm tedy nen v tom, e by SSD neuml pracovat v CHS PIO reimu, co by podle specifikace umt ml.
      V ppad SSD Samsung jsem musel postupovat tak, e jsem naped nabootoval z diskety s odpojenm napjenm SSD (datov kabel jsem nechal pipojen) a a pak ho pipojil. Avak okamit se mi na obrazovce objevily njak nhodn znaky, nicmn systm reagoval dle a mohl jsem aspo poslepu zadvat pkazy. Zajmav je, e kdy jsem spustil Mikromanaera, tak ten svou modrou obrazovku se souborovmi panely vykresloval bezchybn, ale kdy jsem se klvesovou kombinac CTRL+O pepnul na DOSovou obrazovku, tak tam byl pod ten bordel a po pepnut zpt do manaera jsem zas vidl ist panely. Spustil jsem tedy SMB s vstupem pesmrovanm do souboru, ale pkaz IDENTIFY DEVICE neproel. Zrovna jsem sehnal jet dal mSATA SSD AData ASX300S3-64GM-C 64 GB a chov se v redukci stejn jako SSD Samsung. Prost si asi njak tato mSATA redukce s tmto adiem nerozum elektricky. Vymnil jsem tedy IDE adi za ten druh, s kterm to netuhlo a na nm se disk chov stejn jako SSD Transcend, ili IDENTIFY DEVICE projde, ale vrt pokozen data, takt sektory te pes CHS i LBA. Je tak logick, e kdy XTIDE dostane pi detekci pokozenou odpov, tak s diskem dle nepokrauje, chybu je teba hledat nkde na sbrnici. K tomu by se hodil aspo 24-bitov logick analyztor, ale mm pouze 8-bitov USBee AX PRO.

Transcend TS32GPSD330 SSD IDENTIFY DEVICE response Transcend TS32GPSD330 SSD READ LBA SECTOR response Transcend TS32GPSD330 SSD READ CHS SECTOR response Samsung MZMPC032HBCD-000D1 SSD screen garbage immediately after SSD powered on Samsung MZMPC032HBCD-000D1 SSD IDENTIFY DEVICE response
Transcend Identify Transcend read LBA Transcend read CHS Samsung disp. trash Samsung Identify

      8.12.2022 A pozdji jsem si viml, e v petench raw datech ze SSD, jsou vechny MSB nulov. To m dovedlo k tomuto vlknu, kde uivatel Jon Abbott eil stejn problm a cel problm vysvtluje: After some basic diagnosis with a volt meter on the IDE cable and visual inspection of the SATA adapter boards today, I think I have an idea about why the MSB is missing. None of the SATA adapters control the -IOCS16 line, so they're really designed for DMA transfer only where the line is ignored. RiscPC doesn't support DMA, only PIO, so it's expecting -IOCS16 to be pulled low if 16bit data is presented on the bus.
      Promil jsem tedy multimetrem pin 32 na mSATA redukci a SSD Transcend, piem se potvrdilo, e na obou je nezapojen (dle specifikace ATA-2 jet definovan je, ve specifikaci ATA-3 byl zruen). Na IDE adii jsem se domil, e tento signl IOCS16# jde pmo z konektoru disku (pin 32) na ISA sbrnici (pin D2). Te u jen zbv vyeit, jak chybjc signl IOCS16# vygenerovat. Zkusil jsem narychlo pes 2 diody slouit signly CS0# a CS1# (IOCS16# je typu oteven kolektor s pull-upem cca 1 kΩ nkde na MB), ale pak SSD vbec nekomunikoval. Pi pohledu na asovac diagram to nebude pln triviln. Jet se to komplikuje tm, e signl IOCS16# se nesm generovat v reimech PIO 3, 4, DMA a navc se m generovat jen pi pstupu k datovmu registru (base + 0) a nikoliv k ostatnm dicm a status registrm. To bude vyadovat njakou logiku s hradel z celkem 5 signl CS1#, CS0#, DA2, DA1, DA0.

ATA PIO timing diagram IDE registers table
PIO timing IDE registers

      13.12.2022 Dekodr signlu IOCS16# jsem navrhl ze 2 bn dostupnch logickch obvod 7432 (4 x 2-vstupov hradlo OR) a 7403 (4 x 2-vstupov hradlo NAND s vstupy typu oteven kolektor). U invertoru tedy mus bt pull-up odpor, zatm co vstup pracuje do pull-upu na MB. Obvod jsem narychlo poskldal na kontaktnm nepjivm poli a ovil zkladn funknost s LEDkou na vstupu. Pak jsem na zadn stranu desky IDE adie pipjel 8 tenkch drtk s potebnmi signly vetn napjen a zapchal je do nepjka. Zapojen jsem jet ladil na osciloskopu, ale zobrazen nen moc pehledn, nebo na signlu IOCS16# je docela il aktivita ze sbrnice a tak na ostatnch signlech se pod nco dje i kdy s diskem zrovna nekomunikuju. Utilitou SMB jsem ovil sprvn ten sektoru a identifikaci, nyn u tam jsou data sprvn, celch 16 bit. XTIDE BIOS pak SSD Transcend bez problm detekoval a nabootoval z nj. V benchmarku CheckIt doshl penosov rychlosti 1,85 MB/s a prmrn pstupov doby 0,1 ms. Co se te problmu s tuhnutm systmu a rozbitm obrazu pi pipojen SSD pes mSATA v redukci na tomto IDE adii, tak se nic nezmnilo a se signlem IOCS16# to nijak nesouvis. Mon njak problm s napovmi rovnmi nebo timingem. Pedpokldm, e na druhm IDE adii pojedou mSATA SSD bez problm. Plnuju vyrobit mal ploek s SMD hradly, kter by se pipjel zezadu IDE adie pmo na vyuhujc piny IDE konektoru a k tomu odnkud 1 drtkem dovedl 5V napjen. Vstup IOCS16# signlu by el pes jumper, aby ho bylo mono v ppad poteby odpojit.

IOCS16# signal decoder schematic

MB and IDE controller with attached IOCS16# decoder MB and IDE controller with attached IOCS16# decoder-detailed
IOCS16# dekodr IOCS16# dekodr

      Z nostalgie jsem zkusil na SSD Transcend nainstalovat Windows 95 OSR2. Instalan soubory jsem si pedem nakoproval na SSD a spustil instaltor z DOSu: setup.exe /is /ig /IW (pehled pepna setupu je zde). Instalace trvala asi 45 minut. Windows nastartuj za 26 s (mm do okamiku, kdy se ukazatel myi zmn z pespaek na ipku) a jsou docela responzivn. Kdy to srovnm proti mmu prvnmu PC s AMD 486DX4/100 a plotnovm diskem WD 630 MB, tak to bylo docela utrpen za nekonenho hrabn disku. Pi neinnosti je vyten CPU kolem 1% a je alokovno 9,6 MB RAM. Sputn Internet Exploreru trv asi 5 s a s przdnou strnkou se spoteba pamti zv na 13,7 MB.

Windows 95 OSR2 Setup phase 1 Windows 95 OSR2 Setup phase 2 Windows 95 OSR2 Setup phase 3 Windows 95 OSR2 booted, System Monitor
instaltor Windows 95 instaltor Windows 95 instaltor Windows 95 bc Windows 95

      14.2.2023 mi pila vrka plok z JLCPCB a mezi nimi i mal destika dekodru signlu IOCS16#. Osadil jsem 2 SMD vby a pr pasiv a pipjel destiku na zadn stranu IDE adie za vystupujc kousky pin IDE konektoru. Pak u jen zbvalo pipojit napjen 5 V jednm drtkem z nejbliho bodu na IDE adii. Pomoc jumperu lze vstupn signl IOCS16# z dekodru odpojit (pro ppad, e ho pipojen disk generuje sm, tak aby se nepotloukly vstupy hradel). Testoval jsem opt s SSD Transcend a fungovalo to na prvn dobrou.

IOCS16# decoder schematic IOCS16# decoder PCB layout IOCS16# decoder PCB model IOCS16# decoder assembled PCB IOCS16# decoder PCB soldered on backside of IDE controller
IOCS16# dek. schma IOCS16# dek. layout IOCS16# dek. model IOCS16# dek. PCB IDE ctrl. back-side


Pehrvn MP3 na Am386DX a TX486DLC

      15.3.2025 Kdy jsem nkdy skoro ped 30 lety na svm prvnm PC s AMD 486DX4/100 zkouel poprv pehrvat komprimovan hudebn soubory MP3 (128 kbps), tak to PC sotva sthalo s vytenm CPU blzkm 100%. Pouval jsem tehd pehrvae XTC-Play 0.97c pro DOS, WinPlay3 2.3b5 pro Windows 3.11 a WinAMP pro Windows 95. Kooperativn multitasking ve Windows 3.11 byl v tomto ppad vhodou proti preemptivnmu multitaskingu ve Windows 95, kde pi kivm pohybu my dochzelo k vpadkm zvuku. Grabovn audio CD a vroba vlastnch MP3 pomoc enkodru L3Enc pro DOS pak byla zbava na pl dne. Tehdy by m ani nenapadlo, e by se MP3 daly pehrvat na vrazn pomalejch PC.
      Po jedn diskusi o 486 na OldComp.cz jsem zkusil trochu zaptrat, jestli nhodou nkdo nenapsal njakou optimalizovanou MP3 knihovnu pro MCUka, kter by mohla dobe bhat i na starch PC. Nejprve jsem nael knihovnu minimp3, kterou jsem zkusil zkompilovat pro DOS pomoc DJGPP. Testovac program na mm hlavnm PC s Core i7-2600K dekomprimoval na RAMdisku 128kbps MP3 o dlce 250 s za 0,5 s, take teoreticky by stail na realtime pehrvn 10MHz CPU. Avak 386/486 maj dov hor IPC, take v relu byl vsledek tragick - 16s vez te MP3 se na 40MHz TX486DLC na RAMdisku dekdoval 97s, co je asi 25x hor, ne by zvldlo Core i7 na 40 MHz.
      Dle jsem nael projekt Nocash MP3 decoder Martina Kortha z Nmecka. O nm jsou i diskusn vlkna na VOGONS fru a NesDev fru. To u vypadalo docela nadjn, optimalizovan knihovna kompletn pepsan do assembleru a fixed-point integer aritmetiky - nepotebuje tedy (dve relativn pomal) FPU. Jedinou vadou na krse je, e je to Win32 aplikace (konzolov), take vyaduje pro bh alespo Windows 95, kter jsem u pedtm nainstaloval na SSD. Poteboval jsem akort doinstalovat ovladae pro zvukovou kartu - shl jsem do krabice pro Sound Blaster AWE64. Kolega OldCompista to zkouel s rozenm Win32S na Windows 3.11, ale neuspl. Autor m na webu jet ARMovou verzi pro Game Boy Advance.
      Dleit je, e mp3play m celou adu parametr, kter pomhaj vrazn redukovat potebn vpoetn vkon na kor kvality, pokud CPU nesth. Nen tedy teba MP3 soubor pedem znovu pekdovvat do niho bitrate a ni vzorkovac frekvence. Tento dekodr um nkter data nesouc informace o vych frekvencch vynechat u na zatku etzce a tm vrazn et as CPU. Podvejme se na tyto parametry podrobnji: /half a /quarter sniuj vstupn vzorkovac frekvenci na polovinu, resp. tvrtinu, co zrychl dekdovn asi 1,7x resp. 2,3x. Parametr /mono redukuje 2 kanly do 1, opt pin vrazn zrychlen asi 2x. Parametry /fast (men pesnost vpot) a /8bit (ni bitov rozlien vstupu - vt kvantizan um) u pinesou zrychlen jen pr %, nkdy dokonce zpsob i zpomalen - je teba vyzkouet na konkrtnm CPU. Balek tak obsahuje celou adu verz s rznmi typy optimalizac (nkter vhodnj pro 386, jin pro 486), ale v praxi jsem zjistil, e rozdl mezi nejlep (mp3huf5.exe) a nejhor (mp3huf2.exe) variantou je jen 7,7% (386DX), resp. 5,2% (486DLC), take to nem moc vznam. Parametr /test slou pro men max. rychlosti dekdovn bez zvukovho vstupu a zobraz asovou dlku danho MP3 souboru a skuten as, kter byl poteba pro dekdovn.
      Pro testovn jsem pouil skladbu Desmond Doom - The Dissociation Song v MP3 128 kbps, 44 kHz, joint stereo, resp. prvnch 16,013 s (256000 B). Na 486DLC jsem doshl plynul hratelnosti s parametrem /mono nebo /half (testovac as dekdovn: 10,011 s resp. 12,048 s, v pln kvalit pak 19,619 s). Nebyl problm ani s pehrvnm MP3 320 kbps, 44 kHz, stereo, take bitrate zde nem na rychlost zsadn vliv. Oproti tomu se Am386DX na stejn frekvenci ukzala vpoetn vrazn slab, v pln kvalit trvalo dekdovn 37,512 s. S parametrem /mono jsem se dostal na 18,960 s a s /half na 22,399 s, co pod nestailo (ani s pidnm parametr /fast a /8bit), take jsem musel pout oba dohromady (tedy vstup 22 kHz mono) a pak jsem se dostal na 11,427 s, co u stailo na pehrvn s dostatenou rezervou. Avak u 320kbps MP3 to pestalo sthat s obasnmi vpadky a musel jsem kvalitu snit a na /quarter /mono.
      Zde je m video testu na 386DX, v 2. sti videa jsem pepnul zvuk z foku pmo na lineout zvukovky SB AWE64, kter jsem vzorkoval hlavm PC na SB Audigy. Autenticky je slyet i sekn zvuku, pokud zanu po Windows chtt nco dalho nebo jen pepnu z fullscreenu zpt do okna. Pi tom jsem nael jet dal zajmav video njakho Turka, kter pout upraven port mp3play ve vlastnm operanm systmu TRDOS 386 a zbavil se tak zvislosti na Widlch. TRDOS by ml snad podporovat audio vstup na PC speaker, SB16, intel AC'97, HDA a VIA VT823x, take nmt na dal testovn.

      29.3.2025 Pro zajmavost jsem otestoval mp3play na dalch 486 CPU na zkladn desce Octek Hippo 10. Prvnm pekvapenm bylo, e plnokrevn intel 486DX-40 s 8 kB L1 cache doshla znateln horch vsledk ne TX486DLC-40 s 1 kB L1 cache. Druhm, naopak velmi pozitivnm pekvapenm byla Green 486 od UMC U5SX-40 (zde absence FPU nevad), kter naopak pedvedla skvl vkon (dky optimalizaci mikrokdu - vymu IPC), co s parametrem /fast umonilo dekdovat MP3 v pln kvalit. Mnohem ve taktovan Am5x86 to u pak dv s prstem v nose a i DOSov pehrva MPXPlay na n pehrv 320kbps MP3 s vytenm CPU jen kolem 65%.
      Dle se mi podailo mp3play rozbhnout v DOSu pod HX DOS Extenderem na SB AWE64, ale overhead emulace zvukovho subsystmu Win32 API byl takov, e i na Am5x86 se zvuk nepjemn sekal a ujdla rychlost pehrvn (nehled na pouit parametry redukce kvality), e se to nedalo poslouchat. Pekvapiv na 486DLC v desce KMC-A419-8 se zvuk mp3play pod HX sekal mnohem mn, ale rychlost pehrvn s parametrem /quarter ujdla taky. Zejm zle i na chipsetu nebo byla na Hippo 10 njak anomlie. V reimu /test bylo dekdovn pod HX o pr % rychlej ne pod Windows 95, ale pi relnm pehrvn na zvukovce to nem vznam.
      Zkusil jsem t nainstalovat rozen Win32S 1.30c do Windows 3.11, ale nepodailo se mi v nich mp3play spustit (ani dnou jinou Win32 konzolovou aplikaci), take tudy tak cesta nevede. Zkouel jsem i spustit Windows 95, kter jsem nainstaloval na SSD na 386 desce KMC-A419-8, ale z njakho neznmho dvodu bely na desce Octek Hippo 10 velmi nestabiln, obas spadly do modr hned pi startu, jindy pr vtein po sputn pehrvn mp3play provedl neplatnou operaci a neml jsem zrovna chu instalovat Widle znovu.

      7.4.2025 Vyzkouel jsem jet mp3play portovan pro ve zmnn TRDOS 386 2.0 na 486DLC v desce KMC-A419-8. Sthl jsem njak bootovac image diskety a pidal do nj pomoc WinImage mp3play0.prg a testovac mp3 soubor. Image jsem nabootoval z DOSu pomoc GRUB4DOS. TRDOS um pracovat s FS FAT12/16/32, ale neum spoutt DOSov COM/EXE programy - pouv vlastn formt *.PRG (autor pro nj peportoval adu DOSovch program). Nsledn nastal problm s Plug & Pray zvukovkou SB AWE64, jeliko se mi ji neda na nePNP desce zprovoznit jen s pomoc DOSovch driver. Vdy musm naped spustit Windows 95, kter provedou Plug & Play konfiguraci zvukovky a pak restartovat do DOSu, kde spustm DOSov driver nebo Unisound a pak zvukovka funguje pod DOSem normln, i kdy provedu mkk reset. Ale jakmile vypnu a zapnu napjen, tak se konfigurace ztrat a DOSov driver ani Unisound zvukovku nenajde. Bohuel kdy spustm TRDOS po t, co ped tm bely Windows 95 (a u z image nebo diskety), tak po stisku jakkoliv klvesy dostanu njak exception v kernelu a nsleduje restart. A kdy Windows 95 pedtm nespustm (neprobhne Plug & Play konfigurace), tak TRDOS zvukovku nenajde. Zkusil jsem tedy jet jinou nePNP zvukovku (PicoGUS s SB 2.0 FW). V DOSu ve fungovalo jen s nastavenou promnnou prosted BLASTER. TRDOS zvukovku tak nael, ale dn program nehrl, vdy se to pi sputn seklo. Take jsem mohl vyzkouet mp3play jen v reimu /test a bel podobn rychle jako pod HX DOS Extenderem).

params / CPU: Am386DX-40 TX486DLC-40 i486DX-40 U5SX-40 Am5x86-160 kvalita
- 37,512 s 19,619 s 28,921 s 19,602 s 7,806 s 44 kHz, 16-bit, stereo
/fast 36,178 s 20,217 s 27,663 s 13,891 s 7,471 s 44 kHz, 16-bit, stereo
/half 22,399 s 12,048 s 16,627 s 11,447 s 4,638 s 22 kHz, 16-bit, stereo
/mono 18,960 s 10,011 s 14,565 s 9,888 s 3,940 s 44 kHz, 16-bit, mono
/mono /half 11,427 s 6,211 s 8,421 s 5,815 s 2,344 s 22 kHz, 16-bit, mono
/quarter 16,224 s 8,584 s 11,517 s 7,828 s 3,342 s 11 kHz, 16-bit, stereo
rychlost dekdovn MP3 128 kbps, 44 kHz, joint stereo, 16,013 s


Hackovn utility SpeedSys

      13.4.2025 Trochu m tvalo, e utilita SpeedSys neb na mm CPU Tx486DLC a nemu tak pidat benchmark do tabulky a porovnat prbhy graf propustnosti cache v reimu WT/WB. Z VOGONS fra u vm, e problm je zpsoben tenm neexistujcho specifickho konfiguranho registru. Napadlo m tedy najt odpovdajc kd a zkusit ho vyadit. To ale nebylo tak snadn, protoe binrka SpeedSysu je bu ifrovan nebo zabalen neznmm EXE packerem, take jsem ji nemohl disassemblovat. Zkusil jsem ji rozbalit pomoc UNP, ale nespn.
      Jedinou monost tedy bylo pout debugger. U jsem docela hodn dlouho na x86 nic nedebugoval. Jeliko SpeedSys vyuv PMode a nem rd, kdy je CPU ve V86 mode (EMM386/QEMM386/JEMM386 a nkter debuggery), rozhodl jsem se vyzkouet Japhethv DebugXv kter zvld RM i PM. Je to celkem jednoduch textov debugger vychzejc z utility debug, kter byla u soust MS-DOSu. Jeho zajmavou funkc je, e um nastavit a 4 hardwarov breakpointy na adresy kdu nebo 4 I/O watchpointy. Pomoc nich lze pokrt rozsah a 16 I/O port. Syntaxe je ponkud obskurn, watchpoint se zad pkazem nap. bp 0:80 2, kde 80 je adresa I/O portu 80h a 2 je typ pstupu (2: 8-bitov port, 12: 16-bitov port, 32: 32-bitov port). Dal hek je v tom, e aby watchpointy fungovaly, mus bt nastaven bit 3 - DE (Debugging Extensions) v control registru CR4, co za vs DebugXv neudl, ale muste si ho nastavit sami. Jeliko s CR registry na x86 nejde pracovat pmo, je nutn provst ten, modifikaci, zpis; nap. tmto kdem: MOV EAX,CR4; OR EAX,8; MOV CR4,EAX. Dal, ponkud neikovnou vlastnost (danou HW) je, e se bc program zastav a po vykonn IN/OUT instrukce. Bohuel jsem nsledn zjistil, e 486DLC nem control registr CR4 a nelze tak I/O watchpointy pot.
      Nezbylo tedy, ne program run odkrokovat. K tomu se hod jin rezidentn debugger, kter lze vyvolat njako klvesou. Zkusil jsem naped Borland TD386, ale ten ani nechtl binrku nast. Pak jsem si vzpomnl na CandyManv Dark Debugger, kter m docela hezk TUI a adu funkc, vetn breakpoint na I/O, ale ty t nefungovaly. Musel jsem tedy spustit SpeedSys, ve vhodn okamik stisknout klvesu Pause/Break a pak krokovat. Kdy jsem doel na njak call (pomoc F8 - step over), po kterm nsledoval ztuh, poznamenal jsem si adresu a pt do nj vstoupil (pomoc F7 - trace into) a opt pokraoval k dalm callm, kde to vytuhlo. Nakonec se mi podailo dojt a do vnitn rutiny, kter obsahovala hledan instrukce MOV AL,0FEh; OUT 22h,AL; IN AL,23h, tedy ten konfiguranho registru FEh (port 22h je slo registru a port 23h) je pro data. Podle datasheetu vak na CPU Tx/Cx486DLC/SLC dn takov registr nen, platn jsou pouze hodnoty C0h - CFh (ty CPU dekduje intern a negeneruje sbrnicov I/O cykly). Pokud tedy CPU zaznamen pstup k registru mimo tento rozsah, tak se vygeneruje bn I/O cyklus na sbrnici a pokud zrovna port 22h pouv i chipset, tak ho neoekvanm zpisem rozjebe. Kdy jsem v Dark Debuggeru tyto instrukce peskoil, tak SpeedSys bel dl, ale v omezenm reimu, protoe nem rd V86.
      Zbvalo tedy njak vymyslet, jak by se dal patchnout kd SpeedSysu v pamti runtime. Mezi tm se ale na BTTR fru ozval Robert Riebisch se skvlou zprvou, e kdysi v roce 2006 zskal od autora Vladimira Afanasieva zdrojov kdy posledn verze 4.79 beta 4, kter mu dovolil zveejnit pod GPL na GitHubu. J jsem mu zkusil te taky napsat, ale celkem nepekvapiv se mi mail vrtil nedoruen. Tm se situace znan zjednoduila. Jak jsem zjistil, SpeedSys je ist prce v assembleru a celkem bez problm se mi ho podailo zkompilovat pomoc TASM 4.1. Autor pouil oblben EXE packer UPX, kter ale zobfuskoval pepsnm hlaviky svou utilitou speedin1.exe, kterou jsem z kompilanho procesu vynechal. Jako dirty hotfix jsem zakomentoval zmnn I/O instrukce a nov zkompilovan binrka je ke staen zde. Chtl bych to ale poeit ist njakou detekc 486DLC/SLC a podle toho kd rozvtvit, jestli se konfiguran registr bude nebo nebude st. Na dal podobnou chybu v SpeedSysu jsem narazil na mm primrnm PC s Core i7-2600K, kdy zatuhne pi ten MSR. To bych tak rd njak opravil. Vsledky benchmark jsem pidal do tabulky ne.

SpeedSys code stepping in Dark Debugger
Dark Debugger


Oprava Paradise VGA WD90C00-JK ISA

      16.9.2022 Od Duana jsem dostal na hran smsici rznch starch ISA/PCI karet. Mezi nimi tak byla nefunkn grafick ISA karta Paradise VGA ipem WD90C00-JK a 256 kB VRAM. Kdy jsem ji zastril do slotu, tak deska vyppvala stejn chybov kd, jako kdyby v n dn VGA karta nebyla. Zkusil jsem naped pomoc programtoru LabProg-48LV pest video BIOS ze dvou 16kB OTP EPROMek a obsah 2 programovatelnch obvod dekodr PAL - bez problm. Dle jsem zmil vstupy vech 4 krystalovch osciltor a namil odpovdajc frekvence s amplitudou cca 2,5 - 4,5 Vpp. Tak jsem osciloskopem ouchal piny grafickho ipu, kde jsem vidl aktivitu na adresov a datov sbrnici, ale dnou aktivitu smrem k VRAM (MA0-8, MD0-15) a do RAMDACu (VID0-7), co indikovalo, e ip je asi mrtv.
      Jeliko jsem ml v uplku vypjen grafick ip PVGA1A-JK, kter by ml bt velmi podobn a podle datasheetu je pinov kompatabiln (nkde jsem etl, e ho Western Digital pi koupi Paradise Systems patrn jen pejmenoval), tak jsem se kart jet rozhodl dt anci. Naivn jsem si myslel, e jen pepjm tento PLCC100 ip a bude to fungovat, ale tak jednoduch to nebylo. Po vmn jsem stle dostval stejn ppn, jako e VGA nen ptomna. uchal jsem znovu osciloskopem a nyn u byla vidt aktivita na sbrnici VRAM, ale do RAMDACu nelo pod nic, ani dn HSYNC, VSYNC pulsy. VRAM jsem zkusil vymnit, ale dn zmna. Pojal jsem podezen, e chyba bude asi v njakm z hradel 74xx, dokonce i vechny odpory jsem pemil. Vypjel jsem pomoc vyhvan odsvaky celkem 11 hradel 74xx a kad obvod otestoval, ale dn vadn jsem nenael, take jsem je zas vrtil zpt. Kupodivu se ale chovn karty zmnilo - deska ani neppla a obraz nikde, no m dl lep. Tak jsem zastril do MB i POST kartu a vidl, e se AMI BIOS pod to v njak smyce, kde se rychle stdalo pr POST kd. Kdy jsem vyjmul jeden z ip video BIOSu, tak k zaseknut nedochzelo. Napadlo m tedy, e asi stvajc video BIOS nebude se starm grafickm ipem kompatabiln. Podailo se mi najt image video BIOSu pro PVGA1A-JK a tak jsem vzal 2 EPROMky Am27128A, vymazal je UV lampou, naprogramoval, stril do karty a ejhle, ono to bootuje s obrazem :) Projel jsem testy vech video md v Norton Diagnosticu a CheckItu a v podku. Kartu by lo doosadit na 512 kB VRAM, ale UniVBE ji nepodporuje, take vy rozlien by vyuily jen DOSov programy pmo podporujc PVGA.

Paradise VGA WD90C00-JK ISA Paradise VGA WD90C00-JK ISA bez 74xx hradel
po vmn WD90C00-JK PVGA bez 74xx hradel

      27.8.2023 Dnes jsem zjistil, e mi dve opraven Paradise VGA zhadn umela. Ve ve zmnn 386 desce s AMI BIOSem se POST zastav s ernou obrazovkou na kdu 2Ch, co znamen video ROM check. Prvn, co m napadlo, e jsem pedtm nedokonale naprogramoval EPROMky a dolo k zapomenut njakho bitu. Avak po peten v programtoru a porovnn s image jsem dn rozdly nenael. Takt jsem zkontroloval obsah programovatelnch obvod PAL a tak beze zmny, tak netum, co se posralo...

      31.8.2023 Nael jsem vyhozenou 16-bitovou ISA VGA kartu s ipem OAK OTI067 a 512 kB VRAM. Karta byla bez bracketu, ale jinak vypadala nepokozen. Po vloen do 386 MB se tvila, jakoby tam dn VGA karta nebyla. Zkusil jsem tedy pest obsah OTP EPROM 27C256 (plastov ip bez oknka) a programtor hlsil, e nesouhlas ten pi VCCmin a VCCmax. Kdy jsem si obsah prohldl, na prvn pohled bylo vidt pokozen mnoha Byt (nap. v textovch etzcch). Identifikoval jsem verzi video BIOSu jako 1.04 s timestampem Thu May 02 14:37:12 1991. Na tomto webu jsem nael novj verzi video BIOSu 1.06 s timestampem Mon Mar 02 14:23:12 1992, kterou jsem naplil do przdn EPROMky, vloil do karty a karta oila. Jak je vidt, tak nkter ipy u po 30 letech zanaj mt sklerzu a je tedy teba je vas zazlohovat.


Oprava 386 zkladn desky Soyo SY-015G

      10.3.2023 Od Duana jsem dle dostal na hran 2 neznm zkladn desky s onboard SMD CPU Am386DX-40 a chipsetem Macronix MX83C305FC & MX83C306FC i s origo paprovm manulem, kter jsem nsledn naskenoval a s BIOS dumpem poslal na Retroweb. Patrn se jedn o desku Soyo SY-015G, akort ta moje nem osazenou PGA patici na CPU, co by ale nebyl problm dopjet, stejn jako jsem to udlal u desky ve. Ob desky mly vytekl NiCd baterky, kter sten pokodily mdn spoje i prokovy na PCB. Jedna deska vbec nePOSTuje (jen kmit osciltor), druh deska nabhla, ale hlsila chybu keyboard controlleru a klvesnice vbec nedostvala napjen. Odpjel jsem tedy 5-kolkov DIN konektor klvesnice a nael u kraje 1 seranou napjec cestu, kter vedla pes tlumivku na napjen 5 V a propojil jsem ji drtkem. Dle jsem nael 2 vyhnil prokovy, kter njak souvisely s funkc KBC, nebo po jejich propojen drtkem chyba zmizela a klvesnice zala normln fungovat. Desku jsem projel zkladnmi diagnostickmi testy v Norton Diagnosticu a neobjevila se dn chyba.
      V SETUPu m pekvapilo, e jsem tam vidl volbu "External cache: enabled", pitom na desce dn SRAM ipy nejsou. Naped jsem to povaoval za bug, ale kdy jsem spustil CCT386, tak je evidentn vidt, e podle skokov zmny rychlosti m nkde schovanch 8 kB cache. A to zejm pmo v tom chipsetu, jak se o tom zmiuj na Retrowebu. Tak to jen takov zajmavost, e takov chytr chipsety existuj, jen jsem o nich dosud nevdl...

leaked NiCd accu on Soyo SY-015G 386DX MB with Macronix MX83C305 & MX83C306 chipset Soyo SY-015G 386DX MB with Macronix MX83C305 & MX83C306 chipset PCB vias and traces repair on Soyo SY-015G 386DX MB with Macronix MX83C305 + MX83C306 chipset CCT386 test Am386DX-40 with 8kB internal cache of MX83C30x chipset
vytekl NiCd aku MB 386DX oprava PCB 8 kB internal cache

      29.1.2026 Pustil jsem se do opravy druh desky, kter vbec nePOSTovala. Opravil jsem pr seranch cestiek v okol baterky, kvli emu jsem musel odpjet i DIN konektor klvesnice, ale beze zmny. Vythl jsem osciloskop a ouchal signly na sbrnicch. Na pinech EPROMky s BIOSem, ISA, i CPU bylo celkem ivo. Napadlo m msto BIOSu strit do patice testovac EPROMku s jednoduchm progrmkem, kter v nekonen smyce posl hodnotu 13h na I/O port 80h:


0:  B0 13        MOV    AL, 0x13 ; D7=1, 0
2:  E6 80        OUT    0x80, AL ; D7=1, 1
4:  EB FA        JMPS   0        ; D7=1, 1

Avak na POST kart se zobrazila hodnota 93h. Take je nco patn s datovou linkou D7. Nhodou zrovna vechny pouit x86 opkdy maj bit7 = 1, take bh kdu nebyl naruen, ale zmrvila se jen data v pmm operandu instrukce MOV. Na osciloskopu jsem zachytil prbh na pinu D7 EPROMky, kde byla v jednom tecm cyklu vidt log. 0 a v ostatnch log. 1, take program se z pamti te sprvn, ale na ISA sbrnici jsem v zpisovm cyklu IOWR# vidl D7 na log. 1. Data se tedy mou zmrvit nkde po cest mezi chipsetem a CPU.


oscilogram D7 a OE# na pinech EPROM oscilogram IORW# na pinu ISA a OE# na pinu EPROM oscilogram D7 a M/IO# na pinech CPU RE blokov schma MB Soyo SY-015G
EPROM D7 & OE# ISA IORW# & OE# CPU D7 & M/IO# blokov schma

      Zaal sem tedy sledovat, kam vede D7 od EPROMky a doel k obousmrnmu budii sbrnice U5 - 74F245. Jeho brna B vede pmo na datov linky D7:0 ISA sbrnice (D7 je na ISA slotu na pinu A2 v prav ad) a brna A vede na D7:0 EPROMky, RTC, KBC a chipsetu MX83C305FC. Od nj vak nevedou dn datov linky do CPU, ty vedou pouze do druhho chipsetu MX83C306FC. Mezi sebou maj oba chipsety njak proprietrn propojen.
      Mezitm jsem dostal balek s dalm PC rotem, kde se nachzela zrovna jedna vrakov deska Kaimei KM-386MX s podobnm chipsetem MX83C305AFC a MX83C306AFC. Zkusil jsem z n chipset vypjet horkovzduchem a pehodit na opravovanou desku (a pro sirot jistotu jet vymnil i buffer 74F245), ale dn zmna. Musel jsem se tedy hloubji ponoit do hledan spoj a postupn tak vzniklo sten blokov schma a netlist rznch komponent. K tomu jsem zpotku hodn vyuval tu druhou oholenou desku, kde se bez vb cestiky lpe sledovaly.

      30.1.2026 Nael jsem tam i jednu odlinost, e na KM-386MX nebyl osazen oddlova sbrnic, ale oba chipsety sdlely stejn datov linky D7:0 pipojen rovnou na ISA sloty. Tm jsem zjistil, e D7 m vst na pin 146 chipsetu MX83C306FC, ale na moj desce byla cesta nkde peruen. Vysledoval jsem, e vede pod ipem na doln stran pod SIMM sloty, kde zas prokovem vyleze nahoru a vede na prokov pinu A2 ISA slotu 9, jeho kraj je docela blzko baterce. Okem nebylo nic moc vidt, ale patrn u zakonen cestiky do horn ploky prokovu to bylo peran. Okrbal jsem tedy nepjivou masku z kousku cestiky co nejble ISA slotu a pipjel tam tenk drtek se zahnutm hkem kolem pinu A2. Po zapnut jsem konen dostal sprvn kd 13h a po vmn za pvodn BIOS zaala deska normln startovat...
      Jene jsem se radoval pedasn, protoe pro zmnu zas nefungovala klvesnice. A to docela zvltnm zpsobem. U vtiny desek vyblit baterka prost seere cestiky CLK a DATA od DIN konektoru klvesnice ke KBC, kter jsou nejvc na rn. Ty ale v mm ppad byly v podku a konily v KBC na pinech 1 - TEST0 a 39 - TEST1. Navc BIOS nepsal klasicky chybu "Keyboard error", ale poznal, jestli tam klvesnice je pipojen nebo nen. Asi 2 s po HW resetu na klvesnici probliknou LEDky, take KBC provede spn reset klvesnice. Zkusil jsem KBC prohodit s jinm z desky KMC-A419-8 a s nm to taky nefungovalo, zatm co KBC z tto desky v druh fungoval normln.
      Pojal jsem podezen, jestli za to neme njak odlinost v revizi chipsetu FC vs AFC. Napadlo m zkusit naplit do EPROMky BIOS z jin desky, kter mla AFC verzi chipsetu. Na Retrowebu jsem nael celou adu desek s tmto chipsetem a vyzkouel MR BIOS pro desku Octek JAGUAR V 386, kter m na fotkch uivatel FC i AFC chipsety. Nicmn se to s MR BIOSem chovalo stejn, akort e ten po ohlen chyby nastaven CMOS pi dalm startu u chybu nepe a pokrauje v bootu, take s pipojenm adiem a XTIDE jsem byl schopen nabootovat do DOSu. Do autoexec.bat jsem pidal sputn utility na zobrazovn scankd klvesnice, ale ten po stisku klvesy nic nezobrazil.

      31.1.2026 Zaal jsem tedy podrobnji zkoumat zapojen KBC (MCU 8042) a porovnal ho se zapojenm na stran 111 v IBM PC AT Technical Reference manulu a prakticky se neli. Jeliko m KBC pouze jednosmrn porty, zatm co klvesnice pouv 2 obousmrn signly CLK a DATA s otevenm kolektorem, tak mus KBC na kad signl pout 2 porty - jeden vstupn a jeden vstupn. Navc protoe nem vstup s otevenm kolektorem, tak mus pout extern invertor typu 74LS05. Vydloubnul jsem KBC z patice a otestoval invertorovou logiku stimulac vstup a mil vstupy: v log. 1 bylo vstupn napt cca 4,9 V a v log. 0 cca 0,35 V, co je v norm.

keyboard to KBC partial schematic

      1.2.2026 Zkontroloval jsem osciloskopem piny osciltoru X1, X2, kde jsem namil u obou desek frekvenci 7,14 MHz. Dle jsem sledoval prbhy signl na pinech CLK a DATA a zjistil, e po HW resetu desky tam normln probhne sekvence resetu klvesnice (hodiny generuje vdy klvesnice a KBC posl data).

KBC oscillator pins X1, X2 @SY-015G KBC keyboard reset sequence @SY-015G KBC keyboard reset sequence @KMC-A419-8
KBC oscillator X1, X2 KBD reset @SY-015G KBD reset @KMC-A419-8

      Patrn rozdl je viditeln pi vysln scankdu z klvesnice do KBC, kter klvesnice pole pouze pi prvnm stisku a pak u nic. Zatm co na zdrav desce se signl CLK vrt po chvilce zpt do log. 1, tak zde zstane CLK viset trvale v log. 0. A to z vle KBC, kter dr vstup P26 na log. 1, take invertor jen dl svou prci. Kdy jsem tedy vyerpal vechny monosti na stran KBC smrem ke klvesnici, napadlo m, e problm mus bt na druh stran od KBC smrem k chipsetu. KBC by toti ml generovat signl peruen IRQ1 na portu P24 (pin 35) pro chipset a ten by ml vytenm scankdu peruen potvrdit. Avak pokud nikdo z KBC scankdy neodebr, tak ten na to reaguje prv tmto zpsobem, m zmrn brn klvesnici poslat dal data, kter se mezitm hromad v jejm internm bufferu. Take vink byl jasn a nedalo u moc prce dohledat dal uranou cestiku k pinu pin 123 chipsetu MX83C306FC pobl baterky, kter na to pln nevypadala. Po peklemovn drtkem klvesnice oila a deska zala konen normln fungovat...

CLK & DATA problem @SY-015G CLK & DATA OK @KMC-A419-8 CLK & DATA problem-zoomed and decoded @SY-015G
KBD scancode @SY-015G KBD scanc. @KMC-A419-8 KBD scancode-decoded

      Nakonec jsem jet na desce udlal PGA socket mod jako na desce zmnn ve. Na spodn stran po onboard CPU se nachz pjec propojka od pinu 54 (FLT#), kterou lze jednodue propojit se zem. J jsem tam pipjel mal SMD pepna, abych mohl CPU mnit dle poteby. Provedl jsem pr test s onboard CPU Am386DX-40 a PGA CPU TX486DLC-40. Jak jsem zhy zjistil, deska nezvld rychleji taktovanou ISA sbrnici na 20 MHz - okamit se zanou objevovat na obrazovce nhodn znaky v textovm mdu, take jsem musel o krok ne na 13 MHz. Dle deska nezvld stabiln bet se 4 x 4MB SIMM moduly, pestoe manul tvrd, e zvldne osadit a 32 MB RAM. Zkouel jsem nkolik rznch modul i ty nov vyroben a nebyl jsem schopen dokonit ani timedemo v Quake, Win95 spadly hned po startu a i SpeedSys a Norton Diagnostic hlsily chybu pamti. A to i s nejpomalejm asovnm RAM a ISA frekvenci na default. Nkterm chipsetm prost tyhle 4MB RAMky nemakujou. Take jsem testoval s 8 x 1MB SIMM moduly. Tak jsem zjistil, e s originlnm AMI BIOSem systm b o nco rychleji ne s MR BIOSem z Octek JAGUARu V (nap. v Doomu byl rozdl 7,21 vs 7,06 FPS a v Quake 1,9 vs 1,8 FPS).


Jak se mnou vyjebal vypna na redukci od ATX zdroje

      23.9.2023 Pro testovn starho PC rotu pouvm micro ATX zdroj Fortron FSP200-50SNV (asi tetinov velikosti proti bnmu ATX zdroji). Abych nemusel mt po ruce jet star velk AT zdroj, vyrobil jsem si kabelovou redukci z ATX konektoru na AT. Na pin PS_ON# (14) jsem si pidlal mal vypna pro ppad, e bych redukci pouil s jinm ATX zdrojem, kter nem vlastn vypna, ale tento Fortron vypna m, take pouvm spe ten. V posledn dob se mi stvalo, e testovan AT desky, kter jsem tmto zdrojem napjel, tak se po njak dob nhodn restartovaly. Nkdy krtce po bootu, jindy teba za pl hodiny. Pojal jsem podezen, e ve zdroji asi vyschly elyty a njak proudov pika pak shod napt pli dol. Kouknul jsem na vstupy zdroje osciloskopem, ale nic podezelho jsem tam nevidl, jen klasick zvlnn-jehly. I tak jsem zdroj rozebral a promil pr elyt, ale ty vstupn byly celkem OK. Pouze 2 mrav elyty, kter se nachzely v blzkosti evidentn hodn topcch odpor 22 kΩ (byl pod nima zhndl plok), byly vysuen, ale na funkci nemly moc vliv. Vypeen odpory jsem vymnil za vt. Nicmn i tak problm petrvval. Pak m teprv napadlo shnout na ten mal vypna a u pi letmm dotyku dolo k restartu. patn kontakt zpsobil tak krtk peruen na signlu PS_ON#, e se zdroj viditeln nestihl vypnout (vtrek pod bel), ale zejm stihl shodit signl PWR_OK, co vyvolalo restart. Prkrt jsem vypna procvakal a umoudil se. No, takov pinoen a takov kravina...


Jak se mnou vyjebala klvesnice

      5.11.2025 Ped vce ne 17 lety jsem si koupil multimediln PS/2 klvesnici KME KM-3801 a byl jsem s n spokojen, a do te. Z nieho nic mi zaly problikvat vechny 3 stavov LEDky a postupn pestala reagovat. Po odpojen a pipojen k PC na chvilku fungovala a pak se zas rozblikala. Vypadalo to jako mikov ztrta napjen. Zkusil jsem zakvedlat PS/2 konektorem, ale nic. Kdy jsem pipojil jinou klvesnici, tak fungovala normln. Napadlo m, e se mon pevkla la v kabelu v mst, kde vychz z tla klvesnice (nco podobnho se mi u stalo u vrtaky). Klvesnici jsem tedy rozebral, utpnul asi 15 cm kablku a pipjel znovu k destice elektroniky. Sloil jsem ji, pipojil k PC, fungovala asi minutu a zase se rozblikala. Znovu jsem ji rozebral a zkusil pipjet 2 drtky pro napjen pmo k destice elektroniky a pustil tam 5 V z lab. zdroje. Po chvilce zas zaala blikat, take pvodn kabel za to opravdu nemohl. Na destice je akort njak ip v podob "plivance", 3 LED, odprek a 10µF elyt. I ten jsem pro sichr vypjel, zmil a vymnil (byl jet celkem OK), ale nepomohlo to. Kdy jsem destiku zkouel velijak prohbat, tak na to nijak nereagovala. Nebylo u dl co opravovat, tak jsem se s n rozlouil a odnesl j do rotu...


prava Sound Blaster AWE32 CT3900

      2.11.2022 V jednom vlknu vnovanm bugm zvukovch karet Sound Blaster na VOGONS fru jsem se doetl, e nvrhi z Creative dlali i takov prasrny, jako e nechvali plovouc vstupy nevyuitch operanch zesilova. To znamen, e takov OZ pracuje bez zptn vazby s obrovskm zeslenm a je tak nchyln k zesilovn um naindukovanch do vstup. I kdy je vstup nezapojen, tak to cvi s proudovm odbrem a ruen se po napjen pen i na sousedn OZ zpracovvajc signl.
      Vzpomnl jsem si, e v jednom starm PC mm Sound Blaster AWE32 CT3900 a tak jsem si ho podrobn prohldnul. Na PCB jsem nael ti 4-nsobn OZ: 2 bipolrn MC3403 - U26 a U27, kter byly pln vyuit 1 JFETov TL074C - U31, z nj byly vyuit jen OZ 1 a 4, zatm co 2 a 3 byly ponechny pln nezapojen. Zapojil jsem tedy nevyuit OZ jako sledovae (invertujc vstup spojen s vstupem) s uzemnnm vstupem (napjen je symetrick ±5 V). Zem jsem nael na sousednch pouitch OZ na invertujcch vstupech, take to stailo propojit drtkem ob jeden pin. Na novjch PCI Sound Blasterech se u vyskytovaly jen dvojit OZ, kter byly pln vyuit, na AWE64 jsem tak dn plovouc nenael.

Sound Blaster AWE32 CT3900 floating OpAmp fix


Upgrade wavetable ROM na zvukov kart ESS AudioDrive ES1869F

      13.2.2024 Na VOGONS fru jsem nael zajmav vlkno uivatele Paar z ech, pojednvajc o vmn originln 1MB wavetable ROMky ES981P za 2MB FlashROM s kvalitnj bankou sampl na zvukovch kartch ESS. Naprost vtina karet je osazen 1MB verz nebo pln bez ROMky, ale podailo se mu zskat originln 2MB ROM ES982A (vyskytuje se nap. v nkterch noteboocch Compaq) a dumpnul jej obsah pomoc programtoru TL866. Obsah dumpu pak lze nahrt do vhodn pinov kompatabiln 2MB FlashROM s 16-bitovou datovou sbrnic na 5 V, nap. MX29F1610.
      Jeliko jsem zrovna pi oivovn svho projektu LPC2ISA jednu takovou starou zvukovku vyhrabal, rozhodl jsem se mod tak vyzkouet. Objednal jsem 2 FlashROM ipy z AliExpressu za 75 K a k tomu pihodil redukci se ZIF patic SOP44 na DIP44 za 105 K. Image jsem do pamt nahrl programtorem LabProg-48LV. Pi tom jsem zjistil, e jeden ip je mrtv, nepeetl ani flash ID, data etl sam wordy FF00h a neel vymazat. Tak jsem ho u ana reklamoval a dostal full refund, za kter jsem objednal dal 2 ipy. Ty pro zmnu pily nesmazan, jet s pvodnm obsahem njakho neznmho FW, ale aspo fungovaly, budou se jet hodit. Mm nkde zabordelenou dal zvukovku ESS AudioDrive ES1868 s 1MB ROM a line-out vstupem, tak j pak taky nkdy modnu. Pi vmn ROMky za flashku je teba mt na pamti, e pvodn ROM m nezapojen piny 1 a 44, kter maj u flashky vznam WE# a WP#. Tyto vstupy by se nemly nechvat plovouc, take jsem je pipojil drtkem na nejbli 5V napjen (na fotce jet nen). Otestoval jsem to pak v Doomu, hraje to pkn...

ESS AudioDrive ES1869F ISA soundcard FlashROM MX29F1610MC and ZIF SOP44-DIL44 adapter FlashROM MX29F1610MC programming in LabProg-48LV
ESS AudioDrive ISA Flash MX29F1610 a redukce programovn FlashROM

the original 1MB ROM ES981P chip PCB after desoldering the original ROM chip replacement by 2MB FlashROM MX29F1610MC, withou WE#/WP# wires yet
ROM ES981P odpjen ROM pipjen FlashROM


Rozen pamti RAM na zvukov kart Sound Blaster AWE64 Value

      22.12.2025 Kdy jsem naposled v JLCPCB objednval velkou vrku plok i pro dal leny OldComp.cz fra, vzal jsem si pro sebe i jednu destiku modulu SIMMConn2, kterou navrhl uivatel Blaster. Ta je vylepenm pvodn verze SIMMConn (alternativa k originlnmu drahmu modulu od Creative) od Xu Wanga a umouje na zvukovou kartu osadit 72-pinov SIMM o kapacit 4 - 32 MB 60ns EDO/FPM RAM. Na verzi SB AWE64 Value je v zkladu jen 0,5 MB RAM, kter se pi pouit roziujcho modulu deaktivuje. Z vt pamti pak benefituje E-MU8000 DSP Advanced Wave Effect Synthesizer pro kvalitnj zvuk i 3D efekty a DirectSound akceleraci. Do RAM je mon nahrvat hotov i vlastn vytvoen soundfonty.
      Na modulu nen mnoho soustek, ale je zde pouita programovateln logika typu PAL/GAL16V8, kterou je teba naprogramovat odpovdajcm JEDEC souborem dle verze zvukovky (Value/Gold). J jsem pouil uplkov obvod GAL16V8D5LJ od Lattice, kter jsem naprogramoval programtorem LabProg-48LV s vlastnorun vyrobenou PLCC-DIL redukc. Jeliko mm pouze SB AWE64 Value verzi, nedval jsem ani GALa do patice a rovnou ho pipjel na desku. Jinak mi v uplkovch zsobch chybl pouze buffer SN74LVC1G126DBVR, na kter jsem musel pokat z Mousera. Pro SIMMy se 2 pamovmi ipy by asi nebyl problm buffer nahradit drtkem. Patici pro 72-pin SIMM jsem pouil leatou, vypjenou z njakho starho notebooku, kter vak neumouje osazen oboustrannho SIMMu (ipy na doln stran by kolidovaly s GALem). To mi nijak nevad, potal jsem s osazenm jednostrannho 16MB SIMMu s 8 EDO RAM ipy Siemens HYB5117405BJ-60, kter jsou na seznamu ovench ip (vt kapacity mm stejn nacpan v rznch motherboardech). Pro konkrtn SIMM je teba nastavit konfiguraci jumper JP1 a JP2, v mm ppad jsem nastavil 1-2, 2-3 (2k refresh).

adaptr SIMMConn2-top adaptr SIMMConn2 s 16MB SIMM na SB AWE64
SIMMConn2 adapter-top SIMMConn2 on SB AWE64

      12.1.2026 Osazen modul jsem nasunul na pin headery SB AWE64 a nejprve v DOSu otestoval pam pomoc Creative Diagnostic Utility 4.05 (diagnose.exe). Asi po pl minut skonil test spn, viz ne. Pak jsem zkusil do RAM uploadnout njak soundfont a otestovat zvuk. Bohuel jak jsem zjistil, tak SB AWE64 nepodporuje standardn HW MIDI (MPU-401) wavetable syntzu na portu 330h (jako teba zvukov karty ESS186x) a nem ani header na WaveBlaster, ale pouv k tomu softwarov emultor (TSR) AWEUTIL 1.36, kter meme za bhu loadnout pkazem aweutil.com /EM:GM (emulace dle standardu General MIDI) a unloadnout pkazem aweutil.com /U. Pozor, nekombinovat v autoexec.bat na jednom dku s parametrem /S, kter tam automaticky pid instaltor SB ovlada, ale v ppad poteby zapsat na 2 samostatn dky: aweutil.com /S a aweutil.com /EM:GM. Pi tom se nate automaticky do RAM soubor SFBANK\synthgm.sbk (cestu nelze specifikovat run), co je soundfont formtu v1.
      DOSov AWEUTIL bohuel neum natat novj a bnj soundfonty ve formtu v2 (*.sf2). Dodvan soubor synthgm.sbk spolu s ovladai m jen 35 kB, protoe mapuje General MIDI nstroje na samply v onboard 1MB wavetable ROM. Hledal jsem njak lep soundfont v1, ale nael pouze neoficiln 2MB verzi finegm.sbk (je teba ho pejmenovat na synthgm.sbk, originln soubor si pedem zazlohujte). UPDATE: nael jsem velkou sbrku soundfont, kde jsou i nkter ve formtu v1, nap. 8MB fantagm2.sbk. Natn vtch sounfont chvli trv (8MB se nate za cca 20 s). Soundfonty formtu v2 lze do v1 konvertovat pomoc komernho programu Awave Studio (ke staen je i 30-denn trial verze), avak je teba mt na pamti, e formt v1 nepodporuje tolik fur jako v2 a zkonvertovan soundfont bude patrn znt jinak.
      Dle jsem zjistil, e emulace pomoc AWEUTIL TSR funguje pouze v realmode DOSovch programech. AWEUTIL aktivuje na SB AWE32/64 hardwarov asistovan pesmrovn I/O port, kdy pi pstupu na MIDI port 330h karta generuje NMI (pokud je nasazen jumper MFBEN), kter AWEUTIL v realmode zachytv a patrn po njak transformaci pedv na porty nativn wavetable syntzy. Nevyuv tedy monosti zachytvn I/O port v reimu V86. Problm je, e vtina DOSovch extender zachyt NMI v PMode a neped ho do realmode tak jako ostatn peruen. Navc na nkterch novjch zkladnch deskch nemus NMI fungovat sprvn. Kdy jsem zkusil pustit nap. PMode Doom, tak zatuhnul pi pehrn prvn noty. Vyzkouel jsem tak alespo realmode DOSov pehrva DOSMid 0.9.8. Rozdl s 2MB soundfontem nebyl moc znt, ale s 8MB u ano. Natst ada PMode DOSovch her podporuje nativn SB AWE32/64 wavetable syntzu na portu 620h, jene ta zas pouv fixn onboard 1MB wavetable ROM a nikoliv nahran soundfont v RAM. Jet zbv monost pipojit extern MIDI synteztor pes MPU-401 UART gameportu...
      Nakonec problm PMode her pomohl vyeit upraven extender DOS32AWE 1.9 (pvodn DOS/32A 9.1.2) od uivatele georgel z VOGONS fra, kter pesmrovv NMI z PMode do realmode. Sta spustit hru pkazem dos32awe hra.exe. Z njakho dvodu georgel vloil do kdu uml omezen zabraujc sputn DOS32AWE ve V86 mdu (od verze 1.3, ale ty star zmizely) a nezveejnil sv upraven zdrojky. Ty dal na GitHub a jin uivatel na zklad reverse engineeringu jeho binrky a pvodnch zdrojk DOS/32A. J jsem jen upravil jeden podmnn skok, abych vypnul kontrolu V86 mdu. Moje upraven verze je zde. M zkuenost je takov, e pi pouit JEMM386 se mi jednou stalo, e v Doomu II krtce po startu pi prvnm vstelu se najednou hra a zvuk zaal siln sekat a pi optovnm sputn to cel vytuhlo. Pi dalm sputn zas bel Doom nkolik minut bez problm. V ppad pouit standardnho himem.sys a UMBPCI mi zatm k dnmu zatuhnut nedolo. Tak jsem zjistil, e podobn efekt jako DOS32AWE m sputn CWSDPMI serveru v rezidentnm reimu (s parametrem -r, ale to dvalo dost nestabiln vsledky. Nkdy Doom zatuhnul hned pi startu, jindy cca do 10s po zahjen hry. Tot jsem vyzkouel i s HDPMI32, ale s nm mi Doom vytuhnul vdy pi startu ("HU_Init: Setting up heads up display"). Take doporuuji pouvat HIMEM a DOS32AWE.
      Pod Windows je situace lep. Pomoc AWE Control Panel utility (awecp32.exe) je mon do RAM nahrvat i soundfonty v2. Pouil jsem 8mbgmsfx.sf2 z CD ovlada k SB Live! Tam byl rozdl pi pehrvn MIDI soubor znateln. Windows ovladae t podporuj emulaci General MIDI s vyuitm soundfontu v RAM v reimu V86, take DOSov hry, kter se s Windows snesou, je mon si vychutnat s lepm zvukem. J jsem na testovacm retro PC zatm jet nenainstaloval Windows 98, take jsem testoval jen pod Windows NT 4.0 a ty se s DOSovma PMode hrama moc nekamard.

Creative Diagnostic Utility 4.05-Do you want to test the DRAM? Creative Diagnostic Utility 4.05-Testing 16777216 bytes DRAM on audio card Creative Diagnostic Utility 4.05-DRAM on audio card tested successfully
DRAM test-start DRAM test-progress DRAM test-done


Vroba repliky CGA/MDA Graphics Gremlin pro 8b sbrnici ISA

      18.5.2021 Objevil tuto malou zajmavou OpenHW/SW grafickou kartiku Graphics Gremlin od TubeTime do 8-bitovho ISA slotu, kter emuluje CGA a MDA s vstupem na bn VGA monitor (vedle klasickho MDA TTL D-SUB 9 a analogovho CINCHe), neb star MDA a CGA CRT monitory se u blb shn. Karta je zaloen na FPGA Lattice ICE40HX4K-TQ144 a lze do nj potenciln nahrt i emulace jinch grafickch karet. Ty stvajc FPGA designy jsou napsan ve Verilogu a bohuel se zd, e autor projekt opustil a nic novho u nevzniklo...
      30.11.2021 Kdy jsem objednval vrku plok v JLCPCB, tak jsem si k tomu pihodil i tuhle destiku. Bohuel je zrovna ipov krize a FPGA nen zrovna k mn, ale Martin 8-bity u jednu osadil a rozchodil, tak si mete post u nj. UPDATE: Yeo Kheng Meng vylepil zapojen Graphics Gremlina o pevodnk TFP410 na HDMI vstup.
      6.7.2024 Tak u jsem poshnl potebn soustky z Mouseru a kartu osadil. U zbv jen nalejt bitstream pro FPGA do SPI FlashROM...
      24.1.2026 Konen jsem se dokopal k naprogramovn bitstreamu do 1MB SPI FlashROM SST26VF080A. Jak jsem zjistil, tak mj program SPIPGM tuto pam jet neznal, take jsem nejprve pidal podporu do nov verze 2.36. Nsledn jsem zjistil, e komunikace s pamt na kart pes LPT port je njak nespolehliv, i kdy mm FPGA dren jumperem v resetu, take by do toho nemlo kecat. Jeliko nemm zmnn adaptr s FT2232H, nezbylo mi ne pam odpjet a naprogramovat samostatn, pak u nebyl problm. Image soubor isavideo.binm ve skutenosti obsahuje 3 rzn bitstreamy (emulace MDA s vstupem na MDA, emulace MDA s vstupem na VGA a emulace CGA s vstupem VGA a CGA CINCH), kter se vybraj pomoc DIP switche 3 a 4.
      Karta generuje videosignl hned po zapnut napjen i bez pipojen na ISA sbrnici (zobraz nhodn data z VRAM). Bohuel pi prvnm zapnut v desce KMC-A419-8 jsem dostal njak rozbit obraz, kde 2/4 resp. 4/8 obrazovky zobrazovaly nhodn neinicializovan data. Zkouel jsem to i v jinm MB a dn zmna. Vypad to na njak problm kolem adresy A10. Koukal jsem na to naped pod lupou, ale nic podezelho nenael. V prci jsem na to koukal pod zvtovkem jak husa do lahve a pod nic moc evidentnho, sem tam njak smtka a jaksi asi cnov upinka pod nohama FPGA v doln ad pin smrem k ISA slotu. Radi jsem cel FPGA znovu nafluxoval a peliv pepjel...

Graphics Gremlin-top Graphics Gremlin-display problem due to bad soldering-CGA POST screen Graphics Gremlin-display problem due to bad soldering-CGA mode 4 (320x200x2bpp) Graphics Gremlin-display problem due to bad soldering-MDA text momde
Graphics Gremlin CGA POST screen CGA mode 4 MDA text mode

      26.1.2026 Na druh pokus u karta POSTovala OK, ale pi bootu zas zala zobrazovat nhodn znaky rzn po cel ploe obrazovky. Jak jsem zjistil, tak moc nezvld petaktovanou ISA sbrnici (co jsem ani netuil) a bezchybn mi fungovala max. na 10 MHz. Tam mi test VRAM v Norton Diagnostics proel bez problmu. Dle jsem vyzkouel nap. CGA verzi Doom8088, kter se dal hrt krsn plynule nebo dualhead setup s Borland TurboDebuggerem, kde pi sputn s parametrem -do lze ovldat debugger na sekundrnm MDA displeji a ladn program b na primrnm VGA displeji (karty pouvaj jin adresy VRAM a I/O port, take nekoliduj). Kdysi jsem o thle zajmav monosti etl, ale a te jsem si to mohl reln vyzkouet.

Graphics Gremlin-Norton Diagnostics VRAM test passed Graphics Gremlin-CGA Doom8088
NDiags VRAM test OK CGA Doom8088


Vroba repliky grafick karty S3 765VL pro sbrnici VLB

      25.4.2024 Jeliko mm i pr historickch MB se sbrnic VLB (VESA Local Bus), ale VLBovch grafickch karet jen po mlu (a dnes u se blb shn), zaujaly m na VOGONS fru projekty replik VLB grafik od uivatele Madao - 968VL a 765VL. Jedn se vce mn o reverse engineering zapojen grafickch karet SPEA Mercury P64V s ipem S3 Vision 968 (86C968) a STB PowerGraph 64V VL s ipem S3 Trio64V+ (86C765). Na kartu 765VL by ml jt teoreticky bez dalch prav osadit i S3 ViRGE (86C325), kter jako posledn z S3 ip jet podporuje duln sbrnice VLB a PCI, avak bohuel kvli sdlen funkci nkterch pin (RAS1# je dostupn jen na PCI) me VLB verze obsluhovat pouze 2 MB msto 4 MB videopamti, co je pro 3D akceleraci mlo a navc by se musely upravit i ovladae, kter funguj jen na PCI verzi.

      27.5.2024 Madao publikoval na GitHubu vrobn podklady (GERBERy a BOM) pro kartu 765VL. A se mi sejdou dal PCB designy k vrob, polu to hromadn do JLCPCB.

      27.6.2024 Dnes mi dorazila vrka plok z JLCPCB a mezi nimi je t 5 desek na repliku grafick karty S3 765VL ve zlacen povrchov prav (ENIG). O vechny 4 zbyl desky se pihlsili dal zjemci, kterm je te budu rozeslat (u jsou pry).

ploky z JLCPCB 765VL PCB-top 765VL PCB-bottom
ploky z JLCPCB 765VL PCB-top 765VL PCB-bottom

      1.7.2024 Vyhrabal jsem ze zsob jednu noname S3 Trio64V+ PCI kartu se 2 MB RAM a opatrn sfouknul horkovzduchem pamti a S3 GPU. Pro 765VL jsou pouiteln jen 2 DRAM ipy 256 k x 16 ve velkm SOJ40 pouzdru. Pstupov doba by mla bt 50 ns nebo krat. Dal dv 35ns pamti jsem nael vypjen v zsobch. Obas se daj najt teba ve starch CD/DVD mechanikch, kde slou jako data buffer. Nsledn jsem se pustil do osazovn. Pi pjen pamt v SOJ pouzdru je ponkud nepjemn, e footprint m dost krtk pady, kter z pod pouzdra moc nevyuhuj ven. Dle jsem v BOMu narazil na oek v podob hradel 74F260 (dost obskurn dvojit 5-vstupov NOR hradlo) a 74AHC1G32 (mrav 2-vstupov hradlo v SC70-5), kter nemm zrovna v uplku a nejsou ani na TME. Budu muset pokat na njakou objednvku u Mousera.

noname donor S3 Trio64V+ PCI card desoldered DRAM and GPU
drcovsk PCI karta vypjen DRAM a GPU

      20.8.2024 Sehnal jsem zbyl soustky a doosadil desku. Pak u zbvalo jen naplit video BIOS do EPROM a otestovat. Vyplil jsem si oba dostupn image s 0 a 1 VLB wait state. Ten s 0 WS by ml bt o nco rychlej, ale m njak mouchy a nechod na vech chipsetech, ten s 1 WS je o nco pomalej a kompatabilnj. Karta nabhla na prvn zapnut a testoval jsem ji zatm v zkladn desce Abit AB-AH4 s chipsetem SIS 85C471 a CPU intel 486DX-33. Mezi chovnm 0 WS 1 WS ROMek jsem nael adu rozdl. 0 WS ROM je skuten o nco rychlej (7 MB/s banked mode, 11 MB/s LFB mode), VESA mdy (testoval jsem svou utilitou VESATEST) b s refresh rate 60 Hz, ve VESA mode listu jsou nesprvn reportovan i videomdy, kter jsou dostupn jen s 4 MB VRAM (pokud se takov md nastav, tak zern obrazovka) a pi nvratu z VESA mdu do textovho mdu jsem dostal taky ernou obrazovku nebo hlen monitoru, e je mimo synchronizaci. 1 WS ROM je o nco pomalej (5 MB/s banked mode, 10 MB/s LFB mode), VESA mdy b s refresh rate 75 Hz, ve VESA mode listu jsou sprvn reportovan jen videomdy, kter jsou dostupn s 2 MB VRAM a pepnut z VESA mdu zpt do textovho mdu probhne korektn.
      Oba video BIOSy podporuj pouze VBE 1.2. Pro rozen na VBE 2.0 (LFB reimy) je teba pout patchnutou utilitu S3VBE20 3.18, kter se nesna peprogramovat bzovou adresu LFB. Jak jsem tak zjistil, na mm LCD monitoru NEC 2190UXp nelze pout rozlien 1600 x 1200, protoe Trio64V+ ho zvld jen v prokldanm (interlaced) reimu, co vtin LCD nechut. Na monitoru bliklo na zlomek vteiny varovn "out of sync" s njakou nesmysln vysokou frekvenc a obrazovka hned zernala. Take nejvy pouiteln rozlien je v mm ppad 1280 x 1024 / 8bpp. V rychlosti jsem jet otestoval vkon v Doomu (doom.exe -timedemo demo1) a proti ISA VGA OAK OTI067 jsem zaznamenal zrychlen z 9,31 na 14,24 FPS (o 53%). Pedpokldm, e s rychlejm CPU bude rozdl markantnj. A skuten, pi testu na ST 486DX4V100 jsem dostal 15,25 FPS s ISA VGA a 29,79 FPS s VLB VGA (rozdl o 95%).

assembled 765VL-top assembled 765VL-bottom
osazen 765VL-top osazen 765VL-bottom

      15.10.2024 Vyzkouel jsem tuto VGA v dal VLB desce Alaris Leopard 486SLC2 rev. C, kter je specifick tm, e pouv CPU IBM 486SLC2 (50G7261) s 16-bitovou extern sbrnic jako 386SX. VLBus byla primrn navren jako 32-bitov a grafick ip S3 Trio64V+ 16-bitov penosy nepodporuje, take jsem dostal na POST obrazovce jen rozsypan aj. Jin VLB VGA s ipem Cirrus Logic CL-GD5429-86QC tam fungovala sprvn, ale jej benefit proti obyejn ISA VGA dky zk sbrnici nebyl v Doomu pli patrn: 11,80 FPS vs 9,38 FPS. S FPU intel 387SX-25 dala v Quake pouze 1,4 FPS. Zde je screenshot a report z programu SpeedSys.

      1.4.2025 Zkusil jsem nainstalovat ovladae STB PowerGraph 64V+ pro Windows 3.11, ale kdy jsem spustil jeho setup.exe, dostal jsem chybovou hlku "STB Vision Installation Utility: The current installation cannot be completed due to an unrecoverable error" a nazdar. Zkusil jsem i pekoprovat instalan soubory na disketu a spustit z n, ale nepomohlo to. Take jsem nainstaloval jen hol ovladae z DOSu sputnm programu setup.exe z adrese Windows a zadnm cesty k souboru oemsetup.inf v adresi s ovladaem na disku. Ten se nainstaloval bez problm a Windows se spustily ve vybranm rozlien.


Oprava 486 zkladn desky DataExpert EXP4044 s VLBusem

      24.8.2024 Jeden znm mi na radioburzu v Holicch donesl 2 vraky zkladnch desek 386SX a 486, kter ml pipraven na soustky. Pro m byla zajmavj 486 deska DataExpert EXP4044 ver 1.0 a chipsetem OPTi 82C895 a 82C602 se sbrnic VLB / ISA, tak jsem se ji pokusil oivit. Deska byla nejen klasicky poleptan od louhu z vyteklho NiCd akumultoru, ale jet j nkdo utrhl horn st ZIF patice na CPU. Po proppn spoj jsem zjistil, e byl peruen akort 1 prokov na cest od konektoru klvesnice, tedy nic fatlnho.
      S patic na CPU to bylo ponkud hor, musel jsem ji opatrn vypjet horkovzduchem a pak odst cn z jednotlivch prokov. Natst jsem ml v zsob nhradn patici vypjenou z njak jin desky, kterou jsem tam pipjel, osadil CPU a mohl to zapnout. Deska vak vbec nePOSTovala. Zkontroloval jsem napt a hodiny CPU, kter mrn hl. Dle jsem zkontroloval obsah EPROMky s BIOSem, ten se zdl bt v podku. Jet jsem tam zkusil zasunout testovac EPROMku s jednoduchm programem, kter v nekonen smyce posl kd na port 80h, ale taky nic.
      Ouchal jsem adresov, datov a dic piny EPROMky. Zjistil jsem, e adresy a data se mn, ale CS# a OE# jsou trvale neaktivn (log. 1). Doppal jsem se, e signl CS# vede na pin 49 - ROMCS#/KBDCS# velkho ipu OPTi 82C895 a OE# na pin 68 - MEMR# malho ipu OPTi 82C602. Pedpokldm, e chipset tyto signly generuje na zklad signl W/R#, M/IO# D/C# procesoru, tak jsem je tak proppal i s dalmi piny okolo. Pobl jsem pak nael odpojen adresn pin A3, kter vedl na peruen prokov pod patic. Nevm, jestli u byl vadn ped tm nebo jsem ho pokodil teplem pi odpjen patice.
      Po jeho oprav kouskem tenkho drtku zaala deska POSTovat, ale jen krtce. bhem vteiny jsem zahldl kdy: C1h, BEh, C6h. Dle seznamu POST kd k Award BIOSu 4.50G m kd C6h vznam "cache presence test" a ml by asi nsledovat kd 08h - test a inicializace dolnch 64 kB pamti. Jeden znm mi doporuil pout alternativn MR BIOS pro stejn chipset, kter by ml mt detailnj POST a beep kdy. Od nj jsem dostal POST kdy: 02h, 03h, 09h, 0Ah, kde posledn znamen "base 64K pattern test failure", take njak chyba pamti. Zkouel jsem 8MB SIMM modul vyjmout a dostal stejnou sekvenci kd. Kdy jsem ho chtl zasunout do druh SIMM patice, viml jsem si, e m 2 ohnut prka, kter se dotkala sousednch! A pli jsem se soustedil na poleptan cestiky PCB, e jsem si pokozen SIMM patice nevimnul. Prka jsem opatrn narovnal pinzetou a voal, deska nabhla. Zasunul jsem do n VGA S3 765VL, VLB IDE adi, pipojil HDD a proel nastaven SETUPu (RAM a cache jsem nastavil na 0 WS). BIOS nem problm ani s 20GB LBA diskem (Abit AB-AH4 zvld jen 8 GB, vce pak pes XTIDE). Nabotooval jsem do DOSu a spustil pr test a her. VESATEST reportoval stejnou propustnost RAM - VGA jako s Abitkou, i vsledky v Doomu byly prakticky stejn.
      Dle m napadlo, e kdy je na desce pichystan footprint na CPU v pouzdru QFP208 (onboard CPU lze deaktivovat jumpery JP11, JP12, JP25), mohl bych tam zkusit pipjet top speed prock AMD Am486DX5-133V16BHC alias Am5x86-P75, kter se d na AliExpressu koupit vrazn levnji ne tyt keramick PGA CPU. Snad mi nepijde njak fake. Tak pak musm poeit VRM, protoe na m desce nen osazen a z fotek se mi nikde nepodailo identifikovat pouit LDO i tranzistory Q1, Q1A, Q1B, ale to se d poeit njakm jinm LDO z uplku. Hor me bt to, e deska nepodporuje L1 Write-Back cache a odpovdajc piny CPU, kter byly definovan a pozdji na 486DX4, zde nejsou nikam zapojen. Tak snad CPU pob aspo v reimu Write-Through (s o nco nim vkonem). Vce info zde.

DataExpert EXP4044 ver 1.0 with desoldered CPU socket damaged and replacement ZIF Socket 3 DataExpert EXP4044 ver 1.0 with replaced CPU socket
EXP4044 ver 1.0 pokozen a nhradn socket po vmn socketu

      26.9.2024 A te jsem si viml, j kokot star, e ten footprint na desce nen SQFP208, ale pouze PQFP196 pro 486SX. Pinouty jsou totln odlin, take tam objednan CPU nepjde pipjet :( To m kapnek nasralo, ale pokusil jsem se tu negativn energii petavit do vytvoen interposeru, kter by umonil tento SMD CPU strit do PGA patice. sten jsem na to zrecykloval u dve vytvoen interposer pro Pentium MMX Tillamook. Dky tomu, e 486 m vrazn mn noiek jak Pentium a jsou v hrubm rastru, tak to lo naroutovat vrazn rychleji a vystail jsem se standardnmi prokovy 0,3/0,6 mm. Deska je 4-vrstv, kde vnitn vrstvy tvo souvisl VCC a GND planes. Od doby, co JLCPCB nabz vrobu 2 i 4-vrstvch destiek za 2$, tak stejn nem cenu vrstvama etit a souvisl nzkoimpedann zem je vhodn pro stabilitu, s VCC plane navc tvo vestavn kondenztor. Dky tomu, e piny 486 jsou v regulrn mce 100 mil, tak jako PGA noiky pjde pout bn pinov lita. Akort vnitn adu budu muset ucvakat a pipjet jako SMD.

SQFP208 to PGA168 interposer PCB layout SQFP208 to PGA168 interposer PCB 3D model
PCB layout 3D model

      30.9.2024 Dnes jsem PCB layout dothnul do konce a poslal ho do vroby k JLCPCB. Ml jsem na vrobu pouze tento jeden PCB design, tak jsem byl zvdav, kam se dostanu s cenou potovnho a skuten je to o dost levnj ne u vce desek. Vybral jsem dodac slubu "Global Standard Direct Line" a zaplatil: 2$ za vrobu PCB, 1,55$ za dopravu a 0,75$ za poplatky a cla, celkem tedy 4,30$.
      Dle jsem se pdil po pouitm typu neosazenho LDO pro CPU VRM. Proppal jsem zapojen vech 3 footprint:
Q1: 1 - ADJ, 2 - Vin, 3 - Vout; k tomu jsem nenael dn odpovdajc LDO, vechny 3-pinov maj pin 2 jako vstup a pin 3 jako vstup.
Q1B: 1 - Vin, 2 - Vout, 3 - GND, 4 - ADJ; podle tipu od Tome by to mohl bt Sharp PQ30RV2 a el by t pout KA278R33, kter m na pinu 4 msto feedbacku ovldn ON/OFF#.
Q1A: 1, 2 - Vin, 3 - GND, 4 - Vout, 5 - ADJ; el by pout SPX29302. Zptnovazebn odpory dlie jsem namil 274 Ω mezi Vout a ADJ, 430 Ω mezi ADJ a GND. Pozdji jsem nael zapojen VRM na jednom ruskm fru, kde nkdo spn pouil LDO LM1084-ADJ na pozici Q1A.

      2.10.2024 Z uplku jsem vyhrabal ve zmnn LDO KA278R33 a pipjel ho na desku na pozici Q1B. Pin 4 (ON/OFF#) jsem ohnul a pipjel ho k pinu 1 (Vin). Penastavil jsem jumpery pro 3,3V CPU (BTW na PQFP196 footprint jde stle 5 V napjen) a vyzkouel desku s CPU ST 486DX4V100. BIOS ho detekoval jako Cx486DX-S na 66 MHz, ale bel sprvn na 100 MHz. S VGA S3 765VL jsem otestoval rychlost v Doomu, kter se proti intel 486DX-33 zvila vce ne dvojnsobn na 29,79 FPS a v Quake jsem dostal 8,0 FPS v 320 x 200, resp. 3,5 FPS ve VESA 2.0 LFB mdu 640 x 480. Zde je screenshot a report z programu SpeedSys.
      Tak mi dnes z AliExpressu dorazil CPU. I pes to, e byl dobe zabalen v plastovm rmu, tak ml na jedn stran vechny piny ohnut do boku. Nsledn jsem na anovi uhdal slevu 49 K a piny srovnal pinzetou. Pro kontrolu, jestli ip nen pln dummy/fake, jsem proppal VCC a GND piny podle datasheetu a pekvapilo m, e 4 z 8 rohovch GND pin, se tv jako nezapojen a takt jsem nael 1 i 2 VCC piny u kraje, kter byly v luftu. Jinak dal piny tak njak odpovdaj datasheetu. Tak jsem zvdav, jestli bude CPU funkn a co je vlastn uvnit za kemk...

Am5x86-P75 SQFP208 CPU from AliExpress-bent pins on one side Am5x86-P75 SQFP208 CPU from AliExpress
Am5x86-P75 CPU Am5x86-P75 CPU

      21.10.2024 V ptek mi pily ploky na interposer z JLCPCB. Koukm, e jsem zapomnl zamaskovat prokovy, ale to nevad. Dnes jsem koupil v GME oboustrann pinov lity na PGA noiky a veer se pustil do osazovn. Jeliko by vnitn ada pin kolidovala s pady SMD pouzdra CPU nahoe, musel jsem vnitn adu pin udlat jako SMD na spodn stran. SMD piny jsem jednodue vyrobil utpnm kratch a tlustch kolk pinov lity. Konce jsem pocnoval a po pelivm zarovnn na plok je pipjel tenm hrotem mikropjky z boku. Stedn a vnj adu pin jsem zapjel klasicky jako THD. Aby piny sedly v rastru, zastril jsem je ped zapjenm do precizn patice PGA168. Nakonec jsem na horn stranu destiky pipjel SMD CPU a 10 blokovacch kondk 100 nF, 10 µF a 22 µF o celkov kapacit cca 70 µF.


SQFP208 to PGA168 interposer PCB top, bottom assembled SQFP208 to PGA168 interposer PCB top assembled SQFP208 to PGA168 interposer PCB bottom assembled SQFP208 to PGA168 interposer bottop pins side view
PCB top, bottom PCB top PCB bottom PCB pins-side

      Po vloen mho vtvoru do patice na MB a zapnut jsem napjat sledoval displej POST karty, ale nic se neobjevilo. Zaal jsem mit piny a zjistil, e nkter vis v luft, co bylo zpsobeno patn pipjenma noikama TQFP pouzdra CPU. Po dkladnm propjen a kontrole pod zvtovkem u deska nabhla a BIOS CPU detekoval jako "80486DX/2" na 100 MHz (pi nastavenm nsobii 3x). Po pejumperovn nsobie na 2x CPU nabhl na 133 MHz. Samotn CPU ani moc neheje, zato LDO se pi zti rozpl tak, e na nm neudrm prst, co mi patrn zpsobuje nestabilitu, e se obas systm nhodn restartoval i zatuhnul. Tak budu muset vymyslet njakou alternativn sponu na uchycen chladie k oukm ZIF patice, protoe CPU s interposerem je vy ne bn PGA CPU.
      Tento CPU u podporuje instrukci CPUID, take ho detekuje i mj program CPUID. S VGA S3 765VL jsem otestoval rychlost v Doomu, kter se proti intel 486DX-33 zvila zhruba 3x na 40,91 FPS a v Quake jsem dostal 12,0 FPS v 320 x 200, resp. 5,3 FPS ve VESA 2.0 LFB mdu 640 x 480. Zde je screenshot a report z programu SpeedSys.

DataExpert EXP4044 ver 1.0 with Am5x86-P75 CPU Am5x86-P75 v desce s chladiem DataExpert EXP4044 ver 1.0 with Am5x86-P75 CPU
Am5x86 CPU v MB Am5x86 CPU s chladiem Award BIOS SETUP

      22.10.2024 Chladi na LDO jsem vymnil za vy, e u se na nm d udret ruka a pomohlo to stabilit na 133 MHz. Dle jsem zkusil jt ve na 160 MHz (40 MHz FSB), ale systm byl nestabiln a tuhnul pi spoutn program v DOSu. Zatm co na 133 MHz mi fungovalo vechno na nejrychlej asovn s 0 wait states pro RAM (3-2-2-2) i L2 cache (2-1-1-1), tak na 166 MHz jsem musel prodlouit asovn RAM na 1WS (3-2-2-2) a L2 cache na 1WS (2-2-2-2), abych byl schopen dokonit benchmark v Quake. To vak vrazn degraduje propustnost pamti a tak efekt zrychlen pi petaktovn nebyl pli vrazn. Podezrm LDO s fixnm napovm vstupem, e m kvli vnitn zptn vazb hor dynamickou odezvu, ne by mla nastaviteln verze s feedback pinem, kter patrn snm napt ble CPU. Zde jsou shrnuty benchmarky ve zmnnch 386 a 486 systm:

MB CPU fCPU fFSB L1 L2 Speedsys CPU/MemBW VESATEST Doom1 Quake 320/6402
Panther II 386SX intel Am386SX-20 20 MHz 20 MHz 0 kB 0 kB CPU: 3,77 / 30,82 MB/s 2 MB/s 1,84 FPS 0,5 / - FPS
TI JCI-S1S H AMD Am386SX-25 25 MHz 25 MHz 0 kB 0 kB CPU: 4,13 / 32,53 MB/s 2 MB/s 2,31 FPS - / - FPS
AB-FU3 AMD Am386DX-33 33 MHz 33 MHz 0 kB 64 kB CPU: 5,80 / 71,28 MB/s 3 MB/s 6,08 FPS 1,6 / - FPS
AB-FU3 AMD Am386DX-33 33 MHz 33 MHz 0 kB 128 kB CPU: 5,80 / 71,28 MB/s 3 MB/s 6,11 FPS 1,6 / - FPS
SY-015G AMD Am386DX-40 40 MHz 40 MHz 0 kB 8 kB CPU: 7,03 / 85,45 MB/s 4 MB/s 7,21 FPS 1,9 / - FPS
KMC-A419-8 AMD Am386DX-40 40 MHz 40 MHz 0 kB 256 kB CPU: 7,26 / 48,20 MB/s 5 MB/s 7,53 FPS 2,0 / - FPS
SY-015G TI TX486DLC-40 40 MHz 40 MHz 1 kB 8 kB CPU: 10,40 / 115,45 MB/s 4 MB/s 10,68 FPS 2,4 / - FPS
KMC-A419-8 (WT) TI TX486DLC-40 40 MHz 40 MHz 1 kB 256 kB CPU: 10,85 / 51,75 MB/s 5 MB/s - - / - FPS
KMC-A419-8 (WB) TI TX486DLC-40 40 MHz 40 MHz 1 kB 256 kB CPU: 10,85 / 51,75 MB/s 5 MB/s 11,70 FPS 2,5 / - FPS
Leopard 486SLC2 IBM 486SLC2 50 MHz 25 MHz 16 kB 128 kB CPU: 13,78 / 22,82 MB/s - 11,80 FPS 1,4 / - FPS
AB-AH4 intel 486DX-33 33 MHz 33 MHz 8 kB 256 kB - / - 10 MB/s 14,24 FPS - / - FPS
SY-025D2 intel 486DX-33 33 MHz 33 MHz 8 kB 256 kB CPU: 12,44 / 35,24 MB/s 11 MB/s 14,90 FPS 4,1 / 1,7 FPS
EXP4044 intel 486DX-33 33 MHz 33 MHz 8 kB 256 kB CPU: 12,38 / 36,90 MB/s 12 MB/s 14,77 FPS 4,0 / 1,6 FPS
Hippo 10 (WT) intel 486DX-33 33 MHz 33 MHz 8 kB 256 kB CPU: 12,43 / 82,39 MB/s 14 MB/s 15,26 FPS 4,1 / 1,6 FPS
Hippo 10 (WT) intel 486DX-40 40 MHz 40 MHz 8 kB 512 kB CPU: 14,92 / 99,10 MB/s 15 MB/s 18,39 FPS 5,0 / 2,0 FPS
Hippo 10 (WT) UMC U5SX-40 40 MHz 40 MHz 8 kB 512 kB CPU: 21,75 / 103,45 MB/s 15 MB/s 21,80 FPS 0,6 / - FPS4
Hippo 10 (WT) ST 486DX4V100 100 MHz 33 MHz 8 kB 256 kB CPU: 39,69 / 89,62 MB/s 14 MB/s 31,95 FPS 8,8 / 3,7 FPS
Hippo 10 (WB) ST 486DX4V100 100 MHz 33 MHz 8 kB 256 kB CPU: 40,11 / 89,61 MB/s 14 MB/s 32,33 FPS 8,8 / 3,7 FPS
EXP4044 ST 486DX4V100 100 MHz 33 MHz 8 kB 256 kB CPU: 39,95 / 38,39 MB/s 12 MB/s 29,79 FPS 8,0 / 3,5 FPS
Hippo 10 (WT) AMD Am5x86-P75 133 MHz 33 MHz 16 kB 256 kB CPU: 48,01 / 89,52 MB/s 14 MB/s 42,30 FPS 13,0 / 5,3 FPS
Hippo 10 (WB) AMD Am5x86-P75 133 MHz 33 MHz 16 kB 256 kB CPU: 49,74 / 89,51 MB/s 14 MB/s 45,82 FPS 13,3 / 5,6 FPS
Hippo 10 (WB) AMD Am5x86-P75 133 MHz 33 MHz 16 kB 512 kB CPU: 49,74 / 89,51 MB/s 14 MB/s 47,65 FPS 13,8 / 5,7 FPS
EXP4044 AMD Am5x86-P75 133 MHz 33 MHz 16 kB 256 kB CPU: 47,80 / 38,35 MB/s 12 MB/s 40,91 FPS 12,0 / 5,3 FPS
EXP4044 AMD Am5x86-P75 160 MHz 40 MHz 16 kB 256 kB CPU: 57,64 / 46,24 MB/s 13 MB/s 46,25 FPS 14,4 / 6,2 FPS
EXP40443 AMD Am5x86-P75 160 MHz 40 MHz 16 kB 256 kB CPU: 57,52 / 46,24 MB/s 15 MB/s 48,30 FPS 14,4 / 6,4 FPS
Hippo 10 (WT) AMD Am5x86-P75 160 MHz 40 MHz 16 kB 256 kB CPU: 51,58 / 107,80 MB/s 15 MB/s 47,16 FPS 14,8 / 6,1 FPS
Hippo 10 (WB) AMD Am5x86-P75 160 MHz 40 MHz 16 kB 0 kB CPU: 59,72 / 118,16 MB/s 16 MB/s 50,38 FPS 15,4 / 6,6 FPS
Hippo 10 (WB) AMD Am5x86-P75 160 MHz 40 MHz 16 kB 256 kB CPU: 59,71 / 107,80 MB/s 15 MB/s 53,82 FPS 15,8 / 6,7 FPS
Hippo 10 (WB) AMD Am5x86-P75 160 MHz 40 MHz 16 kB 512 kB CPU: 59,71 / 107,80 MB/s 15 MB/s 52,96 FPS 16,3 / 6,8 FPS
NexGen NxVL Nx586-P90 84 MHz 42 MHz 32 kB 256 kB CPU: 66,51 / 223,96 MB/s 12 MB/s 38,46 FPS 0,9 / - FPS4
RAM: 4 x 4 MB 60 ns 30-pin FPM SIMM / 1 x 16 MB 60 ns 72-pin FPM SIMM
VGA na KMC-A419-8, JCI-S1S H a Panther II: S3 Vision 928 (ISA @20MHz, VBE 1.2 bank-switched)
VGA na Alaris Leopard 486SLC2: Cirrus Logic CL-GD5429-86QC (VLB, VBE 1.2 bank-switched)
VGA na Abit AB-AH4, Soyo SY-025D2, DataExpert EXP4044, Hippo 10, NxVL: S3 765VL 1 WS ROM (VLB, VBE 2.0 LFB)
Na Octek Hippo 10 testovno s L1 cache Write-Through / Write-Back a L2 cache Write-Back a bez L2 cache
1 - Doom v DOSu, 320x200, "-timedemo demo1"
2 - Quake v DOSu, 320x200 / 640x480, "timedemo demo1.dem"
3 - DataExpert EXP4044 a VGA S3 765VL s 0 WS ROM
4 - Quake bel na Nx586 a U5SX s emultorem FPU Q87X 4.13

      17.11.2024 Vythnul jsem osciloskop, abych se podval na zvlnn napjecho napt procesoru Vcore a vyeil problm s nestabilitou. Frekvenci FSB jsem nastavil zpt na 33 MHz. S fixnm LDO KA278R33 jsem namil zvlnn pi zti ve Quake 530 mVpp a poklesy nkam ke 3,0 V (mil jsem pmo na horn stran PCB interposeru mezi Vcore pinem a GND pilehlho jumperu JP38). Naped jsem zkusil vymnit 1 tantal 10 µF se zmenm ESR 0,4 Ω za low-ESR elyt 100 µF se zmenm ESR 0,1 Ω, ale nemlo to prakticky dn vliv. Napadlo m, e regultor s fixnm naptm, kter si bere zptnou vazbu pmo uvnit obvodu, se asi bude chovat dynamicky he, ne LDO s ADJ vstupem, kter je krmen z dlie ble CPU a me tak reflektovat poklesy napt na veden.
      Nael jsem v uplku LDO LT1587, kter je pinov kompatabiln s LM1084-ADJ a pipjel ho na pozici Q1A. S vchozmi hodnotami odpor dlie jsem namil na przdno napt 3,28 V. Pi zti vak byl vsledek men pekvapiv hor. Zvlnn se zvtilo na 640 mVpp a poklesy k 2,86 V. Zkusil jsem tedy dal LDO LX8383A-00, s nm byl vsledek o nco lep: zvlnn 488 Vpp a pokles k 2,92 V.
      Je evidentn, e pro spn petaktovn bude teba napt zvit pravou dlie. To jsem provedl zmnou hornho odporu R63 z 270 Ω na 240 Ω, abych zskal 3,5 V. Stabilita se zvila tak, e se mi na 160 MHz (40 MHz FSB) s nejrychlejm asovnm RAM a L2 cache podailo dokonit timedemo benchmark ve Quake, ale pi druhm kole u crashnul a ve VESATESTu jsem dostval jen ernou obrazovku. Pistoupil jsem k dalmu zven napt na 3,7 V zmnou R63 na 220 Ω. Pmo na blokovacm kondu na interposeru s CPU jsem namil reln 3,45 V, co ukazuje na nezanedbateln bytek napt na veden od LDO. S tmto Vcore u zd se b ve stabiln tak jak m. Jet jsem vyzkouel otestovat Doom a Quake s pouitm 0 WS ROMky ve VGA S3 765VL a u Doomu dostal asi o 2 FPS vce, u Quake se to moc neprojevilo (tam nesth CPU).

VRM KA278R33 3,3V DC VRM KA278R33 3,3V AC VRM LT1587 3,3V DC VRM LX8383A-00 3,3V DC VRM LX8383A-00 3,5V DC
KA278R33 3,3V DC KA278R33 3,3V AC LT1587 3,3V DC LX8383A-00 3,3V DC LX8383A-00 3,5V DC

      Chladii na LDO jsem musel dole sten odfrzovat ebra, protoe pi otoen monti pouzdra LDO na pozici Q1A kolidoval s jumpery JP45 a JP46. Na CPU jsem pidlal men ern chladi z njakho starho sovho switche a pipevnil ho sponou vyrobenou z ocelovho drtku, kter je zahknut za ouka Socketu 3. Chladi se ani moc neheje, pi testovn jsem na nj jen foukal vtrkem z PC zdroje lecho vedle.

      5.6.2025 Pohledem do datasheetu chipsetu OPTi 82C895 jsem zjistil, e podporuje a 512 kB direct mapped L2 cache. I kdy se manul k desce o tto monosti nezmiuje, tak na pozicch U1 - U4 jsou osazeny dlouh patice DIL32, kter fyzicky umouj zastrit 128kB cache SRAM ipy. Dle je v datasheetu zmnno, e jsou podporovny 2 banky cache s prokldnm nebo 1 banka bez prokldn (a 4 x 128 kB). Zkusil jsem tedy osadit 4 nov 128kB ipy + 32 kB tag a otestoval vechny mon kombinace jumper JP13, JP27, JP28, JP29, ale nepodailo se mi rozchodit 512 kB. Systm bu vytuhnul po testu RAM nebo nedetekoval dnou L2 cache. Je divn, e nefungovala ani 1-bankov kombinace 128 kB. Nakonec jsem multimetrem zjistil, e v DIL32 paticch nejsou zapojen piny A16 (2. pin v lev ad, A15 a VCC zapojen jsou).
      Na velikosti L2 cache tak zle, jakou velikost RAM je mon cachovat (64 kB cache + 8 kB tag - 16 MB RAM, 128 kB cache + 8 kB tag - 32 MB RAM, 256 kB cache + 32 kB tag - 64 MB RAM, 512 kB cache + 32 kB tag - 128 MB RAM). Doporuen pstupov doby cache SRAM ip pro 33 MHz FSB a asovn 2-1-1-1 burst ten, 0 WS zpis jsou 15 ns pro tag a 20 ns pro ostatn ipy. Pro 40 a 50 MHz FSB a stejn ipy je nutno prodlouit asovn na 3-2-2-2 burst ten, 1 WS zpis. asovn pro rychlej ipy datasheet neuvd.
      Chipset dokonce podporuje L1 cache v reimu Write-Back, ale nvrhi desky se na to vykalali a nepropojili na CPU socket nkter dleit signly, jako nap. CACHE#, INV a HITM# (Hit Modified Line), take CPU neme sprvn provst Write-Back cyklus (dolo by poruen koherence cache). Proto ani SETUP nenabz tuto volbu pro L1 cache. Je tedy zejm, e tato deska nevyuv naplno potencil pouitho chipsetu.


Oprava 486 zkladn desky Octek Hippo 10 s VLBusem

      2.3.2025 Poslednm bonbnkem ze strahovsk nadlky byla zkladn deska Octek Hippo 10 s chipsetem UMC UM8498F. Na svou dobu vypad docela modern vybaven, nebo u m na sob integrovan 2-kanlov IDE adi disk a disketovky, 2 x COM, 1 x LPT a 1 x game port. Deska m 2 VLB a 4 ISA sloty, 4 72-pinov SIMM patice, podporuje FSB do 50 MHz, CPU s dulnm napjenm a umouje osadit a 512 kB L2 Write-Back cache.
      Deska naped vbec nePOSTovala, a jsem pohledem zjistil, e si z n njak bastl vypjel 14,318MHz krystal. Po jeho navrcen zala nabhat, ale nefungovala klvesnice, protoe louh vytekl z akumultoru seral vechny cestiky na PCB pod nm a u DIN konektoru. A to velmi dkladn, e jsem ml dost problmy zjistit, co kam vedlo. Nakonec se mi to podailo njak nadrtovat a klvesnice se rozbhla, ale nejsem si 100% jist, e jsem ve propojil sprvn. Deska se toti chov divn po zapnut: pokud byla dlouho bez proudu, tak nkdy nechce POSTnout, ale kdy ouchnu do HW resetu, tak spolehliv nasko. Kdy ji vypnu jen na pr minut a znovu zapnu, tak nabhne normln. Za bhu se pitom chov zd se stabiln. UPDATE: toto podivn chovn po pr dnech samo odeznlo a deska te nabh normln.

Octek Hippo 10 486 VLB MB Octek Hippo 10 486 VLB MB-oprava seranho PCB Octek Hippo 10 Award BIOS-Chipset Features
Octek Hippo 10 oprava PCB Award BIOS setup

      Na desce byl v EPROMce star Award BIOS z 10.11.1994 a tak jsem tam hned naplil posledn verzi BIOSu z 9.1.1996. Desku jsem nejprve testoval s CPU intel 486DX-33. Kdy jsem tam chtl strit nco rychlejho a zaal zkoumat, jak se nastavuje napt CPU, tak jsem zjistil, e moje revize 1.01 vbec nem v manulu zmiovan blok jumper JP53-56. Jsou zde pouze relevantn jumpery JP46 a JP48. Na desce je linern regultor napt realizovan obvodem TL431 a MOSFETem SMP50N06-25 podobnho zapojen jako toto. Dalm zkoumnm jsem zjistil, e jumper JP46 je zapojen na referenci a GND a JP48 na referenci a Vout. Pipojenm externho odporu na JP46 by se mlo Vout zvit a odporem na JP48 naopak snit. Kdy jsem JP48 zkratoval propojkou, kleslo vstupn napt na hodnotu reference, tj. 2,5 V. Co m vak zmtlo, e deska implementuje njakou autodetekci CPU s dulnm napjenm a pokud v patici nen dn CPU, tak tam posl natvrdo 5 V (na gate MOSFETu je pak +12 V). Kdy jsem do patice zastril CPU ST 486DX4V100, tak se automaticky napt zmnilo na 3,5 V a nenael jsem jinou monost jak ho jumpery zmnit.
      Pi pohledu na przdn patice cache nastalo zklamn, jeliko jak jsem zjistil, pro dosaen 512 kB je teba osadit 4 del 128kB ipy, kter bohuel nemm (resp. mm pouze v SMD proveden). Cache je toti rozdlen do 2 bank, kde bank 0 m del patice DIL32, kter pojmou 32 / 64 / 128kB ipy a bank 1 m krat patice DIL28, kter pojmou pouze 32kB ipy. Osadil jsem tedy 9 32kB ip W24257AK-15 (celkem 256 kB) a zkusil objednat z Alku njak recyklty W241024AK-15 za 95 K. Pi testech nastalo druh zklamn, kdy jsem zjistil, e volba reimu cache Write-Through/Back jaksi nic nedl a vsledky jsou prakticky stejn. Nicmn i tak deska podala o trochu lep vkon jak DataExpert EXP4044, vsledky test jsem pidal do tabulky ve.
      Nakonec jsem do desky stril svj nejrychlej CPU AMD Am5x86-P75. Pi nastaven jumper dle AMD 486DX4 dval ve SpeedSysu njak podivn retardovan vsledky. Manul se samozejm o jeho existenci vbec nezmiuje, nicmn BIOS obsahuje string "Am5x86-P75", take se s nm pot. Zkusil jsem ho tedy najumperovat podle njakho dodatku jako pro Cyrix 5x86 (JP32: 1-2, JP33: 1-2,3-4, JP34: 1-2,3-4, JP35: 1-2, JP36: 3-4,5-6, JP37: 1-2,4-5) a BIOS ho pak skuten detekoval jako "Am5x86-P75-S" a vkon ve SpeedSysu se spravil. Avak volba cache WB/WT v SETUPu opt nemla dn efekt. Kdy jsem FSB posunul na 40 MHz, tak to vdy zatuhlo na zatku bootu DOSu z HDD (i kdy jsem vechna nastaven souvisejc s ISA a HDD pepl na nejpomalej), budu muset naped trochu zvednout napt CPU na 3,7 V jako na desce EXP4044. Pak jsem i zmil, jak vypad Vcore na osciloskopu pi zti v Doomu a zvlnn je men ne na VRM desky EXP4044.

Octek Hippo 10 VRM 3,7V DC, Doom load Octek Hippo 10 VRM 3,7V AC, Quake load
VRM 3,7V DC, Doom load VRM 3,7V AC, Quake load

      5.3.2025 Napadlo m zkusit proppat, kam vede pin WB/WT# (B13) z patice CPU a zjistil jsem, e je na 4. pinu jumperu JP37. Sousedn 5. pin JP37 je na +5 V, take propojenm pin 4 a 5 se aktivuje reim L1 cache Write-Back. A to natvrdo, take volba v SETUPU na to nem vliv. Pokud se 4. pin JP37 nech nezapojen, je pes pull-down 10 kΩ pipojen na GND a L1 cache je v reimu Write-Through (volba v BIOSu je zmraen na Write-Through). Aktuln reim cache lze ovit nap. DOSovou utilitou CHKCPU. V Norton SysInfo s WB brutln nerealisticky poskoilo skre ze 198 na 288 bod. Ve SpeedSysu je rozdl CPU mnohem mn vrazn, jen 49,74 vs 48,01 bod. Vrazn skok je vidt v rychlosti pesunu dat (move) L1. V Doomu pidalo WB 3,5 FPS (8,25%) a v Quake jen 0,3 FPS (2,3%).

      6.3.2025 Samozejm jsem zkusil CPU tak petaktovat na 160 MHz (FSB na 40 MHz). Naped jsem ale poteboval zvednout Vcore, co se dalo snadno provst pipojenm odporu na piny jumperu JP46 (s hodnotou 220 kΩ jsem dostal 3,66V). Dle se ukzalo nutn zvit u L2 cache poet wait states z 0 na 1, jinak se bootovn zaseklo vdy na vodn hlce "Starting MS-DOS..." To m kapnek pekvapilo, kdy na desce EXP4044 L2 cache zvld 0 WS. Schvln jsem zkusil i prohodit cache SRAM ipy mezi deskami, ale nepomohlo to. Take se musm holt spokojit s 1 WS, ale i tak se mi podailo doshnout novho rekordu v Doomu a Quake, viz tabulka ve. T pidvm report z programu CACHECHK V5. Zkusil jsem FSB i na 50 MHz, ale to ani nePOSTne (ani bez VLB VGA). Na desce pouit PLL obvod MX8315PC bohuel neum generovat dnou dal frekvenci mezi 40 a 50 MHz. Teoreticky by se dal vstup CK (pin 8) pepojit na njak extern krystalov osciltor (mm v zsob frekvence 41,539; 42,192; 44; 45,158 a 48 MHz).
      Na dal problm s asovnm jsem narazil, kdy jsem zkusil do desky strit dva 8-ipov (16MB) nebo jeden 16-ipov (32MB) pamov modul, tak se to seklo pi bootu. Musel jsem pepnout "DRAM Page Mode" z "Fast" na "Normal" nebo zvit poet DRAM wait states z 0 na 1, co zas ubralo trochu vkonu (rychlost ten z RAM klesla z 40,2 MB/s na 33,3 MB/s; rychlost zpisu zstala stejn). Domnvm se, e je to zvenou kapacitn zt pamov sbrnice, nebo v ppad 8-ipovho modulu je kad bit zatovn pouze 1 log. vstupem pamti, zatm co u 16-ipovho modulu jsou na 1 bitu 2 log. vstupy paraleln. Vt kapacita vstup pak vce deformuje elektrick signly a naponovan asovn se rozpadne. To zle na schopnostech chipsetu i PCB layoutu.
      Jeliko tato deska u podporuje sporn reimy pes APM, vyzkouel jsem, jestli se na CPU aktivuje SMM. Pro tento el jsem dal na interposer LEDku na signl SMIACT# (pin C12). A skuten pi sepnut suspend tlatka na pinech JP43 se LEDka krtce blikne, na POST kart se objev kd D3h a CPU se asi 10x zpomal. Pi stisku njak klvesy opt velmi krtce blikne LEDka, na POST kart se objev kd FFh a CPU se zrychl na pvodn rove.

      8.3.2025 Na VOGONS fru padl npad, e by se na tto desce dal vyzkouet jin BIOS (Phoenix) pro desku ECS UM4981 AIO se stejnm hlavnm chipsetem UM8498F, kter m v SETUPu volby reimu Write-Through/Back pro ob L1 a L2 cache. BIOS image jsem pokusn naplil do FlashROM AM29F010 a zasunul do desky. BIOS nabhl, ale zhy jsem narazil na adu problm, nap. zatuhne pi autodetekci HDD (musel jsem run nastavit user reim 47), vypisuje njak chyby neplatnch I/O adres u port a FDC, SpeedSys zatuhne na zatku ve fzi "Determining system contents... Memory type" a hlavn cel systm b asi 10x pomaleji. Zkusil jsem aspo benchmark v Doomu a dostal bdnch 3,81 FPS a to nezvisle na zvolenm reimu L1 a L2 cache. Podobn mizern vsledek 5,16 FPS dostanu s originlnm Award BIOSem pokud vypnu L1 i L2 cache. Tento BIOS tedy cache vbec neinicializuje a je tedy nepouiteln.

      24.3.2025 Dnes mi dorazily 128kB cache SRAM ipy W241024AK-15 z AliExpressu. Vypadaly nepouit, ale znaen bylo neoriginln, plen LASERem. Naped jsem je otestoval v programtoru LabProg-48LV a zjistil, e 1 z 5 ip selhal u pi Device insertion testu a nsledn men multimetrem potvrdilo, e spousta pin nebyla vbec pipojen na kemk. e by ty ipy pepouzdovali do novch futrl a pitom se jim pokazilo bondovn vvod? Jak jsou skuten dynamick parametry je ve hvzdch. Na Alku jsem tedy nahlsil stnost a podal o sten refund, kter byl do druhho dne promptn vyzen. Natst mi sta 4 funkn ipy, protoe tag SRAM je zde jen 32kB.
      Vymnil jsem tedy cache ipy na desce a penastavil jumpery JP21: on, JP22: on, JP23: 1-2,3-4,5-6, JP24: 1-3. Po zapnut BIOS sprvn detekoval velikost 512 kB L2 cache. Pi testech na 33 MHz FSB fungovalo ve stabiln na nejrychlej asovn s 0 WS. V Doomu jsem si polepil o 1,83 FPS (4%) a v Quake o 0,5 FPS (3,7%), v 640 x 480 u byl rozdl jen nepatrn (0,1 FPS).
      Avak pi petaktovn FSB na 40 MHz jsem narazil na problmy se stabilitou, kter se pekvapiv projevila nikoliv v Quake (kde stailo zvednout asovn L2 cache na 1 WS jako dve), ale v Doomu, kter zatuhnul okamit pi startu, resp. u pi startu extenderu DOS/4GW, jen nestihl ani nic vypsat. Pro spn dokonen testu v Doomu jsem musel zvednout asovn L2 cache na 1 WS 3-2-2-2, co se projevilo poklesem o 0,86 FPS proti 256 kB L2 cache s rychlejm asovnm 1 WS 2-1-1-1. Vsledky jsem pidal do tabulky ve.

      9.5.2025 O kvalit a dynamickch parametrech nskch SRAM ip jsem ml urit pochybnosti. Podailo se mi sehnat tyi 128kB SRAM ipy IDT (nyn Renesas) 71024S12TYG8 s pstupovou dobou 12ns ze spolehlivho zdroje. Akort e jsou v SMD pouzdrech SOJ32 / 300 mil. Navrhnul jsem si tedy jednoduchou redukci na DIL32. Jeliko u JLCPCB nedl u malch PCB cenov rozdl mezi 2 a 4-vrstvou deskou, vloil jsem do vnitnch vrstev rozlitou m GND a VCC a pidal mal blokovac SMD kondenztor na spodn stranu pod SOJ32 pouzdro. Nicmn PCB lze vyrobit i jako 2-vrstv, jen by se musely vvody kondenztoru pipojit k VCC a GND run drtkama. Vytvoil jsem si vlastn panelizaci po 4 kusech, abych se veel do rozmru 5 x 5 cm a nechal tak vyrobit celkem 20 ks (rozezal jsem je pak run psovou pilou). Kdyby ml nkdo zjem, mohu se podlit o pebytky.

      3.6.2025 Ve tvrtek mi dorazily ploky z JLCPCB. Musel jsem ale jet dokoupit 2-ad pinov lity na noiky, take jsem se k testovn dostal a dnes. To bohuel pineslo velk zklamn, protoe se ukzalo, e s tmito 12ns cache je MB pi rychlejm asovn pln stejn nestabiln jako s tmi nskmi 15ns z Alku, take an ipy asi oznail pravdiv. Jako 32kB tag SRAM ip jsem v obou ppadech pouil originl 12ns Winbond. Systm je stabiln a s pomalejm asovnm 1WS 3-2-2-2, kdy je vkon mrn degradovn pod rove 256 kB cache s rychlejm asovnm. Zkusil jsem jet zvit Vcore CPU na 4,0 V a povymoval pr elyt okolo (nebyly ani moc vyschl), avak nemlo to dn vliv.

redukce SOJ32 na DIL32 PCB layout redukce SOJ32 na DIL32 PCB 3D model redukce SOJ32 na DIL32 osazen PCB
redukce SOJ32-DIL32 layout PCB model osazen PCB

      K chipsetu UMC UM8498F nen dostupn dn datasheet, ale je dost pravdpodobn, e adi cache je konstruovan stejn jako u chipsetu OPTi 82C895 na desce EXP4044. ili, e dosahuje vy rychlosti s pomalejmi ipy pomoc dual bank interleavingu a pi osazen jen 1 banky, kdy neme vyut prokldn, tak u neum rychlej ipy vyut. Na VOGONS fru jsme doli ke stejnmu zvru, ale zjistil jsem, e by bylo teoreticky mon rozit banku 1 na DIL32 patice (a dodrtovat pslun signly), aby pobrala 128kB SRAM ipy a tm zskat rychlej 1 MB L2 cache s interleavingem. Uivatel pshipkov u takto jednu desku upravil.
      Dle jsem se dozvdl, e pelivm vybrnm SRAM ip z vt skupiny (dov 100 kus) lze doshnout lepho timingu na vych frekvencch FSB, piem nezle moc na tom, jestli je ip 12ns nebo 15ns, ale asi na tom, jak se shoduj reln dynamick parametry. To je ale asov dost nron sranda kvli pr FPS navc. Prozatm jsem se vrtil k dual bank 256 kB L2 cache. Vyzkouel jsem 15ns ipy rznch vrobc a nael jsem urit rozdly ve stabilit. Nap. s ipy Alliance AS7C3256-15PC mi pi asovn 1 WS 2-1-1-1 opakovan crashoval Quake v timedemu, tak s ipy UMC UM61256FK-15 opakovan prochzel OK, i MemTest nkolik hodin OK, avak pi 0 WS to zatuhlo hned pi bootu Starting MS-DOS...

      4.7.2025 Napadlo m vylepit stvajc PCB design SQFP208 - PGA168 interposeru pro Am5x86 o spnan DC-DC mni s obvodem RT5789 s rychlou odezvou, kter jsem umstil na spodn stranu destiky pod CPU. Pedpokldm, e bych tak mohl snit zvlnn Vcore pi zti oproti linernmu VRM na desce a tm zlepit stabilitu, ppadn i snit potebn Vcore. To by mohlo pomoci zejmna u ravjch CPU jako je Cyrix 5x86. Tak se tm vye problm se zkladnmi deskami, kter VRM nemaj osazen nebo ho nemaj vbec. Vstupn napt je nastaviteln odporovm dliem od 0,6 V a vstupn proud teoreticky a 6 A, zle hlavn na kvalit cvky. Gerber data jsem poslal do vroby k JLCPCB. Dal CPU Am5x86 jsem si objednal opt na Alku, ale pvodn prodejce ho u neml skladem a nael jsem jen dra za 285 K.

SQFP208 to PGA168 interposer v2 PCB layout SQFP208 to PGA168 interposer v2 PCB 3D model
PCB layout v2 3D model v2

      21.7.2025 V ptek mi pily ploky na interposer v2 z JLCPCB a dnes druh CPU Am5x86 z Alku. Pestoe byl dobe zabalen v plastovm rmu, ml viditeln ohnut 3 noiky. A to jednu tak, e naopak dole nebyla zahnut do roviny ploku, ale rovn trela pod jeho rove, co se rozhodn nemohlo stt pi balen, ale u pi vrob/recyklaci, kde se asi ipy znovu pouzd. Pinzetou jsem noiku opatrn dole ohnul a ostatn narovnal. Tento kus m na kovovm IHS docela pkn vyveden ern popisek.
      4 oboustrann pinov lity z GME jsem ml u koupen v zsob a tak jsem se veer pustil do osazovn. Nejprve jsem na spodn stranu osadil spnan DC-DC mni a otestoval ho, e dv poadovan napt 3,6 V. Pak jsem pipjel CPU, keramick kondky a nakonec pinov lity. Pi 1. zapnut jsem nedostal vbec dn POST kd. Musel jsem tedy promit vechny piny a zjistil, e byla nepipjen noika A10 na SQFP pouzdru (po ouchnut pinzetou se hbala, ale nebylo to zrovna moc vidt). Po propjen noiky u deska s CPU nastartovala. Zkusil jsem i pepnout FSB na 50 MHz, ale opt dn POST kd, to bych musel jt s Vcore ve...

SQFP208 to PGA168 interposer v2 PCB top, bottom Am5x86-P75 SQFP208 CPU from AliExpress assembled SQFP208 to PGA168 interposer v2 PCB top assembled SQFP208 to PGA168 interposer v2 PCB bottom
PCB top, bottom Am5x86-P75 CPU PCB top PCB bottom


USB adi s CH375 pro 8-bit ISA

      21.10.2025 Pro penos dat je dnes pece jen pohodlnj pouvat vt, rychlej a spolehlivj USB flashdisky ne diskety. Avak prvn nativn USB adie se zaaly na zkladnch deskch objevovat a na konci ry Penti (Socket 7) a bn se daj sehnat jen karty pro sbrnice PCI a PCI-E. Ped asem jsem vak objevil
USB adi pro 8-bit ISA od firmy Lo-tech zaloen na nskm ipu CH375. Jedn se o jednoduch USB-host adi s 8-bitovm paralelnm rozhranm, kter podporuje USB 2.0 low-speed (1,5 Mb/s) a full-speed (12 Mb/s) zazen tdy mass-storage (nelze ho tedy pout pro myi, klvesnice, atd.). Pro pipojen k ISA sbrnici sta pidat dekodr I/O adres a pr dalch drobnost. Karta adie je t vybaven patic na EPROMkou, do kter je mon vloit BIOS umoujc bootovn z USB flashdisku. Lze ho koupit na AliExpressu za 409 K. Na podrobnou videorecenzi se mete podvat zde.
      Bastl Frantiek tefanec vytvoil vlastn PCB design v KiCADu vychzejc z referennho designu od vrobce ipu, kter m na webu ke staen. J jsem jeho PCB design mrn upravil, aby bylo mon osadit i 64kB EPROM (27C512) a nahrt do n ROMOS s mass-storage DOSovm ovladaem. K tomu jsem poteboval na desku vmstnat pr dal jumper, co se nakonec povedlo. Tak jsem mrn upravil rozmry desky na 100 x 50 mm, aby bylo mon nechat v JLCPCB provst sraen hran ISA konektoru (s deskama menma jak 50 mm v jednom smru maj problm z upnutm do frzky), kde jsem si nechal vyrobit 5 kousk. 5 ip CH375 jsem objednal na AliExpressu za 58 K.

ISA-USB controller schematic ISA-USB controller PCB layout ISA-USB controller PCB 3D model
ISA-USB schma ISA-USB PCB layout ISA-USB PCB model

      11.11.2025 Dnes mi pila velk vrka plok z JLCPCB. Jeden jsem tm kompletn osadil, akort jsem neml v zsob USB ESD ochranu USBLC6-2SC6, kterou jsem provizorn pemostil 2 odpory 22 Ω. UPDATE: USB ESD ip dorazil z Mouseru, tak u je na svm mst. Jen upozoruju na vbr USB-A konektoru, e existuj 2 varianty s kontakty nahoe a dole (zrcadlov prohozen poad pin) - zde je teba osadit tu s kontakty dole. Pi osazen patn varianty dojde k peplovn a pravdpodobn znien USB flashdisku! USB adi jsem zasunul do jedn desky s CPU 386SX-20, kterou jsem zrovna testoval, a fungoval na prvn zapnut.

ISA-USB controller PCBs from JLCPCB assembled ISA-USB controller-top
ploky z JLC osazen USB-ISA adi

      29.11.2025 Jak u bylo patrn z recenz jinch uivatel, nelze od tohoto USB adie ekat dnou raketovou rychlost, spe o nco rychlej disketu. Nael jsem a otestoval 2 verze DOSovho ovladae ch375dos.sys. Ten lze zavst bu klasicky v config.sys nebo a po bootu pomoc utility devload.com a akceptuje 3 parametry, viz pklad: DEVICE=C:\ch375dos.sys @260 #0 %3. 1. parametr je bzov I/O adresa, kter se mus shodovat s nastavenm jumperu J2 na adii (mon hexa hodnoty: 230, 240, 250, 260). 2. parametr je IRQ, opt mus odpovdat nastaven jumperu J3 (mon hodnoty: 0-nepouvat peruen, 3, 4, 5, 6, 7). 3. parametr je IOspeed - jaksi ekac prodleva pro I/O komunikaci s kartou (m ni hodnota, tm vy rychlost). Vchoz hodnota je 3 a pi nich hodnotch se mohou na nkterch systmech objevit njak problmy.
      Verze 2.0A se ukzala o nco pomalej a patrn vbec nepouv pi penosu IRQ, nebo se namen rychlosti v obou ppadech prakticky neliily. Verze 1.9 mi nefungovala bez zapnutho IRQ jumperem (pi detekci flashdisku jsem dostal chybu "error boot sector") a se zapnutm IRQ byl penos rychlej, nejvy rychlosti ten 50,5 kB/s jsem doshl s parametrem IOspeed=0. Po zaveden ovladae se piad USB flashdisku nov psmenko jednotky navazujc na existujc diskov oddly (bez disku se piad psmenko C:). Ovlada nee souborov systm, to penechv na DOSu, take se sprvnou verz lze pouvat i FAT32.

IOspeed ver. 2.0A, no IRQ ver. 2.0A, IRQ 7 ver. 1.9, no IRQ ver. 1.9, IRQ 7
3 28,63 kB/s 28,63 kB/s - 32,99 kB/s
2 32,49 kB/s 32,49 kB/s - 38,20 kB/s
1 37,01 kB/s 36,90 kB/s - 44,77 kB/s
0 40,44 kB/s 40,33 kB/s - 50,49 kB/s
ch375dos.sys USB read speed (715kB file), 386SX-20, 2 MB RAM, MS-DOS 7.10

      Dle jsem upravil 64kB disk image svho ROMOSu, do nj jsem zahrnul ovlada verze 2.0A, MikroManaer, utilitu DynaLoad a config.sys, kter ovlada natahuje. FreeDOS kernel je pvodn verze pro CPU 386 a vy. Tato verze ROMOSu je nakonfigurovan pro emulaci diskov jednotky A: (disketovou jednotku jsem neml pipojenou), binrka je ke staen zde. Naplil jsem ji do EPROMky 27C512 a nastavil potebn jumpery. V tto konfiguraci je jedin mon volba pamov adresy na segmentu D000h. Po sputn ROMOSu se ovlada nathnul dle oekvn. S pomoc takto vybaven karty mu USB ovlada penst na disk libovolnho retro PC, ppadn i naformtovat disk a nainstalovat OS.


Oprava zkladn desky Octek Panther II 386SX

      30.11.2025 U od losk radioburzy v Holicch mi doma leela druh deska od znmho Octek Panther II 386SX rev. 1.01 s pipjenm CPU intel 386SX-20, s chipsetem OPTi 82C283 a F82C206, se sbrnic ISA. Bohuel byla docela brutln poleptan od louhu z vyteklho NiCd akumultoru. Po zapnut poslala pr POST kd a skonila s chybou detekce pamti (kd 10h). Co se dalo ekat, protoe louh natekl i pod DIL patice pamt a mon trochu i pod patice SIMM.
      Pvodn jsem sp uvaoval rozebrat desku na soustky, ale zkusil jsem tomu dt jet anci. Postupn jsem zaal opravovat viditeln pokozen cestiky a prokovy. Nkde bylo serno i nkolik cm spoj, take jsem je musel nahradit izolovanmi drtky. Tak jsem musel odpjet DIN konektor klvesnice, kter ml vevnit seran prka a spoje pod nm byly tak seran. Tak 2 krajn DIL patice pro RAMky mly seran nkter prka a musel jsem je vymnit. Diod-testem jsem zkontroloval vechny piny krajnch DIL patic, jestli nkam vedou a nael nkolik peruench spoj. Ty se mi podailo postupn vechny vysledovat kam vedou a opravit je. Pi vmn DIL patic se mi tak pr spoj peruilo v mst mezi padem a cestikou (pouhm okem to ani nebylo vidt), tak jsem to musel t prodrtovat.
      Nsledn jsem zkusil do 2 krajnch bank 0 a 1 osadil DILkov RAMky 44256 a 41256 a viola, rozbhl se boot, 1MB RAM OK. Vlezl jsem do SETUPu (zde pouit Mr. BIOS 1.0F vypad docela zajmav a atypicky), ale po cca 10s mi zmizel obraz a na POST kart jsem si viml, ze se trvale rozsvtil RESET. Na RESET vstup to nereagovalo a po vypnut a zapnut se to opakovalo. Kdy u jsem s tm strvil nkolik hodin prce, rozhodl jsem se to dothnout do konce. K tomu jsem musel detailn prozkoumat funkci resetovacho obvodu, jeho schma jsem sten pekreslil, viz ne. Jak jsem zjistil, resetovac CMOS vstup chipsetu ml uhnil prokov a jen si tak plaval ve vzduchu, take po chvli sm peklopil. Po oprav prokovu pro zmnu deska nestartovala vbec a visela v resetu. Bylo tedy teba prozkoumat, jak vechny podmnky se vyhodnocuj, aby se RESET odbrzdil.
      Resetovac obvod je postaven na 4-nsobnm kompartoru LM339 z nj jsou vyuity 3 se spolenou referenc (na invertujcch vstupech). Jeden kompartor (piny 9, 7, 14) snm stav signlu Power Good z napjecho konektoru zdroje, ten byl peklopen sprvn. Dal kompartor (piny 5, 4, 2) snmajc stav RESET vstupu P1 (od tlatka) byl blokovan dalm kompartorem (piny 7, 6, 1), kter snm napjec +5V vtev pes dli R49 a R50. Zde bylo na uzlu dlie cca 2,8 V. Problm byl v tom, e reference mla napt 4,8 V, take tento kompartor byl peklopen patn. Jak jsem vysledoval, vstup reference ml vst na katodu klasickho obvodu TL431C, jene spoj uhnil a tak se na vstup reference odnkud dostvalo vy napt pes R54. Po oprav spoj reference jsem namil pedpokldan napt 2,52 V, take se kompartor snmajc +5V vtev peklopil sprvn a neblokoval druh kompartor hldaj RESET a chipset se tak mohl rozbhnout.
      Nakonec jsem jet diod-testem zkontroloval zapojen patic 30-pinovch SIMM a zjistil, e pin 4 (A0) je v luftu. Jeliko cestika k nmu vede pod paticema, tak se mi ji nedailo celou vysledovat, ale bylo jasn, e vede na signl A0 DIL patic. Tak jsem tam nathl drtek a deska se rozbhla se 16 MB RAM ve tyech SIMMech. Ty mohou bt bezparitn (BIOS si asi ptomnost paritnho bitu sm detekuje), ale pekvapiv mus bt po tyech, i kdy m 386SX 16-bitovou sbrnici a obvykle takov desky funguj se 2 SIMMy jako 286-tky. Na tto desce to ale se 2 SIMMy prost nejelo v jakkoliv pozici. Po otestovn jsem opraven spoje na horn i doln stran pestknul transparentnm matnm syntetickm lakem. Do desky jsem pak jet loupnul matematick koprocesor 387SX a zbenchmarkoval obvyklm zpsobem. V Quake jsem dostal "asnch" 0,5 FPS a v Doomu stejn nepouitelnch 1,84 FPS. Jak je vidt, oproti 386DX je 16-bitov sbrnice prost vrazn bottleneck...

Octek Panther II 386SX Octek Panther II 386SX-detail okol baterky Octek Panther II 386SX-schma resetovacho obvodu Octek Panther II 386SX-po oprav-top Octek Panther II 386SX-po oprav-bottom
Octek Panther II detail schma resetu po oprav-top bottom


Oprava 386 zkladn desky Abit AB-FU3

      13.2.2026 Pustil jsem se do operace dalho pacienta - zkladn desky Abit AB-FU3, kterou jsem loni dostal o Pepka z bastlrny. Je osazena chipsetem od Chips & Technologies F82C351, F82C355 a F82C356, m PGA patice na CPU (s AMD Am386DX-33) a FPU (387DX / WTL3167), 32 - 256 kB Write-Through cache (s 64 kB) a a 32 MB RAM v osmi 30-pinovch SIMMech. Chipset je dle znaen uren max. pro 33 MHz FSB a krystalov osciltor 66 MHz je na desce natvrdo pipjen. Na prvn pohled byla deska takov odrban se zohbanmi piny, ulmanmi zmky SIMM patic a u bez baterky, kter nestihla napchat vt kody.
      Po zapnut deska vyhazovala ochranu zdroje, jeliko byl na -12V vtvi proraen tantal, kter ale nevystelil. Tak jsem ho odpjel a deska poslala pr POST kd a skonila na 13h - chyba detekce pamti. Snail jsem se run pidret SIMM moduly v patich, ale dl jsem se nedostal. Desku jsem podn prohldnul, na rovnal rzn ohnut piny a propjel pr podezele krbnutch cest. Posunul jsem se na kd 33h a 3 ppnut - takt chyba pamti. Vypjel jsem tedy rozlman SIMM patice vyhvanou odsvakou a osadil nhradn vypjen z jin desky. Jak jsem dle zjistil, deska vyaduje pro spn start pamov moduly s paritou (i kdy se d pak v SETUPu vypnout) a mus bt jako prvn osazena banka 0. Navc chipset nem rd moje nov 4MB moduly (ani ty s paritou). Ani s nejpomalejm asovnm a rznma volbama refreshe. Dochz pitom ke generovn NMI a MemTest se okamit restartuje. Kdy jsem je vymnil za 8 x 1MB SIMMy, tak problmy s pamt zmizely.

Abit AB-FU3 386 ISA Abit AB-FU3 386 ISA-PCB under KBC Abit AB-FU3 386 ISA Advanced Chipset SETUP
Abit AB-FU3 AB-FU3 bez KBC Chipset SETUP

      Dal problm byl, e deska odmtala startovat s bnou VGA kartou (zastavila se na kdu 2Ch), ale s 8-bitovm Graphics Gremlinem (CGA/MDA) normln nabhla. Viml jsem si zoxidovanch pin na KBC a jeho patici. Ta mla prka u v horm stavu a tak jsem se ji rozhodl vypjet a vymnit za jinou precizn. Piny KBC jsem oistil tvrdou gumou a pomohlo to, u jsem nabootoval i s VGA kartou. U to vypadalo, e je ve opraveno, ale zhy se objevila zhadn chyba po vloen FPU do patice. Jakmile jsem pustil njak program, kter se jen pokusil FPU detekovat (teba DOS Navigator, ten normln b i bez nj), tak zatuhnul. Vyzkouel jsem nkolik rznch FPU a CPU, ale zmna nastala a pi vmn CPU za TX486DLC. Systm byl sice podivn nestabiln, ale vtina program, kter pedtm tuhly se spustila. Jene FPU patn potal. To bylo vidt teba na VESATESTu, kter msto soustednch krunic vykreslil jeden jaksi kosotverec s oblma rohama.
      Pojal jsem tedy podezen na chybu v komunikaci CPU a FPU. Proppal jsem vechny piny v patici FPU 378DX a zjistil, e pin L3 - vstup READYO# nikam nevede. Pozdji se vak ukzalo, e nkter desky tento signl nepotebuj a generujou CPU READY# jinm zpsobem (chipset 82C35x dn takov dedikovan vstup nem). Napadlo m trochu vyzpovdat AI od Googlu, aby mi vysvtlila, jak vlastn komunikace mezi CPU a FPU funguje a jak signly se k tomu pouvaj. Dky tomu m sprvn navedla na signl BUSY#, by uvdla nesprvn sla pin. Popsala mi pesn i stavy, ke kterm dojde, pokud signl BUSY# na stran CPU zstane viset trvale v log. 1 nebo 0. CPU se prost nedozv, e instrukce FPU skonila a zstane ekat. 486DLC se zachov jinak dky intern L1 cache a na dokonen instrukce neek.
      Nsledn jsem se doppal, e signl BUSY# od FPU i CPU kon v obvodu U6 s kryptickm znaenm A458-00-1BS 9134, avak pod patic bylo vidl v potisku "16L8", co odkazuje na programovatelnou logiku PAL16L8. Jak jsem se dle doppal, tento obvod snm a generuje i dal dic signly, viz tabulka ne. S pekvapenm jsem zjistil, e cel vstupn strana PALu (piny 12 - 19) je odPLen, resp. piny vis v luftu bez jakhokoliv nznak PN pechodu mezi GND i VCC. Napadlo m, e uvnit ipu mohly zoxidovat nebo se utrhnout bondovac drtky. Blb je, e takto z nho u nemu vyst pvodn konfiguran matici. AI mi navrhla, abych zkusil jednodue propojit odpovdajc signly BUSY#, ERROR# a PEREQ a dokonce mi vygenerovala i zdrojk v jazyku ABEL, kter jsem nsledn zkompiloval do JEDEC souboru a naplil programtorem LabProg-48LV do nhradnho obvodu GAL 16V8D-25QP s Flash pamt. Po t programy na FPU zaly fungovat sprvn, ale chtlo by to doplnit i generovn dalch signl. Patrn se pouv nativn signalizace chyb pomoc ERROR# a nikoliv pes IRQ 13. Ideln by bylo od nkoho zskat dump pvodnho PALu (nebo zapit k dumpnut). Jinak se zd, e u deska funguje sprvn a vsledky test jsem pidal do tabulky...

pin signl pin signl
1 FPU K1 - PEREQ 20 VCC
2 FPU K2 - BUSY# 19 CPU C8 - PEREQ
3 FPU L2 - ERROR# 18 F82C356 138 - IRQ 13
4 CPU E14 - ADS# 17 NC?
5 F82C356 77 - NMI 16 CPU A8 - ERROR#
6 FPU L10 - RESETIN 15 NC?
7 CPU C9 - RESET 14 NC?
8 F82C351 149 - REFRESH# 13 NC?
9 WTL3167 M12 - INTR 12 CPU - BUSY#
10 GND 11 WTL3167 M2 - PRES#
PAL16L8 pin mapping



Zpt

Aktualizovno 14.2.2026 v 8:41