[cooja] memory: AvrMoteMemory and MspMoteMemory dummy implementation of MemoryInterface
This commit is contained in:
parent
128ef57289
commit
d1c05300a9
|
@ -40,10 +40,13 @@ import avrora.core.SourceMapping;
|
|||
import avrora.core.SourceMapping.Location;
|
||||
import avrora.sim.AtmelInterpreter;
|
||||
import avrora.sim.Simulator.Watch;
|
||||
import java.util.Map;
|
||||
import org.contikios.cooja.mote.memory.MemoryInterface;
|
||||
import org.contikios.cooja.mote.memory.MemoryLayout;
|
||||
/**
|
||||
* @author Joakim Eriksson
|
||||
*/
|
||||
public class AvrMoteMemory implements MoteMemory, AddressMemory {
|
||||
public class AvrMoteMemory implements MemoryInterface, MoteMemory, AddressMemory {
|
||||
private static Logger logger = Logger.getLogger(AvrMoteMemory.class);
|
||||
|
||||
private SourceMapping memoryMap;
|
||||
|
@ -60,11 +63,6 @@ public class AvrMoteMemory implements MoteMemory, AddressMemory {
|
|||
interpreter.getSimulator().insertWatch(w, address);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void clearMemory() {
|
||||
logger.fatal("not implemented");
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getMemorySegment(int address, int size) {
|
||||
logger.fatal("getMemorySegment is not implemented");
|
||||
|
@ -199,4 +197,50 @@ public class AvrMoteMemory implements MoteMemory, AddressMemory {
|
|||
logger.warn("Not implemented");
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getMemory() throws MoteMemoryException {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getMemorySegment(long addr, int size) throws MoteMemoryException {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMemorySegment(long addr, byte[] data) throws MoteMemoryException {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void clearMemory() {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getStartAddr() {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Symbol> getSymbolMap() {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public MemoryLayout getLayout() {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean addSegmentMonitor(SegmentMonitor.EventType flag, long address, int size, SegmentMonitor monitor) {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean removeSegmentMonitor(long address, int size, SegmentMonitor monitor) {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -29,18 +29,21 @@
|
|||
package org.contikios.cooja.mspmote;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import org.contikios.cooja.AddressMemory;
|
||||
import org.contikios.cooja.Mote;
|
||||
import org.contikios.cooja.MoteMemory;
|
||||
import org.contikios.cooja.mote.memory.MemoryInterface;
|
||||
import org.contikios.cooja.mote.memory.MemoryLayout;
|
||||
import se.sics.mspsim.core.MSP430;
|
||||
import se.sics.mspsim.core.Memory.AccessMode;
|
||||
import se.sics.mspsim.core.Memory.AccessType;
|
||||
import se.sics.mspsim.util.MapEntry;
|
||||
|
||||
public class MspMoteMemory implements MoteMemory, AddressMemory {
|
||||
public class MspMoteMemory implements MemoryInterface, MoteMemory, AddressMemory {
|
||||
private static Logger logger = Logger.getLogger(MspMoteMemory.class);
|
||||
private final ArrayList<MapEntry> mapEntries;
|
||||
|
||||
|
@ -87,11 +90,6 @@ public class MspMoteMemory implements MoteMemory, AddressMemory {
|
|||
return 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void clearMemory() {
|
||||
logger.fatal("clearMemory() not implemented");
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getMemorySegment(int address, int size) {
|
||||
int[] memInts = new int[size];
|
||||
|
@ -201,6 +199,52 @@ public class MspMoteMemory implements MoteMemory, AddressMemory {
|
|||
}
|
||||
|
||||
private ArrayList<MemoryCPUMonitor> cpuMonitorArray = new ArrayList<MemoryCPUMonitor>();
|
||||
|
||||
@Override
|
||||
public byte[] getMemory() throws MoteMemoryException {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getMemorySegment(long addr, int size) throws MoteMemoryException {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setMemorySegment(long addr, byte[] data) throws MoteMemoryException {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public void clearMemory() {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getStartAddr() {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Symbol> getSymbolMap() {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public MemoryLayout getLayout() {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean addSegmentMonitor(SegmentMonitor.EventType flag, long address, int size, SegmentMonitor monitor) {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean removeSegmentMonitor(long address, int size, SegmentMonitor monitor) {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
class MemoryCPUMonitor extends se.sics.mspsim.core.MemoryMonitor.Adapter {
|
||||
public final MemoryMonitor mm;
|
||||
public final int address;
|
||||
|
|
Loading…
Reference in a new issue