simulavr  1.1.0
ioregs.h
Go to the documentation of this file.
1 /*
2  ****************************************************************************
3  *
4  * simulavr - A simulator for the Atmel AVR family of microcontrollers.
5  * Copyright (C) 2001, 2002, 2003 Klaus Rudolph
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License along
18  * with this program; if not, write to the Free Software Foundation, Inc.,
19  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20  *
21  ****************************************************************************
22  *
23  * $Id$
24  */
25 
26 #ifndef IOREGS
27 #define IOREGS
28 
29 #include "traceval.h"
30 #include "avrdevice.h"
31 
34 
35  private:
36  unsigned char reg_val;
37  unsigned char reg_mask;
38 
39  public:
40  AddressExtensionRegister(AvrDevice *core, const std::string &regname, unsigned bitsize);
41  void Reset() { reg_val = 0; }
42  unsigned char GetRegVal() { return reg_val; }
43  void SetRegVal(unsigned char val) { reg_val = val & reg_mask; }
44 
46 };
47 
48 #endif
Basic AVR device, contains the core functionality.
Definition: avrdevice.h:66
IOReg< AddressExtensionRegister > ext_reg
Definition: ioregs.h:45
unsigned char reg_mask
Definition: ioregs.h:37
AddressExtensionRegister(AvrDevice *core, const std::string &regname, unsigned bitsize)
Definition: ioregs.cpp:28
unsigned char GetRegVal()
Definition: ioregs.h:42
Build a register for TraceValue&#39;s.
Definition: traceval.h:442
unsigned char reg_val
Definition: ioregs.h:36
void SetRegVal(unsigned char val)
Definition: ioregs.h:43