Ciao a tutti. Durante lo sviluppo del Badaloc su fpga mi ero accorto che il T80 non rispetta il timing di nessuna istruzione di I/O, che per inciso durano 1T in meno. Questo era particolarmente deleterio per l'accesso alla sdcard, visto che (da una idea di Paolo Ferraris) il trasferimento si basa sul fatto che per shiftare 8 bit occorrono 16 cicli di clock, proprio come i 16T di una istruzione INI o OUTI. Questo porta ad una velocita' di accesso pari a quello ottenibile da memoria a memoria. Peccato che se il ciclo I/O dura 15T invece di 16, non funziona piu' nulla. Ho allora contattato Mike J (mantainer del T80) che ha constatato il problema e mi ha chiesto di mandargli un testbench dello Z80, in modo da poter confrontare il T80 con uno Z80 reale (ha un analizzatore di stati). Al momento ho scritto questo codice, ritengo che esegua tutte le istruzioni *documentate* dello Z80, facendo attenzione a quelle che manderebbero in crash il test se eseguite senza precauzioni (una su tutte i jump): http://www.zxbada.bbk.org/BENCH_V1.00.zip Mi ha gia' mandato una patch non ufficiale in cui gli I/O sono tornati normali :-) ma non vorrei aver tralasciato qualcosa. Non e` che qualche bravo programmatore di spectrum :-) gli darebbe un'occhiata? Mi ha anche detto che se gli preparo un testbench per le istruzioni non documentate, le implementa tutte quante. Sapete se esiste un lavoro gia' fatto, o devo proprio cominciare? Ciao e grazie! Alessandro