Subversion Repositories svn.mios

Rev

Rev 194 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
111 tk 1
; $Id: setup_8580.asm 285 2008-04-23 20:31:07Z tk $
194 tk 2
    LIST R=DEC
111 tk 3
;
4
; Prepared Setup File for 8580 SID
5
;
6
 
7
    ;; here you can change the default device ID - if you are using
8
    ;; some cores as slave, set:
9
    ;;    o DEFAULT_DEVICE_ID 0x01  ; for the first slave
10
    ;;    o DEFAULT_DEVICE_ID 0x02  ; for the second slave
11
    ;;    o DEFAULT_DEVICE_ID 0x03  ; for the third slave
12
#define DEFAULT_DEVICE_ID 0x00
13
 
14
    ;; if this option is enabled (1), the DEFAULT_DEVICE_ID won't be used, but
15
    ;; it will be automatically derived from the MIOS Device ID instead
16
#define AUTO_DEVICE_ID  1
17
 
18
    ;; this MIDI channel will only be taken when:
19
    ;;    - you are using the MBSID standalone (neither as CS Master, nor as CS Slave)
20
    ;;    - the control surface is diabled and a BankStick is connected
21
    ;; in all other cases, the MIDI channel of the Master or Slave has to be selected
22
    ;; from the Control Surface
23
#define DEFAULT_MIDI_CHANNEL 1
24
 
25
    ;; select the BankStick type you are using here:
26
    ;;    0: "normal" 24LC256 EEPROM (32k), up to 8 EEPROMs can be connected for 8 banks
27
    ;;    1: 24LC512 EEPROM (64k), up to 4 EEPROMs can be connected for 8 banks
28
    ;;       (it is not possible to mix 32k with 64k EEPROMs, more than 4 64k devices not supported)
29
#define DEFAULT_BS_TYPE     0
30
 
31
    ;; select the filter type here:
32
    ;;    0: if a 6581 is controlled from the core
33
    ;;    1: if a 8580 is controlled from the core
34
    ;;    2: 6581 + freely definable scaling (define MIN and MAX value below)
35
    ;;    3: 8580 + freely definable scaling (define MIN and MAX value below)
36
#define DEFAULT_FILTER_TYPE 1
37
    ;; only relevant if DEFAULT_FILTER_TYPE is 2 or 3, values between 0 and 2047 are allowed
38
#define DEFAULT_FILTER_CALI_MIN 20
39
#define DEFAULT_FILTER_CALI_MAX 1000
40
 
41
    ;; set this if you want to switch between two different types and Min/Max values
42
#define DEFAULT_FILTER_TYPE_SWITCH 0
43
    ;; and define the used pin here (default: pin RC.3)
44
#define DEFAULT_FILTER_TYPE_SWITCH_TRIS TRISC
45
#define DEFAULT_FILTER_TYPE_SWITCH_PORT PORTC
46
#define DEFAULT_FILTER_TYPE_SWITCH_PIN  3
47
    ;; define the type (0-3) and the Min/Max values (for type 2/3) here:
48
#define DEFAULT_FILTER_TYPE2     1
49
#define DEFAULT_FILTER_CALI_MIN2 0
50
#define DEFAULT_FILTER_CALI_MAX2 2047
51
 
52
 
53
    ;; set this to '0' to disable the control surface - this is especially usefull for
54
    ;; people who want to program their own CS handler in order to free
55
    ;; some memory
56
    ;; It's also a good idea to disable the CS if the core is running as SID slave
57
    ;; (although this is no requirement!)
58
#define CS_ENABLED 1
59
 
60
    ;; if this option is set to "1", the CS will be enabled if the MIOS device ID is 0x00, and
61
    ;; it will be disabled if the MIOS device ID is != 0x00
62
    ;; in other words: the control surface will only be enabled for the master
63
    ;; note that this mechanism doesn't remove the CS code like CS_ENABLED == 0
64
#define AUTO_CS_ENABLED 1
65
 
66
    ;; number of visible menu items on LCD
67
    ;; use:  4 for 2x16 displays
68
    ;;       5 for 2x20 displays
69
    ;;      10 for 2x40 displays
70
#define CS_MENU_DISPLAYED_ITEMS 5
71
    ;; NOTE: if CS_MENU_DISPLAYED_ITEMS > 5, you have to adapt the DIN settings
72
    ;; in cs_menu_io_tables.inc
73
 
74
    ;; OLD_STYLE == 1: page scrolls with the cursor
75
    ;; OLD_STYLE == 0: page scrolls directly with the datawheel
76
#define CS_MENU_OLD_STYLE 0
77
 
78
    ;; Inc/Dec buttons or rotary encoder of data entry?
79
    ;; use:  0 if rotary encoder should be used 
80
    ;;         (pins of encoder are defined in mios_tables.inc)
81
    ;;       1 if buttons should be used instead
