Login

Subversion Repositories NedoOS

Rev

Rev 958 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

/* B8ary constant generator macro
By Tom Torfs - donated to the public domain

All macro's evaluate to compile-time constants */


#define HEX__(n) 0x##n##LU

#define B8__(x) (((x&0x00000001LU)!=0)?1:0) \
+(((x&0x00000010LU)!=0)?2:0) \
+(((x&0x00000100LU)!=0)?4:0) \
+(((x&0x00001000LU)!=0)?8:0) \
+(((x&0x00010000LU)!=0)?16:0) \
+(((x&0x00100000LU)!=0)?32:0) \
+(((x&0x01000000LU)!=0)?64:0) \
+(((x&0x10000000LU)!=0)?128:0)


//#define B8(d) ((u8)B8__(HEX__(d)))
#define B8(d) ((u8)0b##d)


// Estructura para las distintas pantallas,
// 10 + 6 + 20 + 1 = 37 bytes por pantalla.

typedef struct
{
    u8 descriptor;
    u16 obj[10];
    u16 movil[3];
    u8 coin[10];
} FASE;

FASE fases[45];

// Definici├│n de las pantallas del juego seg├║n esta documentaci├│n:
/*
B:  L:   C:
0   1    Byte descriptor de fase: TTPPPIII
         TT : 2 bits, n├║mero de tile de fondo (0 a 3)
         PPP: 3 bits, color de PAPER (0 a 8)
         III: 3 bits, color de INK (0 a 8)

1   2    Descriptor de objeto, 2 bytes: XXXXYYYYLLLLTTTD
         XXXX: 4 bits, coordenada X en tiles de la esquina sup.izq (0 a 15)
         YYYY: 4 bits, coordenada Y en tiles de la esquina sup.izq (0 a 15)
         LLLL: 4 bits, longitud del objeto en tiles (0 a 15)
         TTT: 3 bits, n├║mero de objeto (0 a 7)
         D: 1 bit, direcci├│n: 0 horz, 1 vert.

         P.ej. una plataforma de 6 tiles de ancho en (2, 2) del tipo 2, ser├нa:
         0010001001100100
         [ 2][ 2][ 6][2]0

... x 10
21   2   Descriptor de enemigo, 2 bytes: AAAABBBBYYYYRTTV
         AAAA: 4 bits, n┬║ tile horizontal l├нmite izquierdo (0 a 15)
         BBBB: 4 bits, n┬║ tile horizontal l├нmite derecho (0 a 15)
         YYYY: 4 bits, n┬║ tile vertical (0 a 15)
         R: 1 bit, reservado (por ahora no sirve pa n├б).
         TT: 2 bits, tipo de enemigo (0 a 3)// 1 = franky, 2 = vampy, 3 = fanty.
         V: 1 bit, velocidad: 0 lento (de 1 en 1 pixels), 1 r├бpido (de 2 en 2 p├нxels).
... x 3
27   1   Descriptor de moneda, 1 byte: XXXXYYYY
         XXXX: 4 bits, coordenada X en tiles (0 a 15)
         YYYY: 4 bits, coordenada Y en tiles (0 a 15)
... x 10
*/

static const u8 fases_data[]={
//.Pantalla 0
        //TTPPPIII
   B8(00001101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000010), B8(00000000),
   B8(00110000), B8(00010011),
   B8(00110000), B8(10000011),
   B8(00100000), B8(01010101),
   B8(00110000), B8(00010111),
   B8(00110000), B8(10000111),
   B8(11001100), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010101), B8(00011010),
   B8(01100011), B8(00011010),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(00010010),
   B8(00110010),
   B8(10010010),
   B8(10100010),
   B8(01010100),
   B8(01100100),
   B8(00010110),
   B8(00110110),
   B8(10000110),
   B8(10100110),

//.Pantalla 1
        //TTPPPIII
   B8(00000100),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000100), B8(00000000),
   B8(00110101), B8(00000001),
   B8(00010111), B8(10100010),
   B8(00010111), B8(10010011),
   B8(00110110), B8(00100101),
   B8(00110110), B8(10000101),
   B8(00110101), B8(10110110),
   B8(00110110), B8(01010111),
   B8(11000100), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100010), B8(01101001),
   B8(01010000), B8(01010111),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(10010010),
   B8(00100100),
   B8(00110100),
   B8(01000100),
   B8(10000100),
   B8(10110101),
   B8(01010110),
   B8(01100110),
   B8(01110110),
   B8(00011000),

