Проверил на реальном девайсе. Поймать вообще ничего невозможно, просто не успеваешь за запуском, особенно на 4.3, где запуск андроид-приложений ускорили очень сильно.
Тип: Сообщения; Пользователь: Q-Master; Ключевые слова:
Проверил на реальном девайсе. Поймать вообще ничего невозможно, просто не успеваешь за запуском, особенно на 4.3, где запуск андроид-приложений ускорили очень сильно.
Да, это я с его супругой разговаривал.
Вообще очень печально, да. Мы не особо много общались в принципе, но всегда когда мог он помогал либо советом, либо делом.
Покойся с миром Денис. :(
А сделай мне пулл-реквест плиз. Я в основную репу заберу.
С Днём Варенья! Больше эмуляторов, хороших и нужных!
С Днем Рождения!
Можно вот тут почитать https://habr.com/ru/company/mailru/blog/202832/
А вобщем тут и нечего начинать. Ожидаемо что nxtpcb и execute жрут максимум ресурсов. Это z80-core и там мало что можно для оптимизации сделать, я уже там и так извращался как мог. Тут только...
Ну вообще странно. Я пробовал перетаскивать твою процедуру целиком и не заметил изменений по фпс. Я вчера еще по разному игрался и пробовал вообще избавиться от конвертаций типов, но по фпс ничего не...
Я часть забрал. Спасиб.
Да. Там была смешная ошибка, которую я починил почти сразу.
У тебя 4 поверхности и 1 из них сильно лишняя. Я вообще сократил все до 2х.
А пулл-реквестик зафигачить?
PS: заготовка, да, пока не работает как надо, т.к. основная идея сделать поддержку ленты и загрузки с нее. Я сейчас там сильно.
- - - Добавлено - - -
CityAceE:...
Вариант https://stackoverflow.com/questions/13635144/using-pygame-with-pypy
Ну так можно и pypy использовать в принципе-то.
Обновление:
1. Перенес всю работу с памятью в отдельный модуль и закрыл ПЗУ на запись.
2. Думаю что стало чуть медленнее чем было, но не думаю что критично.
3. Исчезла проблема с мусором в...
Нашел один косячек копипасты, но это не от него проблема. Надо искать в чем дело дальше. Возможно буду сличать дампы регистров и флагов обоих эмулей, т.к. есть подозрение что где-то либо с флагами...
Это не от видео, а где-то косяки с коркой Z80. Пока не нашел.
Прогресс:
1. Очень сильно оптимизирован видео-вывод
2. Сделал гитхаб проект https://github.com/Q-Master/PyZX
На всякий, прикладываю новую версию архивом и сюда
Хм, надо покопать где я что забыл или напутал. Память - да, надо править
Прогресс таков:
Починил загрузку z80 и sna
Починил работу Z80-core
Кажется починил везде флаги ( не на 100% уверен )
Есть сомнения в HALT и прерываниях вообще.
Пока не правил работу с...
CityAceE, да, работу с памятью надо чинить, чтобы была возможность работать со страницами и ПЗУ и другой вопрос, что я пока не придумал как это сделать красиво. Думаю, что это вообще не проблемы...
"Я починиль" (С)
Вобщем граблей было очень много и до сих пор я не все выловил, НО
1. В исходном эмуляторе неверно отрабатывл обсчет тактов для команд типа *IR. Я исправил и теперь прерывание может...
Пока ситуация такова:
1. Я осилил переписать код Z80 и пока не особо заморачивался с оптимизацией.
2. Я напрочь забыл какой ужос эти ваши флаги. :) Подозреваю что у меня сейчас там все плохо...
PyPy, Cython, python-jit, C-extensions.
Cython мы на работе юзаем для написания экстеншнов.
Смысла нет ровным счетом никакого. Доступ к переменным класса и ф-циям класса в питоне несколько медленнее, т.к. везде передается self и еще там куча всякой магии.
Я косяк с копипастой. :) Там 1000000 итераций, как оно скопипастилось как 100000000 - фиг знает + это было на 2.7, а вот на 3.7 с массивом - 3.174003737999996, с диктом - 3.1171019020000017, что...
Нет. Это не так. Для ключа типа int это поиск ровно такой-же как и смещение в массиве. В питон3.6 и выше это поведение еще более оптимизировали.
CityAceE: Оставь диктом. Флаги у тебя тоже верно...