1 /*
2     $Id: 64tass.h 2625 2021-04-25 21:09:11Z soci $
3 
4     This program is free software; you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation; either version 2 of the License, or
7     (at your option) any later version.
8 
9     This program is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
13 
14     You should have received a copy of the GNU General Public License along
15     with this program; if not, write to the Free Software Foundation, Inc.,
16     51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 
18 */
19 #ifndef _64TASS_H
20 #define _64TASS_H
21 #include "attributes.h"
22 #include "stdbool.h"
23 #include "inttypes.h"
24 #include "wait_e.h"
25 #ifndef REVISION
26 #define REVISION "2625?"
27 #endif
28 #undef VERSION
29 #define VERSION "1.56." REVISION
30 #define MAX_PASS 20
31 
32 #define ignore() while(pline[lpoint.pos]==0x20 || pline[lpoint.pos]==0x09) lpoint.pos++
33 #define here() pline[lpoint.pos]
34 
35 struct Obj;
36 struct Listing;
37 
38 extern struct Listing *listing;
39 extern address_t all_mem, all_mem2;
40 extern unsigned int all_mem_bits;
41 extern uint32_t outputeor;
42 extern int temporary_label_branch;
43 extern linenum_t vline;
44 extern struct linepos_s lpoint;
45 extern struct star_s *star_tree;
46 extern bool fixeddig, constcreated;
47 extern address_t star;
48 extern const uint8_t *pline;
49 extern uint8_t pass, max_pass;
50 extern bool referenceit;
51 extern bool signal_received;
52 extern const struct cpu_s *current_cpu;
53 extern void new_waitfor(Wait_types, linepos_t);
54 extern bool close_waitfor(Wait_types);
55 extern struct Obj *compile(void);
56 extern FAST_CALL uint8_t *pokealloc(address_t, linepos_t);
57 extern int main2(int *, char **[]);
58 #endif
59