1 #ifndef UAE_NCR9X_SCSI_H
2 #define UAE_NCR9X_SCSI_H
3 
4 #include "uae/types.h"
5 #ifdef FSUAE
6 #include "uae/memory.h"
7 #endif
8 
9 extern void ncr9x_init(void);
10 extern void ncr9x_free(void);
11 extern void ncr9x_reset(void);
12 extern void ncr9x_rethink(void);
13 
14 extern void cpuboard_ncr9x_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
15 extern void cpuboard_dkb_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
16 extern void fastlane_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
17 extern void oktagon_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
18 extern void masoboshi_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
19 extern void ematrix_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
20 extern void multievolution_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
21 extern void golemfast_add_scsi_unit(int ch, struct uaedev_config_info *ci, struct romconfig *rc);
22 
23 extern addrbank *ncr_fastlane_autoconfig_init(struct romconfig*);
24 extern addrbank *ncr_oktagon_autoconfig_init(struct romconfig*);
25 extern addrbank *ncr_dkb_autoconfig_init(struct romconfig*);
26 extern addrbank *ncr_ematrix_autoconfig_init(struct romconfig *rc);
27 extern addrbank *ncr_multievolution_init(struct romconfig*);
28 
29 extern void cpuboard_ncr9x_scsi_put(uaecptr, uae_u32);
30 extern uae_u32 cpuboard_ncr9x_scsi_get(uaecptr);
31 
32 uae_u32 masoboshi_ncr9x_scsi_get(uaecptr addr, int devnum);
33 void masoboshi_ncr9x_scsi_put(uaecptr addr, uae_u32 v, int devnum);
34 void ncr_masoboshi_autoconfig_init(struct romconfig*, uaecptr);
35 
36 uae_u32 golemfast_ncr9x_scsi_get(uaecptr addr, int devnum);
37 void golemfast_ncr9x_scsi_put(uaecptr addr, uae_u32 v, int devnum);
38 void ncr_golemfast_autoconfig_init(struct romconfig*, uaecptr);
39 
40 #define BLIZZARD_2060_SCSI_OFFSET 0x1ff00
41 #define BLIZZARD_2060_DMA_OFFSET 0x1fff0
42 #define BLIZZARD_2060_LED_OFFSET 0x1ffe0
43 
44 #define BLIZZARD_SCSI_KIT_SCSI_OFFSET 0x8000
45 #define BLIZZARD_SCSI_KIT_DMA_OFFSET 0x10000
46 
47 #define CYBERSTORM_MK2_SCSI_OFFSET 0x1ff03
48 #define CYBERSTORM_MK2_LED_OFFSET 0x1ff43
49 #define CYBERSTORM_MK2_DMA_OFFSET 0x1ff83
50 
51 #define CYBERSTORM_MK1_SCSI_OFFSET 0xf400
52 #define CYBERSTORM_MK1_LED_OFFSET 0xf4e0
53 #define CYBERSTORM_MK1_DMA_OFFSET 0xf800
54 #define CYBERSTORM_MK1_JUMPER_OFFSET 0xfc02
55 
56 #endif /* UAE_NCR9X_SCSI_H */
57