/* * bios_clearwin — очистить окно (row, col, height, width) пробелами с * атрибутом attr. BIOS LP_CLS_WIN ($89, rst 8): D=row, E=col, * H=height, L=width, B=attr. */ #include void bios_clearwin(uint8_t row, uint8_t col, uint8_t height, uint8_t width, uint8_t attr) __naked { (void)row; (void)col; (void)height; (void)width; (void)attr; __asm ;; row→A, col→L, height/width/attr на стеке [SP+2..4]. ld iy, #2 add iy, sp ld h, 0 (iy) ; H = height ld c, 1 (iy) ; спрятать width (L пока держит col) ld e, l ; E = col ld d, a ; D = row ld l, c ; L = width ld b, 2 (iy) ; B = attr push ix ld c, #0x89 rst #0x08 pop ix pop hl inc sp inc sp inc sp ; съесть height + width + attr jp (hl) __endasm; }