//.Pantalla 2
        //TTPPPIII
   B8(00001111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000010), B8(00000000),
   B8(10111100), B8(00010011),
   B8(00011101), B8(00000101),
   B8(10011100), B8(00000110),
   B8(00011101), B8(10110111),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100101), B8(00001011),
   B8(01010010), B8(00011011),
   B8(10000100), B8(00101010),


        //Monedas
        //XXXXYYYY
   B8(00010001),
   B8(01010001),
   B8(10010001),
   B8(00010100),
   B8(01010100),
   B8(10010100),
   B8(10110110),
   B8(00010111),
   B8(01010111),
   B8(10010111),

//.Pantalla 3
        //TTPPPIII
   B8(00000011),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(10010000), B8(00000000),
   B8(00110101), B8(10110000),
   B8(01010101), B8(00000001),
   B8(10010000), B8(00110011),
   B8(00100101), B8(10110100),
   B8(00011001), B8(00010101),
   B8(01110000), B8(00100110),
   B8(00011000), B8(10011000),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100010), B8(00011010),
   B8(01000011), B8(00011010),
   B8(01110000), B8(00101010),


        //Monedas
        //XXXXYYYY
   B8(00100001),
   B8(01000001),
   B8(01100001),
   B8(10000001),
   B8(10100001),
   B8(00010100),
   B8(00110100),
   B8(01010100),
   B8(01110100),
   B8(10010100),

//.Pantalla 4
        //TTPPPIII
   B8(00010111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001100), B8(00000000),
   B8(00101000), B8(00000011),
   B8(00101000), B8(01010011),
   B8(00101000), B8(10100011),
   B8(00011001), B8(01000100),
   B8(00110010), B8(00000110),
   B8(00100010), B8(01010110),
   B8(00110010), B8(10010110),
   B8(00011011), B8(01111000),
   B8(11001010), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100010), B8(00000101),
   B8(00100011), B8(01101011),
   B8(01010011), B8(00001011),


        //Monedas
        //XXXXYYYY
   B8(00000010),
   B8(00110010),
   B8(01010010),
   B8(01100010),
   B8(10000010),
   B8(10110010),
   B8(00000101),
   B8(00100101),
   B8(10010101),
   B8(10110101),

//.Pantalla 5
        //TTPPPIII
   B8(00000110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001010), B8(00000000),
   B8(01100111), B8(10110001),
   B8(00010111), B8(01000010),
   B8(01010111), B8(00010011),
   B8(00010111), B8(01100011),
   B8(00100110), B8(01100101),
   B8(00010111), B8(10000110),
   B8(00110110), B8(00100111),
   B8(00110110), B8(01111000),
   B8(11001010), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010011), B8(00001010),
   B8(01000100), B8(00100101),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(00000010),
   B8(01100010),
   B8(10000010),
   B8(00000011),
   B8(00000100),
   B8(00000101),
   B8(00000110),
   B8(00100110),
   B8(00110110),
   B8(01000110),

//.Pantalla 6
        //TTPPPIII
   B8(00010110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001100), B8(00000000),
   B8(01110101), B8(00000001),
   B8(01110101), B8(10110001),
   B8(00011001), B8(01010011),
   B8(00011001), B8(10010100),
   B8(00011001), B8(01100101),
   B8(00011001), B8(01000110),
   B8(00011001), B8(00100111),
   B8(00011001), B8(10000111),
   B8(11000000), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010011), B8(00011010),
   B8(01000100), B8(00011000),
   B8(01110001), B8(00110111),


        //Monedas
        //XXXXYYYY
   B8(01000010),
   B8(01100010),
   B8(10010010),
   B8(01000011),
   B8(10010011),
   B8(00100101),
   B8(01000101),
   B8(10000101),
   B8(00100110),
   B8(10000110),

//.Pantalla 7
        //TTPPPIII
   B8(00000011),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(01010111), B8(01100001),
   B8(01110111), B8(10100001),
   B8(00010111), B8(10110001),
   B8(00010111), B8(00100010),
   B8(01010111), B8(10000010),
   B8(00110110), B8(00000011),
   B8(00100111), B8(01000011),
   B8(00010111), B8(10110101),
   B8(01010010), B8(00010111),
   B8(11000000), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000101), B8(00001011),
   B8(01010000), B8(00000101),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(01010010),
   B8(01110010),
   B8(10010010),
   B8(01110011),
   B8(10010011),
   B8(01110100),
   B8(10010100),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 8
        //TTPPPIII
   B8(00000010),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00010101), B8(00100001),
   B8(00110100), B8(01010001),
   B8(01010101), B8(00000011),
   B8(10010010), B8(00010101),
   B8(00010101), B8(10110111),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110101), B8(00010110),
   B8(00110101), B8(01101011),
   B8(01100010), B8(00011011),


        //Monedas
        //XXXXYYYY
   B8(01110000),
   B8(01010010),
   B8(01100010),
   B8(01110010),
   B8(00100110),
   B8(00110110),
   B8(10000110),
   B8(10010110),
   B8(00000000),
   B8(00000000),

