aboutsummaryrefslogtreecommitdiff
path: root/maemo/hildon.c
diff options
context:
space:
mode:
authornotaz2011-08-11 18:26:28 +0300
committernotaz2011-08-13 00:56:40 +0300
commit76f7048eff4f5357df048268e40b5bc6b9387fe5 (patch)
tree18b0a7cd4224b3e81f365558775bf4a2106200b3 /maemo/hildon.c
parent4c08b9e7dd350a48fc3e0515913d6ccc8b15e5ae (diff)
downloadpcsx_rearmed-76f7048eff4f5357df048268e40b5bc6b9387fe5.tar.gz
pcsx_rearmed-76f7048eff4f5357df048268e40b5bc6b9387fe5.tar.bz2
pcsx_rearmed-76f7048eff4f5357df048268e40b5bc6b9387fe5.zip
frontend: refactor plugin_lib for maemo
should give them proper frame limiter, frameskip and also lightgun support, maybe.
Diffstat (limited to 'maemo/hildon.c')
-rw-r--r--maemo/hildon.c58
1 files changed, 12 insertions, 46 deletions
diff --git a/maemo/hildon.c b/maemo/hildon.c
index 6c59b6f..ba035d1 100644
--- a/maemo/hildon.c
+++ b/maemo/hildon.c
@@ -13,14 +13,14 @@
#define D_WIDTH 640
#define D_HEIGHT 480
+int g_layer_x = (X_RES - D_WIDTH) / 2;
+int g_layer_y = (Y_RES - D_HEIGHT) / 2;
+int g_layer_w = D_WIDTH, g_layer_h = D_HEIGHT;
+
static GdkImage *image;
static HildonAnimationActor *actor;
static GtkWidget *window, *drawing;
-void *pl_fbdev_buf;
-int in_type1 = PSE_PAD_TYPE_STANDARD, in_type2 = PSE_PAD_TYPE_STANDARD;
-int in_keystate, in_a1[2], in_a2[2];
-
static int keymap[65536];
// map psx4m compatible keymap to PSX keys
@@ -157,15 +157,15 @@ void menu_loop(void)
{
}
-void *pl_fbdev_set_mode(int w, int h, int bpp)
+void *hildon_set_mode(int w, int h)
{
if (w <= 0 || h <= 0)
- return pl_fbdev_buf;
+ return pl_vout_buf;
if (image) gdk_image_destroy(image);
image = gdk_image_new( GDK_IMAGE_FASTEST, gdk_visual_get_system(), w, h );
- pl_fbdev_buf = (void *) image->mem;
+ pl_vout_buf = (void *) image->mem;
gtk_image_set_from_image (GTK_IMAGE(drawing), image, NULL);
@@ -175,60 +175,26 @@ void *pl_fbdev_set_mode(int w, int h, int bpp)
(gdouble)D_HEIGHT / (gdouble)h
);
- return pl_fbdev_buf;
+ return pl_vout_buf;
}
-void *pl_fbdev_flip(void)
+void *hildon_flip(void)
{
gtk_widget_queue_draw (drawing);
- return pl_fbdev_buf;
-}
-
-void pl_frame_limit(void)
-{
- extern void CheckFrameRate(void);
- //CheckFrameRate();
/* process GTK+ events */
while (gtk_events_pending())
gtk_main_iteration();
-}
-void pl_fbdev_close(void)
-{
+ return pl_vout_buf;
}
-int pl_fbdev_open(void)
+int omap_enable_layer(int enabled)
{
return 0;
}
-static void pl_get_layer_pos(int *x, int *y, int *w, int *h)
-{
- *x = 0;
- *y = 0;
- *w = 800;
- *h = 640;
-}
-
-void *pl_prepare_screenshot(int *w, int *h, int *bpp)
-{
- return NULL;
-}
-
-int writepng()
+void menu_notify_mode_change(int w, int h, int bpp)
{
- return -1;
}
-extern int UseFrameSkip; // hmh
-
-const struct rearmed_cbs pl_rearmed_cbs = {
- pl_get_layer_pos,
- pl_fbdev_open,
- pl_fbdev_set_mode,
- pl_fbdev_flip,
- pl_fbdev_close,
- &UseFrameSkip,
-};
-