From 5b5131539420ddfdbc1a695d41cbab3c6c72b203 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Thu, 27 Oct 2005 13:24:27 +0000 Subject: [PATCH] remove Xbox prefs from PREFSMAN (not tested on Xbox) --- .../src/archutils/Xbox/VirtualMemory.cpp | 21 ++++++++++++++++++- stepmania/src/archutils/Xbox/VirtualMemory.h | 2 +- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/stepmania/src/archutils/Xbox/VirtualMemory.cpp b/stepmania/src/archutils/Xbox/VirtualMemory.cpp index f7fab4a0d2..f302989e91 100644 --- a/stepmania/src/archutils/Xbox/VirtualMemory.cpp +++ b/stepmania/src/archutils/Xbox/VirtualMemory.cpp @@ -4,6 +4,7 @@ #include "global.h" #include "VirtualMemory.h" #include "RageLog.h" +#include "Preference.h" #include #if defined(WINDOWS) @@ -14,6 +15,16 @@ VirtualMemoryManager vmem_Manager; +static Preference g_bEnableVirtualMemory( "EnableVirtualMemory", true ); +// page file size in megabytes +static Preference g_iPageFileSize( "PageFileSize", 384 ); +// page size in kilobytes +static Preference g_iPageSize( "PageSize", 16 ); +// threshold in kilobytes where virtual memory will be used +static Preference g_iPageThreshold( "PageThreshold", 8 ); +// (under debug) log the virtual memory allocation, etc. +static Preference g_bLogVirtualMemory( "LogVirtualMemory", false ); + struct vm_page { DWORD startAddress; // start address for this page @@ -39,8 +50,14 @@ VirtualMemoryManager::~VirtualMemoryManager() Destroy(); } -bool VirtualMemoryManager::Init(unsigned long totalPageSize, unsigned long sizePerPage, unsigned long thold) +bool VirtualMemoryManager::Init() { + if( !g_bEnableVirtualMemory ) + return true; + unsigned long totalPageSize = 1024 * 1024 * g_iPageFileSize; + unsigned long sizePerPage = 1024 * g_iPageSize; + unsigned long thold = 1024 * g_iPageThreshold; + threshold = thold; totalPages = totalPageSize / sizePerPage; @@ -93,6 +110,8 @@ bool VirtualMemoryManager::Init(unsigned long totalPageSize, unsigned long sizeP pages[i].locked = false; } + SetLogging( g_bLogVirtualMemory ); + inited = true; return true; } diff --git a/stepmania/src/archutils/Xbox/VirtualMemory.h b/stepmania/src/archutils/Xbox/VirtualMemory.h index 2874d99dcd..3d27a84b95 100644 --- a/stepmania/src/archutils/Xbox/VirtualMemory.h +++ b/stepmania/src/archutils/Xbox/VirtualMemory.h @@ -17,7 +17,7 @@ public: VirtualMemoryManager(); ~VirtualMemoryManager(); - bool Init(unsigned long totalPageSize, unsigned long sizePerPage, unsigned long thold); + bool Init(); void Destroy(); void* Allocate(size_t size); bool Free(void *ptr);