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

> ПРАВИЛА РАЗДЕЛА!!!

1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!

> Крыса и Vesa [ЗАРАБОТАЛО!], Как заставить работать мышку в VES'е...?
MixRin.RU$
сообщение 22.01.2006 23:07
Сообщение #1


Новичок
*

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

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


Работает ли мышь в граф. режиме 101h?
mov     ax, 4F02h
mov bx, 101h
int 10h
Просто в 13h пашет, а в этом нет, друг говорит там надо напрямую с портами возится blink.gif

а вот соббсно код проги:
.model tiny
.386
.data
VMC dd ? ;адрес процедуры BIOS
star_vid dw ?
Info dw 256 DUP(0)
cmask
db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
db 00000000b,10000000b,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

.code
org 100h
start: call where_VMC ;записываем адрес VMC
call init_vga ;установка видео-режима 640x480x8
call refresh ;экран белого цвета
call draw_color
;---------------
;xor ax,ax
;int 33h
;push ds
;pop es
;mov dx,offset cmask
;mov ax,09h
;int 33h
;mov ax,01h
;int 33h
;-------неработающий код--------


check_esc: xor ax, ax
int 16h
cmp ax, 011Bh ;проверка на ескейп
je end_prog
jmp check_esc
end_prog: mov ax, 4F02h
mov bx, star_vid
int 10h
ret
;----------------------------
where_VMC proc
push ds
pop es
mov di, offset Info
mov ax, 4f01h
mov cx, 0101h
int 10h
mov eax, es:[di + 0Ch] ;добываем адрес на VMC процедуру
mov VMC, eax
ret
where_VMC endp
refresh proc
mov cx, 5
nxtwin: dec cx
mov dx, cx
inc cx
push cx
xor bx, bx
mov ax, 4F05h
call VMC
mov ax, 0f0fh
xor si, si
mov cx, 8000h ;заполняем экран белым
rep stosw
pop cx
loop nxtwin
ret
refresh endp
init_vga proc
push 0A000h
pop es
mov ax, 4F03h
int 10h
mov star_vid, bx ;запоминаем старый режим и входим в 640х480х8
mov ax, 4F02h
mov bx, 101h
int 10h
ret
init_vga endp
;ax - координата по Y, bx - координата по X, dl - код цвета
draw_point proc
push ax
push bx
push dx
dec ax
dec bx
mov dx, 280h
mul dx
add ax, bx
adc dx, 0
mov si, ax
xor bx, bx
mov ax, 4F05h ;рисуем точку по координате bx, by с цветом dl (нумерация точек: 0..639;0..479)
call VMC
pop dx
mov es:[si], dl
pop bx
pop ax
ret
draw_point endp
draw_color proc
push 0A000h
pop es
xor ax, ax
xor bx, bx
xor dl, dl
inc bx
mov cx, 40h
cycle2: push cx
xor dl, dl ;цветная фигулина
xor bx, bx
inc ax
inc bx
mov cx, 1feh
cycle1: call draw_point
inc dl
inc bx
loop cycle1
pop cx
loop cycle2
ret
draw_color endp
end start

PS: здесь стоят комменты не на оператор, а на всю процедуру...

Сообщение отредактировано: volvo - 3.11.2006 0:20
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
MixRin.RU$   Крыса и Vesa [ЗАРАБОТАЛО!]   22.01.2006 23:07
MixRin.RU$   Вот под режим 320х240х8бит работает: :unsure: .mod...   23.01.2006 17:09
Altair   Это же VESA.... я вот здесь кое что писал... А ...   23.01.2006 17:21
MixRin.RU$   сижу тихо, мирно в 32 битах :) А можешь небольшо...   23.01.2006 22:48
Dark   Угу, пишешь свой вывод курсора, свое стирание его,...   23.01.2006 21:01
Dark   Это альтаи р к тому что сидит в своем Free Pascal ...   23.01.2006 23:04
MixRin.RU$   ах он негодяй :yes2: так никак низзя намутить кры...   23.01.2006 23:11
Altair   хех... баним или подождем пока ? почему нельз...   24.01.2006 2:10
MixRin.RU$   слово 'негодяй' не является не нормативной...   24.01.2006 16:37
Altair   (да понял я твою фразу :) ) Именно в конце, я та...   24.01.2006 16:50
MixRin.RU$   Мило, только он сразу выходит когда начинаю двигат...   24.01.2006 17:34
Altair   вот и у меня, но на старом компе все работало я ...   24.01.2006 17:48
MixRin.RU$   а алгоритм, как ее загружать, какие прерывания юза...   24.01.2006 22:32
MixRin.RU$   Мне тут друг говорит, что в 32-ух битных режимах н...   24.01.2006 23:09
zloy_pes   Thanx   24.01.2006 23:09
MixRin.RU$   Thanx да, респект злому псу =)   24.01.2006 23:15


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

 



- Текстовая версия 13.07.2025 20:57
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"