#!/bin/bash

function printch()
{
	XX=$(printf "%02x" $1)
	printf "\x$XX"
}

function unrle()
{
	while read HEAD
	do
		if [ $HEAD -lt 128 ]
		then
			for ((N=0;N<$HEAD;N++))
			do
				if ! read CH
				then
					exit 1
				else
					printch $CH
				fi
			done
		else
			if ! read CH
			then
				exit 1
			fi
			for ((N=128;N<$HEAD;N++))
			do
				printch $CH
			done
		fi
	done
}

if [ $# -eq 0 ]
then
	printf "\xf0\x00\x40"
	od -An -tuC -w1 -j3 -v | unrle
	exit 0
else
	echo "Usage: $0 < file.pgc > file.ghg"
fi
