1 /*
2    Copyright (C) 1999 T. Scott Dattalo
3 
4 This file is part of gpsim.
5 
6 gpsim 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 2, or (at your option)
9 any later version.
10 
11 gpsim 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 gpsim; see the file COPYING.  If not, write to
18 the Free Software Foundation, 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA.  */
20 
21 #ifndef CLI_CMD_DUMP_H_
22 #define CLI_CMD_DUMP_H_
23 
24 #include "command.h"
25 #include "../src/hexutils.h"
26 class gpsimObject;
27 class Register;
28 
29 class cmd_dump : public command, IntelHexProgramFileType {
30 public:
31   enum {
32     DUMP_EEPROM = 1,
33     DUMP_RAM,
34     DUMP_SFRS
35   };
36 
37   cmd_dump();
38   //  void dump(void);
39 
40   void dump(int bit_flag);
41   int dump(int bit_flag, gpsimObject* module, const char * filename);
42 
43 private:
44   void dump_sfrs();
45   void dump_regs(Register **fr, unsigned int mem_size, int reg_size, int mem_type);
46 };
47 
48 extern cmd_dump dump;
49 
50 #endif
51 
52