Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Free Pascal, Pascal ABC и другие _ вопросы по исходникам

Автор: compiler 27.08.2007 1:17

1)delay vs sleep
собственно всегда использовал delay, а вот в исходниках библиотеки crt под вин(причем библ. вин подклюенна) нашел sleep... так в чем разница?
2)не могу найти реализацию графической библ. Где она?

заранее благодарен.

Автор: volvo 27.08.2007 1:31

1) собственно, в MSDN ты где-то видел Delay? http://msdn2.microsoft.com/en-us/library/ms686298.aspx есть... Сам же говоришь, под Windows. Delay - это наследие DOS...

2)

Цитата
Где она?

здесь (в исходниках 2.0.4): \fpcsrc\packages\base\graph\win32

Автор: compiler 27.08.2007 1:42

Цитата(volvo @ 26.08.2007 21:31) *
1) собственно, в MSDN ты где-то видел Delay? http://msdn2.microsoft.com/en-us/library/ms686298.aspx есть... Сам же говоришь, под Windows. Delay - это наследие DOS...
тоесть Delay, для доса, а Sleep, для вин? а в других ОС свои задержки? и как же пишется кроссплатформенный код?
Цитата(volvo @ 26.08.2007 21:31) *
2) здесь (в исходниках 2.0.4): \fpcsrc\packages\base\graph\win32
огромное спасибо, я думал она должна была быть в rtl...

Автор: volvo 27.08.2007 1:52

Давай скажем так: если ты пишешь консольные приложения, то используй модуль Crt, и, естественно, входящий в его состав Delay... Который будет работать как под Dos, так и под Windows и под Linux... А уж если используются графические средства - то придется пользоваться условной компиляцией / макросами.

Автор: compiler 27.08.2007 2:03

Цитата(volvo @ 26.08.2007 21:52) *
Давай скажем так: если ты пишешь консольные приложения, то используй модуль Crt, и, естественно, входящий в его состав Delay... Который будет работать как под Dos, так и под Windows и под Linux... А уж если используются графические средства - то придется пользоваться условной компиляцией / макросами.
спасибо...

Автор: compiler 27.08.2007 16:21

не могу перевести коментарий dry.gif , буду очень рад за помощь

Цитата
the behavior of xor/or/and put isn't 100%: it is done using the RGB color getting from windows instead of the palette index!

Автор: volvo 30.08.2007 15:36

compiler, смысл - в том, что операции при CurrentWriteMode = XORPut, ORPut и ANDPut не на 100 процентов соответствуют своему описанию (то есть, могут, скажем, проявляться артефакты при выполнении XORPut), потому что используются RGB-цвета из Windows, а не из установленной палитры.

Автор: compiler 30.08.2007 16:27

Цитата(volvo @ 30.08.2007 11:36) *
compiler, смысл - в том, что операции при CurrentWriteMode = XORPut, ORPut и ANDPut не на 100 процентов соответствуют своему описанию (то есть, могут, скажем, проявляться артефакты при выполнении XORPut), потому что используются RGB-цвета из Windows, а не из установленной палитры.
спасибо, но я не знаю что такое артефакты в этом контексте...

Автор: volvo 30.08.2007 17:02

Обычно при двух последовательных вызовах операции с XORPut на экране должно остаться изначальное изображение (то есть, результат вызова первой операции должен полностью уничтожиться вторым аналогичным вызовом). В описанном случае этого МОЖЕТ не произойти, из-за несоответствия цветов. Например, после повторного вызова могут остаться точки (или линии), которых не было на исходном изображении. Это и есть артефакты.

Автор: compiler 30.08.2007 17:07

спасибо...