Mercurial > repos > blastem
diff backend.h @ 1465:5d41d0574863
Preserve original address when retranslating instructions instead of switching to the lowest alias
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 13 Sep 2017 21:06:25 -0700 |
parents | b27d7bf1107e |
children | ded16f3d7eb4 1f745318f10a |
line wrap: on
line diff
--- a/backend.h Fri Sep 08 00:38:22 2017 -0700 +++ b/backend.h Wed Sep 13 21:06:25 2017 -0700 @@ -98,6 +98,8 @@ uint32_t max_address; uint32_t bus_cycles; uint32_t clock_divider; + uint32_t move_pc_off; + uint32_t move_pc_size; int32_t mem_ptr_off; int32_t ram_flags_off; uint8_t ram_flags_shift; @@ -123,6 +125,9 @@ void check_code_prologue(code_info *code); void log_address(cpu_options *opts, uint32_t address, char * format); +void retranslate_calc(cpu_options *opts); +void patch_for_retranslate(cpu_options *opts, code_ptr native_address, code_ptr handler); + code_ptr gen_mem_fun(cpu_options * opts, memmap_chunk const * memmap, uint32_t num_chunks, ftype fun_type, code_ptr *after_inc); void * get_native_pointer(uint32_t address, void ** mem_pointers, cpu_options * opts); uint16_t read_word(uint32_t address, void **mem_pointers, cpu_options *opts, void *context);