Nem tudom, eredetileg hol találtam az információt, de az emulátorban 32/36 Z80 ciklus, a 16 nem lenne elég ahhoz, hogy megbízhatóan működjön.
Igen, ezert kerdeztem en is ... Amugy kisse ellentmondo infok vannak (soha nem volt Spectrumom, ezert leirasokbol tajekozok, meg ilyenek ...), es a leirasok - szamomra - tulsagosan "lazak", nehol nem egyertelmu stb. Szoval meguntam a dolgot, es epp egy allitolag tok megbizhato ULA-reimplementaciot nezek, marmint CPLD/FPGA-sat, pontosabban a Verilogban irodott szerkezetet, az alapjan modtam csak ezt. Engem is kisse meglepett (16 az kevesnek tunik!) eredeti kerdesemet azert is tettem fel, hatha valamit nem tudok esetleg, es kiderul, hogy egy utasitas vegrehajtasa soran tobbszor vizsgalja a Z80, tudomisen minden M-ciklus vegen, vagy pedig arrol van szo, hogy nem az opcode legvege fele, hanem elobb, es ezert a 16 eleg, stb, nem tudom ... De tenyleg csak tippelgetek. Az is lehet, rossz az alapfeltetelezes, es a kerdeses verilog kod is, vagy en nem olvasom jol
Hmm. Egy dolog szoget utott a fejembe: valojaban az igazan hosszu utasitasok nem egy utasitas. Van DD/FD prefix es/vagy CB is pl, vagy ED ... Az nem lehet, hogy itt azert nincs gond, mert a prefix maga egy utasitaskent is felfoghato (tehat latch-elheti az interrupt igenyt), annak ellenere, hogy nyilvan egy prefix es utana levo cucc kozott nem fogja ettol meg vegrehajtani (az nagy baj is lenne), de latch-elve mar van. Mert ha jol nezem talan a leghosszabb utasitas Z80-on 23 orajel ciklus, nem tudom kijonne-e igy, ha figyelembe vesszuk hogy meg az utasitas kozvetlen vege elott van sampling meg _esetleg_ prefix-ek vegen is valami. No persze siman lehet, hogy eleve rossz a feltetelezesem es nem 16 ciklus (marmint CPU-nyiban merve), es az egesz hulyeseg amit itt feszegetek temat
Amugy ez a teora - talan - ellenorizheto lenne egyszeruen is, mert pl ugye a DD/FD prefix-ek sorozata (pl DD DD FD DD FD ....) valojaban semmi ertelmeset nem csinal, amig nem jon az elso nem DD/FD, es akkor az utolso szamit (ellenben ugye a CB/ED-vel). Most kerdeses, hogy ilyen mestersegesen elnyujtott cuccban ha kozben jon interrupt keres ami le is cseng, azt latch-eli-e a z80 es esetleg vegrehajtja miutan vege a DD/FD+opcode mizerianak ...
Kar, hogy nincs egy spektrumom meg egy digi-szkopom, egy triggert raallitva szepen ki lehetne merni a gyakorlatban, hogy milyen hosszu is az.