pkgsrc/emulators/gens/patches/patch-ab
dillo 0271939835 Add support for playing back gmv movies (recording of previously
played game), based on
	http://bisqwit.iki.fi/src/Gens212a-moviepatch-jyzero,bisqwit.gz
adapted to rc3 and cleaned up by me.

More information and movies can be found at
	http://bisqwit.iki.fi/jutut/nesvideos/FrontPage.html

Bump PKGREVISION.
2004-08-15 12:13:53 +00:00

90 lines
3.3 KiB
Text

$NetBSD: patch-ab,v 1.2 2004/08/15 12:13:53 dillo Exp $
--- src/gens/gtkui/support.c.orig 2004-05-18 20:04:29.000000000 +0200
+++ src/gens/gtkui/support.c
@@ -247,6 +247,7 @@ void
sync_gens_ui ()
{
GtkWidget *vsync, *stretch, *sprite_limit, *perfect_synchro;
+ GtkWidget *play_movie;
GtkWidget *sram_size_0;
GtkWidget *sram_size[4];
@@ -277,6 +278,7 @@ sync_gens_ui ()
stretch = lookup_widget (gens_window, "stretch");
sprite_limit = lookup_widget (gens_window, "sprite_limit");
perfect_synchro = lookup_widget (gens_window, "perfect_synchro");
+ play_movie = lookup_widget(gens_window, "play_movie");
sram_size_0 = lookup_widget (gens_window, "none");
sram_size[0] = lookup_widget (gens_window, "_8_kb");
@@ -393,6 +395,8 @@ sync_gens_ui ()
Sprite_Over);
gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (perfect_synchro),
SegaCD_Accurate);
+ gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (play_movie),
+ MoviePlaying);
gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (enable_sound),
Sound_Enable);
gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (stereo),
@@ -781,14 +785,16 @@ addIsoFilter(GtkWidget* widget)
{
GtkFileFilter* filter;
// "SegaCD image file\0*.bin;*.iso;*.raw\0All files\0*.*\0\0"
- const char* bin = "*.[bb][iI][nN]";
+ const char* bin = "*.[bB][iI][nN]";
const char* iso = "*.[iI][sS][oO]";
+ const char* chd = "*.[cC][hH][dD]";
const char* raw = "*.[rR][aA][wW]";
filter = gtk_file_filter_new ();
gtk_file_filter_set_name (filter, "SegaCD image file");
gtk_file_filter_add_pattern (filter, bin);
gtk_file_filter_add_pattern (filter, iso);
+ gtk_file_filter_add_pattern (filter, chd);
gtk_file_filter_add_pattern (filter, raw);
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
}
@@ -803,6 +809,7 @@ addRomsFilter(GtkWidget* widget)
const char* gen = "*.[gG][eE][nN]";
const char* _32x = "*.32[xX]";
const char* iso = "*.[iI][sS][oO]";
+ const char* chd = "*.[cC][hH][dD]";
const char* raw = "*.[rR][aA][wW]";
const char* zip = "*.[zZ][iI][pP]";
const char* gz ="*.[gG][zZ]";
@@ -816,6 +823,7 @@ addRomsFilter(GtkWidget* widget)
gtk_file_filter_add_pattern (filter, gen);
gtk_file_filter_add_pattern (filter, _32x);
gtk_file_filter_add_pattern (filter, iso);
+ gtk_file_filter_add_pattern (filter, chd);
gtk_file_filter_add_pattern (filter, raw);
gtk_file_filter_add_pattern (filter, zip);
gtk_file_filter_add_pattern (filter, gz);
@@ -842,6 +850,7 @@ addRomsFilter(GtkWidget* widget)
filter = gtk_file_filter_new ();
gtk_file_filter_set_name (filter, "SegaCD image");
gtk_file_filter_add_pattern (filter, iso);
+ gtk_file_filter_add_pattern (filter, chd);
gtk_file_filter_add_pattern (filter, raw);
gtk_file_filter_add_pattern (filter, bin);
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
@@ -852,6 +861,18 @@ addRomsFilter(GtkWidget* widget)
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
}
+void
+addGmvFilter(GtkWidget* widget)
+{
+ GtkFileFilter* filter;
+ const char* gmv = "*.[gG][mM][vV]";
+
+ filter = gtk_file_filter_new ();
+ gtk_file_filter_set_name (filter, "gens movie file");
+ gtk_file_filter_add_pattern (filter, gmv);
+ gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
+}
+
GtkWidget*
create_file_chooser_dialog(const char* title, GtkFileChooserAction action)
{