Hi,
Yes, I encreased the zbuffer already.

Code:
bmap_zbuffer ( bmap_createblack ( 2048, 2048, 32 ) );



and encreased the size of the camera render target too.

Code:
level_load ( "" );
camera->bmap = bmap_createblack ( 2048, 2048, 32 );
camera->size_x = 2048;
camera->size_y = 2048;



wrote a function that fills a bitmap with with all draw_... instructions.

Code:
#define CHECKER_SIZE 128
void draw_map ( BMAP *bmpMap )
{
	bmap_rendertarget ( bmpMap, 0, 0 );
		draw_quad ( NULL, vector(0,0,0), NULL, vector(bmap_width(bmpMap),bmap_height(bmpMap),0), NULL, COLOR_WHITE, 100, 0 );
		int posX = 0;
		for ( ; posX<bmap_width(bmpMap); posX+=CHECKER_SIZE )
		{
			int posY = 0;
			for ( ; posY<bmap_height(bmpMap); posY+=CHECKER_SIZE )
			{
				if ( ( ( posX + posY ) / CHECKER_SIZE ) % 2 )
				{
					draw_quad ( NULL, vector(posX,posY,0), NULL, vector(CHECKER_SIZE,CHECKER_SIZE,0), NULL, COLOR_BLUE, 100, 0 );
					txtObj->pos_x = posX + 15 + CHECKER_SIZE * 0.5;
					txtObj->pos_y = posY;
					draw_obj ( txtObj );
				}
				else
				{
					draw_text ( "0", posX+15, posY+CHECKER_SIZE*0.5, COLOR_RED );
					panObj->pos_x = posX + CHECKER_SIZE * 0.5;
					panObj->pos_y = posY;
					draw_obj ( panObj );
				}
				
				draw_line ( vector(posX,posY,0), COLOR_BLACK, 0 );
				draw_line ( vector(posX,posY,0), COLOR_BLACK, 100 );
				draw_line ( vector(posX+CHECKER_SIZE,posY+CHECKER_SIZE,0), COLOR_BLACK, 100 );
				draw_line ( vector(posX+CHECKER_SIZE,posY+CHECKER_SIZE,0), COLOR_BLACK, 0 );
			}
		}
	bmap_rendertarget ( NULL, 0, 0 );
}



The result over a 2048x2048 bitmap in a 1024x768 window. The bitmap is shown at 1:4 scale.



The result over a 2048x2048 bitmap in a 1440x900 window.



In both cases the drawn area fits the window size instead of fullfill the bitmap. The only draw_... instruction that takes effect out of the window meassures is draw_line.

Never had troubles with level rendering on oversized render targets. I have got a NvidiaGTX660, so no hardware problem at all, I guess.

Thanks for your answer,
txes