Board.KolibriOS.org
http://board.kolibrios.org/

Rocket Forces
http://board.kolibrios.org/viewtopic.php?f=41&t=748
Page 2 of 3

Author:  camper [ Mon Jun 11, 2007 7:41 pm ]
Post subject: 

Курсор-крестик не мигает в рабочем окне!

Author:  Serial [ Mon Jun 11, 2007 8:35 pm ]
Post subject: 

Ghost
Вот дублирую: http://depositfiles.com/ru/files/1004309

camper
Что-то я не очень понял мысль..

Author:  camper [ Mon Jun 11, 2007 11:27 pm ]
Post subject: 

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

Author:  Gagarin [ Tue Jun 12, 2007 12:36 am ]
Post subject: 

camper wrote:
Serial все в полном порядке, просто я сокрушался одн время что курсор колибри в окнах обычно мелькает и на медленных компах порой вообще его не видно, в рокетсах курсор-крестик не мелькает и не пропадает, вот бы эту возможность взять и перенести в базовый курсор.

ага вот это было бы супер!!!
А то пользуюсь кос 2 час уже глаза из за него болят :(
в игре понг он вообще пропадает и игра глючит из за него

Author:  Serial [ Tue Jun 12, 2007 1:49 am ]
Post subject: 

camper

Хех))
А в какой версии курсор не мерцает, с индексом "h" или "s"?

Author:  camper [ Tue Jun 12, 2007 3:23 pm ]
Post subject: 

вроде бы в обеих нормально

Author:  Serial [ Tue Jun 12, 2007 5:21 pm ]
Post subject: 

camper

Тогда дело в том, что я перерисовываю не всё окно 0-ой функцией, а только движущиеся объекты (и даже фон каждый раз не заливаю).

Author:  Leency [ Tue Jun 12, 2007 5:33 pm ]
Post subject: 

Мне кажется можно всё сделать проще - чтобы функция 0 перерисовывала не всё окно, а только активную область без заголовка. А вот например функция 0, подфункция 1 окно вместе с заголовком. Можно наоборот, но лучше так.

Это реально сделать?

Author:  Serial [ Tue Jun 12, 2007 6:46 pm ]
Post subject: 

Leency

Дада.. реально. И было бы довольно таки полезно.
Но это уже не ко мне. Я с ассемблером на "Вы" разговариваю :)

Author:  mike.dld [ Tue Jun 12, 2007 7:29 pm ]
Post subject: 

Функция 0 имеет так называемый "флаг C" (EDX). Если он установлен, при вызове функции не закрашивается рабочая область. Используется в Tinypad и KFAR, то есть программах, которые полностью рисуют рабочую область сами.

Ссылка на описание: http://kolibrios.org/?p=Documentation&s ... 00&lang=ru

Author:  Leency [ Tue Jun 12, 2007 7:49 pm ]
Post subject: 

А сдесь смысл в обратном - чтоб рабочая область перерисовывалась, а заголовок если надо перерисует сам чел.

Author:  mike.dld [ Tue Jun 12, 2007 8:47 pm ]
Post subject: 

Leency
Ты, наверное, немного не понимаешь. Единственное место, где должен рисовать программист - это рабочая область. Заголовок в любом случае рисует ядро, и самому ничего на нём рисовать крайне не рекоммендуется, хотя бы потому, что в будущем (не знаю, насколько далёком), программе просто не будет дозволено там рисовать.
Рисование же рабочей области ядром нужно крайне не всегда, и мерцание объектов при вызове 0-й функции (насколько я понял) происходит из-за того, что ядро зарисовывает рабочую область цветом фона, и после этого на нём рисуются объекты, что есть медленно.

Author:  diamond [ Fri Jun 15, 2007 6:47 pm ]
Post subject: 

Какая, нафиг, "перерисовка только рабочей области"? Она тут явно ни при чём. Мне кажется, дело в следующем. Заслуга программы только в том, что не мигает её окно - это потому что использован идеологически правильный подход (перерисовывать только то, что реально изменилось). Курсор в rforces не пропадает из-за особенностей кода ядра - конкретно, функция 7 (используемая в том же pong, но не в rforces) и функция 38 используют разные методы работы с курсором:
Code:
.doit:
        inc     [mouse_pause]
...
        dec     [mouse_pause]
...
        jmp     [draw_pointer]

versus
Code:
        call    [disable_mouse]
...
        call    [draw_pointer]
        ret

Author:  Mario79 [ Mon Jun 18, 2007 7:25 am ]
Post subject: 

diamond
Я уже вот год как жду, как кто-нибудь перепишет код курсора. Текущий вариант дорабатывал я и не спорю, что он мягко выражаясь неоптимален. Однако все почему-то только говорят о проблеме с курсором, но никто не берется...
Да и потом если сейчас переписать вывод курсора, то вероятность объединения графического ядра и плоского вообще будет стремиться к нулю. Впрочем, оно и сейчас уже близко к нулю.

Author:  diamond [ Mon Jun 18, 2007 4:35 pm ]
Post subject: 

Mario79
Не так уж много народу действительно могут это сделать, а все, кто могут, заняты более интересными и/или полезными вещами.

Page 2 of 3 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/