Home | History | Annotate | Line # | Download | only in avr
      1 /* AVR Simulator definition.
      2    Copyright (C) 2009-2024 Free Software Foundation, Inc.
      3 
      4 This file is part of the GNU simulators.
      5 
      6 This program is free software; you can redistribute it and/or modify
      7 it under the terms of the GNU General Public License as published by
      8 the Free Software Foundation; either version 3 of the License, or
      9 (at your option) any later version.
     10 
     11 This program is distributed in the hope that it will be useful,
     12 but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 GNU General Public License for more details.
     15 
     16 You should have received a copy of the GNU General Public License
     17 along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
     18 
     19 #ifndef AVR_SIM_H
     20 #define AVR_SIM_H
     21 
     22 #include <stdint.h>
     23 
     24 struct avr_sim_cpu {
     25   /* The only real register.  */
     26   uint32_t pc;
     27 
     28   /* We update a cycle counter.  */
     29   uint32_t cycles;
     30 };
     31 
     32 #define AVR_SIM_CPU(cpu) ((struct avr_sim_cpu *) CPU_ARCH_DATA (cpu))
     33 
     34 struct avr_sim_state {
     35   /* If true, the pc needs more than 2 bytes.  */
     36   int avr_pc22;
     37 };
     38 
     39 #define AVR_SIM_STATE(sd) ((struct avr_sim_state *) STATE_ARCH_DATA (sd))
     40 
     41 #endif
     42