//.Pantalla 9
        //TTPPPIII
   B8(00000111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(01101101), B8(00110010),
   B8(00111101), B8(10000010),
   B8(00011101), B8(01000011),
   B8(00101100), B8(10100011),
   B8(00101100), B8(00000101),
   B8(01011100), B8(01000101),
   B8(00101101), B8(10000110),
   B8(00101100), B8(10010111),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000101), B8(00001011),
   B8(00100001), B8(01000111),
   B8(10000011), B8(00011011),


        //Monedas
        //XXXXYYYY
   B8(01000100),
   B8(01010100),
   B8(01100100),
   B8(01110100),
   B8(01010111),
   B8(01100111),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 10
        //TTPPPIII
   B8(01001101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001100), B8(00000000),
   B8(00011001), B8(00010011),
   B8(00011001), B8(10100011),
   B8(01001000), B8(01000100),
   B8(00011101), B8(00110110),
   B8(00011101), B8(10000110),
   B8(00011101), B8(00010111),
   B8(01000110), B8(01000111),
   B8(00011101), B8(10100111),
   B8(11001100), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110000), B8(00100101),
   B8(01010001), B8(00111000),
   B8(10000010), B8(01000101),


        //Monedas
        //XXXXYYYY
   B8(00010010),
   B8(01000010),
   B8(01010010),
   B8(01100010),
   B8(01110010),
   B8(10100010),
   B8(01000110),
   B8(01010110),
   B8(01100110),
   B8(01110110),

//.Pantalla 11
        //TTPPPIII
   B8(01000111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00111111), B8(01110001),
   B8(00100010), B8(10100001),
   B8(00101110), B8(00100010),
   B8(00110010), B8(01010100),
   B8(00100010), B8(00010110),
   B8(00011111), B8(01111000),
   B8(00101110), B8(10101000),
   B8(00101110), B8(00001001),
   B8(00010011), B8(01001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000100), B8(00001011),
   B8(00110000), B8(00000110),
   B8(10000010), B8(00100110),


        //Monedas
        //XXXXYYYY
   B8(01110000),
   B8(10110000),
   B8(00100001),
   B8(00110001),
   B8(01010011),
   B8(01100011),
   B8(00110100),
   B8(00010101),
   B8(00100101),
   B8(01110111),

//.Pantalla 12
        //TTPPPIII
   B8(01001100),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000100), B8(00000000),
   B8(01010100), B8(00000011),
   B8(00110100), B8(10000011),
   B8(01011011), B8(10100100),
   B8(00011001), B8(01100101),
   B8(00101010), B8(00110111),
   B8(00111010), B8(00101000),
   B8(00011001), B8(10001000),
   B8(01101010), B8(00001001),
   B8(00101010), B8(10101001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100000), B8(00111001),
   B8(01000010), B8(01111001),
   B8(01100101), B8(01001001),


        //Monedas
        //XXXXYYYY
   B8(00000001),
   B8(01000001),
   B8(10000001),
   B8(00100010),
   B8(10100010),
   B8(01100100),
   B8(10010101),
   B8(01100111),
   B8(10000111),
   B8(10110111),

//.Pantalla 13
        //TTPPPIII
   B8(01000101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(01110010), B8(00000000),
   B8(00010001), B8(10000010),
   B8(01011010), B8(00110100),
   B8(00010001), B8(10100100),
   B8(00010001), B8(00010110),
   B8(00010001), B8(00110111),
   B8(00111010), B8(00001001),
   B8(01110010), B8(01011001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100010), B8(00010111),
   B8(01100101), B8(00111010),
   B8(10000000), B8(01111001),


        //Monedas
        //XXXXYYYY
   B8(10000001),
   B8(00110011),
   B8(01000011),
   B8(01100011),
   B8(01110011),
   B8(10100011),
   B8(00010101),
   B8(00110110),
   B8(01111000),
   B8(10001000),

//.Pantalla 14
        //TTPPPIII
   B8(01000010),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011001), B8(00100010),
   B8(01110010), B8(01010010),
   B8(00011001), B8(00110011),
   B8(00011001), B8(01000100),
   B8(00011001), B8(01010101),
   B8(00110010), B8(01100110),
   B8(00100010), B8(10100111),
   B8(01001110), B8(00001001),
   B8(01101110), B8(01101001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010101), B8(01011011),
   B8(01010101), B8(01101000),
   B8(10000100), B8(00110110),


        //Monedas
        //XXXXYYYY
   B8(00010000),
   B8(00000001),
   B8(00100001),
   B8(10110001),
   B8(00110010),
   B8(01000011),
   B8(10110110),
   B8(01000111),
   B8(01010111),
   B8(10011000),

