I have chosen to use a single non standard format for storing
the contents of a pic.  The reason for this is that I wanted
to use a more logical standard than intel hex which has no sensible
place to include chip id and flags.  Also since these
tools are self contained it doesn't matter and moves the conversion from
the assembler etc to other tools that are/will be provided
to convert from this format to any of the other common formats
used by other pic software/programmers.

The format chosen is as follows (any order allowed):-

# anything, is a comment to the end of the line
T54			# Pic type (currently one of 54, 55, 56, 57, 71, 84, 64
W0			# Watchdog enable (1 enabled, 0 disabled)
P0			# Code protection fuse (1 unprotect, 0 protect)
C0 4.0E6		# Clock oscillator mode (0 = LP,1 = XT,2 = HS,3 = RC)
			# and speed in Hz
U0			# Power up timer (1 enabled, 0 disabled)
I0000 0000 0000 0000	# customer ID numbers (four 16bit words)
			#   see programming notes for sensible use
A0000			# Start address for next block
D8 0000 0000 0000 0000 0000 0000 0000 0000
			# Data 8 to a line maximum (number on 1st line)
S0000			# Check Sum for whole generated pic data structure


The data structure generated is as follows.

#define MAXPICSIZE 8192

typedef picdefn struct
	{
		unsigned short	picmemmap[MAXPICSIZE]
		int		pictype;
		unsigned short	picid[4];
		double		clock;
		int		osctype;
		int		cp_fuse;
		int		wd_fuse;
		int		pu_fuse;
	} PICDEFN;


