Mercurial > repos > blastem
comparison m68k_core.c @ 1275:f36ef4847ef2
Fix bug in handling of translating unmapped addresses
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Thu, 09 Mar 2017 22:17:46 -0800 |
parents | 462d9770d467 |
children | 996eb76d6da1 |
comparison
equal
deleted
inserted
replaced
1274:779920729249 | 1275:f36ef4847ef2 |
---|---|
883 encoded = get_native_pointer(address, (void **)context->mem_pointers, &opts->gen); | 883 encoded = get_native_pointer(address, (void **)context->mem_pointers, &opts->gen); |
884 if (!encoded) { | 884 if (!encoded) { |
885 code_ptr start = code->cur; | 885 code_ptr start = code->cur; |
886 translate_out_of_bounds(opts, address); | 886 translate_out_of_bounds(opts, address); |
887 code_ptr after = code->cur; | 887 code_ptr after = code->cur; |
888 map_native_address(context, address, code->cur, 2, after-start); | 888 map_native_address(context, address, start, 2, after-start); |
889 break; | 889 break; |
890 } | 890 } |
891 code_ptr existing = get_native_address(opts, address); | 891 code_ptr existing = get_native_address(opts, address); |
892 if (existing) { | 892 if (existing) { |
893 jmp(code, existing); | 893 jmp(code, existing); |