diff blastem.c @ 338:5c34a9c39394

Re-enable frame limit, but add a command line flag to disable it
author Mike Pavone <pavone@retrodev.com>
date Wed, 15 May 2013 22:37:25 -0700
parents 87b65e5ce1ab
children 58a085cfc6bd
line wrap: on
line diff
--- a/blastem.c	Wed May 15 22:37:04 2013 -0700
+++ b/blastem.c	Wed May 15 22:37:25 2013 -0700
@@ -27,6 +27,7 @@
 
 int headless = 0;
 int z80_enabled = 1;
+int frame_limit = 1;
 
 #ifndef MIN
 #define MIN(a,b) ((a) < (b) ? (a) : (b))
@@ -197,7 +198,7 @@
 		//printf("reached frame end | 68K Cycles: %d, MCLK Cycles: %d\n", context->current_cycle, mclks);
 		vdp_run_context(v_context, MCLKS_PER_FRAME);
 		if (!headless) {
-			break_on_sync |= wait_render_frame(v_context);
+			break_on_sync |= wait_render_frame(v_context, frame_limit);
 		}
 		frame++;
 		mclks -= MCLKS_PER_FRAME;
@@ -242,7 +243,7 @@
 					vdp_run_dma_done(v_context, MCLKS_PER_FRAME);
 					if (v_context->cycles >= MCLKS_PER_FRAME) {
 						if (!headless) {
-							wait_render_frame(v_context);
+							wait_render_frame(v_context, frame_limit);
 						}
 						vdp_adjust_cycles(v_context, MCLKS_PER_FRAME);
 						io_adjust_cycles(&gamepad_1, v_context->cycles/MCLKS_PER_68K, MCLKS_PER_FRAME/MCLKS_PER_68K);
@@ -259,7 +260,7 @@
 						vdp_run_dma_done(v_context, MCLKS_PER_FRAME);
 						if (v_context->cycles >= MCLKS_PER_FRAME) {
 							if (!headless) {
-								wait_render_frame(v_context);
+								wait_render_frame(v_context, frame_limit);
 							}
 							vdp_adjust_cycles(v_context, MCLKS_PER_FRAME);
 							io_adjust_cycles(&gamepad_1, v_context->cycles/MCLKS_PER_68K, MCLKS_PER_FRAME/MCLKS_PER_68K);
@@ -1042,6 +1043,9 @@
 			case 'd':
 				debug = 1;
 				break;
+			case 'f':
+				frame_limit = 0;
+				break;
 			case 'l':
 				address_log = fopen("address.log", "w");
 				break;