/* vi: set sw=4 ts=4: */

// LED defines
#define RED_ON			0
#define GREEN_ON		1
#define LED_OFF			2
#define RED_OFF			4
#define GREEN_OFF		5

// Keyboard defines
#define KEY_GET_MODE 	0
#define KEY_SET_MODE 	1
#define KEY_GET_KEYCODE	2

// Defines for KEY_SET_MODE and KEY_GET_MODE
#define KEY_DISABLE     0
#define SMALL_MODE 		1 
#define NUMERIC_MODE 	2
#define CAPITAL_MODE 	3

// Barcode defines
#define BAR_CODE_ON			_IO('B', 1)
#define BAR_CODE_OFF		_IO('B', 2)
#define SET_KEY_MODE    	_IOW('B', 3, int)
#define SET_LASER_EMITTER	_IOW('B', 4, int)
#define SET_MODULE_POWER	_IOW('B', 5, int)
#define GET_SIGNAL_STATUS	_IOR('B', 6, int)
#define BAR_CODE_CLEAR		_IO('B', 7)
#define BAR_CODE_RECV_SIZE	_IOR('B', 8, int)
#define SET_BAUD			_IOW('B', 9, int)
#define MODULE_RESET		_IO('B', 10)
#define FLUSH_BUFFER		_IO('B',11)
#define GET_BAUD		_IOR('B', 12, int)
#define SET_PREFIX		_IOW('B', 13, char*)
#define SET_SUFFIX		_IOW('B', 14, char*)
#define GET_KEY_DELAY		_IOR('B', 15, int)
#define SET_KEY_DELAY		_IOW('W', 16, int)

// Defines for SET_KEY_MODE
#define KEY_AUTO            	2
#define KEY_STANDARD        	1
#define KEY_SCAN            	0


// Buzzer defines
#define volume_off 0
#define volume_lo  1
#define volume_hi  2

typedef struct BUZZER_t
{
	unsigned int freq;
	unsigned int buzz_on_time;
	unsigned int buzz_off_time;
	unsigned int times;
	unsigned int volume;
}BUZZER;

typedef struct 
{
	unsigned int freq[20];
	unsigned int duration; 
	unsigned int note;
	unsigned int volume;
}OSE_BUZZER;

#define SP_STATUS 		2
#define SP_BUZZER		7
#define SP_OSE_BUZZER 	12

/*
 * definitions for sound volume
 */
#define VOFF        volume_off
#define VLOW        volume_lo
#define VSTANDARD   volume_hi
#define VHIGH       volume_hi
                                                                                
/*
 * definitions for sound tone duration
 */
#define TCLICK      1
#define TSHORT      3
#define TSTANDARD   5
#define TLONG       10
#define TVLONG      20
                                                                                
                                                                                
/*
 * definitions for sound tone
 */
#define SPAUSE      1
#define SERROR      100
#define SLOW        1000
#define SMEDIUM     2500
#define SHIGH       3500


//Display
#define DISP_BACKLIGHT_ON  	0
#define DISP_BACKLIGHT_OFF 	1
#define DISP_CONTRAST_UP   	2
#define DISP_CONTRAST_DOWN 	3
#define DISP_CONTRAST_GET  	4
#define DISP_CONTRAST_SET	5


