OpenCores
URL https://opencores.org/ocsvn/jtag_stapl_player/jtag_stapl_player/trunk

Subversion Repositories jtag_stapl_player

[/] [jtag_stapl_player/] [trunk/] [jamsym.h] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 sukhanov
/****************************************************************************/
2
/*                                                                                                                                                      */
3
/*      Module:                 jamsym.h                                                                                                */
4
/*                                                                                                                                                      */
5
/*                                      Copyright (C) Altera Corporation 1997                                   */
6
/*                                                                                                                                                      */
7
/*      Description:    Prototypes for symbol-table management functions                */
8
/*                                                                                                                                                      */
9
/*      Revisions:              1.1     added jam_free_symbol_table()                                           */
10
/*                                                                                                                                                      */
11
/****************************************************************************/
12
 
13
/****************************************************************************/
14
/*                                                                                                                                                      */
15
/*      Actel version 1.1             May 2003                                                                  */
16
/*                                                                                                                                                      */
17
/****************************************************************************/
18
 
19
#ifndef INC_JAMSYM_H
20
#define INC_JAMSYM_H
21
 
22
/****************************************************************************/
23
/*                                                                                                                                                      */
24
/*      Type definitions                                                                                                                */
25
/*                                                                                                                                                      */
26
/****************************************************************************/
27
 
28
/* types of symbolic names */
29
typedef enum
30
{
31
        JAM_ILLEGAL_SYMBOL_TYPE = 0,
32
        JAM_LABEL,
33
        JAM_INTEGER_SYMBOL,
34
        JAM_BOOLEAN_SYMBOL,
35
        JAM_INTEGER_ARRAY_WRITABLE,
36
        JAM_BOOLEAN_ARRAY_WRITABLE,
37
        JAM_INTEGER_ARRAY_INITIALIZED,
38
        JAM_BOOLEAN_ARRAY_INITIALIZED,
39
        JAM_DATA_BLOCK,
40
        JAM_PROCEDURE_BLOCK,
41
        JAM_SYMBOL_MAX
42
 
43
} JAME_SYMBOL_TYPE;
44
 
45
/* symbol record structure */
46
typedef struct JAMS_SYMBOL_STRUCT
47
{
48
        char name[JAMC_MAX_NAME_LENGTH + 1];
49
        JAME_SYMBOL_TYPE type;
50
        long value;
51
        long position;
52
        struct JAMS_SYMBOL_STRUCT *parent;
53
        struct JAMS_SYMBOL_STRUCT *next;
54
 
55
} JAMS_SYMBOL_RECORD;
56
 
57
/****************************************************************************/
58
/*                                                                                                                                                      */
59
/*      Global variables                                                                                                                */
60
/*                                                                                                                                                      */
61
/****************************************************************************/
62
 
63
extern JAMS_SYMBOL_RECORD **jam_symbol_table;
64
 
65
extern void *jam_symbol_bottom;
66
 
67
extern JAMS_SYMBOL_RECORD *jam_current_block;
68
 
69
extern int jam_version;
70
 
71
/****************************************************************************/
72
/*                                                                                                                                                      */
73
/*      Function prototypes                                                                                                             */
74
/*                                                                                                                                                      */
75
/****************************************************************************/
76
 
77
JAM_RETURN_TYPE jam_init_symbol_table
78
(
79
        void
80
);
81
 
82
void jam_free_symbol_table
83
(
84
        void
85
);
86
 
87
JAM_RETURN_TYPE jam_add_symbol
88
(
89
        JAME_SYMBOL_TYPE type,
90
        char *name,
91
        long value,
92
        long position
93
);
94
 
95
JAM_RETURN_TYPE jam_get_symbol_value
96
(
97
        JAME_SYMBOL_TYPE type,
98
        char *name,
99
        long *value
100
);
101
 
102
JAM_RETURN_TYPE jam_set_symbol_value
103
(
104
        JAME_SYMBOL_TYPE type,
105
        char *name,
106
        long value
107
);
108
 
109
JAM_RETURN_TYPE jam_get_symbol_record
110
(
111
        char *name,
112
        JAMS_SYMBOL_RECORD **symbol_record
113
);
114
 
115
#endif /* INC_JAMSYM_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.