Цитата Сообщение от barsik Посмотреть сообщение
Как Вы тормозите - добавляя паузу после каждой команды (как делаю я, отчего получается дискретность и разбалансировка), добавляя большую паузу после, например 10.000 команд или добавляя количество кадров визуализируемых за секунду?
Выполняя в одном цикле эмуляции ровно столько тактов процессора, сколько выполнилось бы реальным процессором за время, которое прошло с предыдущего цикла. Сколько раз в секунду запускать цикл эмуляции, в таком случае, неважно. Можно 50 раз, а можно и 100 раз. Главное, что будет проэмулировано ровно столько тактов, сколько надо. Единственная погрешность - это погрешность при пересчёте времени в такты. У меня в эмуляторе время берётся в миллисекундах (количество тиков), соответственно если тактовая частота не кратна 1000, то количество тактов будет плюс-минус один. При 100 циклах в секунду до 100 тактов погрешности. Но при частоте около 2МГц это лишь 0.005%.