//.Pantalla 15
        //TTPPPIII
   B8(01010110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(10100010), B8(00100001),
   B8(10100010), B8(00010011),
   B8(10100010), B8(00100101),
   B8(10100010), B8(00010111),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100010), B8(00001010),
   B8(01000010), B8(00001011),
   B8(01100010), B8(00001010),


        //Monedas
        //XXXXYYYY
   B8(10100000),
   B8(10110000),
   B8(00010001),
   B8(10110010),
   B8(10110011),
   B8(10110100),
   B8(00010101),
   B8(10110110),
   B8(10110111),
   B8(10111000),

//.Pantalla 16
        //TTPPPIII
   B8(01000100),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00110001), B8(01100011),
   B8(00011001), B8(00110100),
   B8(00011001), B8(10010100),
   B8(00011001), B8(01000101),
   B8(00011001), B8(10000101),
   B8(00110000), B8(00010111),
   B8(01001000), B8(01000111),
   B8(00110000), B8(10000111),
   B8(01011100), B8(00001001),
   B8(01011100), B8(01111001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100010), B8(01111001),
   B8(00110010), B8(00110101),
   B8(01100011), B8(00011010),


        //Monedas
        //XXXXYYYY
   B8(01100001),
   B8(01100010),
   B8(01000100),
   B8(10000100),
   B8(00010110),
   B8(01000110),
   B8(10000110),
   B8(10100110),
   B8(01011000),
   B8(01101000),

//.Pantalla 17
        //TTPPPIII
   B8(01000110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00101100), B8(00000001),
   B8(01001000), B8(10000010),
   B8(00111000), B8(00110011),
   B8(00011001), B8(00000100),
   B8(10000100), B8(00100101),
   B8(10110110), B8(00010111),
   B8(11001110), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010101), B8(10001011),
   B8(00100000), B8(00110101),
   B8(01000010), B8(00101000),


        //Monedas
        //XXXXYYYY
   B8(00000000),
   B8(00010000),
   B8(10110001),
   B8(00110010),
   B8(00000011),
   B8(10000100),
   B8(10010100),
   B8(10100101),
   B8(00000110),
   B8(10110110),

//.Pantalla 18
        //TTPPPIII
   B8(01001011),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011001), B8(10010001),
   B8(00011001), B8(10000010),
   B8(00011001), B8(10100010),
   B8(00011001), B8(01110011),
   B8(00011001), B8(10110011),
   B8(00011001), B8(01100100),
   B8(00011001), B8(01010101),
   B8(00011001), B8(01000110),
   B8(00011001), B8(00110111),
   B8(11000100), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000010), B8(01111011),
   B8(00100010), B8(00000111),
   B8(10000010), B8(00101011),


        //Monedas
        //XXXXYYYY
   B8(10010000),
   B8(10000001),
   B8(10100001),
   B8(00000010),
   B8(01110010),
   B8(10110010),
   B8(01100011),
   B8(01010100),
   B8(01000101),
   B8(00110110),

//.Pantalla 19
        //TTPPPIII
   B8(01000001),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(01000000), B8(00000001),
   B8(00010011), B8(10110001),
   B8(00011001), B8(01000011),
   B8(01101010), B8(01010011),
   B8(00011001), B8(00110100),
   B8(00011001), B8(00010101),
   B8(00011001), B8(00100110),
   B8(00011001), B8(00110111),
   B8(10100000), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000011), B8(00001011),
   B8(00100001), B8(01001010),
   B8(10000011), B8(00110101),


        //Monedas
        //XXXXYYYY
   B8(00000000),
   B8(10110000),
   B8(01000010),
   B8(10100010),
   B8(00110011),
   B8(00010100),
   B8(00100101),
   B8(00110110),
   B8(10101000),
   B8(00000000),

