Subversion Repositories f9daq

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. #ifndef _WIENVME_DLL_H
  2. #define _WIENVME_DLL_H
  3.  
  4. #include "libxxusb.h"
  5.  
  6. extern usb_dev_handle *udev;
  7.  
  8.  
  9.  
  10. int VME_start (char*);
  11. int VME_close (int);
  12. int VME_stop (void);
  13. int VME_reset (void);
  14.  
  15.  
  16. int VME_read16 (Uint32_t, void*);
  17. int VME_read32 (Uint32_t, void*);
  18.  
  19. int VME_write16 ( Uint32_t, void*);
  20. int VME_write32 ( Uint32_t, void*);
  21.  
  22. #define VME_START(NODE) VME_start((NODE))
  23. #define VME_STOP() VME_stop()
  24. #define VME_RESET() VME_reset()
  25.  
  26. #define VME_A24D16_R(VME,DATA) VME_read16( (VME), (DATA))
  27. #define VME_A24D32_R(VME,DATA) VME_read32( (VME), (DATA))
  28.  
  29. #define VME_A24D16_W(VME,DATA) VME_write16( (VME), (DATA))
  30. #define VME_A24D32_W(VME,DATA) VME_write32( (VME), (DATA))
  31.  
  32. #define VME_A32D16_R(VME,DATA) VME_read16( (VME), (DATA))
  33. #define VME_A32D32_R(VME,DATA) VME_read32( (VME), (DATA))
  34.  
  35. #define VME_A32D16_W(VME,DATA) VME_write16( (VME), (DATA))
  36. #define VME_A32D32_W(VME,DATA) VME_write32( (VME), (DATA))
  37.  
  38. typedef unsigned short ADDRESS_MODIFIER;
  39.  
  40. #define Std_Sup_Data        (ADDRESS_MODIFIER)0x3d
  41. #define Std_Sup_Prog        (ADDRESS_MODIFIER)0x3e
  42. #define Std_NoPriv_Data     (ADDRESS_MODIFIER)0x39
  43. #define Std_NoPriv_Prog     (ADDRESS_MODIFIER)0x3a
  44.  
  45. #define Short_Sup           (ADDRESS_MODIFIER)0x2d
  46. #define Short_NoPriv        (ADDRESS_MODIFIER)0x29
  47.  
  48. #define Ext_Sup_Data        (ADDRESS_MODIFIER)0x0d
  49. #define Ext_Sup_Prog        (ADDRESS_MODIFIER)0x0e
  50. #define Ext_NoPriv_Data     (ADDRESS_MODIFIER)0x09
  51. #define Ext_NoPriv_Prog     (ADDRESS_MODIFIER)0x0a
  52.  
  53. #endif
  54.