ee1ca00c6f
Диспетчеризация clip/noclip через указатели _gfx_blit_fn/_gfx_heal_fn (common/_gfx_sprite_fns.c, дефолт clip): gfx_sprite_clip() — теперь модуль, переключает указатели один раз; sprite_update/putsprite/ movesprite зовут через указатель — ветка if(clip) из горячего цикла убрана (съедала половину выигрыша noclip). Программа без вызова gfx_sprite_clip() noclip-ядра не линкует. Замер dev-MAME (16 шаров, uncapped): clip 50 → noclip 60-61 fps (+20-22%). Регресс tests/sprites (A/B PASS), size-check OK (balls −237 Б, sprites −3177 Б — отвязались лишние ядра). Фикс CPU-байта write-триггера (preread + EX AF,AF') снят: точная dev-MAME эмулирует ПЛМ, подавляющую CPU-байт при активном burst'е — подтверждено по байтам VRAM (tests/blitw col0 = GREEN через read_vram MCP-моста). Для heal фикс был избыточен всегда (банк 0x50 перезаписывает dst[0]). Строки фикса оставлены закомментированными в трёх leaf'ах на случай отличий реального железа; шапки и §9а/§9б дизайна обновлены. НА ЖЕЛЕЗЕ ПЕРЕПРОВЕРИТЬ. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
55 lines
782 B
Plaintext
55 lines
782 B
Plaintext
# Эталон размеров _CODE (байт); обновление: python3 toolchain/size_check.py --update
|
|
accfill 3772
|
|
argv 3431
|
|
assrtest 3847
|
|
attrprob 4087
|
|
balls 6156
|
|
banked 1056
|
|
bankedbg 1067
|
|
banklocl 4683
|
|
banktest 3767
|
|
bgi_img 7060
|
|
bgitest 3737
|
|
bios_text 4461
|
|
blitperf 5860
|
|
blitw 4939
|
|
cat 913
|
|
cblstream 6217
|
|
cbltest 6366
|
|
cblwav 6434
|
|
conio 4605
|
|
conio2 3929
|
|
dec_test 860
|
|
errno 5966
|
|
fbench 8085
|
|
fdmax 6023
|
|
filetest 10547
|
|
gets 509
|
|
gfx_dbuf 5032
|
|
gfx_demo 4103
|
|
gfxbanks 6044
|
|
hello 4167
|
|
hello2 4244
|
|
irqtest 5850
|
|
ls 4835
|
|
malloc 4461
|
|
mdview 18878
|
|
mdview2 27031
|
|
mem_test 4555
|
|
mouse 4382
|
|
openenv 6124
|
|
ptime 5744
|
|
rt_test 4892
|
|
seek 4188
|
|
simple 955
|
|
solidt 11531
|
|
spriteclip 4187
|
|
sprites 6791
|
|
stattest 7549
|
|
stdlib 6643
|
|
stest2 3644
|
|
strtest 1340
|
|
text_palette 5024
|
|
timedir 5454
|
|
winrest 4459
|