diff options
author | Felix Kuehling <fxkuehl@gmx.de> | 2005-01-31 01:09:27 +0000 |
---|---|---|
committer | Felix Kuehling <fxkuehl@gmx.de> | 2005-01-31 01:09:27 +0000 |
commit | 37e6666824a771271f60ad12174a29b2ac6b826b (patch) | |
tree | f0a82ea5d4beb877525652543743791a6b93b779 /src/savage_accel.c | |
parent | 7712602bccc71210ad4319aaf2bc8e1b15b6a01a (diff) |
- Shadow status update thresholds on Savage4 were reversed. Fixed now.
- Fixed cobIndex on Savage2K. It used only a 4K COB so far. Now we have
full 128K.
- Program the shadow status thresholds correctly on Savage2K.
- Savage2K reports used entries in the queue in qword units instead of
dwords. Fixed WaitQueue2K accordingly.
- Event counter 0 is in status word 2 instead of status word 1 on Savage2K.
Fixed ShadowWait accordingly.
- Added a ShadowWaitQueue function that doesn't idle the engine all the
time. This improves 3D animation smoothness with concurrent
2D activity when shadow status is enabled.
Diffstat (limited to 'src/savage_accel.c')
-rw-r--r-- | src/savage_accel.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/savage_accel.c b/src/savage_accel.c index d7fdd3d..12a1afe 100644 --- a/src/savage_accel.c +++ b/src/savage_accel.c @@ -342,8 +342,8 @@ SavageInitialize2DEngine(ScrnInfoPtr pScrn) } /* Program shadow status update */ /* AGD: what should this be? */ { - unsigned long thresholds = ((psav->bciThresholdHi & 0x1fffe0) << 11) | - ((psav->bciThresholdLo & 0x1fffe0) >> 5); + unsigned long thresholds = ((psav->bciThresholdLo & 0x1fffe0) << 11) | + ((psav->bciThresholdHi & 0x1fffe0) >> 5); OUTREG(0x48C10, thresholds); } /*OUTREG(0x48C10, 0x00700040);*/ /* tim */ @@ -378,8 +378,10 @@ SavageInitialize2DEngine(ScrnInfoPtr pScrn) if( psav->ShadowStatus ) { /* Set shadow update threshholds. */ - OUTREG(0x48C10, 0x6090 ); - OUTREG(0x48C14, 0x70A8 ); + /*OUTREG(0x48C10, 0x6090 ); + OUTREG(0x48C14, 0x70A8 );*/ + OUTREG(0x48C10, psav->bciThresholdLo >> 2); + OUTREG(0x48C14, psav->bciThresholdHi >> 2); /* Enable shadow status update */ OUTREG(0x48A30, psav->ShadowPhysical ); /* Enable BCI, command overflow buffer and shadow status. */ |