1 /* Definitions to support the memory module wrapper class. 2 Copyright 2001, 2003 Brian R. Gaeke. 3 4 This file is part of VMIPS. 5 6 VMIPS is free software; you can redistribute it and/or modify it 7 under the terms of the GNU General Public License as published by the 8 Free Software Foundation; either version 2 of the License, or (at your 9 option) any later version. 10 11 VMIPS is distributed in the hope that it will be useful, but 12 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 13 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 for more details. 15 16 You should have received a copy of the GNU General Public License along 17 with VMIPS; if not, write to the Free Software Foundation, Inc., 18 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ 19 20 #ifndef _MEMORYMODULE_H_ 21 #define _MEMORYMODULE_H_ 22 23 #include "range.h" 24 25 class MemoryModule : public Range { 26 public: 27 uint32 *myaddr; MemoryModule(size_t size)28 MemoryModule(size_t size) : Range (0, size, 0, MEM_READ_WRITE) { 29 myaddr = new uint32[size / 4]; 30 address = static_cast<void *> (myaddr); 31 } ~MemoryModule()32 ~MemoryModule() { 33 delete [] myaddr; 34 } 35 }; 36 37 #endif /* _MEMORYMODULE_H_ */ 38