comparison genesis.c @ 1401:b56c8c51ca5d

Properly release and reacquire framebuffer pointer when switching contexts. Hopefully fixes the LOCKRECT issue some people are seeing with the SDL 2 fallback renderer
author Michael Pavone <pavone@retrodev.com>
date Thu, 15 Jun 2017 09:45:21 -0700
parents efa7225e0f07
children d94855080529
comparison
equal deleted inserted replaced
1400:6a0e3bb6981f 1401:b56c8c51ca5d
894 z80_clear_busreq(gen->z80, gen->m68k->current_cycle); 894 z80_clear_busreq(gen->z80, gen->m68k->current_cycle);
895 ym_reset(gen->ym); 895 ym_reset(gen->ym);
896 //Is there any sort of VDP reset? 896 //Is there any sort of VDP reset?
897 m68k_reset(gen->m68k); 897 m68k_reset(gen->m68k);
898 } 898 }
899 vdp_release_framebuffer(gen->vdp);
899 } 900 }
900 901
901 static void start_genesis(system_header *system, char *statefile) 902 static void start_genesis(system_header *system, char *statefile)
902 { 903 {
903 genesis_context *gen = (genesis_context *)system; 904 genesis_context *gen = (genesis_context *)system;
929 static void resume_genesis(system_header *system) 930 static void resume_genesis(system_header *system)
930 { 931 {
931 genesis_context *gen = (genesis_context *)system; 932 genesis_context *gen = (genesis_context *)system;
932 map_all_bindings(&gen->io); 933 map_all_bindings(&gen->io);
933 render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC); 934 render_set_video_standard((gen->version_reg & HZ50) ? VID_PAL : VID_NTSC);
935 vdp_reacquire_framebuffer(gen->vdp);
934 resume_68k(gen->m68k); 936 resume_68k(gen->m68k);
935 handle_reset_requests(gen); 937 handle_reset_requests(gen);
936 } 938 }
937 939
938 static void inc_debug_mode(system_header *system) 940 static void inc_debug_mode(system_header *system)