1 /***************************************************************************
2     Shared Sound Commands.
3     Used by both the ported 68K and Z80 program code.
4 
5     Copyright Chris White.
6     See license.txt for more details.
7 ***************************************************************************/
8 
9 #pragma once
10 
11 namespace sound
12 {
13     // ----------------------------------------------------------------------------
14     // Commands to send from main program code
15     // ----------------------------------------------------------------------------
16 
17     enum
18     {
19         FM_RESET = 0,            // Reset FM Chip (Stop Music etc.)
20         RESET  = 0x80,           // Reset sound code
21         MUSIC_BREEZE = 0x81,     // Music: Passing Breeze
22         MUSIC_SPLASH = 0x82,     // Music: Splash Wave
23         MUSIC_CUSTOM = 0x83,     // Enhancement: Play Custom Imported Data
24         COIN_IN = 0x84,          // Coin IN Effect
25         MUSIC_MAGICAL = 0x85,    // Music: Magical Sound Shower
26         YM_CHECKPOINT = 0x86,    // YM: Checkpoint Ding
27         INIT_SLIP = 0x8A,        // Slip (Looped)
28         STOP_SLIP = 0x8B,
29         INIT_CHEERS = 0x8D,
30         STOP_CHEERS = 0x8E,
31         CRASH1 = 0x8F,
32         REBOUND = 0x90,
33         CRASH2 = 0x92,
34         NEW_COMMAND = 0x93,
35         SIGNAL1 = 0x94,
36         SIGNAL2 = 0x95,
37         INIT_WEIRD = 0x96,
38         STOP_WEIRD = 0x97,
39         REVS = 0x98,             // New: Added to support revs during WAV playback
40         BEEP1 = 0x99,            // YM Beep
41         UFO = 0x9A,              // Unused sound. Note that the z80 code to play this is not implemented in this conversion.
42         BEEP2 = 0x9B,            // YM Double Beep
43         INIT_CHEERS2     = 0x9C, // Cheers (Looped)
44         VOICE_CHECKPOINT = 0x9D, // Voice: Checkpoint
45         VOICE_CONGRATS   = 0x9E, // Voice: Congratulations
46         VOICE_GETREADY   = 0x9F, // Voice: Get Ready
47         INIT_SAFETYZONE  = 0xA0,
48         STOP_SAFETYZONE  = 0xA1,
49         YM_SET_LEVELS    = 0xA2,
50         // 0xA3 Unused - Should be voice 4, but isn't hooked up
51         PCM_WAVE         = 0xA4, // Wave Sample
52         MUSIC_LASTWAVE   = 0xA5, // Music: Last Wave
53     };
54 
55     // ----------------------------------------------------------------------------
56     // Engine Commands to send from main program code
57     // ----------------------------------------------------------------------------
58 
59     enum
60     {
61         UNUSED,
62         ENGINE_PITCH_H,
63         ENGINE_PITCH_L,
64         ENGINE_VOL,
65         TRAFFIC1,
66         TRAFFIC2,
67         TRAFFIC3,
68         TRAFFIC4,
69     };
70 };