//.Pantalla 20
        //TTPPPIII
   B8(01000101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011011), B8(00100010),
   B8(00011011), B8(10010010),
   B8(00101010), B8(01010011),
   B8(00111010), B8(00000101),
   B8(00111010), B8(10010101),
   B8(01001110), B8(01000111),
   B8(00111110), B8(00001001),
   B8(00111110), B8(10011001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010001), B8(00001011),
   B8(01100100), B8(00010100),
   B8(01100010), B8(01111010),


        //Monedas
        //XXXXYYYY
   B8(00100001),
   B8(10010001),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 21
        //TTPPPIII
   B8(10000010),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(01011101), B8(00100001),
   B8(01101100), B8(00110001),
   B8(00011101), B8(00000010),
   B8(00011101), B8(10110010),
   B8(00101100), B8(10000100),
   B8(00101100), B8(00110101),
   B8(00010001), B8(01110110),
   B8(01001100), B8(01011000),
   B8(00101110), B8(00001001),
   B8(00101110), B8(10101001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000001), B8(00101000),
   B8(00100010), B8(01101010),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(01100000),
   B8(00000001),
   B8(01110010),
   B8(00110100),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 22
        //TTPPPIII
   B8(10000111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00000000), B8(10000001),
   B8(00101110), B8(10000010),
   B8(00111110), B8(01110011),
   B8(01001110), B8(01100100),
   B8(01011110), B8(01010101),
   B8(01101110), B8(01000110),
   B8(01111110), B8(00110111),
   B8(10001110), B8(00101000),
   B8(11001110), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010001), B8(00000111),
   B8(00110100), B8(00000101),
   B8(01010010), B8(00000011),


        //Monedas
        //XXXXYYYY
   B8(10000001),
   B8(01100011),
   B8(01000101),
   B8(00100111),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 23
        //TTPPPIII
   B8(10000101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000010), B8(00000000),
   B8(00010001), B8(00000001),
   B8(00010001), B8(10110001),
   B8(10000000), B8(00100010),
   B8(01000010), B8(00010100),
   B8(01000010), B8(01110100),
   B8(10000000), B8(00100110),
   B8(00010001), B8(10111000),
   B8(11000010), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110001), B8(00011010),
   B8(01010100), B8(00011010),
   B8(01110011), B8(00011010),


        //Monedas
        //XXXXYYYY
   B8(00110001),
   B8(10000001),
   B8(00100011),
   B8(01000011),
   B8(01110011),
   B8(10010011),
   B8(00110101),
   B8(10000101),
   B8(00000111),
   B8(10110111),

//.Pantalla 24
        //TTPPPIII
   B8(10010110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011011), B8(00100001),
   B8(00011011), B8(10010001),
   B8(00011011), B8(01000010),
   B8(00011011), B8(01110010),
   B8(00101010), B8(01010100),
   B8(00011011), B8(01000110),
   B8(00011011), B8(01110110),
   B8(00011011), B8(00100111),
   B8(00011011), B8(10010111),
   B8(11000010), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000011), B8(00001011),
   B8(00110100), B8(00101001),
   B8(01010001), B8(00001011),


        //Monedas
        //XXXXYYYY
   B8(00100000),
   B8(10010000),
   B8(01000001),
   B8(01110001),
   B8(01010011),
   B8(01100011),
   B8(01000101),
   B8(01110101),
   B8(00100110),
   B8(10010110),

