[zxspectrum] Re: zx-badaloc hacker edition

  • From: "Eugenio Ciceri" <eugenio.ciceri@xxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Sun, 4 Jan 2009 13:56:27 +0100

La sola descrizione mi ha eccitato come un cammelo! (Non ho detto
dromedario, bada bene ;-))

Manca solo la possibilita' di interagire col film porno, ovvero
peek&poke on the fly per far assumere alla pornostar di turno la
posizione che preferiamo, dopodiche' credo che molti frequentatori
della ML potrebbero anche decidere di fare a meno del sesso (da qui il
termine 'smanettoni'? ;-))



Il 04/01/09, Alessandro<alessandro.poppi@xxxxxxxxx> ha scritto:
> Buon Anno :-)
>
> Nei giorni scorsi ho aggiunto qualche funzionalita' un po' bizzarra alla
> versione principale del clone, ovvero quella che gira sulla scheda 3E.
>
> C'e' un picoblaze www.xilinx.com/picoblaze affiancato al T80, che esegue
> compiti di servizio.
>
> Uno e' quello di visualizzare un puntino in movimento su 7 led (stile
> supercar :-) proporzionale alla reale cadenza di M1, quindi e' un buon
> indice della velocita' di esecuzione del processore. Ogni avanzamento
> avviene dopo il conteggio di 62500 cicli M1, che moltiplicati per 8 (anche
> se ci sono 7 led disponibili, l'ottavo era gia' usato) portano ad un 'giro
> di led' ogni 500K istruzioni eseguite.
>
> Il picoblaze gestisce anche il display LCD, morto in tutte le precedenti
> versioni, visualizzando il contenuto dei registri del clone ($7FFD, $1FFD,
> piu' tutti quelli custom) in modo da sapere sempre qual e' il ram_bank o
> rom_bank o ddr bank attivo, se i registri sono lockati, etc etc (insomma
> tutto quello che si puo' dedurre dal contenuto dei registri).
>
> Nella riga sotto c'e' l'indirizzo ed il dato a cui lo Z80 sta accedendo,
> seguito da due lettere (non c'era spazio) che sono 'm' se e' un accesso in
> memoria, 'i' se I/O + 'r' se e' lettura, 'w' se e' scrittura. Ovviamente non
> si legge una mazza, ma qui entra in ballo la manopolina dell'encoder:
> ruotandolo verso destra si aumenta la frequenza di clock 'on-the-fly' da 3.5
> fino a 42MHz, ma ruotandolo verso sinistra, quando si 'sfora' sotto i 3.5MHz
> entra in funzione un prescaler.
>
> Questo prescaler, che e' a 24 bit e puo' essere scritto dal picoblaze a
> piacimento, viene riempito di '1' man mano che si ruota verso sinistra ed
> eventualmente svuotato ruotando a destra (quando e' di nuovo vuoto, la
> frequenza torna a salire fino a 42MHz.
>
> Il contenuto del registro e' utilizzato nella fpga per scartare un pari
> numero di clock Z80 dopo ogni accesso in memoria o I/O. Quindi, ruotando di
> tre colpi, il registro conterra' 000007 (tre bit set) e verranno persi 7
> clock dopo ogni accesso.
>
> Ogni volta che il contatore si esaurisce, il clock Z80 ricompare e dura un
> 'treno' fino a quando non si completa un nuovo ciclo; in questo modo, sul
> display appare ad ogni 'step' l'indirizzo, il dato ed il tipo di operazione
> appena svolta. Per esempio, un loop LDIR mostra i due opcode fetch (ED, B0)
> poi il ciclo di lettura in memoria del dato da copiare, poi il ciclo di
> scrittura nella locazione destinazione. Per me e' come vedere un porno. Se
> si tratta di un opcode fetch, il led avanza subito (senza prescaler 62500
> altrimenti non si muove piu' :-)
>
> La velocita' piu' bassa e` 7FFFFF e corrisponde ad una istruzione ogni 2
> secondi. (O meglio, ad un ciclo memoria o I/O). Scendendo ulteriormente a
> FFFFFF si entra in modo 'single step'. Lo Z80 resta fermo ed avanza di un
> ciclo solo quando si preme il bottone WEST.
>
> Ho fatto un paio di partite a raiders smanettando sull'encoder in modo da
> vedere i proiettili a velocita' di lumaca. E' facile vincere :-)
>
> Ciao!
>
>
>

Other related posts: