📄 changelog
字号:
2004-06-15 Alan Modra <amodra@bigpond.net.au> * interp.c (sim_prepare_for_program): Use bfd_get_section_size instead of bfd_get_section_size_before_reloc.2003-08-08 Stephane Carrez <stcarrez@nerim.fr> * dv-m68hc11tim.c (cycle_to_string): Add flags parameter to better control the translation. (m68hc11tim_print_timer): Update cycle_to_string conversion. (m68hc11tim_timer_event): Fix handling of output compare register with its interrupts. (m68hc11tim_io_write_buffer): Check output compare after setting M6811_TMSK1. (m68hc11tim_io_read_buffer): Fix compilation warning. * dv-m68hc11.c (m68hc11_option_handler): Likewise. * dv-m68hc11spi.c (m68hc11spi_info): Likewise. * dv-m68hc11sio.c (m68hc11sio_info): Likewise. * interrupts.c (interrupts_info): Likewise. (interrupts_reset): Recognize bootstrap mode. * sim-main.h (PRINT_CYCLE, PRINT_TIME): New defines. (_sim_cpu): Add cpu_start_mode. (cycle_to_string): Add flags member. * m68hc11_sim.c (OPTION_CPU_BOOTSTRAP): New option. (cpu_options): Declare new option bootstrap. (cpu_option_handler): Handle it. (cpu_info): Update call to cycle_to_string.2003-08-08 Stephane Carrez <stcarrez@nerim.fr> * sim-main.h (phys_to_virt): Use memory bank parameters to translate the physical address in virtual address. (struct _sim_cpu): Add memory bank members. * m68hc11_sim.c (cpu_initialize): Clear memory bank parameters. * interp.c (sim_hw_configure): Create memory bank according to memory bank parameters. (sim_get_bank_parameters): New function to obtain memory bank config from the symbol table. (sim_prepare_for_program): Call it to obtain the memory bank parameters. (sim_open): Call sim_prepare_for_program. * dv-m68hc11.c (m68hc11cpu_io_write_buffer): Use memory bank parameters to check if address is within bank window. (m68hc11cpu_io_read_buffer): Likewise. (attach_m68hc11_regs): Map the memory bank according to memory bank parameters.2003-08-08 Stephane Carrez <stcarrez@nerim.fr>, * sim-main.h (PAGE_REGNUM, Z_REGNUM): Use same numbering as gdb.2003-08-08 Stephane Carrez <stcarrez@nerim.fr>, Gary Piercey <gpiercey@northstar-technical.com> * m68hc11_sim.c (print_io_word): New function to print 16-bit value. * sim-main.h (print_io_word): Declare. * dv-m68hc11tim.c (tmsk1_desc): New description table for TMSK1. (tflg1_desc): Likewise for TFLG1. (m68hc11tim_info): Print input and output compare registers2003-03-02 Stephane Carrez <stcarrez@nerim.fr> * Makefile.in (SIM_EXTRA_CFLAGS): Set WITH_TARGET_ADDRESS_BITSIZE to 32 to support memory bank switching; temporarily use 32-bit for WORD_BITSIZE to avoid a bug in sim-common.2003-03-01 Stephane Carrez <stcarrez@nerim.fr> * interp.c (sim_fetch_register): Only store a single byte for 1 byte registers.2003-02-27 Andrew Cagney <cagney@redhat.com> * interp.c (sim_prepare_for_program, sim_open) (sim_create_inferior): Rename _bfd to bfd.2002-08-13 Stephane Carrez <stcarrez@nerim.fr> * dv-m68hc11eepr.c (struct m68hc11eepr ): Use const char* for filename.2002-08-13 Marko Kohtala <marko.kohtala@luukku.com> * interp.c (sim_prepare_for_program): Look up the image for the reset vector and set cpu_use_elf_start to 1 if not found. (sim_open): Do not set cpu_use_elf_start.2002-08-13 Marko Kohtala <marko.kohtala@luukku.com> * interp.c (sim_hw_configure): Return 1 for success. (sim_prepare_for_program): Use the sim_hw_configure exit code to return SIM_RC_FAIL.2002-08-13 Stephane Carrez <stcarrez@nerim.fr> * dv-m68hc11.c (m68hc11cpu_io_read_buffer): Translate memory bank window to some virtual address to read from extended memory. (m68hc11cpu_io_write_buffer): Likewise for writing. (attach_m68hc11_regs): When use_bank property is defined, attach to the 68HC12 16K memory bank window. * interp.c (sim_hw_configure): Create memory region for banked memory.2002-08-13 Stephane Carrez <Stephane.Carrez@nerim.fr> * interp.c (sim_hw_configure): Connect port-X to cpu-write-port. * dv-m68hc11.c (m68hc11cpu_ports): Add cpu-write-port input. (m68hc11cpu_port_event): Handle CPU_WRITE_PORT event.2002-08-13 Marko Kohtala <marko.kohtala@luukku.com> * dv-m68hc11.c (m68hc11cpu_io_write): Fix to update IO mapping when IO mapping changed, not when internal RAM mapping is changed.2002-08-13 Stephane Carrez <stcarrez@nerim.fr> * m68hc11_sim.c (cpu_special): Handle call and rtc instructions. * sim-main.h (M6812_CALL_INDIRECT): Add to enum. (m6811_regs): Add page register. (cpu_set_page, cpu_get_page): New macros. (phys_to_virt): New function. (cpu_get_indexed_operand_addr, cpu_return): Declare. * gencode.c: Identify indirect addressing mode for call and fix daa. (gen_function_entry): New param to tell if src8/dst8 locals are necessary. (gen_interpreter): Use it to avoid generation of unused variables. * interp.c (sim_fetch_register): Allow to read page register; page register, A, B and CCR are only 1 byte wide. (sim_store_register): Likewise for writing.2002-06-16 Andrew Cagney <ac131313@redhat.com> * configure: Regenerated to track ../common/aclocal.m4 changes.2002-06-09 Andrew Cagney <cagney@redhat.com> * Makefile.in (INCLUDE): Update path to callback.h. * sim-main.h: Include "gdb/callback.h" and "gdb/remote-sim.h".2002-03-07 Stephane Carrez <Stephane.Carrez@worldnet.fr> * m68hc11_sim.c (cpu_move8): Call sim_engine_abort in default case. (cpu_move16): Likewise. (sim_memory_error): Use sim_io_printf. (cpu_option_handler): Fix compilation warning. * interp.c (sim_hw_configure): Fix compilation warning; remove m68hc12sio@2 device. (sim_open): Likewise. * dv-m68hc11tim.c (m68hc11tim_port_event): Fix clear of TFLG2 flags when reset. (cycle_to_string): Improve convertion of cpu cycle number. (m68hc11tim_info): Print info about PACNT. (m68hc11tim_io_write_buffer): Fix clearing of TFLG2; handle TCTL1 and TCTL2 registers. * dv-m68hc11.c (m68hc11_info): Print 6811 current running mode.2002-03-07 Stephane Carrez <Stephane.Carrez@worldnet.fr> * interp.c (sim_hw_configure): Save the HW cpu pointer in the cpu struct. (sim_hw_configure): Connect the capture input/output events. * sim-main.h (_sim_cpu): New member hw_cpu. (m68hc11cpu_set_oscillator): Declare. (m68hc11cpu_clear_oscillator): Declare. (m68hc11cpu_set_port): Declare. * dv-m68hc11.c (m68hc11_options): New for oscillator commands. (m68hc11cpu_ports): New input ports and output ports to reflect the HC11 IOs. (m68hc11_delete): Cleanup any running oscillator. (attach_m68hc11_regs): Create the input oscillators. (make_oscillator): New function. (find_oscillator): New function. (oscillator_handler): New function. (reset_oscillators): New function. (m68hc11cpu_port_event): Handle the new input ports. (m68hc11cpu_set_oscillator): New function. (m68hc11cpu_clear_oscillator): New function. (get_frequency): New function. (m68hc11_option_handler): New function. (m68hc11cpu_set_port): New function. (m68hc11cpu_io_write): Post the port output events. * dv-m68hc11spi.c (set_bit_port): Use m68hc11cpu_set_port to set the output port value. * dv-m68hc11tim.c (m68hc11tim_port_event): Handle CAPTURE event by latching the TCNT value in the register.2002-03-07 Stephane Carrez <Stephane.Carrez@worldnet.fr> * sim-main.h (cpu_frame, cpu_frame_list): Remove. (cpu_frame_reg, cpu_print_frame): Remove. (cpu_m68hc11_push_uint8, cpu_m68hc11_pop_uint8): Cleanup. (cpu_m68hc11_push_uint16, cpu_m68hc11_pop_uint16): Likewise. (cpu_m68hc12_push_uint8, cpu_m68hc12_push_uint16): Likewise. (cpu_m68hc12_pop_uint8, cpu_m68hc12_pop_uint16): Likewise. * m68hc11_sim.c (cpu_find_frame): Remove. (cpu_create_frame_list): Remove. (cpu_remove_frame_list, cpu_create_frame, cpu_free_frame): Remove. (cpu_frame_reg, cpu_print_frame, cpu_update_frame): Remove. (cpu_call): Cleanup to remove #if HAVE_FRAME and calls to the above. (cpu_update_frame): Likewise. (cpu_return): Likewise. (cpu_reset): Likewise. (cpu_initialize): Likewise. * interp.c (sim_do_command): Remove call to cpu_print_frame.2002-03-07 Stephane Carrez <Stephane.Carrez@worldnet.fr> * interrupts.c (interrupts_reset): New function, setup interrupt vector address according to cpu mode. (interrupts_initialize): Move reset portion to the above. (interrupt_names): New table to give a name to interrupts. (idefs): Handle pulse accumulator interrupts. (interrupts_info): Print the interrupt history. (interrupt_option_handler): New function. (interrupt_options): New table of options. (interrupts_update_pending): Keep track of when interrupts are raised and implement breakpoint-on-raise-interrupt. (interrupts_process): Keep track of when interrupts are taken and implement breakpoint-on-interrupt. * interrupts.h (struct interrupt_history): Define. (struct interrupt): Keep track of the interrupt history. (interrupts_reset): Declare. (interrupts_initialize): Update prototype. * m68hc11_sim.c (cpu_reset): Reset interrupts. (cpu_initialize): Cleanup.2001-07-28 Stephane Carrez <Stephane.Carrez@worldnet.fr> * dv-m68hc11eepr.c (m68hc11eepr_info): Fix print of current write address. (m68hc11eepr_port_event): Fix detach/attach logic.2001-07-22 Stephane Carrez <Stephane.Carrez@worldnet.fr> * Makefile.in (SIM_OBJS): Remove sim-resume.o * interp.c (sim_resume): New function from sim-resume.c, install the stepping event after having processed the pending ticks. (has_stepped): Likewise. (sim_info): Produce an output only if verbose or STATE_VERBOSE_P.2001-07-10 Andrew Cagney <ac131313@redhat.com> * Makefile.in (gencode): Provide explicit path to gencode.c.2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr> * Makefile.in (M68HC11_OBJS): Add m68hc12int.o. (m68hc12int.c): Generate using gencode -m6812. (m68hc11int.c): Likewise with -m6811. * gencode.c (m6811_opcode_patterns): New patterns for 68HC12. (m6811_page1_opcodes): Remove duplicate entries. (m6811_page2_opcodes): Likewise. (m6811_page3_opcodes): Likewise. (m6811_page4_opcodes): Likewise. (m6812_page1_opcodes): New table for 68HC12 instructions. (m6812_page2_opcodes): Likewise. (gen_fetch_operands): New modes [] and &[] for 68HC12 operands. (gen_save_result): Likewise. (gen_interpreter_for_table): Handle 68HC11 and 68HC12 opcodes. (cmp_opcode): New function for opcode comparision. (prepare_table): Sort the opcodes. (gen_interpreter): Prepare all the tables and generate either a 68HC11 or a 68HC12 simulator. (main): New options -m6811 and -m6812. * m68hc11_sim.c (cpu_single_step): Use pointer to cpu interpretor. (cpu_special): Simulation of some 68HC12 instructions. (cpu_exg): New function. (cpu_dbcc): Likewise. (cpu_fetch_relbranch16): Likewise. (cpu_push_all): Push according to 68HC11 or 68HC12. (cpu_move16): Likewise. (cpu_move8): Likewise. (cpu_get_indexed_operand16): Likewise. (cpu_get_indexed_operand8): Likewise. (cpu_get_indexed_operand_addr): Likewise. (cpu_set_reg, cpu_set_dst_reg, cpu_get_src_reg, cpu_get_reg): Likewise. (cpu_reset): Setup INIT register according to architecture. * sim-main.h (M6811_Special): Add 68HC12 specific instructions. (_sim_cpu): Keep track of the cpu being simulated. (cpu_get_tmp3, cpu_get_tmp2, cpu_set_tmp3, cpu_set_tmp2): New. (cpu_m68hc11_push_uintxx): Rename of cpu_push_uintxx. (cpu_m68hc11_pop_uint8): Likewise. (cpu_m68hc12_push_uintxx): New functions for 68HC12. (cpu_m68hc12_pop_uintxx): Likewise. (cpu_exg, cpu_dbcc, cpu_move8, cpu_move16): Likewise, (cpu_fetch_relbranch16): Likewise. (cpu_interp_m6811): Rename of cpu_interp. (cpu_interp_m6812): New function. * interp.c (free_state): New function. (dev_list_68hc12): New table. (sim_board_reset): Reset depending on the cpu (HC11 or HC12). (sim_hw_configure): New function. (sim_prepare_for_program): New function. (sim_open): Use above new functions.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -