![]() |
|
|
![]()
|
|
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
Я запустил код на виртуальной машине, в нём запустил VESA режим,
и комп вылетел полностью из строя вот оно замечательное творение
|
|||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
и ? что от нас требуется?
-------------------- |
|||
|
||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
явно что-то не так с виртуальной машиной -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
виртуальная машина Oracle VM VirtualBox KolibriOS там запускается нормально. мне бы узнать почему комп вышел из строя, и хотелось бы нормально в режиме VESA по работать, а то 256-цветный дисплей с размером 320х200 это конечно хорошо, но хотелось бы все таки использовать полноценное RGB разрешение с альфа каналом хотябы 800 x 600 (8:8:8)RGB и не так как в других местах пишут, типа надо найти то место где находиться BITMAP дисплея и в него на прямую писать |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
математика тут простая
предположим режим у нас bx=11Bh ; 1280 x 1024 RGB посчитаем количество точек 1280*1024=1310720 потом учтём параметры цвета 1310720*3=3932160 в регистре AX самое большое число которое туда помещается это 65536 если сравнить обьём памяти экрана и AX : 3932160=65536 то становится понятным что так просто указывать путь ES:AX не представляется возможным |
|||
|
||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
адрес. для этого и нужен регистр сегмента - меняйе его. или используйте eax -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
| scuter |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
регист сегмента это CS , DS , SS , ES, FS, GS на сколько я понимаю размер сегмента 65536 то есть видео буфер не может поместится в один сегмент и это означает что придётся устраивать крутоверть с сегментными регистрами а как это делать с eax немного не знаю прям вот так вот и писать
|
||||
|
|||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
1. Витруальная машина не когда не должна приводить комп к зависанию (даже если на ней запускают программу с ошибами)
2. На сколько я помню в VESA используют "видео-окна", размеры каждого позволяют использовать адрессацию, когда адрес указывается как сегмент:смещение, причём сегмент не меняется, т.е. можно адрессовать одним шестнадцатиразрядным регистром. Окна можно переключать и получать доступ к разным частям экрана. -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
лучьше дайте рабочий пример скрипта на FASM
который запускает VESA в режиме bx=115h (800 x 600, RGB, 16777216 (16M)) и записывает точку где нибудь по центру, а ещё лучше линию и текстовый режим bx=10Ch (132x60 text) с записью пары букв на русском языке Добавлено через 10 минут и 36 секунд тем не мения Oracle VM VirtualBox хоть и использует VMX монитор у меня всё равно стал черным и по середине был мёртвый синий экран виндовса повторять такие попытки я больше не буду слишким опасно для компа. а на счёт страниц VESA хотелось бы узнать как эти страници растределяются по экрану и сколько их в документациях пишут (окно А, окно В) |
|||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
flat real mode вам поможет
получаем прямой доступ к LFB без заморочек со страницами -------------------- |
|||
|
||||
| scuter |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
мне бы хоть начать что то делать |
|||
|
||||
![]()
|
| Правила форума "Asm для начинающих" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm для начинающих | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |