/* START LIBRARY DESCRIPTION *********************************************
default.h
	Copyright (c) 2000, Z-World.

DESCRIPTION:    Default libraries to be used for the boards. The use
					statements do not necessarily compile anything, it is just
					an indication that functions in the used libraries may be
					called and linked.

END DESCRIPTION **********************************************************/

/*** BeginHeader */

// NOTE: The board type macros are now defined in
//       BOARDTYPES.LIB (As of 8/13/02)

#ifndef BIOSCODE
#makechain _GLOBAL_INIT

// Uncomment the following line to change the default storage class to static
//#class static

#ifndef __DC_LITE__

// if board type is undefined, assume it's a Jackrabbit
#if (_BOARD_TYPE_ == 0x0000)
#undef	_BOARD_TYPE_
#define	_BOARD_TYPE_	BL1810
#endif

// Jackrabbit-specific libraries
#if ( (_BOARD_TYPE_ >= BL1810) && (_BOARD_TYPE_ <= (BL1810+0x00FF)) )
#use "jrio.lib"
#use "jr485.lib"
#endif

// Intellicom-specific libraries and TCP/IP-specific libraries
#if ((_BOARD_TYPE_ == OP6600) || (_BOARD_TYPE_ == OP6700) || (_BOARD_TYPE_ == RTDK))
#use "icom.lib"
#endif

// Ethernet Gateway-specific libraries
// RABLINK and EG2100 do not require board library
//#if ((_BOARD_TYPE_ == EG2000) || (_BOARD_TYPE_ == EG2020))
//#use "egate.lib"
//#endif

// SmartStar series controller-specific libraries
#if ((_BOARD_TYPE_==SR9100) || (_BOARD_TYPE_==SR9110) \
	|| (_BOARD_TYPE_==SR9150) || (_BOARD_TYPE_==SR9160))
#define ZWORLD_RESERVED_SIZE 0x0400
#use "smrtstar.lib"
// for 122x32 LCD and 1x7 keypad assembly option
#use "keypad7.lib"
#use "mscg12232.lib"
#use "graphic.lib"
#use "6x8l.lib"
#use "8x10l.lib"
#use "12x16l.lib"
#use "courier12.lib"
#endif

// BL2000 series controllers-specific libraries
#if ((_BOARD_TYPE_ >= BL2000) && (_BOARD_TYPE_ <= (BL2000+0x00FF)))
#if ((_BOARD_TYPE_ == BL2000) || (_BOARD_TYPE_ == BL2020) || (_BOARD_TYPE_ == BL2010B))
#define ZWORLD_RESERVED_SIZE 0x0400 // Reserved 1k userblock for Z-World
#define ADC_OPTION		// Must be defined if ADC option is installed
#define ADC_12BIT			// ADC has 12 bits of resolution
#endif
#if ((_BOARD_TYPE_ == BL2010) || (_BOARD_TYPE_ == BL2030))
#define ZWORLD_RESERVED_SIZE 0x0400 // Reserved 1k userblock for Z-World
#define ADC_OPTION		// Must be defined if ADC option is installed
#define ADC_1OBIT			// ADC has 10 bits of resolution
#endif
#if ((_BOARD_TYPE_ == BL2000) || (_BOARD_TYPE_ == BL2020))
#define ZWORLD_RESERVED_SIZE 0x0400 // Reserved 1k userblock for Z-World
#define DAC_OPTION		// Must be defined if DAC option is installed
#endif
#if ((_BOARD_TYPE_ == BL2000) || (_BOARD_TYPE_ == BL2010) || (_BOARD_TYPE_ == BL2010B))
#define ETHERNET_OPTION
#endif
#use "bl20xx.lib"
#endif


// BL2100 series controllers-specific libraries
#if ((_BOARD_TYPE_ >= BL2100) && (_BOARD_TYPE_ <= (BL2100+0x00FF)))
#define ZWORLD_RESERVED_SIZE 0x0400 // Reserved 1k userblock for Z-World
#use "bl21xx.lib"
// for 122x32 LCD and 1x7 keypad assembly option
#use "keypad7.lib"
#use "mscg12232.lib"
#use "graphic.lib"
#use "6x8l.lib"
#use "8x10l.lib"
#use "12x16l.lib"
#use "courier12.lib"
#endif

// OP6800 series controllers-specific libraries
#if ((_BOARD_TYPE_ >= OP6800) && (_BOARD_TYPE_ <= (OP6800+0x00FF)))
#use "op68xx.lib"
// for 122x32 LCD and 1x7 keypad assembly option
#use "keypad7.lib"
#use "mscg12232.lib"
#use "graphic.lib"
#use "6x8l.lib"
#use "8x10l.lib"
#use "12x16l.lib"
#use "courier12.lib"
#endif

// LP3500 series controllers-specific libraries
#if ((_BOARD_TYPE_ >= LP3500) && (_BOARD_TYPE_ <= (LP3500+0x00FF)))
#if (_BOARD_TYPE_ == LP3500)
#define ADC_ONBOARD
#define RLY_ONBOARD
#define ZWORLD_RESERVED_SIZE 0x0400
#endif
#use "lp35xx.lib"
#use "lcd122key7.lib"
#endif

// OP7200 series controllers-specific libraries
#if ((_BOARD_TYPE_ >= OP7200) && (_BOARD_TYPE_ <= (OP7200+0x00FF)))
#if ((_BOARD_TYPE_ == OP7200) || (_BOARD_TYPE_ == OP7200B))
#define ZWORLD_RESERVED_SIZE 0x0400	// Reserved 1k userblock for Z-World
#define ANALOG
#define TOUCHSCREEN
#endif
#use "OP72xx.lib"
#use "keypad9.lib"
#use "SED1335F.lib"
#use "graphic.lib"
#use "6x8l.lib"
#use "8x10l.lib"
#use "10x16l.lib"
#use "12x16l.lib"
#use "17x35l.lib"
#use "ZWLOGOS.LIB"
#use "TERMINAL9.LIB"
#use "TERMINAL12.LIB"
#use "TERMINAL14.LIB"
#use "glmenu.lib"
#use "zwlogos.lib"
#use "TS_R4096.lib"
#use "glTouchScreen.lib"
#use "rn_cfg_op72.lib"
#use "rnet.lib"
#use "rnet_dio.lib"
#use "rnet_ain.lib"
#use "rnet_aout.lib"
#use "rnet_relay.lib"
#use "rnet_keyif.lib"
#use "rnet_lcdif.lib"
#endif

#if ((_BOARD_TYPE_ >= RCM3000) && (_BOARD_TYPE_ <= (RCM3000+0x00FF)))
#define USE_PORTA_AUX_IO
#use "rcm3000.lib"
#use "lcd122key7.lib"
#endif

#if ((_BOARD_TYPE_ >= RCM3100) && (_BOARD_TYPE_ <= (RCM3100+0x00FF)))
#define USE_PORTA_AUX_IO
#use "rcm3100.lib"
#use "lcd122key7.lib"
#endif

#if ((_BOARD_TYPE_ >= RCM3200) && (_BOARD_TYPE_ <= (RCM3200+0x00FF)))
#define USE_PORTA_AUX_IO
#use "rcm3200.lib"
#use "lcd122key7.lib"
#endif

#if ((_BOARD_TYPE_ >= RCM3400A) && (_BOARD_TYPE_ <= (RCM3400A+0x00FF)))
#define USE_PORTA_AUX_IO
#define ADC_ONBOARD
#define ZWORLD_RESERVED_SIZE 0x0800 // Reserved 1k userblock for Z-World
#use "rcm34xx.lib"
#use "lcd122key7.lib"
#endif

#if ((_BOARD_TYPE_ >= BL2500A) && (_BOARD_TYPE_ <= (BL2500A+0x00FF)))
#define ADC_ONBOARD
#define DAC_ONBOARD
#define ZWORLD_RESERVED_SIZE 0x0400 // Reserved 1k userblock for Z-World
#use "bl25xx.lib"
#use "rn_cfg_bl25.lib"
#use "rnet.lib"
#use "rnet_dio.lib"
#use "rnet_ain.lib"
#use "rnet_aout.lib"
#use "rnet_relay.lib"
#use "rnet_keyif.lib"
#use "rnet_lcdif.lib"
#endif

#if ((_BOARD_TYPE_ >= BL2600A) && (_BOARD_TYPE_ <= (BL2600A+0x00FF)))
#if ((_BOARD_TYPE_ == BL2600A))
#define BL26_ENET_OPT2
#endif
#if ((_BOARD_TYPE_ == BL2600B) || (_BOARD_TYPE_ == BL2600C))
#define BL26_ENET_OPT0
#endif
#if ((_BOARD_TYPE_ == BL2610A) || (_BOARD_TYPE_ == BL2610B))
#define BL26_ENET_OPT1
#endif
#use "bl26xx.lib"
#use "rn_cfg_bl26.lib"
#use "rnet.lib"
#use "rnet_dio.lib"
#use "rnet_ain.lib"
#use "rnet_aout.lib"
#use "rnet_relay.lib"
#use "rnet_keyif.lib"
#use "rnet_lcdif.lib"
#endif


#if ((_BOARD_TYPE_ >= RCM3600A) && (_BOARD_TYPE_ <= (RCM3600A+0x00FF)))
#define USE_PORTA_AUX_IO
#define ADC_ONBOARD
#define ZWORLD_RESERVED_SIZE 0x0800 // Reserved 2k userblock for Z-World
#use "rcm36xx.lib"
#use "lcd122key7.lib"
#endif

#if ((_BOARD_TYPE_ >= RCM3700A) && (_BOARD_TYPE_ <= (RCM3700A+0x00FF)))
#define USE_PORTA_AUX_IO
#define ADC_ONBOARD
#define ZWORLD_RESERVED_SIZE 0x0800	// Reserved 2k userblock for Z-World
#use "rcm37xx.lib"
#use "lcd122key7.lib"
#endif


#if RCM3800_SERIES
#define ZWORLD_RESERVED_SIZE 0x0800	// Reserved 2k userblock for Z-World
#endif

// Set macro to indicate SBC's or core modules not
// reserving any userblock area for Z-World's use.
#ifndef ZWORLD_RESERVED_SIZE
#define ZWORLD_RESERVED_SIZE 0
#endif
#endif

// CPU-specific libraries
#if (CPU_ID_MASK(_CPU_ID_) == R3000)
#use "r3000.lib"
#endif

// libraries to compile for user programs
// program.lib contains premain, and so must appear here
#use "program.lib"
#else
// libraries to parse during the BIOS compile
// (i.e., functions in these libraries may be precompiled)
#use "cbuf.lib"
#use "dc.hh"
#use "util.lib"
#use "mutil.lib"
#use "mutilfp.lib"
#use "math.lib"
#use "string.lib"
#use "stdio.lib"
#use "sys.lib"
#use "cofunc.lib"
#use "costate.lib"
#use "slice.lib"
#use "rs232.lib"
#use "rtclock.lib"
#use "vdriver.lib"
#use "xmem.lib"

#undef BIOSCODE
#endif

/*** EndHeader */