FreeCalypso > hg > fc-tourmaline
view src/ui/bmi/mmiMelody_data.c @ 261:841a848ba762
SPI SWE: clear any pending boot-time interrupts in spi_init()
Charger plug/unplug hw logic in the Iota ABB has no built-in debouncing,
thus electrical contact bounce on the charging power connection interface
produces a lot of charger plug/unplug interrupts. When we boot in
charging mode (charging power present at boot time and is presumably
the cause of Switch-ON), some bounce may occur between the initial
Iota Switch-ON action and Calypso firmware booting. By clearing any
accumulated ITSTATREG interrupts on boot, we prevent these pre-boot
interrupts from generating charger plug/unplug events to FCHG, which
would upset smooth from-boot charging.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 14 May 2021 02:49:05 +0000 |
parents | 1de0238e3223 |
children |
line wrap: on
line source
/******************************************************************************* CONDAT (UK) ******************************************************************************** This software product is the property of Condat (UK) Ltd and may not be disclosed to any third party without the express permission of the owner. ******************************************************************************** $Project name: Basic MMI $Project code: BMI (6349) $Module: PhoneBook $File: MmiMelody_Data.c $Revision: 1.0 $Author: Condat(UK) $Date: 25/10/00 ******************************************************************************** Description: ******************************************************************************** $History: MmiMelody_data.c 25/10/00 Original Condat(UK) BMI version. $End *******************************************************************************/ #define ENTITY_MFW /* includes */ #include <string.h> #include <stdio.h> #include <stdlib.h> #if defined (NEW_FRAME) #include "typedefs.h" #include "vsi.h" #include "pei.h" #include "custom.h" #include "gsm.h" #else #include "STDDEFS.H" #include "custom.h" #include "gsm.h" #include "vsi.h" #endif #include "MmiBuzzer.h" typedef struct { USHORT command_1; USHORT command_2; USHORT length; } T_DESCR; #define DEF_MELODY(name) const T_DESCR name[] = { #define END_MELODY BZ_TERM,0 }; //#include "tb1.hm" #ifdef USE_PWT #else const UINT16 MELODY_BUZ_FREQ[] = { 0, // REST // A A# B C C# D D# E F F# G G# 27, 29, 31, 33, 35, 37, 39, 41, 44, 46, 49, 52, 55, 58, 62, 65, 69, 73, 78, 82, 87, 92, 98, 104, 110, 117, 123, 131, 139, 147, 156, 165, 175, 185, 196, 208, 220, 233, 247, 262, 277, 294, 311, 330, 349, 370, 392, 415, 440, 466, 494, 523, 554, 587, 622, 659, 698, 740, 784, 831, // MIDDLE 880, 932, 988,1047,1109,1175,1245,1319,1397,1480,1568,1661, 1760,1865,1976,2093,2217,2349,2489,2637,2794,2960,3136,3322, 3520,3729,3951,4186,4435,4699,4978,5274,5588,5920,6272,6645, 7040,7459,7902,8372,8870,9397,9956,10548,11175,11840,12544,13290 }; #endif /* abc tune notation ================= The following letters are used to represent notes:- d' -c'- ---- b -a- --- ---- ---- g ------------------------------------f------------------- e --------------------------------d----------------------- c ----------------------------B--------------------------- A ------------------------G------------------------------- F --------------------E----------------------------------- D ---- ---- ---- -C- B, ---- -A,- G, */ #define TDMA_12 55 DEF_MELODY(rising_chromatic) f1, 0,TDMA_12, fs1, 0,TDMA_12, g1, 0,TDMA_12, gs1, 0,TDMA_12, a1, 0,TDMA_12, as1, 0,TDMA_12, b1, 0,TDMA_12, c2, 0,TDMA_12, cs2, 0,TDMA_12, d2, 0,TDMA_12, ds2, 0,TDMA_12, e2, 0,TDMA_12, f2, 0,TDMA_12, fs2, 0,TDMA_12, g2, 0,TDMA_12, gs2, 0,TDMA_12, a2, 0,TDMA_12, as2, 0,TDMA_12, b2, 0,TDMA_12, c3, 0,TDMA_12, cs3, 0,TDMA_12, d3, 0,TDMA_12, ds3, 0,TDMA_12, e3, 0,TDMA_12, f3, 0,TDMA_12, fs3, 0,TDMA_12, g3, 0,TDMA_12, gs3, 0,TDMA_12, a3, 0,TDMA_12, as3, 0,TDMA_12, b3, 0,TDMA_12, c4, 0,TDMA_12, cs4, 0,TDMA_12, d4, 0,TDMA_12, ds4, 0,TDMA_12, e4, 0,TDMA_12, f4, 0,TDMA_12, fs4, 0,TDMA_12, g4, 0,TDMA_12, gs4, 0,TDMA_12, a4, 0,TDMA_12, as4, 0,TDMA_12, b4, 0,TDMA_12, c5, 0,TDMA_12, cs5, 0,TDMA_12, d5, 0,TDMA_12, ds5, 0,TDMA_12, e5, 0,TDMA_12, END_MELODY DEF_MELODY(rising_cscale) f1, 0,TDMA_12, g1, 0,TDMA_12, a1, 0,TDMA_12, b1, 0,TDMA_12, c2, 0,TDMA_12, d2, 0,TDMA_12, e2, 0,TDMA_12, f2, 0,TDMA_12, g2, 0,TDMA_12, a2, 0,TDMA_12, b2, 0,TDMA_12, c3, 0,TDMA_12, d3, 0,TDMA_12, e3, 0,TDMA_12, f3, 0,TDMA_12, g3, 0,TDMA_12, a3, 0,TDMA_12, b3, 0,TDMA_12, c4, 0,TDMA_12, d4, 0,TDMA_12, e4, 0,TDMA_12, f4, 0,TDMA_12, g4, 0,TDMA_12, a4, 0,TDMA_12, b4, 0,TDMA_12, c5, 0,TDMA_12, d5, 0,TDMA_12, e5, 0,TDMA_12, END_MELODY // Coca cola DEF_MELODY(MELODY_ONE) fs3,0,TDMA_12, fs3,0,TDMA_12, fs3,0,TDMA_12, fs3,0,TDMA_12, g3,0,TDMA_12, fs3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, a3,0,TDMA_12, fs3,0,TDMA_12, d3,0,TDMA_12, 0xFFFF,0xFFFF,0, END_MELODY DEF_MELODY(The_Ale_is_dear) fs4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, b3,30,TDMA_12, fs4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, gs4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, cs4,30,TDMA_12, a4,30,TDMA_12, cs4,30,TDMA_12, e4,30,TDMA_12, fs4,60,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, b3,60,TDMA_12, cs4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, e4,30,TDMA_12, d4,30,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, cs3,30,TDMA_12, d3,30,TDMA_12, cs3,30,TDMA_12, fs4,60,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, b3,60,TDMA_12, fs4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, g4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, cs4,30,TDMA_12, a4,30,TDMA_12, cs4,30,TDMA_12, e4,30,TDMA_12, fs4,60,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, b3,60,TDMA_12, cs4,30,TDMA_12, e4,30,TDMA_12, fs4,30,TDMA_12, e4,30,TDMA_12, d4,30,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, cs3,30,TDMA_12, d3,30,TDMA_12, cs3,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, d4,60,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, a3,30,TDMA_12, a3,30,TDMA_12, a3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, a3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, d4,60,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, fs4,60,TDMA_12, e4,30,TDMA_12, cs4,30,TDMA_12, b3,60,TDMA_12, b3,60,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, d4,60,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, a3,30,TDMA_12, a3,30,TDMA_12, a3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, a3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, b3,30,TDMA_12, cs4,30,TDMA_12, d4,60,TDMA_12, cs4,30,TDMA_12, b3,30,TDMA_12, fs4,60,TDMA_12, e4,30,TDMA_12, cs4,30,TDMA_12, b3,60,TDMA_12, b3,60,TDMA_12, END_MELODY DEF_MELODY(Danza_de_Astureses) c4,60,TDMA_12, d4,60,TDMA_12, e4,60,TDMA_12, d4,24,TDMA_12, e4,24,TDMA_12, f4,24,TDMA_12, e4,24,TDMA_12, d4,24,TDMA_12, c4,24,TDMA_12, b3,60,TDMA_12, g3,60,TDMA_12, c4,60,TDMA_12, d4,60,TDMA_12, e4,60,TDMA_12, d4,24,TDMA_12, e4,24,TDMA_12, fs4,24,TDMA_12, d4,24,TDMA_12, e4,24,TDMA_12, f4,24,TDMA_12, g4,120,TDMA_12, END_MELODY DEF_MELODY(MELODY_HELLO) e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, e3,0,TDMA_12, 0xFFFF, 0xFFFF, 0, END_MELODY DEF_MELODY(bugle) c4, 80,TDMA_12, BZ_REST, 5,TDMA_12, e4, 40,TDMA_12, BZ_REST, 5,TDMA_12, g3, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 80,TDMA_12, BZ_REST, 45,TDMA_12, c4, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 40,TDMA_12, BZ_REST, 5,TDMA_12, e4, 40,TDMA_12, BZ_REST, 5,TDMA_12, g3, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 120,TDMA_12, BZ_REST, 45,TDMA_12, c4, 80,TDMA_12, BZ_REST, 5,TDMA_12, e4, 40,TDMA_12, BZ_REST, 5,TDMA_12, g3, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 80,TDMA_12, BZ_REST, 45,TDMA_12, c4, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 60,TDMA_12, BZ_REST, 5,TDMA_12, c4, 20,TDMA_12, BZ_REST, 5,TDMA_12, e4, 40,TDMA_12, BZ_REST, 5,TDMA_12, g3, 40,TDMA_12, BZ_REST, 5,TDMA_12, c4, 120,TDMA_12, BZ_REST, 40,TDMA_12, END_MELODY