User Tools

Site Tools


speakjet_definition_list

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Last revision Both sides next revision
speakjet_definition_list [2006/06/16 12:41]
audiocommander
speakjet_definition_list [2006/10/15 09:35]
127.0.0.1 (old revision restored)
Line 1: Line 1:
 +====== SCP and MSA #defines for the SpeakJet ======
  
 +:!: **ImportantNote:​\\
 +This file is currently under development and can change radically!\\
 +Maybe you want to wait some days until this note disappears to add your SJ-Definitions**
 +
 +It can be used for your C-based MBHP_IIC_SpeakJet Project:
 +
 +Feel free to edit and add defines!
 +
 +
 +<code c>
 +
 +/*
 + ​* ​ IIC_SpeakJetDefines.h
 + ​* ​ kII.2
 + *
 + ​* ​ Created by Michael Markert, audiocommander.de on 20.05.06
 + ​* ​ Based on Speakjet control codes from July 27, 2004 version of Speakjet Manual
 + ​* ​  and ASM-Version of Doug Elliott, VA3DAE
 + *
 + ​* ​ Released under CreativeCommons 2.5 by-nc-sa
 + ​* ​ http://​creativecommons.org/​licenses/​by-nc-sa/​2.5/​
 + *
 + */
 +
 +
 +#ifndef _IIC_SPEAKJETDEFINES_H
 +#define _IIC_SPEAKJETDEFINES_H
 +
 +
 +
 +// ********* SPEAKJET SCP ************* //
 +// Serial Control Protocol
 +#ifdef _DEBUG_C
 + #pragma mark -
 + #pragma mark SCP
 +#endif
 +
 +// escape character ('​\\'​) 0x5C to enter SCP Mode
 +#define SCP_ESCAPE '​\\'​
 +#define SCP_SEL0 '​0'​
 +#define SCP_SEL1 '​1'​
 +#define SCP_SEL2 '​2'​
 +#define SCP_SEL3 '​3'​
 +#define SCP_SEL4 '​4'​
 +#define SCP_SEL5 '​5'​
 +#define SCP_SEL6 '​6'​
 +#define SCP_SEL7 '​7'​
 +#define SCP_EXIT '​X'​
 +
 +#define SCP_READY '​V'​
 +#define SCP_CLEAR_BUFFER '​R'​
 +#define SCP_START '​T'​
 +#define SCP_STOP '​S'​
 +
 +#define SCP_MEMTYPE '​H'​
 +#define SCP_MEMADDR '​J'​
 +#define SCP_MEMWRT '​N'​
 +
 +#define SCP_RESET '​W'​
 +
 +
 +// ********* SPEAKJET SCP REGISTERS **** //
 +// SCP Registers & MAX Values
 +#ifdef _DEBUG_C
 + #pragma mark -
 + #pragma mark SCP REGISTERS & MAX VALUES
 +#endif
 +
 +// == SCP_MEMTYPE (H) ==
 +#define SCP_MEMTYPE_REGISTER '​0'​
 +#define SCP_MEMTYPE_EEPROM_H '​3'​
 +#define SCP_MEMTYPE_EEPROM_L '​2'​
 +
 +// == SCP_MEMADDR (J) ==
 +// Envelope
 +#define SCP_ENV_FREQ '​0'​
 +#define SCP_ENV_CTRL '​8'​
 +/* Oscillator Frequency Register
 +#define SCP_OSC1_FREQ '​1'​
 +#define SCP_OSC2_FREQ '​2'​
 +#define SCP_OSC3_FREQ '​3'​
 +#define SCP_OSC4_FREQ '​4'​
 +#define SCP_OSC5_FREQ '​5'​ */
 +/* Oscillator Level Register
 +#define SCP_OSC1_LEVEL 11
 +#define SCP_OSC2_LEVEL 12
 +#define SCP_OSC3_LEVEL 13
 +#define SCP_OSC4_LEVEL 14
 +#define SCP_OSC5_LEVEL 15*/​
 +// Distortion
 +#define SCP_DISTORTION '​6'​
 +// Master
 +#define SCP_MASTER_VOLUME '​7'​
 +
 +// == SCP_MEMWRT (N) ==
 +// ENVType (send ENVType + ENVState!)
 +#define SCP_ENV_SAW 0x0
 +#define SCP_ENV_SINE 0x1
 +#define SCP_ENV_TRIANGLE 0x2
 +#define SCP_ENV_SQUARE 0x3
 +// ENVState (send ENVType + ENVState!)
 +#define SCP_ENV_OSC123 0x40
 +#define SCP_ENV_OSC45 0x80
 +//  Default values
 +#define SCP_FREQ_DEFAULT 440
 +#define SCP_LEVEL_DEFAULT 20 //​ 63 MAX for Mixer 1: OSC 1, 2 & 3
 +//  Maximum accepted values
 +#define SCP_FREQ_MAX 3999
 +#define SCP_LEVEL_MAX 31
 +#define SCP_DISTORTION_MAX 255
 +#define SCP_MASTER_VOLUME_MAX 255
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +// ********* SPEAKJET MSA ************* //
 +// Mathmatical Sound Architecture
 +#ifdef _DEBUG_C
 + #pragma mark -
 + #pragma mark MSA Control Codes
 +#endif
 +
 +
 +// 0 - 31 CONTROL CODES
 +#define MSA_PAUSE0 0
 +#define MSA_PAUSE1 1
 +#define MSA_PAUSE2 2
 +#define MSA_PAUSE3 3
 +#define MSA_PAUSE4 4
 +#define MSA_PAUSE5 5
 +#define MSA_PAUSE6 6
 +
 +#define MSA_NEXTFAST 7
 +#define MSA_NEXTSLOW 8
 +#define MSA_NEXTHIGH 14
 +#define MSA_NEXTLOW 15
 +
 +#define MSA_WAIT 16
 +
 +#define MSA_VOLUME 20
 +#define MSA_SPEED 21
 +#define MSA_PITCH 22
 +#define MSA_BEND 23
 +
 +#define MSA_PORTCTR 24
 +#define MSA_PORT 25
 +
 +#define MSA_REPEAT 26
 +
 +#define MSA_CALLPHRASE 28
 +#define MSA_GOTOPHRASE 29
 +
 +#define MSA_DELAY 30
 +#define MSA_RESET 31
 +
 +// 32 - 127 (Reserved)
 +#ifdef _DEBUG_C
 + #pragma mark MSA (Reserved)
 +#endif
 +
 +// 128 - 254 SOUNDCODES
 +#ifdef _DEBUG_C
 + #pragma mark MSA Sound Codes
 +#endif
 +
 +// MSA Sound Codes: Phonemes
 +#define MSAPH_IY 128
 +#define MSAPH_IH 129
 +#define MSAPH_EY 130
 +#define MSAPH_EH 131
 +#define MSAPH_AY 132
 +#define MSAPH_AX 133
 +#define MSAPH_UX 134
 +#define MSAPH_OH 135
 +#define MSAPH_AW 136
 +#define MSAPH_OW 137
 +#define MSAPH_UH 138
 +#define MSAPH_UW 139
 +#define MSAPH_MM 140
 +#define MSAPH_NE 141
 +#define MSAPH_NO 142
 +#define MSAPH_NGE 143
 +#define MSAPH_NGO 144
 +#define MSAPH_LE 145
 +#define MSAPH_LO 146
 +#define MSAPH_WW 147
 +#define MSAPH_RR 148
 +#define MSAPH_IYRR 149
 +#define MSAPH_EYRR 150
 +#define MSAPH_AXRR 151
 +#define MSAPH_AWRR 152
 +#define MSAPH_OWRR 153
 +#define MSAPH_EYIY 154
 +#define MSAPH_OHIY 155
 +#define MSAPH_OWIY 156
 +#define MSAPH_OHIH 157
 +#define MSAPH_IYEH 158
 +#define MSAPH_EHLL 159
 +#define MSAPH_IYUW 160
 +#define MSAPH_AXUW 161
 +#define MSAPH_IHWW 162
 +#define MSAPH_AYWW 163
 +#define MSAPH_OWWW 164
 +#define MSAPH_JH 165
 +#define MSAPH_VV 166
 +#define MSAPH_ZZ 167
 +#define MSAPH_ZH 168
 +#define MSAPH_DH 169
 +#define MSAPH_BE 170
 +#define MSAPH_BO 171
 +#define MSAPH_EB 172
 +#define MSAPH_OB 173
 +#define MSAPH_DE 174
 +#define MSAPH_DO 175
 +#define MSAPH_ED 176
 +#define MSAPH_OD 177
 +#define MSAPH_GE 178
 +#define MSAPH_GO 179
 +#define MSAPH_EG 180
 +#define MSAPH_OG 181
 +#define MSAPH_CH 182
 +#define MSAPH_HE 183
 +#define MSAPH_HO 184
 +#define MSAPH_WH 185
 +#define MSAPH_FF 186
 +#define MSAPH_SE 187
 +#define MSAPH_SO 188
 +#define MSAPH_SH 189
 +#define MSAPH_TH 190
 +#define MSAPH_TT 191
 +#define MSAPH_TU 192
 +#define MSAPH_TS 193
 +#define MSAPH_KE 194
 +#define MSAPH_KO 195
 +#define MSAPH_EK 196
 +#define MSAPH_OK 197
 +#define MSAPH_PE 198
 +#define MSAPH_PO 199
 +
 +// MSA Sound Codes: Robot
 +#define MSAFX_ROBOT_0 200
 +#define MSAFX_ROBOT_1 201
 +#define MSAFX_ROBOT_2 202
 +#define MSAFX_ROBOT_3 203
 +#define MSAFX_ROBOT_4 204
 +#define MSAFX_ROBOT_5 205
 +#define MSAFX_ROBOT_6 206
 +#define MSAFX_ROBOT_7 207
 +#define MSAFX_ROBOT_8 208
 +#define MSAFX_ROBOT_9 209
 +
 +// MSA Sound Codes: Alarms
 +#define MSAFX_ALARM_0 210
 +#define MSAFX_ALARM_1 211
 +#define MSAFX_ALARM_2 212
 +#define MSAFX_ALARM_3 213
 +#define MSAFX_ALARM_4 214
 +#define MSAFX_ALARM_5 215
 +#define MSAFX_ALARM_6 216
 +#define MSAFX_ALARM_7 217
 +#define MSAFX_ALARM_8 218
 +#define MSAFX_ALARM_9 219
 +
 +// MSA Sound Codes: Beeps
 +#define MSAFX_BEEP_0 220
 +#define MSAFX_BEEP_1 221
 +#define MSAFX_BEEP_2 222
 +#define MSAFX_BEEP_3 223
 +#define MSAFX_BEEP_4 224
 +#define MSAFX_BEEP_5 225
 +#define MSAFX_BEEP_6 226
 +#define MSAFX_BEEP_7 227
 +#define MSAFX_BEEP_8 228
 +#define MSAFX_BEEP_9 229
 +
 +// MSA Sound Codes: Biological
 +#define MSAFX_BIO_0 230
 +#define MSAFX_BIO_1 231
 +#define MSAFX_BIO_2 232
 +#define MSAFX_BIO_3 233
 +#define MSAFX_BIO_4 234
 +#define MSAFX_BIO_5 235
 +#define MSAFX_BIO_6 236
 +#define MSAFX_BIO_7 237
 +#define MSAFX_BIO_8 238
 +#define MSAFX_BIO_9 239
 +
 +// MSA Sound Codes: DTMF
 +#define MSAFX_DTMF_0 240
 +#define MSAFX_DTMF_1 241
 +#define MSAFX_DTMF_2 242
 +#define MSAFX_DTMF_3 243
 +#define MSAFX_DTMF_4 244
 +#define MSAFX_DTMF_5 245
 +#define MSAFX_DTMF_6 246
 +#define MSAFX_DTMF_7 247
 +#define MSAFX_DTMF_8 248
 +#define MSAFX_DTMF_9 249
 +#define MSAFX_DTMF_S 250
 +#define MSAFX_DTMF_R 251
 +
 +// MSA Sound Codes: Misc
 +#define MSAFX_SONAR_PING 252
 +#define MSAFX_PISTOLSHOT 253
 +#define MSAFX_WOW 254
 +
 +// 255: End of Phrase
 +#ifdef _DEBUG_C
 + #pragma mark MSA EOP
 +#endif
 +
 +#define MSA_EOP 255
 +
 +
 +
 +#endif /* _IIC_SPEAKJETDEFINES_H */
 +
 +
 +
 +</​code>​
speakjet_definition_list.txt ยท Last modified: 2006/12/05 14:28 by audiocommander