On Tuesday, January 06, 2009 11:16 PM [GMT+1], Luca Bisti <lucbisti@xxxxxx> wrote:
Pero' ti posso dire come si fa di solito negli emulatori a realizzare l'autostop del nastro: banalmente si rileva la fine di un ciclo stretto di istruzioni IN, con qualche condizioncina di rinforzo tipo il salto di PC da un'altra parte in memoria, diciamo ad almeno 256 bytes di distanza dall'area del loop.
Interessante, anche perche' non dovrei scomodarmi ad interpretare tutti i possibili opcode usabili per una IN: basterebbe inizializzare un contatore ogni volta che il processore esegue un accesso I/O su $FE in qualsiasi modo, se arriva a zero e' finito
In realta' a volte si mette anche l'autodetect del pattern di istruzioni tipico del loop di campionamento dei loader, ma forse questo e' gia' un po' troppo complicato.
Si, credo di siCiao!