![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| yOhoOo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Здравствуйте кважаемые.
Для реализации графической оболочки к проге юзаю VESA. Хотел было добавить мышку, взял готовые куски своего старого кода (для проги работающей при помощи EGAVGA.bgi). Мышка там реализовывалась вот так:
Ну и что то там дальше... Так вот, открыл я для себя что так не пойдет для VESA ибо вылетает тут же из программы в виндоз да ошибку пишет. C чем это связано? Как это лечить? ЗЫ Пробывал вместо VESA юзать готовые SVGA.bgi но результат тот же... |
|||
|
||||
| Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
В DOSBox-e запускать не пробовал?
|
|||
|
||||
| yOhoOo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Поясни пожалуйста. Это что такое? |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
а если гугл начать использовать? -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| yOhoOo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Прочитал про ДосбОкс. А можно еще как нибудь попытатся справится с моей проблемой? Средствами кода например). Не очень бы хотелось таскать за программой этот загрузчик... |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
yOhoOo, тогда забудь про VESA и SVGA
|
|||
|
||||
| yOhoOo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Ход конем...
|
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
yOhoOo, ход конем - это пытаться в современность пользоваться прямым доступом к аппаратуре. Ни одно нормальная ОС делать этого не позволяет.
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| yOhoOo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Все, убедили, пошел качать ДОСбокс...
|
|||
|
||||
| yOhoOo |
|
||||||||||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Гыыы А вот и нет. Я просто тупой, не понял очевидныйх вещей:
как я уже сказал вылетает. А вот так:
Вылеталть не будет. Связанно это с тем, что в SVGA режиме:
А вообще почитайте здесь: http://computers.plib.ru/programming/SVGA/menu.html Так наглядно можно проверить что курсор действительно перемещается:
А общая идея курсора выглядит так:
|
||||||||||
|
|||||||||||
| sprata |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 6.9.2008 Репутация: нет Всего: нет |
yOhoOo, код который ты кинул это конечно неплохая идея визуализации вручную указателя мыши в режме SVGA. Но она подойдет только для одноцветного заднего фона. Так как ф-ии getimage() и putimage() работают с прямоугольными областями экрана, то реализовать перемещение треугольного курсора по неоднородному фону не удасться, так как незайдействованная в рисовании курсора часть захваченной прямоугольной области будет перемещаться вместе с курсором и тем самым закрывать задний фон. Едиснтвенный выход, используя твою идею, это сделать курсор не треугольным, а прямоугольным.
ЗЫ: я сейчас начал делать курсач, и тож хочу в режиме SVGA и с мышей Но с треугольным курсором. Это сообщение отредактировал(а) sprata - 12.9.2008, 06:12 |
|||
|
||||
| yOhoOo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 8.11.2007 Репутация: нет Всего: нет |
Усе норм, тока поменять надо немного. Без ксор пута все. Обычными getimage/ putimage. Берешь, перед тем как рисовать курсор копируешь в переменную скажем FONT_BOX область, где твой курсор будет жить, затем рисуешь курсор. Затем отслеживаешь изменения в регистрах по X, Y координатам. Если нет изменений то ждешь) Если есть рисуешь поверх курсора область снова. Затем копируешь область под новыми координатами в FONT_BOX. И опять курсор рисуешь сверху. Повторять до полного удовлетворения. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |