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

> Проблема с графикой в tmt pascal, SVGA В TMT
Арсений
сообщение 29.12.2007 2:30
Сообщение #1


Новичок
*

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

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


Здравствуйте. У меня проблема:в графическом режиме происходит откровенно говоря чёрти что. При загрузке svga256.bgi нормально рисуется круг, при попытке вывести bmp(модуль взят с этого сайта) на дисплее какие то цветные точки, при установке графического режима функцией setsvgamode и попытке изобразить круг: сначала круг, затем точки. Для уточнения: у меня монитор wxga, карта nvidia geforce. Пожалуйста, укажите поблему и способ её устранения. Заранее благодарен.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
andriano
сообщение 29.12.2007 16:47
Сообщение #2


Гуру
*****

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

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


Ты пишешь о том, что при загрузке svga256.bgi у тебя рисуется круг. То, что круг рисуется, вроде бы, говорит о том, что режим инициализируется и работает. Но ТМТ с bgi-драйверами рабртать не может. Никак.
Так что дело не в том, что я что-то невнимательно читаю, а в том, что ты либо очень невнимательно экспериментируешь, либо очень невнимательно описываешь результаты своих экспериментов.
Другими словами, первое сообщение не заслуживает доверия. Поэтому я и просил более толково описать симптомы.

Далее, если ты используешь модуль, не входящий в комплект поставки, и у тебя при этом возникают ошибки, то веоятнее всего, ошибки следует искать именно в этом модуле, а не в компиляторе.

Опять же, так и осталось невыясненным, что за файл такой test.bmp. Не зная его свойств (по крайней мере, размеров и глуби ны цвета) ситуацию нельзя смоделировать.

Вообще-то графика в ТМТ работает через VESA, а я что-то не припоминаю, чтобы там были моды типа 1280х800.

У меня вот эта программа (откомпилированная под DOS):

program test;
uses graph;
var
w,h:word;
x,y:smallint;
begin
setsvgamode(1280,800,8,0);
for x := 0 to 799 do
putpixel(x,x,15);
end.
Выдает сообщение :
PMODE/W DOS Extender v1.33
Copyright © 1994-1997, Charles Scheffold and Thomas Pytel

Return code: 0
Execution time: 0.96 seconds
Press any key...

а вот эта:
program test;
uses graph;
var
w,h:word;
x,y:smallint;
begin
setsvgamode(1280,1024,8,0);
for x := 0 to 799 do
putpixel(x,x,15);
end.

рисует косую линию и несколько групп точек.

В первом варианте, очевидно, не поддерживается запрошенная видеомода, а во втором - все работает правильно за исключением того, что из программы не предусмотрен корректный выход. (группы точек - это неудачная попытка VideoBIOS вывести на экран текст с сообщением об окончании работы)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Арсений   Проблема с графикой в tmt pascal   29.12.2007 2:30
Ozzя   :blink: Зачем для ТМТ загружать драйвер svg...   29.12.2007 8:45
andriano   Пожалуйста, укажите поблему и способ её устранения...   29.12.2007 12:39
Арсений   За ссылку спасибо. При использовании прцедуры SetS...   29.12.2007 15:51
andriano   Ты пишешь о том, что при загрузке svga256.bgi у те...   29.12.2007 16:47
Гость   Andriano, по поводу драйвров ты не прав. А именно ...   29.12.2007 19:12
andriano   Andriano, по поводу драйвров ты не прав. :)А тепер...   29.12.2007 20:24
Арсений   Извините, это я гостем вошел. :ohmy: Файлы в нали...   29.12.2007 19:20
Арсений   Почти ясно. Только изображение выводится лишь при ...   29.12.2007 21:17
andriano   Почти ясно. Только изображение выводится лишь при...   29.12.2007 21:44
Арсений   А есть какие нибудь эмуляторы для DOSовских програ...   29.12.2007 21:55
andriano   Что значит "лишают"? В DOS это принципиа...   29.12.2007 22:06
Арсений   "лишают"- имеется в виду сбой когда прог...   30.12.2007 17:44
andriano   "лишают"- имеется в виду сбой когда про...   30.12.2007 18:04
Арсений   Кроче говоря, если программа вернулась в полный эк...   30.12.2007 20:33
andriano   Кроче говоря, если программа вернулась в полный э...   30.12.2007 20:48
Арсений   Ситуация: юзер нажал клаву Windows, программа све...   31.12.2007 3:01
andriano   Так ЧТО должна сделать программа, чтобы вернуть из...   31.12.2007 13:20
Арсений   Всё. Большое всем спасибо за помощь. Я разобрался....   31.12.2007 15:58
andriano   Этот код не восстанавливает режим, а устанавливает...   31.12.2007 17:47
SKVOZNJAK   P.S под DOS программа пишется потому, что под wi...   2.01.2008 14:30
Арсений   Но работает(можно восстановить изображение из пам...   2.01.2008 15:08
andriano   Но работает(можно восстановить изображение из пам...   2.01.2008 17:29
Арсений   Ну другого то способа нету... :no1:   2.01.2008 18:32


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

 



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