int		_chk_pathlist( char *pathlist, char *path )
{
	char	s1[1024], s2[256];

	strcpy(s1,pathlist);	FS_strupr(s1);
	strcpy(s2,path);		FS_strupr(s2);
	if ( strstr(s1,s2) == NULL )
		return (0);	/* なし */
	else
		return (1);
}

/*************************************************************************
*	HEwin 環境設定
*************************************************************************/

int		_setcfg_HEWIN()
{
	char	*p, *pathInst, fnMac[256], path[1024];
	int		len;
	char	*MACROKEY_EXPSEARCH_PATH;
	char	*amac;

	pathInst = Path_HEWIN;
	MACROKEY_EXPSEARCH_PATH = "Exp_search_path";
	len = strlen(pathInst);
	if ( len > 0 && FS_isdelim(pathInst[len-1]) )
		sprintf(fnMac,"%s%s",pathInst,"hewin.mac");
	else
		sprintf(fnMac,"%s/%s",pathInst,"hewin.mac");
	if ( (amac = AMAC_allocWork(0)) == NULL )
		return (ERR);
	AMAC_load( amac, fnMac );
	if ( (p = AMAC_getName( amac, MACROKEY_EXPSEARCH_PATH)) == NULL || *p == '\0' )
	{
		sprintf(path,"%s;%s;%s",Path_CCI, Path_GSPLAY, Path_HE386 );
		AMAC_setKey( amac, MACROKEY_EXPSEARCH_PATH, path );
	} else
	{	/* 既にパス設定が存在する	*/
		strcpy(path,p);
		if ( _chk_pathlist(path,Path_CCI) == 0 )
		{
			strcat(path,";");
			strcat(path,Path_CCI);
		}
		if ( _chk_pathlist(path,Path_GSPLAY) == 0 )
		{
			strcat(path,";");
			strcat(path,Path_GSPLAY);
		}
		if ( _chk_pathlist(path,Path_HE386) == 0 )
		{
			strcat(path,";");
			strcat(path,Path_HE386);
		}
		AMAC_setKey( amac, MACROKEY_EXPSEARCH_PATH, path );
	}
	AMAC_save( amac, fnMac, "hewin.mac" );
	AMAC_freeWork(amac);

	return (NORMAL);
}

/*************************************************************************
*	EDIA 環境設定
*************************************************************************/

int		_setcfg_EDIA()
{
	char	*p, *pathInst, fnMac[256], path[1024];
	int		len;
	char	*MACROKEY_EXPSEARCH_PATH;
	char	*amac;

	pathInst = Path_EDIA;
	MACROKEY_EXPSEARCH_PATH = "Exp_search_path";
	len = strlen(pathInst);
	if ( len > 0 && FS_isdelim(pathInst[len-1]) )
		sprintf(fnMac,"%s%s",pathInst,"edia.mac");
	else
		sprintf(fnMac,"%s/%s",pathInst,"edia.mac");
	if ( (amac = AMAC_allocWork(0)) == NULL )
		return (ERR);
	AMAC_load( amac, fnMac );
	if ( (p = AMAC_getName( amac, MACROKEY_EXPSEARCH_PATH)) == NULL || *p == '\0' )
	{
		sprintf(path,"%s;%s;%s",Path_CCI, Path_GSPLAY, Path_HE386 );
		AMAC_setKey( amac, MACROKEY_EXPSEARCH_PATH, path );
	} else
	{	/* 既にパス設定が存在する	*/
		strcpy(path,p);
		if ( _chk_pathlist(path,Path_CCI) == 0 )
		{
			strcat(path,";");
			strcat(path,Path_CCI);
		}
		if ( _chk_pathlist(path,Path_GSPLAY) == 0 )
		{
			strcat(path,";");
			strcat(path,Path_GSPLAY);
		}
		if ( _chk_pathlist(path,Path_HE386) == 0 )
		{
			strcat(path,";");
			strcat(path,Path_HE386);
		}
		AMAC_setKey( amac, MACROKEY_EXPSEARCH_PATH, path );
	}
	AMAC_save( amac, fnMac, "edia.mac" );
	AMAC_freeWork(amac);

	return (NORMAL);
}

/*************************************************************************
*	サイドワーク環境設定
*************************************************************************/

char	FnSdkSys[256];

int		_setcfg_SDK()
{
	int		len;
	char	*pathInst, dirSdk[256], tmp[256];
	char	*fp;

	pathInst = Path_SDK;
	len = strlen(pathInst);
	if ( len > 0 && FS_isdelim(pathInst[len-1]) )
		strcpy(dirSdk,pathInst);
	else
		sprintf(dirSdk,"%s/", pathInst);
	sprintf(FnSdkSys,"%s%s", dirSdk, "sidework.tmp");

	if ( (fp = fopen(FnSdkSys,"wb")) == NULL )
		return (ERR);
	fprintf(fp,"0 \"Sidework menu   \"\t%s%s\r\n", dirSdk, "sdkmenu.exp");
	fprintf(fp,"C \"数式計算        \"\t%s%s\r\n", dirSdk, "sdkcalc.exp");
	fprintf(fp,"D \"CD辞書検索      \"\t%s%s\r\n", dirSdk, "sdkdic.exp" );
	fprintf(fp,"F \"ファイルセレクタ\"\t%s%s\r\n", dirSdk, "sdkfs.exp"  );
	fprintf(fp,"P \"MIDIデータ演奏  \"\t%s%s\r\n", dirSdk, "smfplay.exp");
	fclose(fp);

	return (NORMAL);
}
