#include <stdio.h>
#include <doslibm.h>
#include "defines.h"
#include "akey.h"
#include "acmp.h"

extern	int	_khelp_;	/* ヘルプキー */

int getch3(int mode,int kexit)
/* ヘルプ対応：１文字キー入力ルーチン */
/* 漢字読み込み可能 */
{
int c;
static int k=0;
	do {
		if (scanbit(kexit)) { /* 緊急脱出 */
			if ((k&BIT0)==0) {
				k=BIT0;
				KFLUSHIO(0xff); /* キーバッファークリア */
				return(kexit);
			}
		} else k&=(~BIT0);
		
		if (scanbit(_khelp_)||(BITSNS(0x0a)&BIT4)) { /* HELPキー */
			if ((k&BIT1)==0) { /* ヘルプ */
				k=BIT1;
				KFLUSHIO(0xff); /* キーバッファークリア */
				look_help(_khelp_!=-1);
				continue;
			}
		} else k&=(~BIT1);
		c=K_KEYSNS();
	} while (c==0);
	c=K_KEYINP();
	k=0;
	if (mode==1 && !check_kanji1(c)) KFLUSHIO(0xff); /* キーバッファークリア */
	return(c);
}
