Sprites: ; На входе в IX адрес таблицы с выводимыми спрайтами IN A,(SLOT1) LD H,A IN A,(PORT_Y) LD L,A PUSH HL LD A,#58 OUT (SLOT1),A ; ld ix,SP_Table ld b,(ix+0) inc ix .loop: push bc LD A,(ix+str_EasterSprites.SpHeight) ; !!!!! координата картинки по Y + высота картинки ld l,(ix+str_EasterSprites.SpAddress) ld h,(ix+str_EasterSprites.SpAddress+1) .putSprite: DEC A OUT (PORT_Y),A LD E,(ix+str_EasterSprites.SpXCoord) ; !HARDCODE координата картинки по Х LD D,(ix+str_EasterSprites.SpXCoord+1) LD C,(ix+str_EasterSprites.SpWidth) ; !HARDCODE длина горизонтальной линии картинки LD B,(ix+str_EasterSprites.SpWidth+1) LDIR CP (IX+str_EasterSprites.SpYCoord) JP NZ,.putSprite ld c,str_EasterSprites add ix,bc pop bc djnz .loop POP BC LD A,B OUT (SLOT1),A LD A,C OUT (PORT_Y),A XOR A RET