Ok, after some tinkering with the memory system I have come up with the following implementation plan for VME, just tell me it is plain stupid or I will just try it out. smile

Code:
/*                                                                                                                                                                
 * Implementation notes                                                                                                                                           
 *                                                                                                                                                                
 * 1) VME address space is allocated as an extension of AS_PROGRAM adress space of the                                                                            
 *    controller board in SLOT 0                                                                                                                                  
 *                                                                                                                                                                
 * 2) An adressmodifier keeps track of the offset of each entry and type of access and                                                                            
 *    is determined by a bank tag, eg "vme16_priv", "vme24" etc, set by the card device when                                                                      
 *    registering itself with the VME device.                                                                                                                     
 *                                                                                                                                                                
 * 3) Overlapping areas between VME and local adress space is implemented                                                                                         
 *    as banks by the VME device, automatically by mapping in the appropriate bank based on                                                                       
 *    the adressmodifier.                                                                                                                                         
 */


Because I can