#!/usr/bin/perl
# 以下は変更する必要なし
#-----------------------------------------------------------------------------
#
# acspac2flg (version  $Id: eodv,v 1.4 2007/05/22 02:22:33 Exp $) 
#
# uc_acsmode_pacテレメをフラグに変換する
# 
# Usage:
# > acspac2flg.pl hogehoge.csv 5 14
#
# options:
#       1.ファイル名指定
#	2.SATTIME列指定(0,1,2,3…で数える)
#	3.acspac列指定(0,1,2,3…で数える)
#
# example:
# acspac2flg.pl hogehoge.csv 5 14				#(1)
#
#-----------------------------------------------------------------------------
#use strict;
#use warnings;

# Libraries
my @chars;
my @hexs;
my @bins;

#-----------------------------------------------------------------------------
# Code begin
#-----------------------------------------------------------------------------
($opt) = @ARGV; 
if ($opt eq "-h") {
   &show_usage();
   exit;
}

# オプションがない場合
if ($#ARGV == -1){
	print "Error:ファイル名を指定してください\n";
}
# オプションが3つある場合
if ($#ARGV == 0){
	# 対象ファイルのオープン
	open(IN,"<$ARGV[0]") || die "Error: can't open $ARGV[0]\n";
		@line = <IN>;
	close(IN);
	
	# ループ処理
	$cnt = -1;
	foreach (@line){
		# 衛星時刻
		@chars	= split(/\s/,$_);
		
		for($i=0;$i<$#chars;$i++)
		{
			# 文字から数字に変換
			$hexs[$i] = hex($chars[$i]);

			# 2進数変換
			$bins[$i] = unpack('B8',pack('C',$hexs[$i]));

			# 表示
			$disp = sprintf("%s",$bins[$i]);
			print $disp;
	
			# インクリメント処理
			$cnt++;
		}
	}
}

# オプションが２つある場合
if ($#ARGV == 1){
}
exit;

#-----------------------------------------------------------------------------
# Sub code begin
#-----------------------------------------------------------------------------
sub show_usage()
{
 print "Usage:\n";
 print "> eodv [-h]\n";
 print "\n";
 print "options:\n";
 print "         -h : 利用方法を提示する\n";
 print "\n";
 print "example:\n";
 print "eodv -h                         #(1) HELP\n";
}


