Помощь - Поиск - Пользователи - Календарь
Полная версия: Отключение курсора в защищенном режиме
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Ассемблер
AlaRic
Если я не ошибаюсь:
mov dx,3D4h
mov al,0Ah
out dx,al
inc dx
mov al,20h
out dx,al


Потвердите правильность/неправильность!  smile.gif
GLuk
Это будет работать в любом real/protected mode, но только в том случае, если номер конечной скен-линии меньше 20h. В данном случае ты выводишь в порт значение верхней скен-линии.
AlaRic
То есть в принципе это правильно?!
GLuk
Нет. Это сработает при стандартной установке курсора, но, повторяюсь, если номер конечной скен-линии будет меньше чем значение верхней - это не прокатит. Тама еще пару строчек дописать для нижней и все будет ок.
AlaRic
Окончательный вариант:

mov dx,3D4h 
mov al,0Bh
out dx,al
inc dx
mov al,19h
out dx,al
AlaRic
Не работает кстати, курсор не исчезает!
trminator
Вот это подойдет? У меня работает
Цитата
Q:> А как убрать курсор в текстовом режиме?
A:
        procedure CursorOff; assembler;
       asm
         mov   ah,1
         mov   cx,2020h   {Убрать мерцание за пределы знакоместа}
         int   10h
       end;

Q:> А как его потом обратно включить?
A:
        procedure CursorOn; assembler;
       asm
         mov   ah,1
         mov   cx,0607h   {Установить мерцание 6й и 7й строк}
         int   10h
       end;

http://pascal.sources.ru/faq/conoff.htm
AlaRic
Нет! Это я как раз с самого начала попробовал - не хочет!
GLuk
А может быть у тебя EGA-монитор?? (глупость конечно, но вдруг...)
Приведи конкретный кусок кода... и видюха у тебя все та же??
AlaRic
Видюха не менялась!
Код маячил уже 2 раза!
trminator
Ну... еще одно предположение: если запускаешь прогу в окне, то с курсором такие глюки идут... +) Это все только в полноэкранном нормально
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.