Все о БК ДВК УКНЦ VAX Alpha
Архив ПО для ретрокомпьютеров
предоставляю бесплатный хостинг на PDP-11.RU для проектов о ретрокомпьютерах
Основаная модель в "промышленном программировании" - выкатить результат к релизу, затративши минимальное количество работы. Потому имеем то, что имеем. Не всегда в этой "потогонке" есть возможность остановиться, пораскинуть мозгами, переделать то, что "работает".
Внутри DC302 очень много двунаправленных шин и bus-holders на них, ввиду чего шины могут работать как кратковременные латчи при низком CLK. И это достаточно сильно затрудняло анализ, было непонятно направление передачи данных и в какой момент. Пришлось нарисовать относительно высокоуровневую блок-схему и раскрасить ее согласно рабочей фазе тактового сингала:
Теперь стало принципиально понятно где что бегает и можно допиливать асинхронную модель F11.
Не потребляй
Может быть после завершения проекта выкладывать исходники (хотя бы частично) и тогда народ займётся оптимизацией?
Как пример – первый Doom оптимизировали недавно.
Последний раз редактировалось Manwe; 14.11.2021 в 20:34.
manwe.pdp-11.ru
Дописал начерно асинхронную модель F11 в мнималке - KDF11A + DC302 + DC302. Пока без MMU (там еще схему доделывать) и FPP (там надо шлифовать, фотографировать, матрицы верифицировать, еще очень много работы). Можно приступать к отладке.
Вот тут выложил двухстраничный tiff, показывающий сколько ошибок было исправлено в процессе рисования схемы и написания модели (если переключаться между страничками - то хорошо будет видно дельту).
Это спорный пример. Там исходно код неправильно написан. Doom на самом деле нормально рисует только вертикальные стены. А полы и потолки -- это зазоры между стен, которые условно считаются, как стены, затем пересортируются в специальные структуры под названием visplane (которых иногда бывает not enough), и вконец рисуются отдельным специальным образом. Всё это медленно.
В Quake всё гораздо лучше. Собственно, сам Кармак говорил, что если технологии вставить оттуда туда, то скорость Doom должна вырасти на 25% примерно. Я прикидывал на пальцах -- вроде верно.
В видео оптимизация сводится к отказу от тестурирования полов. Ну ясное дело, так быстрее.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)