delay_curs equ 11 ; частота мигания курсора cursor: db 3Eh ; ld a,.. crFlag: db 0 ; флаг курсора 00-нет/01-есть cpl ld (crFlag),a ; Включить курсор cursor_on: ld c,8Eh ; узнать полож. курсора rst 08h ld (curs_posit+1),de xor a ld c,0B4h ; получить символ rst 08h ld bc,1BB5h ; b=знакоген., с=символ на экран ld a,(crFlag) or a jr z,curs__ ld b,1Ah ; черта ld a,(D0642) ; флаги клавы bit 1,a ; бит Ins jr nz,$+4 ld b,19h ; блок curs__: xor a ; номер окна rst 08h ld a,1 ld (curs_inv_flag),a ld a,delay_curs ret ; Выключить курсор cursor_off: db 3Eh ; ld a,.. curs_inv_flag: db 0 ; флаг курсора: 00-выкл/01-вкл or a ret z ld a,-1 ld (crFlag),a inc a ld (curs_inv_flag),a ld a,delay_curs ld (curs_timer),a curs_posit: ld de,0 ; Y/X полож. bit 7,e ret nz ld c,0B4h ; получить символ xor a rst 08h xor a ld bc,1BB5h ; символ на экран rst 08h ret ; Установить фокус на "Input Line" focus_to_inpline: call cursor_on ; вкл. курсор ei ret