Take No Prisoners
Necrodome (was not tested)
( Mobygames )

D3D mode fails saying "insufficient texture memory returning to default video mode" in the console.

The game treats the value returned by IDDraw->GetAvailableVidMem() as a signed 32-bit integer. If your graphic card reports more than 2 gigabytes of video memory then it gets interpreted as a negative number :P

The suggested fix is to use a wrapper that allows changing the reported amount or video memory, like DxWnd or dgVoodoo 2.

Or one could use my ddwrapper project and change the GetAvailableVidMem function to the following:

HRESULT __stdcall GetAvailableVidMem( WRAP* This, LPDDSCAPS lpDDCaps, LPDWORD lpdwTotal, LPDWORD lpdwFree )
    HRESULT hResult;
    DWORD dwLocalTotal;

    if( lpdwTotal == NULL )
        lpdwTotal = &dwLocalTotal;

    hResult = This->dd2->lpVtbl->GetAvailableVidMem( This->dd2, lpDDCaps, lpdwTotal, lpdwFree );

    if( SUCCEEDED( hResult ) ){
        // if Total memory is 2GB or more then divide reported values in half
        if( *lpdwTotal >= 0x80000000 ){
            *lpdwTotal >>= 1;
            if( lpdwFree != NULL ) *lpdwFree >>= 1;

    return hResult;