![]() |
1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!
![]() ![]() |
![]() |
Andruid |
![]()
Сообщение
#1
|
Гость ![]() |
Подскажите, плз, ка мне спомощью прерываний BIOS (или напряму в регистры, не суть важно) установить графический режим с разрешением, больше чем 320х200? Хочу, скажем 640х480
|
Shadow |
![]()
Сообщение
#2
|
![]() Lonely_Raven ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: ![]() ![]() ![]() |
Y-a-h-o-o VESA заработала на 16 млн цветов
смотри ссылку Графика в Tasm смотри ссылку Procedure VESAINIT;Assembler;Из Пирогова ASSEMBLER учебный курс в bx номер режима Цитата 100h 256 640*400 101h 256 640* 480 102h 16 800*600 103h 104h 105h 115h - 16777216 800*600 их там много ![]() -------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
GoodWind |
![]()
Сообщение
#3
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
посмотри этот док:
Прикрепленные файлы ![]() -------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
GoodWind |
![]()
Сообщение
#4
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Разрешение:640x480
Номера графических режимов:12h,101h,110h,111h,112h Разрешение:800x600 Номера графических режимов:102h,103h,113h,114h,115h Двузначные номера - стандартные VGA, устанавливаются через 0 функцию 10h (то-есть в AH=0 al=номер режима) прерывания. так-вот: procedure SetVga(mode:byte); assembler;
asm
mov ax,mode
int 10h
end
или точнее: procedure SetVga(mode:byte); assembler;
asm
mov ah,0
mov al,mode
int 10h
end
Трехзначные номера - VESA, устанавливаются через 4Fh функцию 2 подфункцию. (т.е: ax = 4F02h, bx=номер режима) procedure SetVesa(mode:word); assembler;
asm
mov bx,mode
mov ax,4F02h
int 10h
end
если что неправильно, пусть меня поправят Гуру... ps: и не забудь - текстовый режим - procedure gotext25x80;assembler;
asm
mov ax,3
int 10h
end
-------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
Dark |
![]()
Сообщение
#5
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 408 Пол: Мужской Репутация: ![]() ![]() ![]() |
Я извиняюсь конечно, но я не считаю эту тему избранной => переношу ее в обычные
-------------------- - Где я?
- Во тьме. - В какой тьме? - Во тьме твоего мозга. |
![]() ![]() |
![]() |
Текстовая версия | 29.07.2025 22:03 |