82
#define CS_MENU_USE_INCDEC_BUTTONS 0
83
 
84
    ;; use:  0 if a non-detented encoder is used to select the menu items
85
    ;;       1 if a detented encoder is used to select the menu items
86
    ;; the CS_MENU_EncSpeedSet function in "cs_menu.inc" sets the speed
87
    ;; depending on this value
88
#define CS_MENU_USE_DETENTED_ENCODER 1
89
 
90
    ;; the speed value for the additional encoders (#2-#15) is defined here
91
    ;; Hint: for non-detented encoders try the following: in mios_tables.inc
92
    ;; set the type of all encoders to "MIOS_ENC_MODE_DETENTED2" in order to
93
    ;; reduce the resolution (e.g. 24 ticks per revolution for a ALPS STEC16B),
94
    ;; set the speed value to 3 --- result: so long as the encoder is moved
95
    ;; slow, the parameter can be changed very precisely. By moving the encoder
96
    ;; faster, it is possible to sweep over the whole value range with a single turn
97
    ;; ("Progressive Mode")
98
#define CS_MENU_ENC_SPEED_VALUE 3
99
 
100
    ;; set this define to 1 of the link to slave SIDs should be enabled by default
101
#define CS_MENU_DEFAULT_LINK 0
102
 
103
    ;; if 0: OSC button selects also combined modes (7 states, combined OSCs)
104
    ;; if 1: OSC button selects only one of three OSCs (faster handling)
105
#define CS_MENU_OSC_BUTTON_BEHAVIOUR 1
106
 
107
    ;; use PORTA and PORTE (J5 of the core module) as output
108
    ;; you can address these pins in cs_menu_io_tables.inc as "shift register" #0
109
#define ENABLE_J5 0
110
 
111
    ;; set this to '1' if the modulation matrix (8x7 LEDs) is connected to the DOUT chain
112
#define MOD_MATRIX_ENABLE   1
113
 
114
    ;; define the shift registers (note: HERE the shift register begin with 0: 1st SR is 0, 2nd is 1, 3rd is 2, ...)
115
#define MOD_MATRIX_ANODES   6   ; shift register with anodes (HERE: 7th shift register in the chain)
116
#define MOD_MATRIX_CATHODES 7   ; shift register with cathodes (HERE: 8th shift register in the chain)
117
 
118
; For MIDI activity monitor: define the DOUT pins for the Rx and Tx LED:
119
#define MIDI_RXTX_USE_J5       0    ; if 0: MIDI Rx/Tx LEDs are assigned to the DOUT chain, pin 0x00-0x7f
120
                    ; if 1: MIDI Rx/Tx LEDs are assigned to J5 DOUT, pin 0x00-0x07
121
                    ;       (in this case ENABLE_J5 has to be set to 1!)
122
 
123
#define DEFAULT_MIDI_MONITOR_ENABLED 1  ; if 1, the Tx/Rx LEDs are enabled
124
#define DEFAULT_MIDI_RX_LED 0x41    ; DOUT SR#9, pin D1
125
#define DEFAULT_MIDI_TX_LED 0x42    ; DOUT SR#9, pin D2
126
 
141 tk 127
    ;; define the AOUT interface which is used here:
128
    ;;   1: one MBHP_AOUT module
129
    ;;   2: up to 4 (chained) MBHP_AOUT_LC modules
130
    ;;   3: one MBHP_AOUT_NG module
131
    ;; all other values invalid!
132
#define AOUT_INTERFACE_TYPE 0
111 tk 133
 
141 tk 134
    ;; only relevant if one or more AOUT_LC modules are used:
135
    ;; define the resolution configuration here
136
    ;;   0: first channel 12bit, second channel 4bit
137
    ;;   1: first channel 8bit, second channel 8bit
285 tk 138
    ;;   2: combines M1,M2 and/or M3/M4: first channel 12bit, second channel 12bit, third channel 8bit, fourth channel ignored!
141 tk 139
    ;; all other values invalid!
140
#define AOUT_LC_RESOLUTION_OPTION_M1 0
141
#define AOUT_LC_RESOLUTION_OPTION_M2 0
142
#define AOUT_LC_RESOLUTION_OPTION_M3 0
143
#define AOUT_LC_RESOLUTION_OPTION_M4 0
144
 
111 tk 145
    ;; enable the 6th LFO waveform (analog inputs)
146
#define ENABLE_AIN_LFO_WAVEFORM 1
147
 
148
    ;; sets the default display mode for the LED matrix
149
    ;;    0: shows modulation assignments after power-on
150
    ;;    1: shows modulation meters after power-on
151
    ;; the mode can be toggled by pressing two mod target buttons at the same time (e.g. O1 and O2 Pitch)
152
#define DEFAULT_LEDMATRIX_MODE 0
153
 
154
#include "src/main.inc"