-
16d3262340
Звук: насос CBL качает через W3 — вход в BIOS ломал W0
snark13
2026-08-25 19:36:47 +03:00
-
4327ac88b9
R1 (рабочая копия roomtest) — в .gitignore
snark13
2026-08-25 17:13:35 +03:00
-
ba3aca07bf
Архивы ресурсов PBA1: звук одним файлом, музыка потоком; ALLOCS 6000
snark13
2026-08-25 17:13:25 +03:00
-
34ba5f71d5
Музыка: PCM-трек через CBL, первый экран истории озвучен
snark13
2026-08-25 15:21:22 +03:00
-
ffb59b3470
Статус-строка: время, отсчёт ##:## в отладочной полосе, смерть как в оригинале
snark13
2026-08-25 15:06:17 +03:00
-
5756101d29
Статус-строка: LEVEL N и лейбл QS/QL до дисковой операции
snark13
2026-08-25 14:13:48 +03:00
-
47a4b084c4
Меню, статус-строка и оболочка игры: title/intro/cutscene/HoF, POP.CFG, палитры
snark13
2026-08-25 13:58:36 +03:00
-
7fd7f28ffc
Доки: план меню (рендер, restart без подтверждения), QSAVE закрыт
snark13
2026-08-22 12:45:01 +03:00
-
f4b4852d51
QuickSave F6/F9 в roomtest; bank_load_file/bank_save_file/gfx_w0_page_prepare; sprinter-cc: авто n_banks
v0.6-pop-quicksave
snark13
2026-08-22 11:53:10 +03:00
-
b6699b3aef
Разрез pop_tile: холодная половина в банк 5 (−1788 Б резидента)
snark13
2026-08-20 22:26:05 +03:00
-
536c60d14c
AGENTS.md + .codex/config.toml — конфигурация агента
snark13
2026-08-20 21:59:28 +03:00
-
e2730f78e0
gfx_scroll_v: колоночный accel-проход без буфера-посредника + тест scroll
snark13
2026-08-20 21:59:28 +03:00
-
3ea4546656
cbltest: пропущенный вызывающий cbl_open + обновление размерного эталона
snark13
2026-08-20 21:59:28 +03:00
-
8458ec65f4
libc/cbl: две точки входа вместо underrun_mode — malloc больше не в резиденте
snark13
2026-08-20 21:53:08 +03:00
-
63e426cc0d
Откат оптимизации резидента: перенос данных банка в его страницу ломает картинку
0.0.3-prealpha-soundeffects
snark13
2026-08-20 21:26:23 +03:00
-
90255737c2
Откат bank-data для pop_trob: указатель на его статику уходил наружу
snark13
2026-08-20 21:21:44 +03:00
-
354582662c
Резидент W1/W2: данные pop_room и pop_trob — в свои банки (−2546 Б)
snark13
2026-08-20 21:14:02 +03:00
-
c6828c0ad1
Ворота PoP: правильный гейт слышимости, звук «решётка встала», playsound кнопки
snark13
2026-08-20 21:03:16 +03:00
-
a630568a8b
Звук PoP: приоритеты и перебиваемость вместо «всегда перебивать»
snark13
2026-08-20 16:46:04 +03:00
-
f159aa47e1
CBL: заливка буфера тишиной при открытии + щелчок на выходе из PoP
snark13
2026-08-20 16:23:06 +03:00
-
e0c86a96ef
Ctrl+S — вкл/выкл звук; чит «выдать меч» убран
snark13
2026-08-20 15:49:33 +03:00
-
7e2e7fbb37
Тишина на первом уровне: звук включался только после смены уровня
snark13
2026-08-20 15:25:09 +03:00
-
8ea4c32e51
Звуковые эффекты PoP: оцифровка оригинала через CBL
snark13
2026-08-20 15:16:43 +03:00
-
24ced6058f
Упаковщик звуковых эффектов + сверка наборов MSDOS и SDLPoP
snark13
2026-08-20 12:42:19 +03:00
-
a3d37bcbfe
Тень закрыта: прогон на уровнях 4/5/6/12, расхождение по кайме в impl_diff
0.0.2-prealpha
snark13
2026-08-20 12:33:46 +03:00
-
22cdc67c3a
Звук: подтверждён формат (8 бит моно) и замерен бюджет EMM
snark13
2026-08-20 12:25:31 +03:00
-
4688364091
Звук: решения пользователя и единая частота 10 937,5 Гц
snark13
2026-08-20 12:10:04 +03:00
-
9f9a8f26ae
Звук: разобраны все наборы MS-DOS версии, включая mt32snd
snark13
2026-08-20 11:57:19 +03:00
-
7fcd93a35b
Разбор звука: эффекты через CBL как есть, музыка на AY из нот PC-спикера
snark13
2026-08-20 11:53:02 +03:00
-
d1183f7315
Отладочный старт перехватывал смену уровня
snark13
2026-08-20 11:35:09 +03:00
-
30bcc3459b
Атлас Тени: запечённый набор вместо спрайтов стража
snark13
2026-08-20 11:22:53 +03:00
-
e60a04e900
Тень: набор спрайтов выбирает поле кадра, а не charid; SHADOW.DAT у нас нет
snark13
2026-08-20 10:50:36 +03:00
-
b6660d7694
Атлас Тени: остановились на 16 цветах (гибридный подбор), блок 0xA0..0xAF
snark13
2026-08-20 10:39:40 +03:00
-
acb483897d
Разбор атласа Тени: алгоритм оригинала, замеры палитры, план
snark13
2026-08-20 10:38:27 +03:00
-
47c26d1899
TUNE-2: параметры стражей в CFG-файл (формат секций как у SDLPoP)
snark13
2026-08-20 10:23:20 +03:00
-
0ef8c4b60e
Бессмертие: два уровня вместо тумблера
snark13
2026-08-20 10:08:52 +03:00
-
10b920f156
impl_diff: ГСЧ разведён по доменам (у оригинала один сид)
snark13
2026-08-20 09:43:07 +03:00
-
6bdac70508
Отладочная метка: уровень, комната, режим скорости, бессмертие; дефолт NORMAL
snark13
2026-08-20 09:40:57 +03:00
-
5d61224229
Реестр оптимизации: бюджет кадра вырос втрое, срочность позиций падает
snark13
2026-08-19 23:23:22 +03:00
-
35d7bd38d4
L1-SPEED закрыта режимами скорости
snark13
2026-08-19 23:21:52 +03:00
-
5e9c6a2e9e
Пейсинг: результаты замеров и грабли методики
snark13
2026-08-19 23:21:33 +03:00
-
a6e39070af
Фиксированный логический кадр по лучу + режимы FASTEST/FAST/NORMAL
snark13
2026-08-19 23:06:27 +03:00
-
61b8d80275
Пейсинг: подробный разбор счётчика кадров по лучу (условие точности, точки выборки, приёмка)
snark13
2026-08-19 21:55:05 +03:00
-
7f778bba2f
Разбор перехода на фиксированный логический кадр (кода не трогали)
snark13
2026-08-19 21:41:13 +03:00
-
39c3247532
Док 13/23: регресс после дня оптимизации 11/15
0.0.1-prealpha
snark13
2026-08-19 18:56:07 +03:00
-
d0ac4b1c2a
Каскад уровня 13 не падал: в гейте P5 пропущено шестое место взвода
snark13
2026-08-19 18:50:32 +03:00
-
d0de6dedf4
HEAL-WIDTH: heal чомпера ровно 32x60 — его точный след
snark13
2026-08-19 18:36:04 +03:00
-
b6b214e225
Реестр: HEAL-WIDTH закрыт, P10 разобран без реализации
snark13
2026-08-19 18:27:18 +03:00
-
f62989e358
HEAL-WIDTH: ширина heal'ов по фактическому следу из атласа
snark13
2026-08-19 18:25:35 +03:00
-
a29fb8da34
Реестр: P6a закрыт (-840), P6b оставлен неделанным
snark13
2026-08-19 18:18:13 +03:00
-
5a42b2d245
P6a: указатель модификаторов комнаты кэшируется между trob'ами
snark13
2026-08-19 18:17:38 +03:00
-
52a36caa75
Реестр: P18 — метка огрублена по X (отложено)
snark13
2026-08-19 18:07:36 +03:00
-
9e03739bb0
Реестр: P4 откачен, добавлен P17 (разрядность)
snark13
2026-08-19 18:02:09 +03:00
-
79bcabde94
Габариты спрайтов в байтах: uint16_t -> uint8_t в слоте отрисовки
snark13
2026-08-19 18:00:19 +03:00
-
892f005ca5
pop_blit_b: границы экрана двумя беззнаковыми сравнениями вместо четырёх знаковых
snark13
2026-08-19 17:52:43 +03:00
-
b3e754a66b
Revert "P4: каталог атласа читается из W0, а не через мап W3 — минус 408"
snark13
2026-08-19 17:42:51 +03:00
-
a993cb3b62
Реестр: P4 частично, эффект много меньше ожидаемого
snark13
2026-08-19 17:41:14 +03:00
-
06fb4235f0
P4: каталог атласа читается из W0, а не через мап W3 — минус 408
snark13
2026-08-19 17:40:24 +03:00
-
6f077b0d6d
Разбор P14: он сводится к P4 (цене блита)
snark13
2026-08-19 17:29:19 +03:00
-
952879e7fa
Реестр: три отрицательных результата по оптимизации проверок
snark13
2026-08-19 17:17:27 +03:00
-
68e7d17b14
Реестр: P16 закрыт, P14 уточнён замером трупа
snark13
2026-08-19 16:57:47 +03:00
-
e501982457
Проверка «задет ли слот» без пяти аргументов: минус 3 684
snark13
2026-08-19 16:56:50 +03:00
-
f47d79ded8
guard_over_kid — только когда кого-то рисуем: минус 14 118
snark13
2026-08-19 16:42:54 +03:00
-
379c513087
cd_quiet: сравнение снимка без построения структуры — минус 8 016
snark13
2026-08-19 16:33:31 +03:00
-
52bcc65a62
Особенность: убитый за правым краем страж не виден ни в одной комнате
snark13
2026-08-19 16:23:41 +03:00
-
41deb69013
Реестр: P15 закрыт замерами обеих позиций
snark13
2026-08-19 16:09:47 +03:00
-
767d6f78a4
P15: метка «фон трогали» стала точной — минус 167 880 тактов на кадре
snark13
2026-08-19 16:04:46 +03:00
-
17c41b32de
P15 переписан: перекрытия нет, виновата грубость метки
snark13
2026-08-19 15:40:30 +03:00
-
a65da96960
CHAR-PARTIAL-REDRAW: обязательная задача о неподвижном персонаже
snark13
2026-08-19 15:35:54 +03:00
-
d3049693b8
Реестр: сводка и статусы обновлены; замер тяжёлой позиции
snark13
2026-08-19 15:30:04 +03:00
-
6faf81016a
Замер цианной фазы: крупного лишнего в отрисовке персонажа нет
snark13
2026-08-19 12:53:49 +03:00
-
068e21b56a
Реестр: P2b закрыт; иерархия референсов и трамплины в цикле
snark13
2026-08-19 12:37:34 +03:00
-
f8493a4c04
P2b: луч видимости стража 36 786 -> 13 002 (-65 %)
snark13
2026-08-19 12:37:06 +03:00
-
da17a48576
Реестр: P2a закрыт, следующий P2b
snark13
2026-08-19 12:09:30 +03:00
-
2bdaf0f4cd
P2a: coll_scan переведён на 8 бит и снят с IX — минус 3 486 в коллизиях
snark13
2026-08-19 12:06:43 +03:00
-
de68eb5cec
P1: чомпер перерисовывался неизменной позой — минус 110 802 такта
snark13
2026-08-19 11:30:01 +03:00
-
f81b30eb68
Замер P2 и P6: главные статьи — физика двух Char и луч видимости
snark13
2026-08-19 11:05:58 +03:00
-
6d7c1c8b6b
P5: гейты холостого хода в pop_loose_tick — минус 33 840 тактов на кадре
snark13
2026-08-19 10:49:19 +03:00
-
fd570c7eb8
Замер сцены 11/15 и единый реестр оптимизаций
snark13
2026-08-19 10:21:02 +03:00
-
09f32ce834
Уровни 10-12 прошли предварительный тест; HEAL-WIDTH связан с G8
mob-order-B-done
snark13
2026-08-19 00:00:23 +03:00
-
4db60c750f
Вариант B: кусок с завёрнутым рядом рисуется под всем (корзина 30)
snark13
2026-08-18 23:10:41 +03:00
-
272cf8f195
Разбор порядка отрисовки падающей плиты: найден корень, выбран вариант B
mob-order-B-start
snark13
2026-08-18 22:51:00 +03:00
-
cdac5746ac
Мид-оверлей не рисовал передний торец плиты (draw_loose из draw_tile2)
snark13
2026-08-18 21:16:59 +03:00
-
ed5615a95a
Плиты нижнего ряда пропадали без кадров падения: draw_mob рисует и соседей
snark13
2026-08-18 18:55:39 +03:00
-
0832445614
Уровень 9 прошёл предварительный тест; замер тактов 13/23 без регресса
snark13
2026-08-18 17:49:37 +03:00
-
a737412154
Уровень 8 прошёл предварительный тест
snark13
2026-08-18 17:25:08 +03:00
-
3f643532c9
Трасса kidobj для сверки с SDLPoP + разбор боя у шва
snark13
2026-08-18 17:07:01 +03:00
-
a498255471
Бой у шва: смену комнаты запрещают ещё и кадры меча (leave_room, seg002:0490)
snark13
2026-08-18 16:35:12 +03:00
-
c40ae3f8f5
Страж возвращался в комнату не туда: колонку несёт guards_x, а не тайл
snark13
2026-08-18 16:20:40 +03:00
-
0077ef3850
Задача PERF-SWEEP: поиск узких мест по всей игре, а не в одной сцене
snark13
2026-08-18 15:59:11 +03:00
-
ed7e63a4fa
Замер тактов 13/23 после фиксов уровней 3-7: регресса нет
snark13
2026-08-18 15:50:26 +03:00
-
a6666489c0
Уровень 7 прошёл предварительный тест
snark13
2026-08-18 15:36:51 +03:00
-
3bcaf51221
NEXT_SESSION: DIED-ON-BUTTON закрыт
snark13
2026-08-18 15:28:19 +03:00
-
6feab5d2f2
Смерть на кнопке ломает её насовсем (died_on_button, seg007:776)
snark13
2026-08-18 15:27:36 +03:00
-
b49ba15666
DIED-ON-BUTTON: найдена вторая половина — физика трупа выключена целиком
snark13
2026-08-18 15:11:33 +03:00
-
980d48c168
Пики оставались навсегда: запечка фона консервировала выдвинутый кадр
snark13
2026-08-18 14:53:44 +03:00
-
214d3a822a
Уровни 4-6 прошли предварительный тест
snark13
2026-08-18 12:09:03 +03:00
-
671c947ce9
impl_diff: тень спрайтами Кида — осознанное расхождение, не баг
snark13
2026-08-18 12:06:19 +03:00
-
af4e64455e
Кусок узора на стене: модификатор стены не переводился при загрузке
snark13
2026-08-18 12:01:07 +03:00
-
085a198c20
Мигание тени: кадр приходил из кэша, а снимок писался по Guard.frame
snark13
2026-08-18 11:48:45 +03:00