Nem értek egyet. Az ep128emu a windows/linux rendszeren futó felhasználói program. Gondolom az operációs rendszertől kér multimédia megszakítást, hogy tartsa a Z80 órajeleit. Amit vagy megad a windows vagy nem. Úgy tekintek rá mint egy "homokozó" ahol gyorsban ki lehet próbálni dolgokat, debugolni stb.
Holnapután már megint változtat valamit a Microsoft a directx programcsomagokon, és megint nem fog működni az emulátor.
Mindig majd lesz egy újabb verzió, meg egy hosszú verziótörténet.
Nem lehet az EP128 emuhoz csatlakoztatni hardvereket. Pl ha készítek egy külső sprite akármit, vagy midi akármit, nem tudom az EP emuval összekapcsolni.
A billentyűzetprobléma amit korábban írtál, ez is csak egy régi tapasztalat, ami manapság már változott. A gamer billentyűzetek manapság nem sor/oszlop fólialetapogatással dolgoznak, hanem minden gomb bemegy a feldolgzozó csipbe egyenként. Emiatt nincs olyan gond, hogy több billentyűt nyomsz, és nem veszi észre. Kialakításuk miatt az áruk is magasabb persze.
Az USB protokol igenis nagyon gyors. Ha kap egy USB master vezérlőt az FPGA EP, akkor az csak a billentyűzettel fog kommunikálni, így tartható az igen magas feldolgozási sebesség. Hidd el, előbb át fog menni a lenyomott billentyű kódja, mint hogy a Z80 kiadjon egy out/in utasításpárt.
Megjegyzés azoknak akik kevésbé ismerik: A billentyűzet letapogatás úgy történik az EP-nél, hogy a Z80 kiad egy out utasítást, amit egy in utasítás követ. Ez után jön a kiértékelő rutin. Ezalatt bőven le lehet kérdezni a billentyűzetet.
Ez EP Emunál a windows kezeli az USB-t és a egy emulátor dolgozza fel a jelet, nyilván ebben van késleltetés.
Az FPGA további előnye, hogy jó ha van egy "játszós EP" amin ki lehetne próbálni dolgokat. Nem feltétlen kellene egyből a valódi gépnek esni pákával.
Ha egyben lenne minden (CPU+NICK+DAVE+MEMÓRIA) az FPGA-ban, akkor az EP FPGA-ban való leprogramozása is sokkal egyszerübb lenne, nem kellene ezeregy régi RAM IC-t illeszteni egy FPGA-hoz. Az összes valódihoz hasonló viselkedést (késleltetést) simán lehet szimulálni. Biztos vagyok abban, hogy sokan szívesen ki is kapcsolnák a késleltetést, hogy lássák, hogyan fut egy Outrun anélkül.
Ahogy néztem a letölthető Z80 FPGA kódokat, olyan is lehet, hogy egy cache-be beolvassa a Z80 a program-memóriának egy szeletét, és egy ciklusra le lehet rövidíteni csak a byte fetching-et. Akkor is ha több byteos a kód. Ezzel bizonyos esetben többszörös gyorsulás érhető el úgy hogy marad a 4MHz. Ezután még egy 4-ről 50MHz-es órajel növekeléssel akár 100-300x gyorsabb EP hez juthat a felhasználó, már ha igénye volna rá persze. Mindig is kíváncsi lettem volna, hogy néz ki egy BASIC program, ami gépi kódú rutin sebesség kétszeresével fut végig.
Kis ügyességgel DOOM szerű FPS játék lenne írható BASIC-ben, anélkül hogy szaggatna.
Még egy érdekesség, ha az FPGA Z80 szteroidokon lenne és eszméletlen gyorsan tudna a normál és video memóriában mezőket másolni (lévén, hogy az FPGA a NICK és Z80 közös memória hozzáférést megoldaná, és z80 CACHE miatt rövidebb ciklusok lennének), akkor máris lenne piszokgyors sprite kezelés, de a teljes képernyős görgetés akár horizontálisan akár vertikálisan szintén hihetetlen gyors lenne.
Szerintem egy következő EP klub alkalmával sokan szívesen megnéznék, hogy mit tud a vas.