![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
oleg1973 |
|
|||
![]() asm fanat ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3283 Регистрация: 16.7.2003 Где: Italy Репутация: 1 Всего: 34 |
правилы быстрой работы с графикой (ну я сам сочинил : )
1) НИКОГДА не работать напрямую с видео памятью, читать из нее оооочень медленно, лучше рисовать все в буфере а птотом кидать в видеопамять 2) нафига сегменты? я так понимаю выше приведенный исходник взят с какогото древнего архива, где рассматривается 2 страницы по 0ffff кб и нестандартный видео режим если режим 320*200*256 цветов то вся видео память находится с 0а000 и занимает 320*200=64000 байт (чуть меньше одного сегмента) если есть желание получить разрешения типа 640*480 то нужно использовать VESA и порт 3с4 там будет вообще не приделах проблема со страницами решается при помоши LFB или же переключением через int10 и функцию 4f05 ну а вот и сам putpixel для 320*200 к примеру, адаптируется на любой режим (256 цветный) заменой значений proc putpixel,x,y,color { mov ax,0a000h mov es,ax mov ax,320 mov dx,y mul dx add ax,x mov [es:ax],color } как уже говорил выше лучше все это делать в буфере а потом делать proc copy,buff,screen { mov si,buff mov di,screen mov cx,64000/4 repnz movsd } -------------------- SST 465555 icq 200-512-712 |
|||
|
||||
dima_mak |
|
||||
Программист любитель ![]() Профиль Группа: Участник Сообщений: 154 Регистрация: 25.5.2004 Репутация: нет Всего: нет |
Я разобрался с путимэдж и сделал всё через него, но он тоже не очень успевает(правда несравнить с путпиксель, но тоже иногда блимкает) А с пример с асм у меня не работает. Ты не знаешь где можно взять рабочий Путпиксель на асм и что бы его можно было в С засунуть. Добавлено @ 13:36
Не мог бы ты дать примерчик для разрешения 640*480 ? |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |