/* * Copyright (C) 2013 Patrick "P. J." McDermott * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this program. If not, see * . */ #include #include #include "viewport.h" #include "logging.h" struct viewport * init_viewport(Uint16 width, Uint16 height, int bpp) { struct viewport *vp; vp = malloc(sizeof(*vp)); if (vp == NULL) { err(1, "Failed to allocate viewport"); } vp->x = 0; vp->y = 0; vp->w= width; vp->h= height; debug("Setting video mode..."); vp->screen = SDL_SetVideoMode(width, height, bpp, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_HWPALETTE); if (vp->screen == NULL) { err(1, "Failed to set video mode (%s)", SDL_GetError()); } return vp; }