#include <string.h>
#include "defines.h"
#include "astring.h"
#include "ascreen.h"
#include "res.h"

unsint ReadCol1(unchar *buff)
/* １色データコンパイル */
{
unchar token[TRESMAX];
int i,j=1,col;
unsint cl=0xffff;
	while (GetToken(buff,j++,token,"|+ \t")) { /* OR対応読みだし */
		/* token = １色 */
		if (atoi3(token,&col,0)==0) {
			/* 数字で読み取り */
			if (cl==0xffff) cl=0; /* 最初 */
			cl|=(unsint)col;
			continue;
		}
		/* 数字で読み取れない時は定数で読み取り */
		if (memcmpi(token,"BIT",3)==0) { /* BIT??定数 */
			if (cl==0xffff) cl=0; /* 最初 */
			col=atoi(&token[3]);
			cl|=(unsint)(BIT0<<col);
			continue;
		}
		/* 文字定数 */
		for (i=0;i<NCOLCNV;i++) {
			if (strcmpi(token,ColCnv[i].mes)==0) {
				if (cl==0xffff) cl=0; /* 最初 */
				cl|=ColCnv[i].num;
				break;
			}
		}
		if (i==NCOLCNV) {
			cl=0xffff;
			break; // 色指定がおかしい
		}
	}
	return(cl);
}
