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

> качественная графика на Паскале, вопрос к профессионалам
TarasBer
сообщение 24.01.2007 13:01
Сообщение #1


Гость






У меня вопрос: какие есть способы вывода на экран в графическом режиме (модуль graph не предлагать - тормозной шибко)? Я знаю только один: обращение к видеопамяти - адрес $A000: $0000. Но этот способ удобен лишь при разрешении 320х200 256 цветов. Потому что при другом разрешении видеопамять не влезает в 64 кб и для вывода приходится переключать страницы и делать лишние расчёты, что сильно замедляет программу. Можно ли выводить на экран при помощи портов всяких? А то я хочу улучшить свою прогу, находящуюся на tarasber.narod.ru. А исходники к ней я покажу только если вы очень попросите - их там полметра.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Archon
сообщение 25.01.2007 3:20
Сообщение #2


Профи
****

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

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


Для начала спешу выразить огромный респект автору. Видно, что проекту посвящено немало времени.
Теперь к делу. Что ты подразумеваешь под улучшением графики? Более высокие разрешения? Это возможно.
Подробности:
VESA : можно получить очень высокие разрешения и цветность вплоть до 32 бит на точку, но работает в разы медленнее VGA.
X-MODE : Это семейство видеорежимов, имеющих большее разрешение и/или кол-во цветов, чем стандартные режимы VGA.
Обладают рядом преимуществ:
1. Я слышал, что эти режимы позволяют добиться 4-х кратного ускорения графики, но сам не проверял.
2. Несколько видео страниц в режимах 256 цветов.
3. Поддерживаются всеми VGA картами.
4. Поддержка скроллинга.
Почему-то не рекомендуют ставить горизонтальное разрешение выше 360 точек, обещают проблемы. На сколько мне известно чаще всего в X-Mode используются режимы 360x480x256 и 320x200x256.
Линейная адресация в SVGA: Это то, что описал Malice. По скорости несколько быстрее, чем обычная VESA. Позволяет делать скроллинг и аппаратные видео страницы. Принцип работы такой: обращения к памяти за пределом текущего банка перехватываются обработчиком соответствующего исключения и банк меняется. Короче, переключение банков осуществляется автоматически, аппаратными средствами 386 проца.

Если что-то заинтересует, постараюсь помочь с документацией, но на много не расчитывай, у меня у самого инфы мало sad.gif, реально хорошо знаю только обычную VESA.

Добавлено:
Есть ещё какой-то chain-4, но об этом звере я знаю только то, что он быстрее VGA. Есть предположение, что это и есть X-Mode, но не уверен.

Сообщение отредактировано: Archon - 25.01.2007 3:30


--------------------
Close the World...txeN eht nepO
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
andriano
сообщение 13.05.2008 8:04
Сообщение #3


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

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


В связи с тем, что тему подняли, наткнулся на нее.
Хотелось бы расставить некоторые точки над i.
Цитата(Archon @ 25.01.2007 4:20) *

VESA : можно получить очень высокие разрешения и цветность вплоть до 32 бит на точку, но работает в разы медленнее VGA.
Ну, коль скоро используемый объем видеопамяти в разы больше, то и время ее заполнения во столько же раз больше.
Как говорится, чудес не бывает.
Цитата

X-MODE : Это семейство видеорежимов, имеющих большее разрешение и/или кол-во цветов, чем стандартные режимы VGA.
Обладают рядом преимуществ:
1. Я слышал, что эти режимы позволяют добиться 4-х кратного ускорения графики, но сам не проверял.
2. Несколько видео страниц в режимах 256 цветов.
3. Поддерживаются всеми VGA картами.
4. Поддержка скроллинга.

Но при этом обладают еще большим количеством недостатков.
4-хкратное ускорение графики возможно лишь при заливке одним цветом. Теоретически. На практике режим очень тормозной из-за необходимости постоянно дергать регистры видеоадаптера.
Цитата

Почему-то не рекомендуют ставить горизонтальное разрешение выше 360 точек, обещают проблемы. На сколько мне известно чаще всего в X-Mode используются режимы 360x480x256 и 320x200x256.
Потому что стандартным VGA это банально не поддерживается.
Правда, поддерживается VGA-совместимыми картами, выпущенными позднее.
Кстати, о работе в этих режимах я в свое время писал:
http://www.osp.ru/pcworld/1997/05/157500/
http://www.osp.ru/pcworld/1997/09/157969/
http://www.osp.ru/pcworld/1997/11/158244/
но с тех пор прошло более 10 лет, и на сегодняшний день, думаю, эта технология уже потеряла актуальность.
Цитата

Линейная адресация в SVGA: Это то, что описал Malice. По скорости несколько быстрее, чем обычная VESA. Позволяет делать скроллинг и аппаратные видео страницы. Принцип работы такой: обращения к памяти за пределом текущего банка перехватываются обработчиком соответствующего исключения и банк меняется. Короче, переключение банков осуществляется автоматически, аппаратными средствами 386 проца.
Не совсем так.
То, что описано, это программная эмуляция линейного буфера, применяемая иногда для тех карт, в которых аппаратного LFB не было. Делалась она исключительно в целях совместимости и ни о каком приросте скорости говорить не приходится.
Другое дело - наличие апаратно поддерживаемого LFB (что, собственно, и было на подавляющем числе видеокарт. Вот он действительно позволял добиться заметно более высокой скорости.
Цитата

Если что-то заинтересует, постараюсь помочь с документацией, но на много не расчитывай, у меня у самого инфы мало sad.gif, реально хорошо знаю только обычную VESA.
Собственно, больше и не надо. После появления стандарта VESA все остальное, в том числе ModeX стали неактуальны.
Цитата

Добавлено:
Есть ещё какой-то chain-4, но об этом звере я знаю только то, что он быстрее VGA. Есть предположение, что это и есть X-Mode, но не уверен.
Совершенно верно, chaun-4 используется как раз в ModeX.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
TarasBer   качественная графика на Паскале   24.01.2007 13:01
Malice   На сколько я помню есть еще режим LFB в Vesa режим...   24.01.2007 13:46
TarasBer   На сколько я помню есть еще режим LFB в Vesa режи...   24.01.2007 21:43
Malice   А можно ссылку на литературу? Неа, только гугль....   24.01.2007 22:34
Бродяжник   Скрины впечатлили... автору респект! Для TP7 е...   24.01.2007 16:37
arhimag   FPC + OpenGL или FPC + DDraw ну или вместо FPC D...   24.01.2007 17:23
Гость   FPC + OpenGL или FPC + DDraw ну или вместо FPC ...   24.01.2007 21:26
hardcase   Суперская программа. Покатался на автобусе =) Авто...   24.01.2007 22:38
Archon   Для начала спешу выразить огромный респект автору....   25.01.2007 3:20
andriano   В связи с тем, что тему подняли, наткнулся на нее....   13.05.2008 8:04
Ozzя   Plus System Pro 2.3 Есть и Vesa, и режимы X   25.01.2007 11:24
Sam0784   Ну ваще клёва ету игрухуб под окно на современное ...   2.02.2007 3:31
SkIv   А вообще где можно посмотреть инфу по различным гр...   19.02.2007 16:07
Ozzя   А вообще где можно посмотреть инфу по различным г...   20.02.2007 7:54
SkIv   http://www.codenet.ru/cat/Applications/Gra...VESA...   20.02.2007 12:28
Гость   помогите плиз нужна прога по графике в паскале на ...   12.05.2008 21:08
andriano   Если тебе нужна любая прога - ищи. Здесь за тебя в...   13.05.2008 7:33


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

 



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