//.Pantalla 25
        //TTPPPIII
   B8(10001111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001110), B8(00000000),
   B8(11000000), B8(00000001),
   B8(10101010), B8(00010100),
   B8(01010000), B8(00000110),
   B8(01010000), B8(01010111),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100101), B8(00001011),
   B8(00110010), B8(00001011),
   B8(01010001), B8(00001011),


        //Monedas
        //XXXXYYYY
   B8(00010011),
   B8(00110011),
   B8(01010011),
   B8(01100011),
   B8(10000011),
   B8(10100011),
   B8(01101000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 26
        //TTPPPIII
   B8(10010111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(10000111), B8(00000000),
   B8(00101100), B8(00010001),
   B8(01101100), B8(01000001),
   B8(10010111), B8(10110001),
   B8(00101110), B8(00100011),
   B8(00101110), B8(10010011),
   B8(00101110), B8(00010101),
   B8(00101110), B8(10000101),
   B8(00101110), B8(00100111),
   B8(10110010), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100001), B8(00111010),
   B8(01000101), B8(00011000),
   B8(01100011), B8(00111010),


        //Monedas
        //XXXXYYYY
   B8(00110010),
   B8(00010100),
   B8(10010100),
   B8(00110110),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 27
        //TTPPPIII
   B8(10001101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(10000100), B8(00010010),
   B8(00100110), B8(01110100),
   B8(00100110), B8(10100100),
   B8(00010101), B8(10010110),
   B8(00011001), B8(10000111),
   B8(00011001), B8(10100111),
   B8(00010101), B8(01101000),
   B8(00010101), B8(01111000),
   B8(00101000), B8(00001001),
   B8(00101000), B8(10101001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010101), B8(00011010),
   B8(01010100), B8(10111011),
   B8(01100100), B8(01101000),


        //Monedas
        //XXXXYYYY
   B8(00100001),
   B8(01000001),
   B8(01100001),
   B8(10000001),
   B8(01110011),
   B8(10010011),
   B8(10110011),
   B8(10010101),
   B8(01100111),
   B8(10110111),

//.Pantalla 28
        //TTPPPIII
   B8(10001111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011001), B8(10100101),
   B8(00011001), B8(01010111),
   B8(01001110), B8(01100111),
   B8(00011001), B8(10100111),
   B8(00011001), B8(00101000),
   B8(00011001), B8(01001000),
   B8(00011011), B8(00001001),
   B8(00011011), B8(00011001),
   B8(00011001), B8(00111001),
   B8(00101010), B8(10101001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110010), B8(10101011),
   B8(01100000), B8(01011010),
   B8(01110100), B8(00000010),


        //Monedas
        //XXXXYYYY
   B8(10000100),
   B8(10100100),
   B8(01010110),
   B8(01110110),
   B8(10000110),
   B8(10100110),
   B8(00100111),
   B8(01000111),
   B8(00111000),
   B8(10101000),

//.Pantalla 29
        //TTPPPIII
   B8(10000100),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011001), B8(00010001),
   B8(00011001), B8(10100010),
   B8(00011001), B8(00000011),
   B8(00011001), B8(10010100),
   B8(00011001), B8(00010101),
   B8(00011001), B8(10100110),
   B8(00011001), B8(00000111),
   B8(00110010), B8(00001001),
   B8(00010011), B8(01011001),
   B8(00110010), B8(10011001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000010), B8(00000010),
   B8(00110010), B8(01111011),
   B8(10000101), B8(00011011),


        //Monedas
        //XXXXYYYY
   B8(00010000),
   B8(10100001),
   B8(00000010),
   B8(10010011),
   B8(00010100),
   B8(10100101),
   B8(00000110),
   B8(01011000),
   B8(10011000),
   B8(10111000),

//.Pantalla 30
        //TTPPPIII
   B8(10000110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011001), B8(00000100),
   B8(00011001), B8(10110100),
   B8(00011001), B8(01000101),
   B8(00011001), B8(00100111),
   B8(00011101), B8(01000111),
   B8(00011001), B8(01100111),
   B8(00101000), B8(00001001),
   B8(00011101), B8(00111001),
   B8(00011101), B8(01011001),
   B8(00011001), B8(01111001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110100), B8(00010101),
   B8(01010000), B8(00010011),
   B8(01010000), B8(01011000),


        //Monedas
        //XXXXYYYY
   B8(00000011),
   B8(10110011),
   B8(01000100),
   B8(00100110),
   B8(01000110),
   B8(01100110),
   B8(00011000),
   B8(00111000),
   B8(01011000),
   B8(01111000),

//.Pantalla 31
        //TTPPPIII
   B8(10000111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001110), B8(00000000),
   B8(00101011), B8(01100100),
   B8(00011011), B8(01101000),
   B8(00010011), B8(01111000),
   B8(00010011), B8(10001000),
   B8(00101110), B8(10101000),
   B8(00101000), B8(00001001),
   B8(00011111), B8(01001001),
   B8(00011111), B8(01011001),
   B8(00011011), B8(01101001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(01110010), B8(00000100),
   B8(01110000), B8(01111010),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(10000101),
   B8(00010111),
   B8(01010111),
   B8(01100111),
   B8(01110111),
   B8(10100111),
   B8(00101000),
   B8(01001000),
   B8(01011000),
   B8(00000000),

//.Pantalla 32
        //TTPPPIII
   B8(10000110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00110000), B8(01000001),
   B8(01110001), B8(10000001),
   B8(01100001), B8(10100001),
   B8(01010001), B8(00010010),
   B8(00010001), B8(01100010),
   B8(00010001), B8(00100011),
   B8(00100000), B8(00100101),
   B8(01010000), B8(00000111),
   B8(00100000), B8(10100111),
   B8(11001110), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000010), B8(00000101),
   B8(00000000), B8(01101011),
   B8(01100100), B8(01000111),


        //Monedas
        //XXXXYYYY
   B8(10010011),
   B8(10010101),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 33
        //TTPPPIII
   B8(10001110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(10000010), B8(00100010),
   B8(01110011), B8(10110010),
   B8(00100010), B8(00010011),
   B8(01111010), B8(01000100),
   B8(00100010), B8(00010101),
   B8(01110010), B8(00100110),
   B8(00100010), B8(00010111),
   B8(00010010), B8(10010111),
   B8(01011110), B8(00001001),
   B8(01010010), B8(01111001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010101), B8(01101011),
   B8(01000010), B8(00000011),
   B8(01110100), B8(00110111),


        //Monedas
        //XXXXYYYY
   B8(01110011),
   B8(10010011),
   B8(01010101),
   B8(01110101),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 34
        //TTPPPIII
   B8(10000111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00100100), B8(10010001),
   B8(00111110), B8(00100011),
   B8(00110000), B8(10010011),
   B8(00010001), B8(01110100),
   B8(01000000), B8(01010110),
   B8(00010101), B8(00010111),
   B8(01101110), B8(00001001),
   B8(00110000), B8(10001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010010), B8(00101000),
   B8(01010011), B8(00001011),
   B8(10000010), B8(00010101),


        //Monedas
        //XXXXYYYY
   B8(10100000),
   B8(01110011),
   B8(00010101),
   B8(01110101),
   B8(01110111),
   B8(10111000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 35
        //TTPPPIII
   B8(10000110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(10100110), B8(00000000),
   B8(00100110), B8(10010001),
   B8(00111110), B8(00110011),
   B8(00111010), B8(10010011),
   B8(00111010), B8(00100100),
   B8(01001010), B8(00010110),
   B8(00101110), B8(10000110),
   B8(00101010), B8(10010111),
   B8(01101110), B8(00001001),
   B8(00111010), B8(10011001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010100), B8(00000100),
   B8(01110100), B8(00000100),
   B8(10000010), B8(00011000),


        //Monedas
        //XXXXYYYY
   B8(10100000),
   B8(00010101),
   B8(10111000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 36
        //TTPPPIII
   B8(11000011),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11001110), B8(00000000),
   B8(00100000), B8(01010010),
   B8(01000000), B8(00010100),
   B8(01000000), B8(01110100),
   B8(00011101), B8(00000101),
   B8(00011101), B8(00000111),
   B8(01000000), B8(01000111),
   B8(00011101), B8(10110111),
   B8(11001110), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00010000), B8(00001011),
   B8(00110011), B8(00010111),
   B8(10000101), B8(00101000),


        //Monedas
        //XXXXYYYY
   B8(01010001),
   B8(01100001),
   B8(00110011),
   B8(10000011),
   B8(00000110),
   B8(01010110),
   B8(01100110),
   B8(10110110),
   B8(01001000),
   B8(01111000),

//.Pantalla 37
        //TTPPPIII
   B8(11000101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(01101100), B8(00110001),
   B8(00011101), B8(00100010),
   B8(00011101), B8(10010010),
   B8(00111101), B8(00010011),
   B8(00010101), B8(01010100),
   B8(00011101), B8(00100110),
   B8(00011101), B8(10010110),
   B8(01101100), B8(00110111),
   B8(00011101), B8(10111000),
   B8(11000100), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110000), B8(01010111),
   B8(01010000), B8(01101000),
   B8(01100000), B8(00111000),


        //Monedas
        //XXXXYYYY
   B8(00110010),
   B8(00100011),
   B8(00110011),
   B8(10010011),
   B8(00000100),
   B8(00010110),
   B8(10100110),
   B8(00100111),
   B8(10010111),
   B8(00000000),

//.Pantalla 38
        //TTPPPIII
   B8(11010110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00011101), B8(00000000),
   B8(10111100), B8(00010000),
   B8(00111010), B8(00000100),
   B8(00101100), B8(01010100),
   B8(00111010), B8(10010100),
   B8(00000000), B8(00000000),
   B8(00011101), B8(01110101),
   B8(00011101), B8(00110111),
   B8(00011101), B8(10000111),
   B8(11001100), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110011), B8(00011010),
   B8(01100001), B8(00111000),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(00100001),
   B8(01000001),
   B8(01110001),
   B8(10010001),
   B8(10110011),
   B8(01010101),
   B8(01100101),
   B8(01000110),
   B8(01110110),
   B8(00000000),

//.Pantalla 39
        //TTPPPIII
   B8(11001100),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000010), B8(00000000),
   B8(01011000), B8(00000100),
   B8(01011000), B8(01110100),
   B8(00011001), B8(01100110),
   B8(00011001), B8(01001000),
   B8(00010011), B8(01011000),
   B8(00011001), B8(01101000),
   B8(00011001), B8(01111000),
   B8(11001000), B8(00001001),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110100), B8(00011010),
   B8(01100001), B8(00010101),
   B8(01110010), B8(00001011),


        //Monedas
        //XXXXYYYY
   B8(00010001),
   B8(00100001),
   B8(01010001),
   B8(10100001),
   B8(00010101),
   B8(00100101),
   B8(00110101),
   B8(10000101),
   B8(10010101),
   B8(10100101),

