dioscuri.module
Class ModuleDMA

java.lang.Object
  extended by dioscuri.module.AbstractModule
      extended by dioscuri.module.ModuleDMA
All Implemented Interfaces:
Addressable, Module
Direct Known Subclasses:
DMA

public abstract class ModuleDMA
extends AbstractModule
implements Addressable

Interface representing a generic DMA module.


Nested Class Summary
 
Nested classes/interfaces inherited from interface dioscuri.interfaces.Module
Module.Type
 
Field Summary
 
Fields inherited from class dioscuri.module.AbstractModule
type
 
Constructor Summary
ModuleDMA()
           
 
Method Summary
abstract  void acknowledgeBusHold()
          Control has been relinquished of the system busses
DMA now has control over the system busses, so the highest priority DMA channel that scheduled a request is located and after setting up the necessary parameters (address, count, memory), the DMA transfer is initiated
abstract  boolean isTerminalCountReached()
           
abstract  boolean registerDMAChannel(int chanNum, DMA16Handler dma16handler)
           
abstract  boolean registerDMAChannel(int chanNum, DMA8Handler dma8handler)
           
abstract  void setDMARequest(int chanNum, boolean request)
          Sets the DMA Requests in the corresponding controller's status register, and initiates the handling of Hold Requests
 
Methods inherited from class dioscuri.module.AbstractModule
getConnection, getConnections, getDebugMode, getDump, getExpectedConnections, getType, isConnected, reset, setConnection, setDebugMode, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface dioscuri.interfaces.Addressable
getIOPortByte, getIOPortDoubleWord, getIOPortWord, setIOPortByte, setIOPortDoubleWord, setIOPortWord
 
Methods inherited from interface dioscuri.interfaces.Module
getConnection, getConnections, getDebugMode, getDump, getExpectedConnections, getType, isConnected, reset, setConnection, setDebugMode, start, stop
 

Constructor Detail

ModuleDMA

public ModuleDMA()
Method Detail

registerDMAChannel

public abstract boolean registerDMAChannel(int chanNum,
                                           DMA8Handler dma8handler)
Parameters:
chanNum -
dma8handler -
Returns:

registerDMAChannel

public abstract boolean registerDMAChannel(int chanNum,
                                           DMA16Handler dma16handler)
Parameters:
chanNum -
dma16handler -
Returns:

setDMARequest

public abstract void setDMARequest(int chanNum,
                                   boolean request)
Sets the DMA Requests in the corresponding controller's status register, and initiates the handling of Hold Requests

Parameters:
chanNum - Channel requesting a DMA transfer
request - Set request (true); clear request (false)

acknowledgeBusHold

public abstract void acknowledgeBusHold()
Control has been relinquished of the system busses
DMA now has control over the system busses, so the highest priority DMA channel that scheduled a request is located and after setting up the necessary parameters (address, count, memory), the DMA transfer is initiated


isTerminalCountReached

public abstract boolean isTerminalCountReached()
Returns: