diff options
| author | Rebellion Developments <rebellion@nomail> | 2000-03-16 11:25:00 +0100 |
|---|---|---|
| committer | Patryk Obara <dreamer.tan@gmail.com> | 2019-08-19 05:45:17 +0200 |
| commit | 218ca90543758a20ac326e444ca0643174ca7384 (patch) | |
| tree | 16bfe3e5307f9f515489000f28728224291a0e3b /3dc/win95/VRAMTIME.C | |
Import Aliens vs Predator - Gold (Build 116)
Source code release, imported from:
https://www.gamefront.com/games/aliens-vs-predator-3/file/avp-gold-complete-source-code
All text files were converted to Unix format.
Diffstat (limited to '3dc/win95/VRAMTIME.C')
| -rw-r--r-- | 3dc/win95/VRAMTIME.C | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/3dc/win95/VRAMTIME.C b/3dc/win95/VRAMTIME.C new file mode 100644 index 0000000..a4fae03 --- /dev/null +++ b/3dc/win95/VRAMTIME.C @@ -0,0 +1,33 @@ +#include <windows.h> + +#include "vramtime.h" + +static DWORD transition_times_matrix[][VWS_MAXSTATES] = +{ +/* from DDRELEASE */ + { 0, 20, 0, 100, 100 }, +/* from D3DTEXRELEASE */ + { 20, 0, 100, 100, 100 }, +/* from DDCREATE */ + { 0, 100, 0, 20, 100 }, +/* from D3DTEXCREATE */ + { 20, 100, 20, 20, 100 }, +/* from UNKNOWN */ + { 100, 100, 100, 100, 100 } +}; + + +void WaitForVRamReady(VRAM_WAIT_STATE vws) +{ + static DWORD old_time = 0; + static VRAM_WAIT_STATE old_vws = VWS_UNKNOWN; + + DWORD new_time; + + if (0==old_time) old_time = timeGetTime(); + + do new_time = timeGetTime(); while (new_time - old_time < transition_times_matrix[old_vws][vws]); + + old_time = new_time; + old_vws = vws; +} |
