111
|
1 package VFA1_Pkg is
|
|
2
|
|
3 type Int8_t is mod 2**8;
|
|
4
|
|
5 type Int is new Integer;
|
|
6 pragma Volatile_Full_Access (Int);
|
|
7
|
|
8 Counter1 : Int;
|
|
9
|
|
10 Counter2 : Integer;
|
|
11 pragma Volatile_Full_Access (Counter2);
|
|
12
|
|
13 type Arr is array (1 .. 4) of Int8_t;
|
|
14 for Arr'Alignment use 4;
|
|
15 pragma Volatile_Full_Access (Arr);
|
|
16
|
|
17 Timer1 : Arr;
|
|
18
|
|
19 Timer2 : array (1 .. 4) of Int8_t;
|
|
20 for Timer2'Alignment use 4;
|
|
21 pragma Volatile_Full_Access (Timer2);
|
|
22
|
|
23 type Rec is record
|
|
24 A : Short_Integer;
|
|
25 B : Short_Integer;
|
|
26 end record;
|
|
27
|
|
28 type Rec_VFA is new Rec;
|
|
29 pragma Volatile_Full_Access (Rec_VFA);
|
|
30
|
|
31 Buffer1 : Rec_VFA;
|
|
32
|
|
33 Buffer2 : Rec;
|
|
34 pragma Volatile_Full_Access (Buffer2);
|
|
35
|
|
36 type Code is record
|
|
37 R : Int8_t;
|
|
38 I : Int8_t;
|
|
39 end record;
|
|
40 pragma Volatile_Full_Access (Code);
|
|
41
|
|
42 type CArr is array (1 .. 2) of Code;
|
|
43 pragma Volatile_Full_Access (CArr);
|
|
44
|
|
45 Mixer1 : Carr;
|
|
46
|
|
47 Mixer2 : array (1 .. 2) of Code;
|
|
48 pragma Volatile_Full_Access (Mixer2);
|
|
49
|
|
50 end VFA1_Pkg;
|