Imported Upstream version 2.9.0
[debian/cc1111] / support / regression / tests / bug-468811.c
1 /* For some reason an integer operation is run as floating point.
2    Test is to see if it links.
3  */
4 #include <testfwk.h>
5
6 typedef unsigned char UBYTE;
7 typedef unsigned char UINT8;
8
9 void
10 set_sprite_tile(UINT8 nb, UINT8 tile)
11 {
12   UNUSED(nb && tile);
13 }
14
15 /* screen size */
16 #define MIN_SX          5U              /* min x (char) */
17 #define MAX_SX          (20U-MIN_SX)    /* max x (char) */
18 #define MIN_SY          5U              /* min y (char) */
19 #define MAX_SY          (MIN_SY+13U)    /* max y (char) */
20
21 #define DEF_SP          30U             /* sprite null char code */
22
23 /* player */
24 #define MIN_PX          (MIN_SX*8U+8U)  /* min x (dot) */
25 #define MAX_PX          (MAX_SX*8U-8U)  /* max x (dot) */
26 #define DEF_PX          80U             /* ship x pos (dot) */
27 #define DEF_PY          (MIN_SY*8U)     /* ship y pos (dot) */
28 #define DEF_PC0         14U
29 #define DEF_PC1         15U
30 #define DEF_PF          8U
31
32 /* bomb */
33 #define MAX_TT          6U              /* number */
34 #define DEF_TS          2U              /* sprite tile id */
35 #define DEF_TC          2U              /* sprite data id */
36 #define DEF_TX          (80U-6U)        /* bomb x pos (dot) */
37 #define DEF_TY          (DEF_PY-14U)    /* bomb y pos (dot) */
38 #define MAX_TY          (MAX_SY*8U)     /* max y pos (dot) */
39
40 /* enemy */
41 #define MAX_ET          10U             /* number */
42 #define DEF_ES0         (DEF_TS+MAX_TT) /* sprite tile id */
43 #define DEF_ES1         (DEF_ES0+1U)
44 #define DEF_1EC0        32U
45 #define DEF_1EC1        48U
46 #define DEF_2EC0        64U
47 #define DEF_2EC1        80U
48 #define DEF_XEC0        96U             /* sprite data(X) id */
49 #define DEF_XEC1        112U            /* sprite data(X) id */
50 #define DEF_EY          (DEF_PY+12U)
51 #define DEF_EH          10U
52 #define SUB_EX0         20U
53 #define SUB_EX1         (SUB_EX0-8U)
54 #define MIN_EX          (SUB_EX0-16U)
55 #define MAX_EX          (SUB_EX0+180U)
56 #define SPEED_EY        (DEF_EY+DEF_EH*3U)
57 #define DEF_BC1         4U
58 #define DEF_BC2         5U
59
60 UBYTE ef[MAX_ET], ex[MAX_ET], ey[MAX_ET];
61 UBYTE pf, px, pp, pl;
62
63 /* enemys */
64 void enemys()
65 {
66   UBYTE i;
67
68   for( i=0; i<MAX_ET; i++ ) {
69     if( ef[i] == 1 ) {
70       set_sprite_tile( i*2+DEF_ES0, DEF_1EC0+8 );
71       set_sprite_tile( i*2+DEF_ES1, DEF_1EC1+(ex[i]-MAX_SX*8-12)+7 );
72     }
73   }
74 }
75
76 void testBug(void)
77 {
78 }