barsik, в общем-то b2m вроде бы уже все объяснил, и мне нечего добавить. У меня все сделано практически так же, да и в большинстве современных эмуляторов разных авторов и разных платформ, я думаю, тоже.


Цитата Сообщение от b2m Посмотреть сообщение
Кстати, я сталкивался с проблемой заметного отставания музыки, когда пытался переделать эмулятор на SDL. Причём размер буфера особой роли не играл. Pyk, а как ты эту проблему решил?
В 3-й версии такая проблема вообще возникнуть не могла, так как я синхронизировал эмулятор как раз со звуком. В текущей же используется SDL2, синхронизируется с performance timer'ом (хотя скорее всего хватило бы и обычного), и со звуком проблем не было. Да и вообще, непонятно, из-за чего может появиться отставание, может быть, как раз накапливались не перенесенные на следующий цикл какие-нибудь отброшенные остатки от деления? Не зная особенностей твоей реализации, сложно сказать...


Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
Pyk, если у вас заявлена высокая точность по времянкам
то вы должны знать когда именно проц выдает hlda
Нет, я начал изучать этот вопрос, но так и не добил пока точные времянки, поэтому воздержусь от ответа, чтобы не наврать.
Зато этого добился uart, надеюсь, он подскажет.

У меня же было просто некое добавленное за несколько минут эвристическое решение, которое резко увеличило точность и зачастую даже выдавало совершенно точные значения на тестах. Но сейчас я уже сам до конца не понимаю, из каких соображений я это сделал и как оно вообще работает. Попытки улучшить приводят только к ухудшению, так что пока его убрал.