dioscuri.module.cpu32
Class AlignmentCheckedAddressSpace

java.lang.Object
  extended by dioscuri.module.cpu32.Memory
      extended by dioscuri.module.cpu32.AbstractMemory
          extended by dioscuri.module.cpu32.AddressSpace
              extended by dioscuri.module.cpu32.AlignmentCheckedAddressSpace
All Implemented Interfaces:
ByteArray

public class AlignmentCheckedAddressSpace
extends AddressSpace

Author:
Bram Lohman, Bart Kiers

Field Summary
 
Fields inherited from class dioscuri.module.cpu32.AddressSpace
BLOCK_MASK, BLOCK_SIZE, INDEX_MASK, INDEX_SHIFT, INDEX_SIZE
 
Constructor Summary
AlignmentCheckedAddressSpace(AddressSpace target)
           
 
Method Summary
 void clear()
           
 void copyContentsFrom(int address, byte[] buffer, int off, int len)
           
 void copyContentsInto(int address, byte[] buffer, int off, int len)
           
 CodeBlock decodeCodeBlockAt(Processor cpu, int offset)
           
 int execute(Processor cpu, int offset)
           
 byte getByte(int offset)
           
 int getDoubleWord(int offset)
           
 long getLowerDoubleQuadWord(int offset)
           
 long getQuadWord(int offset)
           
 Memory getReadMemoryBlockAt(int offset)
           
 long getUpperDoubleQuadWord(int offset)
           
 short getWord(int offset)
           
 Memory getWriteMemoryBlockAt(int offset)
           
 void setByte(int offset, byte data)
           
 void setDoubleWord(int offset, int data)
           
 void setLowerDoubleQuadWord(int offset, long data)
           
 void setQuadWord(int offset, long data)
           
 void setUpperDoubleQuadWord(int offset, long data)
           
 void setWord(int offset, short data)
           
 boolean updated()
           
 
Methods inherited from class dioscuri.module.cpu32.AddressSpace
getBlockEnd, getBlockStart, getSize
 
Methods inherited from class dioscuri.module.cpu32.AbstractMemory
clear, clearArray, clearArray, getDoubleWord, getDoubleWordInBytes, getQuadWordInBytes, getWord, getWordInBytes, setDoubleWordInBytes, setQuadWordInBytes, setWordInBytes
 
Methods inherited from class dioscuri.module.cpu32.Memory
isAllocated
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AlignmentCheckedAddressSpace

public AlignmentCheckedAddressSpace(AddressSpace target)
Parameters:
target -
Method Detail

getReadMemoryBlockAt

public Memory getReadMemoryBlockAt(int offset)
Specified by:
getReadMemoryBlockAt in class AddressSpace
Parameters:
offset -
Returns:
-

getWriteMemoryBlockAt

public Memory getWriteMemoryBlockAt(int offset)
Specified by:
getWriteMemoryBlockAt in class AddressSpace
Parameters:
offset -
Returns:
-

execute

public int execute(Processor cpu,
                   int offset)
Specified by:
execute in class Memory
Parameters:
cpu -
offset -
Returns:
-

decodeCodeBlockAt

public CodeBlock decodeCodeBlockAt(Processor cpu,
                                   int offset)
Specified by:
decodeCodeBlockAt in class Memory
Parameters:
cpu -
offset -
Returns:
-

updated

public boolean updated()
Specified by:
updated in class AddressSpace
Returns:
-

clear

public void clear()
Specified by:
clear in interface ByteArray
Specified by:
clear in class AddressSpace

getByte

public byte getByte(int offset)
Specified by:
getByte in interface ByteArray
Overrides:
getByte in class AddressSpace
Parameters:
offset -
Returns:
-

setByte

public void setByte(int offset,
                    byte data)
Specified by:
setByte in interface ByteArray
Overrides:
setByte in class AddressSpace
Parameters:
offset -
data -

getWord

public short getWord(int offset)
Overrides:
getWord in class AddressSpace
Parameters:
offset -
Returns:
-

getDoubleWord

public int getDoubleWord(int offset)
Overrides:
getDoubleWord in class AddressSpace
Parameters:
offset -
Returns:
-

getQuadWord

public long getQuadWord(int offset)
Overrides:
getQuadWord in class AddressSpace
Parameters:
offset -
Returns:
-

getLowerDoubleQuadWord

public long getLowerDoubleQuadWord(int offset)
Overrides:
getLowerDoubleQuadWord in class AddressSpace
Parameters:
offset -
Returns:
-

getUpperDoubleQuadWord

public long getUpperDoubleQuadWord(int offset)
Overrides:
getUpperDoubleQuadWord in class AddressSpace
Parameters:
offset -
Returns:
-

setWord

public void setWord(int offset,
                    short data)
Overrides:
setWord in class AddressSpace
Parameters:
offset -
data -

setDoubleWord

public void setDoubleWord(int offset,
                          int data)
Overrides:
setDoubleWord in class AddressSpace
Parameters:
offset -
data -

setQuadWord

public void setQuadWord(int offset,
                        long data)
Overrides:
setQuadWord in class AddressSpace
Parameters:
offset -
data -

setLowerDoubleQuadWord

public void setLowerDoubleQuadWord(int offset,
                                   long data)
Overrides:
setLowerDoubleQuadWord in class AddressSpace
Parameters:
offset -
data -

setUpperDoubleQuadWord

public void setUpperDoubleQuadWord(int offset,
                                   long data)
Overrides:
setUpperDoubleQuadWord in class AddressSpace
Parameters:
offset -
data -

copyContentsFrom

public void copyContentsFrom(int address,
                             byte[] buffer,
                             int off,
                             int len)
Overrides:
copyContentsFrom in class AddressSpace
Parameters:
address -
buffer -
off -
len -

copyContentsInto

public void copyContentsInto(int address,
                             byte[] buffer,
                             int off,
                             int len)
Specified by:
copyContentsInto in interface ByteArray
Overrides:
copyContentsInto in class AddressSpace
Parameters:
address -
buffer -
off -
len -