#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

#define VERSION "1.00"

#define IGEN (-1)
#define NOP  (999)
#define NEM  0

#define SIRO "[1;37m"
#define MIZU "[1;36m"
#define MURA "[1;35m"
#define AO   "[1;34m"
#define KI   "[1;33m"
#define MIDO "[1;32m"
#define AKA  "[1;31m"
#define COFF "[m"

#define CLSET	(1<<2)	/* 背景色採集(一度) */
#define CLSETP	(1<<3)	/* 背景色採集(毎回)[優先] */
#define BGCOL	(1<<4)	/* 背景色数値指定 */
#define NOESC	(1<<5)	/* エスケープシーケンス無し */
#define AUTOH	(1<<6)	/* 16色パターン全出力[優先] */
#define AUTOZ	(1<<7)	/* 全体16色のみ出力 */
#define DEMOM	(1<<8)	/* デモ・モード */

#define DFORM "%u:%s %u,%u" /* 加工された.SPIの標準読込形式 */

typedef struct _fileset		/* ファイル変数を纏めたもの */
{
  FILE *FPIB,*FPIT,*FPOB,*FPOP,*FPOT;
} fileset ;

typedef struct _spinfo		/* スプライトに関する情報を纏めたもの */
{
  char name[32];
  int num,x,y;
  long ofst;
} spinfo;

typedef struct _palet		/* パレットデータと色数 */
{
  unsigned short pal[16];
  int mxc;			/* 色の数,直接的には.palの引数ではない(pal+1) */
} palet;

