added second flag for 3D add-on signalling mode changes happening for apps rendering in non-direct mode

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12469 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Rudolf Cornelissen
2005-04-26 14:45:44 +00:00
parent 93a2cfd43c
commit c9c0c72b4b
3 changed files with 14 additions and 5 deletions
@@ -187,8 +187,11 @@ status_t INIT_ACCELERANT(int the_fd) {
head1_cursor_hide();
if (si->ps.secondary_head) head2_cursor_hide();
/* make sure a possible 3D add-on will block rendering and re-initialize itself;
* it will reset this flag when it's done. */
/* make sure a possible 3D add-on will block rendering and re-initialize itself.
* note: update in _this_ order only */
/* SET_DISPLAY_MODE will reset this flag when it's done. */
si->mode_changing = true;
/* the 3D add-on will reset this flag when it's done. */
si->mode_changed = true;
/* a winner! */
@@ -77,8 +77,11 @@ status_t SET_DISPLAY_MODE(display_mode *mode_to_set)
}
LOG(1, ("SETMODE: (CONT.) validated command modeflags: $%08x\n", target.flags));
/* make sure a possible 3D add-on will block rendering and re-initialize itself;
* it will reset this flag when it's done. */
/* make sure a possible 3D add-on will block rendering and re-initialize itself.
* note: update in _this_ order only */
/* SET_DISPLAY_MODE will reset this flag when it's done. */
si->mode_changing = true;
/* the 3D add-on will reset this flag when it's done. */
si->mode_changed = true;
/* disable interrupts using the kernel driver */
@@ -362,6 +365,9 @@ status_t SET_DISPLAY_MODE(display_mode *mode_to_set)
/* enable interrupts using the kernel driver */
interrupt_enable(true);
/* make sure a possible 3D add-on will re-initialize itself by signalling ready */
si->mode_changing = false;
/* optimize memory-access if needed */
// head1_mem_priority(colour_depth1);
@@ -90,7 +90,7 @@ status_t nv_general_powerup()
{
status_t status;
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.42 running.\n"));
LOG(1,("POWERUP: Haiku nVidia Accelerant 0.43 running.\n"));
/* preset no laptop */
si->ps.laptop = false;