X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=main.c;h=6e30605eaf00d9fd5b888689cb036ff9fd36c32f;hb=42c8119010bfc48776e8c82e42cceb06d07c0247;hp=571336f153c35f708bc99fc209fee8036df37cc8;hpb=4cdfc0bc7b3dd2051b8027da4e2f35bbb9897307;p=gpsp.git diff --git a/main.c b/main.c index 571336f..6e30605 100644 --- a/main.c +++ b/main.c @@ -193,11 +193,6 @@ int main(int argc, char *argv[]) u8 load_filename[512]; u8 bios_filename[512]; -#ifdef GP2X_BUILD - if(gp2x_load_mmuhack() == -1) -;// delay_us(2500000); -#endif - #ifdef PSP_BUILD sceKernelRegisterSubIntrHandler(PSP_VBLANK_INT, 0, vblank_interrupt_handler, NULL); @@ -499,6 +494,9 @@ void trigger_ext_event() event_number++; } +static u32 fps = 60; +static u32 frames_drawn = 60; + u32 update_gba() { irq_type irq_raised = IRQ_NONE; @@ -613,10 +611,18 @@ u32 update_gba() continue; update_gbc_sound(cpu_ticks); - synchronize(); + + if(gp2x_fps_debug) + { + char print_buffer[32]; + sprintf(print_buffer, "%d (%d)", fps, frames_drawn); + print_string(print_buffer, 0xFFFF, 0x000, 0, 0); + } update_screen(); + synchronize(); + if(update_backup_flag) update_backup(); @@ -763,28 +769,16 @@ u32 num_skipped_frames = 0; u32 interval_skipped_frames; u32 frames; -u32 skipped_frames = 0; -u32 ticks_needed_total = 0; const u32 frame_interval = 60; void synchronize() { u64 new_ticks; u64 time_delta; - static u32 fps = 60; - static u32 frames_drawn = 60; - - if(gp2x_fps_debug) - { - char print_buffer[128]; - sprintf(print_buffer, "%d (%d)", fps, frames_drawn); - print_string(print_buffer, 0xFFFF, 0x000, 0, 0); - } get_ticks_us(&new_ticks); time_delta = new_ticks - last_screen_timestamp; last_screen_timestamp = new_ticks; - ticks_needed_total += time_delta; skip_next_frame = 0; virtual_frame_count++; @@ -807,14 +801,6 @@ void synchronize() num_skipped_frames = 0; } } - else - { - if((synchronize_flag) && - ((time_delta < frame_speed) && synchronize_flag)) - { - delay_us(frame_speed - time_delta); - } - } frames++; @@ -834,7 +820,6 @@ void synchronize() last_frame_interval_timestamp = new_ticks; interval_skipped_frames = 0; - ticks_needed_total = 0; frames = 0; }