NAME¶
screen - Global pointer to the screen hardware video memory. Allegro game
programming library.
SYNOPSIS¶
#include <allegro.h>
extern BITMAP *screen;
DESCRIPTION¶
Global pointer to a bitmap, sized VIRTUAL_W x VIRTUAL_H. This is created by
set_gfx_mode(), and represents the hardware video memory. Only a part of this
bitmap will actually be visible, sized SCREEN_W x SCREEN_H. Normally this is
the top left corner of the larger virtual screen, so you can ignore the extra
invisible virtual size of the bitmap if you aren't interested in hardware
scrolling or page flipping. To move the visible window to other parts of the
screen bitmap, call scroll_screen(). Initially the clipping rectangle will be
limited to the physical screen size, so if you want to draw onto a larger
virtual screen space outside this rectangle, you will need to adjust the
clipping.
For example, to draw a pixel onto the screen you would write:
putpixel(screen, x, y, color);
Or to implement a double-buffered system:
/* Make a bitmap in RAM. */
BITMAP *bmp = create_bitmap(320, 200);
/* Clean the memory bitmap. */
clear_bitmap(bmp);
/* Draw onto the memory bitmap. */
putpixel(bmp, x, y, color);
/* Copy it to the screen. */
blit(bmp, screen, 0, 0, 0, 0, 320, 200);
Warning: be very careful when using this pointer at the same time as any bitmaps
created by the create_video_bitmap() function (see the description of this
function for more detailed information). And never try to destroy it with
destroy_bitmap().
SEE ALSO¶
set_gfx_mode(3alleg4),
is_screen_bitmap(3alleg4),
create_video_bitmap(3alleg4),
scroll_screen(3alleg4)