IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> Полезные процедуры для текстового режима.
сообщение
Сообщение #1


...
*****

Группа: Пользователи
Сообщений: 1 347
Пол: Мужской

Репутация: -  3  +


НЕБОЛЬШИЕ ЧАСТО ПРИМЕНЯЮЩИЕСЯ ПРОЦЕДУРЫ
Включение клавиатуры:
procedure keyenable;
begin
asm
in al,21h
and al,not 2
out 21h,al
end;
end;


Выключение клавиатуры:
procedure keydisable;
begin
asm
in al,21h
or al,2
out 21h,al
end;
end;


Выключение курсора в текстовом режиме:
procedure CursorOff;
begin
asm
mov ah,1
mov cx,2020h {Убрать мерцание за пределы знакоместа}
int 10h
end;
end;


Включение курсора в текстовом режиме:
procedure CursorOn;
begin
asm
mov ah,1
mov cx,0607h {Установить мерцание 6й и 7й строк}
int 10h
end;
end;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


А также процедуры, которых нет в модуле CRT.
Установка режима экрана. (установить можно любой графический и любой текстовый)
Procedure SetMode(CMode:byte);
Begin
asm
MOV AH,00H
MOV AL,CMode
INT 10H
end
End;

установить курсор в текстовом режиме (размер)
Procedure SetCur(ns,ks:byte);
begin
asm
mov ah,01H
mov ch,ns
mov cl,ks
int 10H
end
End;

Переход в точку X,Y в текстовом режиме (аналог стандартной)
Procedure GOTOXY(x,y);
begin
asm
mov ah,02
mov bh,00
mov dh,y+1
mov dl,x+1
int 10H
end
end;


получить координаты курсора в текстовом режиме (НЕ КУРСОРА МЫШИ!!!!!)
procedure GetCur(var x,y:byte);
begin
asm
mov ah,03H
mov bh,00H
int 10H
end
end;


Установить активную страницу в текстовом режиме

procedure SetAktivPage(p:byte);
begin
asm
mov ah,05H
mov al,p
int 10H
end
end;

Получить код видео режима
Procedure GetVideoMode(var m:byte);
begin
asm
mov ah,0FH
INT 10H
MOV m,al
end
end;


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 17.01.2022 9:27
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name