Mercurial > repos > blastem
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) |