//.Pantalla 40
        //TTPPPIII
   B8(11001111),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(11000000), B8(00000000),
   B8(00100001), B8(00000100),
   B8(00100001), B8(01000100),
   B8(00110001), B8(10110100),
   B8(01000000), B8(00000110),
   B8(00010000), B8(10010110),
   B8(01010100), B8(01110111),
   B8(11000000), B8(00001001),
   B8(00000000), B8(00000000),
   B8(00000000), B8(00000000),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00100001), B8(00011010),
   B8(01010010), B8(01011000),
   B8(00000000), B8(00000000),


        //Monedas
        //XXXXYYYY
   B8(00010001),
   B8(01010001),
   B8(01100001),
   B8(10100001),
   B8(00010101),
   B8(00100101),
   B8(00110101),
   B8(10100101),
   B8(00000000),
   B8(00000000),

//.Pantalla 41
        //TTPPPIII
   B8(11001110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00010011), B8(00010100),
   B8(00010001), B8(01100100),
   B8(00010001), B8(01010101),
   B8(00010001), B8(01110101),
   B8(00010001), B8(10100110),
   B8(00010001), B8(01000111),
   B8(00010001), B8(10010111),
   B8(00011101), B8(00111000),
   B8(00010001), B8(01101000),
   B8(00101110), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110001), B8(00001011),
   B8(01100101), B8(00001001),
   B8(01110010), B8(01011000),


        //Monedas
        //XXXXYYYY
   B8(10000010),
   B8(00010011),
   B8(01010100),
   B8(01110100),
   B8(10110100),
   B8(00110101),
   B8(10010101),
   B8(00000000),
   B8(00000000),
   B8(00000000),

