summaryrefslogtreecommitdiffstats
path: root/src/init.c
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2013-02-14 18:03:09 (EST)
committer P. J. McDermott <pjm@nac.net>2013-02-14 18:03:09 (EST)
commit80191b41352ad20493fb62e8f3683d69133d0d24 (patch)
treecb77e93dfe476d9535ca48e732a98aae9a780ba4 /src/init.c
downloadoverworld-rpg-80191b41352ad20493fb62e8f3683d69133d0d24.zip
overworld-rpg-80191b41352ad20493fb62e8f3683d69133d0d24.tar.gz
overworld-rpg-80191b41352ad20493fb62e8f3683d69133d0d24.tar.bz2
Initial commit.
Diffstat (limited to 'src/init.c')
-rw-r--r--src/init.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/init.c b/src/init.c
new file mode 100644
index 0000000..f893d1d
--- /dev/null
+++ b/src/init.c
@@ -0,0 +1,36 @@
+#include <SDL.h>
+#include <SDL_image.h>
+#include "init.h"
+#include "logging.h"
+
+void
+init(void)
+{
+ debug("Initializing SDL...");
+ if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO) == -1) {
+ err(1, "Failed to initialize SDL (%s)", SDL_GetError());
+ }
+
+ debug("Initializing SDL_Image...");
+ if (IMG_Init(IMG_INIT_PNG) != IMG_INIT_PNG) {
+ err(1, "Failed to initialize SDL_Image (%s)", IMG_GetError());
+ }
+
+ debug("Setting video mode...");
+ screen = SDL_SetVideoMode(240, 160, 8, SDL_SWSURFACE | SDL_ANYFORMAT);
+ if (screen == NULL) {
+ err(1, "Failed to set video mode (%s)", SDL_GetError());
+ }
+}
+
+void
+quit(int status)
+{
+ debug("Quitting SDL_Image...");
+ IMG_Quit();
+
+ debug("Quitting SDL...");
+ SDL_Quit();
+
+ exit(status);
+}