/* * gfx_set_draw_page — выбрать страницу для рисования (0/1); обновляет * _gfx_addr_base, который читают все примитивы. */ #include "../_bgi.h" void gfx_set_draw_page(uint8_t page) { _gfx_draw_page = page & 1; /* Прямые константы короче (0xC000 + (cond ? 0x140 : 0)) на 3 * инструкции Z80 — SDCC не сворачивает сложение констант. */ if(_gfx_draw_page) { _gfx_addr_base = 0xC140; _gfx_addr_shadow_base = 0xC000; } else { _gfx_addr_base = 0xC000; _gfx_addr_shadow_base = 0xC140; } }