//.Pantalla 42
        //TTPPPIII
   B8(11001101),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00010111), B8(00110001),
   B8(00010111), B8(10000001),
   B8(00101100), B8(00000011),
   B8(00010111), B8(00010011),
   B8(00010111), B8(10100011),
   B8(00010111), B8(00110101),
   B8(00010111), B8(10000101),
   B8(00010111), B8(00000111),
   B8(00100111), B8(10110111),
   B8(00111100), B8(00001001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000001), B8(00001011),
   B8(01000101), B8(00001011),
   B8(01100001), B8(00001011),


        //Monedas
        //XXXXYYYY
   B8(00110000),
   B8(10000000),
   B8(00000010),
   B8(01100010),
   B8(10110010),
   B8(00110100),
   B8(10000100),
   B8(00000110),
   B8(10110110),
   B8(00000000),

//.Pantalla 43
        //TTPPPIII
   B8(11010110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00110010), B8(10010001),
   B8(00011101), B8(01000010),
   B8(00011101), B8(01110010),
   B8(00011101), B8(00000011),
   B8(00011101), B8(10110011),
   B8(00011101), B8(00010101),
   B8(00011101), B8(10100101),
   B8(00100000), B8(01010111),
   B8(00100010), B8(00001001),
   B8(00110010), B8(10011001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00110011), B8(00011010),
   B8(01010011), B8(00101001),
   B8(10000011), B8(00101100),


        //Monedas
        //XXXXYYYY
   B8(00000000),
   B8(00100000),
   B8(10010000),
   B8(10110000),
   B8(00110011),
   B8(10000011),
   B8(00110110),
   B8(10000110),
   B8(00011000),
   B8(10111000),

//.Pantalla 44
        //TTPPPIII
   B8(11000110),            // Descriptor

        //Objetos
        //datos "al reves", por eso del "endian"
        //LLLLTTTD   XXXXYYYY
   B8(00010111), B8(00100001),
   B8(01010111), B8(01000001),
   B8(01010111), B8(01100001),
   B8(00010111), B8(10000001),
   B8(00010111), B8(10110011),
   B8(00010111), B8(10010101),
   B8(00010111), B8(10000111),
   B8(00010111), B8(01011000),
   B8(00100110), B8(00001001),
   B8(00110110), B8(10011001),


        //Moviles
        //YYYYTTTD   AAAABBBB
   B8(00000010), B8(00011010),
   B8(00100000), B8(01111011),
   B8(10000101), B8(00100100),


        //Monedas
        //XXXXYYYY
   B8(01010001),
   B8(01010010),
   B8(01110010),
   B8(10110010),
   B8(01010011),
   B8(10010011),
   B8(01010100),
   B8(01010101),
   B8(01010110),
   B8(10000110)
};

void fases_init(void)
{
    u16 i,j,tmp;
    const u8 *ptr;
 
    ptr=fases_data;
 
    for(i=0;i<45;i++)
    {
        fases[i].descriptor=*ptr++;
        for(j=0;j<10;j++)
        {
            tmp=*ptr++;
            tmp=(*ptr++<<8)|tmp;
            fases[i].obj[j]=tmp;
        }
        for(j=0;j<3;j++)
        {
            tmp=*ptr++;
            tmp=(*ptr++<<8)|tmp;
            fases[i].movil[j]=tmp;
        }
        for(j=0;j<10;j++) fases[i].coin[j]=*ptr++;
    }
}