/* * bios_write_until — вывести строку s до разделителя sep, ДОБИВ * пробелами до len (атрибут не трогается). BIOS LP_PRINT_LN4 ($88, * rst 8): HL=s, B=len, D=sep. */ #include void bios_write_until(const char *s, uint8_t len, char sep) __naked { (void)s; (void)len; (void)sep; __asm ;; s→HL, len/sep на стеке [SP+2..3]. ld iy, #2 add iy, sp ld b, 0 (iy) ; B = len ld d, 1 (iy) ; D = sep push ix ld c, #0x88 rst #0x08 pop ix pop hl inc sp inc sp jp (hl) __endasm; }