ack/util/ceg/ce_back/obj_back/back.h

42 lines
1 KiB
C
Raw Normal View History

1987-11-25 14:03:48 +00:00
/* This file must be included in all the files which use the backlibrary.
*/
1987-11-20 10:41:03 +00:00
extern char *extnd_name(), *extnd_dnam(), *extnd_dlb(), *extnd_ilb(),
*extnd_hol(), *extnd_ext(), *extnd_pro(), *extnd_start(),
*extnd_part(), *extnd_cont();
1987-11-20 10:41:03 +00:00
#include "data.h"
1987-11-25 14:03:48 +00:00
/* These routines are called very often, thus we turned them into macros. */
1988-11-18 17:52:39 +00:00
#define text1(b) {if (--text_cnt < 0) mem_text(); *text++ = b;}
#define con1(b) {if (--data_cnt < 0) mem_data(); *data++ = b;}
#define rom1(b) {if (--data_cnt < 0) mem_data(); *data++ = b;}
1987-11-20 10:41:03 +00:00
#define bss( n) ( nbss += n)
1987-11-25 14:03:48 +00:00
/* Numbering of the segments and some global constants */
1987-11-20 10:41:03 +00:00
#define SEGTXT 0
#define SEGROM 1
#define SEGCON 2
#define SEGBSS 3
1988-09-08 10:26:18 +00:00
#define SEGHOL -1 /* does not exist */
1987-11-20 10:41:03 +00:00
#define swtxt() switchseg( SEGTXT)
1987-11-25 14:03:48 +00:00
1988-11-18 17:52:39 +00:00
#define switchseg(seg) if ((seg) != cur_seg) _swtchsg(seg); else
1987-11-25 14:03:48 +00:00
#define PC_REL 1
#define ABSOLUTE !PC_REL
/* Initialize values. */
1987-11-20 10:41:03 +00:00
1988-10-20 13:06:10 +00:00
#define MAXTEXT 4096
#define MAXDATA 2048
#define MAXRELO 512
#define MAXNAME 512
#define MAXSTRING 4096
1987-11-20 10:41:03 +00:00