PoP roomtest (план v2, шаг 4): в W3-резиденте остаётся только pop_bg
--w3 берёт ОДИН файл на флаг, поэтому запись "--w3 pop_trob.c pop_map.c" означала "W3 = pop_trob", а pop_map всё это время ехал в W1/W2 (в build-каталоге лежал осиротевший w3_pop_map.rel). Теперь список явный. pop_trob переведён в W1/W2: в W3 должно оставаться только то, что банк никогда не позовёт (из __banked резидентная страница W3 не видна ни напрямую, ни транзитивно — docs/layout_plan_v2.md §2 R2). pop_trob же стражам понадобится: в оригинале они тоже давят кнопки. Замер: W3 14376 -> 11643 (свободно 2008 -> 4741 Б), W1/W2 _CODE 21634 -> 24367 (куча 5315 -> 2582 Б). Освободившееся место в W3 — задел под шаг 3 (loose/потолок из pop_map, чтобы pop_map стал bank-safe). Проверено в MAME скриптом: комната рисуется, Kid бежит и тормозит (кадры 15 -> 10 -> 15), факелы анимируются (152 различающихся пикселя между соседними кадрами) — то есть pop_trob работает из нового окна. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,8 +6,13 @@ EXAMPLE := roomtest
|
||||
# small: W1+W2 как единое 32КБ-пространство, DATA сразу за CODE (иначе
|
||||
# CODE ~23КБ переполняет W1 и лезет в фиксированный DATA@0x8000 в huge).
|
||||
MEMORY ?= small
|
||||
EXTRA_FLAGS ?= --gfx 256 --w3 pop_trob.c pop_map.c --w3 pop_bg.c
|
||||
EXTRA_SRCS := pop_kid.c pop_ctrl.c pop_level.c
|
||||
# --w3 берёт ОДИН файл на флаг. В W3-резиденте держим ТОЛЬКО pop_bg —
|
||||
# отрисовку тайлов: она большая и её зовёт лишь главный цикл. Всё
|
||||
# остальное живёт в W1/W2, чтобы оставаться достижимым из будущих
|
||||
# __banked-модулей (стражи): из банка резидентная страница W3 не видна —
|
||||
# ни напрямую, ни транзитивно. См. docs/layout_plan_v2.md §2 (R2), §4.
|
||||
EXTRA_FLAGS ?= --gfx 256 --w3 pop_bg.c
|
||||
EXTRA_SRCS := pop_kid.c pop_ctrl.c pop_level.c pop_map.c pop_trob.c
|
||||
|
||||
BG_DIR := $(CURDIR)/../poc/res/bg
|
||||
KID_DIR := $(CURDIR)/../poc/res/kid
|
||||
|
||||
Reference in New Issue
Block a user