Version of Robotron arcade game using LPC1768, a Gameduino shield, a serial EEPROM (for high scores), two microswitch joysticks and two buttons plus a box to put it in. 20 levels of mayhem.

Dependencies:   25LCxxx_SPI CommonTypes Gameduino mbed

Committer:
RichardE
Date:
Mon Jun 17 15:10:43 2013 +0000
Revision:
18:70190f956a24
Parent:
9:fa7e7b37b632
Improved response to button 1 when entering high scores (HighScoreEntry.cpp).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RichardE 9:fa7e7b37b632 1 /*
RichardE 9:fa7e7b37b632 2 * SOURCE FILE : Sounds.cpp
RichardE 9:fa7e7b37b632 3 *
RichardE 9:fa7e7b37b632 4 * Various sounds in program memory.
RichardE 9:fa7e7b37b632 5 *
RichardE 9:fa7e7b37b632 6 */
RichardE 9:fa7e7b37b632 7
RichardE 9:fa7e7b37b632 8 #include "Sounds.h"
RichardE 9:fa7e7b37b632 9 #include "Gameduino.h"
RichardE 9:fa7e7b37b632 10 #include "Notes.h"
RichardE 9:fa7e7b37b632 11
RichardE 9:fa7e7b37b632 12 const UInt8 Sounds::FireGun[] = {
RichardE 9:fa7e7b37b632 13 Gameduino::WhiteNoise, // waveform
RichardE 9:fa7e7b37b632 14 Notes::NoteD1, 15, 10, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 15 Notes::NoteC1, 12, 5,
RichardE 9:fa7e7b37b632 16 Notes::NoteB1, 9, 5,
RichardE 9:fa7e7b37b632 17 Notes::NoteA1, 6, 5,
RichardE 9:fa7e7b37b632 18 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 19 };
RichardE 9:fa7e7b37b632 20
RichardE 9:fa7e7b37b632 21 const UInt8 Sounds::Explosion[] = {
RichardE 9:fa7e7b37b632 22 Gameduino::WhiteNoise, // waveform
RichardE 9:fa7e7b37b632 23 Notes::NoteD0, 15, 20, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 24 Notes::NoteC0, 12, 5,
RichardE 9:fa7e7b37b632 25 Notes::NoteB0, 9, 5,
RichardE 9:fa7e7b37b632 26 Notes::NoteA0, 6, 5,
RichardE 9:fa7e7b37b632 27 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 28 };
RichardE 9:fa7e7b37b632 29
RichardE 9:fa7e7b37b632 30 const UInt8 Sounds::RescueHuman[] = {
RichardE 9:fa7e7b37b632 31 Gameduino::SineWave, // waveform
RichardE 9:fa7e7b37b632 32 Notes::NoteG4, 15, 5, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 33 Notes::NoteCS5, 15, 5,
RichardE 9:fa7e7b37b632 34 Notes::NoteG5, 15, 5,
RichardE 9:fa7e7b37b632 35 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 36 };
RichardE 9:fa7e7b37b632 37
RichardE 9:fa7e7b37b632 38 const UInt8 Sounds::HumanDies[] = {
RichardE 9:fa7e7b37b632 39 Gameduino::SineWave, // waveform
RichardE 9:fa7e7b37b632 40 Notes::NoteC5, 15, 5, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 41 Notes::NoteAS5, 15, 5,
RichardE 9:fa7e7b37b632 42 Notes::NoteC5, 15, 5,
RichardE 9:fa7e7b37b632 43 Notes::NoteAS5, 15, 5,
RichardE 9:fa7e7b37b632 44 Notes::NoteC5, 15, 5,
RichardE 9:fa7e7b37b632 45 Notes::NoteAS5, 15, 5,
RichardE 9:fa7e7b37b632 46 Notes::NoteG4, 15, 5,
RichardE 9:fa7e7b37b632 47 Notes::NoteDS4, 15, 5,
RichardE 9:fa7e7b37b632 48 Notes::NoteC4, 15, 5,
RichardE 9:fa7e7b37b632 49 Notes::NoteAS4, 15, 5,
RichardE 9:fa7e7b37b632 50 Notes::NoteG3, 15, 5,
RichardE 9:fa7e7b37b632 51 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 52 };
RichardE 9:fa7e7b37b632 53
RichardE 9:fa7e7b37b632 54 const UInt8 Sounds::PlayerDead[] = {
RichardE 9:fa7e7b37b632 55 Gameduino::SineWave, // waveform
RichardE 9:fa7e7b37b632 56 Notes::NoteA4, 20, 39, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 57 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 58 Notes::NoteA4, 20, 29,
RichardE 9:fa7e7b37b632 59 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 60 Notes::NoteA4, 20, 9,
RichardE 9:fa7e7b37b632 61 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 62 Notes::NoteA4, 20, 39,
RichardE 9:fa7e7b37b632 63 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 64 Notes::NoteC4, 20, 29,
RichardE 9:fa7e7b37b632 65 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 66 Notes::NoteB4, 20, 9,
RichardE 9:fa7e7b37b632 67 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 68 Notes::NoteB4, 20, 29,
RichardE 9:fa7e7b37b632 69 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 70 Notes::NoteA4, 20, 9,
RichardE 9:fa7e7b37b632 71 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 72 Notes::NoteA4, 20, 29,
RichardE 9:fa7e7b37b632 73 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 74 Notes::NoteGS3, 20, 9,
RichardE 9:fa7e7b37b632 75 Notes::NoteSilent, 0, 1,
RichardE 9:fa7e7b37b632 76 Notes::NoteA4, 20, 79,
RichardE 9:fa7e7b37b632 77 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 78 };
RichardE 9:fa7e7b37b632 79
RichardE 9:fa7e7b37b632 80 const UInt8 Sounds::StartLevel[] = {
RichardE 9:fa7e7b37b632 81 Gameduino::SineWave, // waveform
RichardE 9:fa7e7b37b632 82
RichardE 9:fa7e7b37b632 83 Notes::NoteG0, 20, 2, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 84 Notes::NoteB1, 20, 2,
RichardE 9:fa7e7b37b632 85 Notes::NoteD1, 20, 2,
RichardE 9:fa7e7b37b632 86 Notes::NoteC1, 20, 2,
RichardE 9:fa7e7b37b632 87 Notes::NoteE1, 20, 2,
RichardE 9:fa7e7b37b632 88 Notes::NoteG1, 20, 2,
RichardE 9:fa7e7b37b632 89 Notes::NoteFS1, 20, 2,
RichardE 9:fa7e7b37b632 90 Notes::NoteA2, 20, 2,
RichardE 9:fa7e7b37b632 91 Notes::NoteC2, 20, 2,
RichardE 9:fa7e7b37b632 92
RichardE 9:fa7e7b37b632 93 Notes::NoteG1, 20, 2, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 94 Notes::NoteB2, 20, 2,
RichardE 9:fa7e7b37b632 95 Notes::NoteD2, 20, 2,
RichardE 9:fa7e7b37b632 96 Notes::NoteC2, 20, 2,
RichardE 9:fa7e7b37b632 97 Notes::NoteE2, 20, 2,
RichardE 9:fa7e7b37b632 98 Notes::NoteG2, 20, 2,
RichardE 9:fa7e7b37b632 99 Notes::NoteFS2, 20, 2,
RichardE 9:fa7e7b37b632 100 Notes::NoteA3, 20, 2,
RichardE 9:fa7e7b37b632 101 Notes::NoteC3, 20, 2,
RichardE 9:fa7e7b37b632 102
RichardE 9:fa7e7b37b632 103 Notes::NoteG2, 20, 2, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 104 Notes::NoteB3, 20, 2,
RichardE 9:fa7e7b37b632 105 Notes::NoteD3, 20, 2,
RichardE 9:fa7e7b37b632 106 Notes::NoteC3, 20, 2,
RichardE 9:fa7e7b37b632 107 Notes::NoteE3, 20, 2,
RichardE 9:fa7e7b37b632 108 Notes::NoteG3, 20, 2,
RichardE 9:fa7e7b37b632 109 Notes::NoteFS3, 20, 2,
RichardE 9:fa7e7b37b632 110 Notes::NoteA4, 20, 2,
RichardE 9:fa7e7b37b632 111 Notes::NoteC4, 20, 2,
RichardE 9:fa7e7b37b632 112
RichardE 9:fa7e7b37b632 113 Notes::NoteG3, 20, 2, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 114 Notes::NoteB4, 20, 2,
RichardE 9:fa7e7b37b632 115 Notes::NoteD4, 20, 2,
RichardE 9:fa7e7b37b632 116 Notes::NoteC4, 20, 2,
RichardE 9:fa7e7b37b632 117 Notes::NoteE4, 20, 2,
RichardE 9:fa7e7b37b632 118 Notes::NoteG4, 20, 2,
RichardE 9:fa7e7b37b632 119 Notes::NoteFS4, 20, 2,
RichardE 9:fa7e7b37b632 120 Notes::NoteA5, 20, 2,
RichardE 9:fa7e7b37b632 121 Notes::NoteC5, 20, 2,
RichardE 9:fa7e7b37b632 122
RichardE 9:fa7e7b37b632 123 Notes::NoteG4, 20, 2, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 124 Notes::NoteB5, 20, 2,
RichardE 9:fa7e7b37b632 125 Notes::NoteD5, 20, 2,
RichardE 9:fa7e7b37b632 126 Notes::NoteC5, 20, 2,
RichardE 9:fa7e7b37b632 127 Notes::NoteE5, 20, 2,
RichardE 9:fa7e7b37b632 128 Notes::NoteG5, 20, 2,
RichardE 9:fa7e7b37b632 129 Notes::NoteFS5, 20, 2,
RichardE 9:fa7e7b37b632 130 Notes::NoteA6, 20, 2,
RichardE 9:fa7e7b37b632 131 Notes::NoteC6, 20, 2,
RichardE 9:fa7e7b37b632 132
RichardE 9:fa7e7b37b632 133 Notes::NoteG5, 20, 2, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 134 Notes::NoteB6, 20, 2,
RichardE 9:fa7e7b37b632 135 Notes::NoteD6, 20, 2,
RichardE 9:fa7e7b37b632 136 Notes::NoteG6, 20, 20,
RichardE 9:fa7e7b37b632 137 Notes::NoteSilent, 0, 10,
RichardE 9:fa7e7b37b632 138 Notes::NoteG6, 20, 20,
RichardE 9:fa7e7b37b632 139 Notes::NoteSilent, 0, 10,
RichardE 9:fa7e7b37b632 140 Notes::NoteG6, 20, 20,
RichardE 9:fa7e7b37b632 141
RichardE 9:fa7e7b37b632 142 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 143 };
RichardE 9:fa7e7b37b632 144
RichardE 9:fa7e7b37b632 145 const UInt8 Sounds::ExtraLife[] = {
RichardE 9:fa7e7b37b632 146 Gameduino::SineWave, // waveform
RichardE 9:fa7e7b37b632 147 Notes::NoteG5, 15, 5, // frequency, amplitude, duration
RichardE 9:fa7e7b37b632 148 Notes::NoteCS6, 15, 5,
RichardE 9:fa7e7b37b632 149 Notes::NoteG6, 15, 5,
RichardE 9:fa7e7b37b632 150 Notes::NoteG5, 15, 5,
RichardE 9:fa7e7b37b632 151 Notes::NoteCS6, 15, 5,
RichardE 9:fa7e7b37b632 152 Notes::NoteG6, 15, 5,
RichardE 9:fa7e7b37b632 153 Notes::NoteG5, 15, 5,
RichardE 9:fa7e7b37b632 154 Notes::NoteCS6, 15, 5,
RichardE 9:fa7e7b37b632 155 Notes::NoteG6, 15, 5,
RichardE 9:fa7e7b37b632 156 Notes::NoteEndMarker
RichardE 9:fa7e7b37b632 157 };