Prevratom v 1989 som prišli bez obetí na životoch nielen ku demokracii ale aj ku slobode slove a pokleslému umeniu amerických filmov, komixov a herných časákov. V 1991 nikto nemal ani mobil, ani internet a herné PC leda v škole, v počitačových učebniach /Prince of Persia a Grand Prix Circuit od Accolade na každej mašine, 16 EGA farieb, hnusný beeper zvuk/. Excalibur sa 11. číslom v polovici roku 1992 začal vydávať vo farbe a všetci sme vedeli, že Amiga je kráľ. Relatívna dostupnosť, rozlíšenie, farby, plynulý skroling, neprekonateľné audio, ľahké pirátenie hier. Moderné konzoly a od Amigy výkonnejšie SNES a Megadrive bez možnosti warezu boli hračkami pre zbohatlíkov, ktorých foter makal v nemecku za marky.
Amiga 500 bola vybavená extrémne dobre dizajnovaným procákom Motorola 68000 a v rokoch 1987 až 1992 ovládla monopolne celú jednu európsku, hernú generáciu. V 1993 prišiel DOOM a herné PC začalo valcovať. Amiga dovtedy dominovala preto, lebo CPU pomáhal precízne navrhnutý čipset, ktorý filozofiou išiel vyslovene cestou hernej konzoly. Máte tam teda nezávislý ďalší Copper procesor, ktorý môže modifikovať grafiku aj v každom render riadku bez asistencie CPU. Blitter, ktorý robí presuny dát v RAM samozrejme bez asistencie CPU /výsledkom sú okrem iného aj softvérove sprajty/, bleskový DMA systém bez asistencie CPU. Grafická karta so zámernou optimalizáciou pre 2D hry. Plne samplované audio namiesto PC kvákania. Stačí si prelistovať staré časáky. Žrádlo pre oči a uši.
O viac ako 35 rokov neskôr sa dokončuje 8 bitový ZX Spectrum Next - kvázi ideové pokračovanie ZX 48K alias gumák. Zariadenie povestné totálnou absenciou akejkoľvek "hernej" podpory v HW. Next to má napraviť a pomstiť sa. Nebudem tu zatiaľ motať čo to dokáže - HW špecifikácie nie sú stále finalizované, ale s nejakou Amiga 500 si to hravo poradí. Má to lepšie rozlíšenie, viac farieb, viac HW sprajtov, natívne to dáta streamuje z mnoho gigabajtovej SD flashky, nie floppy disku. Už na starej verzii Next FPGA jadra o polovičnom výkone hlavný autor firmvéru povedal, že to zvládne akúkoľvek Amiga 500 hru.
Problém je, kde tie nové hry pre systém zohnať /soft pre pôvodné Spectrum trh aj dnes doslova chrlí !/. Hry robia konzolu, hernú
platformu. Opakujem otrepaný fakt. Hry pre Next sú dokonale podpultový
tovar. Ponúka sa niekoľko riešení /Kickstarter je snáď ten posledný/. Jedným je spojiť sily s Amigou alebo
PC a vyvíjať hry, tak aby ich zvládli všetky tri platformy /o PC
nepochybujem/. Je s tým však oveľa viac práce, na čo maličký tím 2-5
ľudí proste nemá čas ani prostriedky. A vy chcete natívne Next hry !
Ešte väčší problém a veľké sklamanie na mojej strane pri pohľade na reakciu speccy komunity. Technická na
okraj. Speccy komunita je totiž už desaťročia v dezolátnom stave - v zmysle, ze každý bojuje s
každým a všetci sa nenávidia. East blok nekomunikuje s anglosasmi, fóra sa v bratrovražednej toxicite rozpadajú a
západniari považujú Next za "iba svoj". Hry teda nie sú.
Našiel sa však rusák, ktorý prekročil idelogické rozdiely, zožral vlastnú
pýchu, je ochotný ísť do rizika a chce tu natívnu hru pre Next urobiť. A ide o veľmi renomovaného a potentného vývojára, ktorého dobre všetci poznáme.
Ich spectrum verzia Castlevania je neuveriteľná, atmosferický Alien: Neoplasma sa prerába už aj na C64ku, port Mighty Final Fight zložil KO aj NES originál a chlapci
sú ochotní niektoré svoje originálne spectrum hry aspoň "zafarbiť" do
Next podoby, teda žiadne atribútové kolízie, dokonca väčší počet audio kanálov v hudbičkách. A prečo som dnes extra
rozčarovaný.
proto WIP herné video - Vradark's Revenge pre ZX Spectrum Next
Sanchez Crew oznámil vývoj akčného RPG pre ZX Spectrum Next s WASD + myš kombináciou ovládania, čo veteránom jasne povie, akú to asi bude mať dynamiku a tempo. Video je vyššie. Alfa "exe" spustiteľné na PC som vyskúšal. Pohyb panáka je nezávislý od polohy "zameriavača" a fireballom kosíte enemákov. Môžem si teda povedať, že tu je množstvo "ak". Ak bude hrateľnosť tučná, ničenie diablovho semena zábavné, "drops" epické a truhlice plné a môžem pokračovať ešte pol dňa a skončí to ako opis ideálneho Diablo. Z inej veci som však smutný. Hra vo vývoji bola prezentovaná priamo na hlavnom FB konte ZX Spectrum Next /pyšne sa chvália tisíckami a tisíckami nadšených podporovateľov/ alebo na ruskej sajte idpixel.ru a výsledkom je 5 /slovom päť/ patrónov projektu s almužnou 25 euro na mesiac ku dnešnému dňu. A to som ja osobne jeden z nich a Next pritom ani nemám. Nie sú hry, nie je záujem o HW platformu, je koniec a je jedno, že to ľahúčko strči slávnu A500ku do vrecka. Situáciu monitorujem ďalej, keď zbankrotujú, tak odkúpim značku, vykopem lebku sir Sinclaira z hrobu a ovládnem svet. Dúhová mašíruje ďalej.
FMV má na strane koncového uživateľa dve dôležité fázy. Dekódovať zabalené dáta - mimoriadne CPU naročné a potom tie pixely rýchlo vykresľovať. Ak nemáte dobré GPU, tak je všetko na pleciach CPU. Kapitálny problém v roku 1993 s i286-386 procákom. Beh 3D hry je v tomto smere veľmi podobný. Transformácia vertexov na scéne - CPU na kolenách. Rasterizácia bez dobrého GPU - opäť všetko odmaká definitívne porazené CPU. Ak teda vaša i386/SX nezvláda DOOM v 320x240 pixel na 35 fps, tak nedá tutovo ani to FMV video v tej istej kvalite. Rozbehať DOOM, Quake alebo Crysis na všetkom od kľúčenky s displayom po inteligentnú ladničku patrí aj dnes medzi otrepaný herný foklór. Ide o hry, ktorá každá vo svojom čase výrazne prekračovala nárokmi HW vybavenie bežného hráča. Preto ten humbug. Menej pozornosti sa už dnes venuje /vlastne žiadna/ schopnosti prehrať FMV cez celú plochu obrazu - 25 pekných obrázkov za sekundu pri plnom pokrytí všetkých viditeľných pixelov. V čase DOOMa to bola ďalšia neriešiteľná vec. Hráč mal ledva procák triedy i386/SX33 alebo i386/DX40 s 8-16 bit ISA grafikou a tie v CD hre s FMV videami ako Star Wars: Rebel Assault /1993/ úplne prepadali. Recenzenti si to v 1993-1994 všimli tiež. Nutná bola nemožné drahá i486/DX66 na high tech 32 bitovom grafickom VESA LB slote. Aj toto monštrum by však okamžite havarovalo po kontakte s MPEG štandardom. Tento audio/videok kodek potreboval minimálne Pentium pri pokuse zvládnuť to softvérovo bez patričnej a na to určenej HW podpory /ilustračne dcérska "FMV MPEG" doska pre Amiga CD 32 konzolu veľká ako stôl a drahá ako volvo/.
Najjednoduchšie možné FMV video si predstavte ako sled obrázkov v plnom rozlíšení /bez kompresie a teda bez nutnosti dekompresie/, ktoré rýchlo hádžete na obrazovku. A každý obrázok je jedinečný. Rozlíšenie obrazu krát farebné rozlíšenie krát počet snímkov za sekundu a hneď zistíte, že vaše i386 CPU tie pixely tak rýchlo na obraz neprenesie. CPU je pomalé, zbernice sú veľmi pomalé, grafická karta je iba RAM s DAC. Nie je to GPU, nie je tam HW podpora pre nič. Fillrate /počet pixelov generovaných za sekundu/ je maličký a nestačí ani na plynulý skroling 2D grafiky v hre čo je invertovane to isté ako to plynulé 2D video. Rebel Assault však aj tak na tej i386 nejako beží. Dosiahne sa to jednoducho tým, že každú premennú rovnice razantne upravíme smerom nadol. Rozlíšenie sa stiahne napríklad na 1/4 a tie pixely sa potom nasilu roztiahnú na veľkú plochu. Je to teda príšerne kockaté a bez detailov, z hicolor 65K palety zlezieme na 256 farieb, alebo ešte nižšie a z 25 fps na polovicu alebo aj pod 10 fps. Je to teda hnusné a hýbe sa to prískokmi. Nečudujte sa teda šokovaným výrazom na tvárach hráčov, keď v intre Resident Evil 1 na PS1 uvideli plynulo prehrávané ľudské tváre v skvelom rozlíšení. PS1 mala nielen GPU s podporou pre 3D T@L ale aj HW dekodér pre dáta v MPEG formáte. PS1 s CPU na 33MHz teda bola o celú generáciu pred nastupujúcimi hernými PC.
V rozlíšení 320x240 v 8 bit palete je na jeden snímok potrebné asi 80 KB dát. Jedna sekunda videa na 25 fps teda chce 2 megabajty /taký dátový tok z floppy mechaniky a ani z CD v 1993 nedostanete/. Jedna minúta videa je 120 megabajtov a jedna hodina šokujúcich 7200 mega. Ak to teda dobre rátam. Na jedno bežné CD a dokonca ani DVD sa to nezmestí. MPEG kompresia to zmáčkne na malé zlomky tohto množstva a vystačí si aj s pomalou CD mechanikou /v prípade PS1 - double speedka/. Bohužiaľ na ošéfovanie MPEG formátu potrebujete buď dekompresný HW modul alebo ninja CPU. Amiga alebo bežné PC, konzola /SNES, MD/ v DOOM ére nič podobné nemala.
O viac ako 25 rokov neskôr tu je ZX Spectrum Next, ktoré pomaly finalizuje svoju HW podobu ako najvýkonnejší 8 bit všetkých čias a tá podpora pre MPEG tam nie je tiež. Nemá ju preto, lebo to už niet kde na FPGA vopchať /vybrali si lacný a nie veľký chip, semantický rozdiel je vám jasný/. Kapitolu či to zvládne "DOOM", už máme za sebou. Urobil sa až jeden pokus, dnes sa vážne nechce nikomu kódovať len tak pre radosť. Prišiel čas zmáknuť aj to FMV. Next je natívne napojené na radič s flashkou a má na 8 bit platformu veľmi rýchlu "2D" grafickú kartu. Plnohodnotný DOOM ZX Spectrum Next nikdy nezvládne ale 2D SHMUP hru rozbehá asi lepšie ako poctivá i386/DX40ka. Starý dobrý StarGunner /1996, PC/ mal v minimálnych HW specs uvedenú i486/8MB RAM pre rozlíšenie 320x240 na 60fps a nechcem strašiť, ale Next to dá na 30 fps už v prvej generácií svojich hier v obdobnej kvalite. Teoreticky. Prakticky sa to nikdy nestane. Malá základňa.
Šialený dav však chce na Nexte aj CD "flash SD" FMV hry ako ten Rebel Assasult alebo FMV aj s projekciou skutočných 3D meshov alebo sprajtov do videa. Je to možné ? Áno a to priamo "day one" z krabice. Podľa dev tímu výkon SpecNext 2D jadra, DMA a flash SD radiča stačí bez problémov zásobovať pixelami základné "legacy" rozlíšenie 256x192 pixel aj 25 snímkami za sekundu v 256 až 512 farbách. Rozhodne v lepšej kvalite ako tá hnusne kockatá cukatúra na i386 v FMV CD hrách. Problém s takým nekomprimovaným videom je, že každá sekunda je asi 1.2 mega dát a jedna minúta teda 72 mega, desať minút zas 720 mega. Niekoľko šikovných a veľmi strašne šikovných speccy kóderov preto rozpracovalo zopár nápadov, ako si s tým poradiť.
Kev Brady ešte pred asi troma rokmi na starej verzii 2D Next jadra /iba rozlíšenie 256x192 pixel, dnes je to až 640x256/ a na polovičnej rýchlosti systému /CPU, GPU, DMA na 14Mhz/ ukázal video v širokouhlom rozlíšení 320x180 pixel s akceptovateľnou kvalitou a rýchlosťou. A išlo o komprimované video s dekompresiou v reálnom čase. Toho chlapíka žeriem, ide o jedného z najlepších žijúcich speccy ASM kodérov na svete. To 320 pixelové rozlíšenie po horizontálne dosiahol tak, že využil HW sprajty a vľavo a vpravo mimo hlavnej zobrazovacej plochy nimi v vertikálnych stripoch natiahol obraz do šírky a do adresného priestoru tých sprajtov /sú vo vlastnej extra RAM mimo hlavný systém/ namapoval pixely toho videa. Je to blázon. Klikni na video v komentároch o dĺžke 2:38 minúty
Použil delta enkódovanie dát vo forme rozdielov /delty/ v sekvenčnom slede snímkov, skôr ako prácu s celými snímkami si teda všíma zmenu medzi dvoma snímkami. Ide sa až na úroveň jednotlivých scanline - riadkov obrázku. Túto prácu si urobíte na PC. Dekódovanie už beží na Nexte. A ide ešte ďalej. Veľmi špinavo /ako je na spektre zvykom/ využíva scroll HW registre v osi X a Y na pomoc s počítaním a uložením "motion" vektorov pohybu pixelov na obrazovke. Používa vlastné sofistikované softvérové kešky, double-buffering a pre-buffering /poznáte aj z YT videa/. Pozná to variabilný bit rate a variabilný dithering medzi snímkami. Používal v našom konkrétnom prípade 24 bitové PC video konvertované vlastným enkóderom do 9 bitovej palety Nextu /to je 512 farieb/. Next paletu bolo možné nastaviť individuálne pre každý frame osobitne. V jeho formáte má 10 minút videa s mono 15KHz zvukom asi 140 megabajtov. Dosahuje kompresiu okolo 6:1, čo je skvelé. Povedal tiež, že sa kódu od vtedy nedotkol a na novom jadre /turbo DMA, MMX inštrukcie/ s oveľa vyššou rýchlosťou to dokáže v ešte lepšej bravado kvalite, teraz však robí na konverzii hry z PC na Next.
Jari Komppa a jeho "very slow" video prehrávač pre ZX Spectrum Next,
možné použitie aj v hrách s predpočítanou trajektóriou pohybu
Najnovšie "work in progress" info na poli FMV pre Next. Oveľa menej talentovaný Jari Komppa sa pokúša o to isté ako Kev Brady, ale na najnovšej verzii HW Nextu. Ako oveľa horší kóder sa dopredu ospravedlňoval nech nečakáme zázraky. Prehrávač mu zatiaľ funguje iba v základnom rozlíšení 256x192 pixel, zvuk tam nemá /ale pracuje na tom/. Používa jednoduchú strátovú 1:2 kompresiu, nemá variabilný bitrate, nemá variabilný dithering, blending, plávajúce palety. Nemá vlastne skoro nič. Je to proste naivné cvičenie začiatočníka. Do procesu teda vstúpil špičkový kóder speccy demoscény pod nickom ped7g a pomohol mu extrémnnym spôsobom ten bordeľ aspoň zrýchliť. Stále je to "hlúpy" ale už aspoň veľmi rýchly kód a v alfa 0.6 verzii zvládne pekné kúsky a dá sa cez neho núdzovo prehnať aj celý Ghostbusters /1984/. Ak vaša hra nutne potrebuje animačku, intro, game over outro tak to rýchla cosplay s postefektami a jeden mobil s Jari Komppa softom dostane do Nextu. Má to celé v kompletnom balíku /enkóder, dekoder, streaming API, knižnica pre OS/. Čakám na verziu so zvukom, lepšou kompresiou, demátko ala Rebel Assault. Bonus - celosvetovo beží populárna FMV súťaž ako dostať toto referenčné Bad Apple !! video na systémy, kde FMV nemá čo robiť. Zamachrovať, ultra low level nakódovaťa ohromiť svet.
Žiadne retro, prudko progresívny rock@roll. Kúzlo FPGA. Aj váš AMD Ryzen alebo i9ka si v prototypovom štádiu prešiel touto fázou a je možné ju použiť aj ako definitívu. Ale poporiadku. ZX Spectrum Next - oficiálna kickstarter stránka. Speccy, ZXS, 48K alebo "gumák" je archaický stroj, ktorý sa nikdy nemal stať herným gigantom, zakladateľom iks herných žánrov, nesmrteľnou legendou ale zadarilo sa a prerazil. Košatý príbeh, nie však dnes. Dnes sa totiž snažíme tuto mašinku zachrániť pre večnosť tak, že ju implementujeme do FPGA v podobe ZXN alias ZX Spectrum Next, lebo viete, všetky tie viac ako 35 rokov staré matičné dosky, čipy, kondenzátory, rezistory majú svoju ohraničenú životnosť.
FPGA /Field programmable gate array/ - po slovensky pole logických členov programovateľné užívateľom nie je nič iné ako všeobecný "procesor" bez identity. Ak doňho nenahrajte HW konfiguráciu príslušného čipu je ničim, ak to urobíte môže byť hocičím. Motorola CPU pre amigu, DSP atari falcona, zvukovka SNESu, ten 8 jadrový intel alebo celé to naše ZX Spectrum. Geniálne a reprogramovateľné. Reprogramovateľné a teda si danú HD konfiguráciu ladíme do halelúja. A pretože ZX Spectrum Next je FPGA projekt, tak presne to aj urobíme. Ideme sa v tom vŕtať a vylepšovať. Pokec hlavne o grafike.
Originálne ZX Spectrum – to iba jedno grafické rozlíšenie 256x192 pixel, paleta s
15 farbami. Každý pixel obrazovky však nemôžu mať slobodne jednu z tých
pätnástich, namiesto toho je frame rozdelený do 32x24 buniek, každá
8x8 pixel, kde každý tento „atribút“ môže mať naraz v tomto
štvorčeku iba 2 farby, ak tam skúsite dať tretiu, tak premaže
jednu z tých dvoch a vyzerá to hrozne. Matematicky ide o 6144 bajtov pre pixel grid a 768 bajtov
pre „farbu“ a máte video frame v jednej 8KB mem
banke. RAM bola vtedy veľmi drahá. Geniálne, rýchle a
povestné atribútové kolízie ako bónus.
Iba jedna vrstva grafiky, žiadne HW
sprajty, žiadne scroll registre, teda zabudnite na super plynulý HW skrolling po X/Y
osi či diagonále, žiadne DMA, blitter, copper, proste nič. Všetko ťahá
ako krava pluh softvérovo 8 bit Zilog CPU na 3.5Mhz a je neuveriteľne veľmi náročené z toho dostať dobrú farebnú grafikubez artefaktov a s aspoň
12.5fps skrolingom, teda ¼ PAL 50Hz frame času. Grafiku by som skôr
definoval ako tile-map based, než bitmap based. Vysvetlíme neskôr.
ZX Spectrum Next /specnext/ – jedna z prvých
verzií jeho nového grafického FPGA jadra priniesla ďalšiu
vrstvu grafiky nazvanú Layer 2 /legacy mód nech je Layer 1/. L2 je plne bitmapová mapa, žiadne bitplán blbosti ala amiga, full frame veľkosti 256x192 pixel s 256 paletou, kde každý
bod môže niesť ľubovoľnú farbu z tejto 8 bit palety. Z 6912
bajtov pôvodnej
grafiky je však zrazu 49 152
bajtov /staré speccy gumák má presne toľko pamäte pre všetko: kód, audio, grafika/. Tento 8 násobný nárast dát je
ohromný vo svete osembitov a CPU to len tak bez pomoci nezvládne a kdeže je ešte double buffering teda
2x48KB. Monštruózne.
Museli teda pribudnúť HW scroll registre, neskôr aj špeciálne nové inštrukcie /niečo ako MMX ala pentium/, DMA – priamy prístup do pamäte bez asistencie CPU a
pôvodný kmitočet CPU sa z 3.5Mhz navýšil na 7Mhz. A verte mi, že to len tak tak stačilo. Jadro sa teda ladilo ďalej. Paleta išla z 256
na 512 farieb /9 bit/ a CPU na kombinovaný 14/7Mhz režim.
HW Sprajty. Veľká zmena. Sprite
engine zvládal 64 x 256 farebných HW sprajtov o veľkosti 16x16 pixel naraz na ploche, tvrdý limit 12 sprajtov na scanline riadok. Sprite pixel výkon
na štandardný 256 pixelový riadok bol teda iba 192 sprite pixelov /12x16/, sprajty nevedeli pokryť celú jeho šírku. K sprajtom sa neskôr
dopracovala schopnosť ich zrkadlenia, farebného offsetu a rotácie
okolo osi po 90 stupňoch bez asistencie CPU. Ešte neskôr aj rozšírená
kontrola nad line-interuptom.
staré, neaktuálne ZXN jadro - obligátne Shadow of the Beast tech demátko /mixuje L2 v popredí a Low Res layer v pozadi/
Keď sa to všetko nahádzalo na
plochu, tak to už vyzeralo ako malá amiga ale malo to kopu hrubých
hrán a príliš veľa brute force prístupu, aj niekoľko
drakonických obmedzení na strane sprite enginu /12 HW sprajtov na
scanline im prišlo málo, amiga má 8 a megadrive zas 20/. Ukážka HW a softvérových sprajtov specnextu naraz, aby sa obišiel HW limit na scanline.
Nakódoval sa tam aj copper procesor
ala amiga. Ide o zvláštnú vecičku, ktorá bez asistencie CPU vie
per scanline alebo uprostred neho meniť napríklad aj tie grafické informácie. Umožňuje
teda mať na ploche grafiku v rôznom rozlíšení, rôznej
palete, sprite multiplexor /jeden sprite „rozmnožíte viacnásobne
po celej ploche“/ a mnoho mnoho ďalšieho. Spolu s DMA vie do systému pustiť aj plne digitalizovaný audio stream /bežné nekomprimované PC WAVko, ZXN je defaultne nalepené na úložisko v podobe SD flash karty, na MG pásky zabudnite/.
Chvíľu bol pokoj a
potom prebral nad jadrom kontrolu iný človiečik dev tímu, ďaleko talentovanejší a sprite
engine sa kompletne prepracoval. Z 64 HW sprajtov je ich zrazu 128 !!, schopnosť mixovať 4 bit a 8 bit sprajty, teda 16 a 256 farebné, HW škálovanie
veľkosti sprajtov 2-4-8 krát po oboch osiach, otravný sprite limit na riadok
technicky padol !!, po novom scanline znesie aj 100ku sprajtov, teda
1600 pixelov na 192 pixelový riadok, čo je už vysoko prevysoko nad
možnosti akejkoľvek nenaturbenej amigy vátane Sega Megadrive.
novšie "2.x" jadro - mohutné scroll paralaxy, všetko čo vidíte sú vlastne sprajty, tie vrstvy, stovky a stovky sprajtov
Sprajty inak vedia
lietať po väčšom priestore než základných 256x192, konkrétne 320x256 a nový engine z
nich umožňuje urobiť aj niekoľko celo-obrazových vrstiev grafiky. Takže sa
blíži mohutné paralaxovanie. Malé zmeny sa robili aj na starej
legacy "atribútovej" grafike, proto-verzia HW skrolingu, tiež špeciálne
inštrukcie pre zrýchlenie vykresľovania grafiky, extra ULA Next paleta a
špecialny lores mód 128x96 /Radastan, to aby sme boli kompatibilný so
všetkým možným už vymysleným/.
Nezastavujeme, ešte
to chce riadne máknuť. Bitmap grafika s
48 kilovým videobufferom je príliš ťažkotonážna, takže tu bol
veľký tlak na tile-map based grafiku. Teda obrazovka, grafika
vytvorená z dlaždíc /v prípade specnext tu je priestor na 512 tiles plus rotácie, mirror, offset/ z ktorých si
tu hernú grafiku poskladáte ako to robil NES, SNES, Megadrive. Celý tile-map frame má do 12 kilo, je extrémne
rýchly a môžte ho kombinovať s bitmap based L2 vrstvou. V čiste
tile-map móde sa vyšplháte až do hires rozlíšenia 640x256
pixelov, jednotlivé dlaždice majú každá vlastnú 15 farebnú vlastnú paletu + alfa z celkových 512 farieb /a copper procák vám dokáže tých 512 farieb dostať naraz na ploche, žiaden problém/. Už to nie je amiga, či megadrive ale
plne vybavený, malý domáci arkáde systém.
Koniec ? Absolútnenie. Najnovšie, ešte experimentálne, "3.x" jadro je tak čerstvé, že nie je ani
zdokumentované. Ide však
o totálne prepracovanie všetkého doterajšieho so
stovkou úprav. Napríklad takt CPU je už
plných 14/14Mhz /border, plocha/, DMA detto na 14MHz, bitmap grafika už môže ísť aj
do 320x256 rozlíšenia bez sprite trikov /dobre pre adventúrky ako Monkey Island/,
nové špeciálne tile-map módy. Stará grafika, tá originálna, máuž aj jemný HW
pixel scroll. Copper procák išiel z 14 na 28Mhz a dáva tuším
20MIPS, takže rýchlosť svetla. A špeciálna pozornosť venovaná
návrhu spojenia - zbernice medzi specnext jadrom a vnútornou „turbo kartou“
ležiacou na akceleračnom porte. Niečo ako tie 030/50ky pri tých starých
amigách pod padacími dvierkami. V specnext tam je štandardne RaspPi Zero na 1GHz s vlastnou 512
mega RAM a so slušnou OGL 3D grafikou. Možnosti totálne nekonečné. Najnovšie sa to dá použiť aj jako zvukovka /amiga, PC, C64 audio formáty,
mp3, ogg .. čo len chcete/ a mixuje sa to podľa voľby ku vlastnej zvukovke specnextu /9 kanálový AY čip/.
Celý projekt teda
začal jako klasické ZX Spectrum v FPGA forme s diskrétnymi úpravami /statická 256 grafika v pozadí/ a po 2
rokoch bavkania prevalcoval postupne Atari ST, AMIGA 500, Megadrive a
je to dnes technicky mladší brat Neo Geo. Z podstaty FPGA vyplýva, že sa mašina môže a bude ladiť ďalej, hlavne DMA radič potrebuje ešte trochu pomôcť. Zoznam požiadavok vývojárov je tiež dosť dlhý. Kapacita FPGA alebo jeho vlastnej BRAM nie je nekonečná, niekde sa proste zastaviť nakoniec musíte. Nepýtajte sa ma na reálne, hrateľné ukážky /WIP port z PC/. Systém je objektívne báječne výkonný /CPU, GPU, RAM, SD mechanika/ a hra ktorá ho plne vyťaži preto zákonite bude drahá na človekohodiny a kapitál. Veľkosť uživateľskej základňe je na rečnícku otázku. Štandardné limitujúce faktory. SpecNext zvládne Metal Slug klony, Turricana, Raymana, Dune 2 dokonca aj jednoduché 3D veci alebo nejakého FPS Wolfika, Ultimu Underworld v "malom okne", kto ich však urobí, že áno.
FPGA scéna je dnes mimoriadne silná. Viď Megadrive v tomto formáte, Amiga Vampire, MISTer. Pred sekundou pribudol aj "Gameboy". Dostatočné veľké FPGA, ktoré kapacitne pokryje všetky vaše potreby aj s prislušnou matičnou doskou a konektormi máte za cca 130 euro. Na opačnom konci máte super high end za 31 000+ euro. Učiť sa špeciálny programovací jazyk začnite už dnes /VHDL, Verilog/.
Konečne odpoveď na otázku - SW alebo HW ? Laickým konzumentom je to šumafuk. Purista a nerd volí FPGA. Duch hardvéru je pomocou FPGA zachytený najviac podobne originálu. Praktické hľadisko vyzerá následovne. Na HW emuláciu Spektra alebo SNES na 3.5Mhz vám stačí FPGA čo žerie 2-4 watty a beží na 3.5Mhz. Na 7 megahertzovú amigu rovnako taktované FPGA. Rozumiete. Výrobca to vyrába na 28nm procese /na 7nm to tak skoro nebude a na 14nm si to môže dovoliť iba Intel a je to drahé/. Ak si pozriete PCB specnext uvidíte, že to FPGA tam leží nahé, ani len ten pasív, pliešok hliníkový, nič. Nenáročné. Pri SW emulácii to chce aspoň 45-65 wattové niečo od Intel/AMD so sakra vysokým výkonom na jedno vlákno a patričné chladenie. Osobne vidím ako súperov v hobby segmente dva tábory - FPGA /HW emulácia/ a šikovné RaspPI /SW emulácia/. Pikoška - RaspPI Zero /utiahne hravo Quake 3/, ktoré sa nachádza vnútri specnext ani omylom nestačí na jeho úplnú a presnú emuláciu v reálnom čase.