1 /*------------------------------------------------------------------------- 2 3 main.h - header file for pic16 specific general functions. 4 5 Copyright (C) 2000, Scott Dattalo scott@dattalo.com 6 Copyright (C) 2002, Martin Dubuc m.debuc@rogers.com 7 8 Written by - Scott Dattalo scott@dattalo.com 9 Ported to PIC16 by - Martin Dubuc m.debuc@rogers.com 10 11 This program is free software; you can redistribute it and/or modify it 12 under the terms of the GNU General Public License as published by the 13 Free Software Foundation; either version 2, or (at your option) any 14 later version. 15 16 This program is distributed in the hope that it will be useful, 17 but WITHOUT ANY WARRANTY; without even the implied warranty of 18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 GNU General Public License for more details. 20 21 You should have received a copy of the GNU General Public License 22 along with this program; if not, write to the Free Software 23 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 24 -------------------------------------------------------------------------*/ 25 26 #ifndef MAIN_INCLUDE 27 #define MAIN_INCLUDE 28 29 #include "ralloc.h" 30 31 bool x_parseOptions (char **argv, int *pargc); 32 void x_setDefaultOptions (void); 33 void x_finaliseOptions (void); 34 35 36 typedef struct { 37 char *at_udata; 38 } pic16_sectioninfo_t; 39 40 typedef struct absSym { 41 char name[SDCC_SYMNAME_MAX+1]; 42 unsigned int address; 43 } absSym; 44 45 typedef struct sectName { 46 char *name; 47 set *regsSet; 48 } sectName; 49 50 typedef struct sectSym { 51 sectName *section; 52 char *name; 53 reg_info *reg; 54 } sectSym; 55 56 extern set *absSymSet; 57 extern set *sectNames; 58 extern set *sectSyms; 59 extern set *wparamList; 60 61 extern int pic16_mplab_comp; 62 63 #endif 64