fix some warnings
[gpsp.git] / gp2x / gp2x.c
index 6d9f82e..d36dd08 100644 (file)
@@ -1,6 +1,6 @@
-/*  Parts used from cpuctrl */
-/*  cpuctrl for GP2X
-    Copyright (C) 2005  Hermes/PS2Reality
+/*  
+    Parts used from cpuctrl, Copyright (C) 2005  Hermes/PS2Reality
+    Portions Copyright (C) 2009 notaz
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 */
 
 
-#define _BSD_SOURCE
 #define _GNU_SOURCE
+#include "../common.h"
 #include <sys/mman.h>
 #include <sys/ioctl.h>
 #include <sys/soundcard.h>
 #include <sys/types.h>
 #include <unistd.h>
-#include "../common.h"
+#include <ctype.h>
 #include "gp2x.h"
 #include "warm.h"
+#include "pollux_dpc_set.h"
 
 u32 gp2x_audio_volume = 74/2;
 u32 gpsp_gp2x_dev_audio = 0;
@@ -124,6 +125,9 @@ void wiz_lcd_set_portrait(int y)
   gpsp_gp2x_memregl[0x4004>>2] = y ? 0x013f00ef : 0x00ef013f;
   gpsp_gp2x_memregl[0x4000>>2] |= 1 << 3;
   old_y = y;
+
+  /* the above ioctl resets LCD timings, so set them here */
+  pollux_dpc_set(gpsp_gp2x_memregs, getenv("pollux_dpc_set"));
 }
 
 static void fb_video_exit()
@@ -226,10 +230,9 @@ void gp2x_init()
 
   gpsp_gp2x_dev = open("/dev/mem",   O_RDWR);
   gpsp_gp2x_dev_audio = open("/dev/mixer", O_RDWR);
-  gpsp_gp2x_memregl =
-   (unsigned long  *)mmap(0, 0x10000, PROT_READ|PROT_WRITE, MAP_SHARED,
+  gpsp_gp2x_memregl = (u32 *)mmap(0, 0x10000, PROT_READ|PROT_WRITE, MAP_SHARED,
    gpsp_gp2x_dev, 0xc0000000);
-  gpsp_gp2x_memregs = (unsigned short *)gpsp_gp2x_memregl;
+  gpsp_gp2x_memregs = (u16 *)gpsp_gp2x_memregl;
   warm_init();
 #ifdef WIZ_BUILD
   gpsp_gp2x_gpiodev = open("/dev/GPIO", O_RDONLY);