[comp.sys.atari.st] IMG files / GDOS fonts / Spectre 128

RY04@DKAUNI11.BITNET (03/14/89)

In article <8903081558.dmb@TIS.COM> David M. Baggett writes :
>
>
>> From: shc1@ukc.ac.uk (S.H.Cogheil)
>...
>>To: dmb@TIS.COM
>>In-Reply-To: <8902131815.AA10307@TIS.COM>
>
>>Would you possibly have any info on the .img formats ?
>
>Unfortunately I don't.  If you (or anyone else here) has info
>on .IMG, send it along to me and I'll add it to the list.
>
>            Dave

In fact there exists an information about *.IMG files. I will try
to discribe this format now.

At the beginning of each IMG file there is a structure with following
format :

typedef struct
{
  int   im_version;           /* version number of image file    */
  int   im_headlength;        /* length of header in words -> you
                                 should ALWAYS check this value
                                 and skip the rest of the header if
                                 this value is greater than 8 !! */
  int   im_nplanes;           /* number of colour planes         */
  int   im_patlen;            /* pattern length in bytes;
                                 normally 2                      */
  int   im_pixwidth;          /* pixel width in thousands of mm  */
  int   im_pixheight;         /* pixel height in  th. of mm      */
  int   im_scanwidth;         /* line width in pixels            */
  int   im_nlines;            /* number of lines                 */
}

the picture information is structured in three groups :

- monochrome pixel series ( "solid run" ) are stored as simple byte.
  In this case bit no. 7 gives the status of the point, on or off.
  bit no. 0-6 give the number of pixels to draw.
- pattern series ( "pattern run" ) have as first byte a "0" and as
  second the number of of repeats. the length of a pattern is stored
  in "im_patlen". You see, the first two bytes are followed by as many
  bytes as are needed to describe this pattern.
- picture informations which are difficult or aren't to be shortened
  ( "Bit String" ) are stored without compressing. In this case the
  first byte is $80  and the second gives the number of bitstrings.
  Behind byte 2 follow the bytes of the bitstring.

If there more than one line with the same content they are coded
in following way :

typedef struct
{
  int    sc_zero;          /* always 0                   */
  int    sc_ff;            /* always 255                 */
  int    sc_cnt;           /* number off coded scanlines */
}

ATTENTION !!
Information can be found only for one line and one plane. You should
take care that always a line with a full byte number is coded, although
the picture in fact can be smaller. So it can be that there are up to
7 bits more information. The real picture width stands in
"im_scanwidth".


Well, I think that should be enough.

Now, I have a problem of my own and hope someone on the net can help me.

1) Do there exist any FONTS for GDOS which are NOT Swiss or Dutch
   or Rockface and if they do, in which sizes are they available ?

   I want to write a program which uses full VDI interface and will
   work expressive with texts. So I have a great interest to get
   fonts in style ea. helvetica,times,swiss,symbol in sizes 7,9,12,
   14,18,20,24 ( 28 ) points like on the mac.

   Does anyone have an idea to get these ????

2) What's about this Spectre 128 where you are talking of ? Can any-
   one explain this to me ? ( what for ROMS ? Which converter ?
   where could I get it ? how expensive is it ?....)

            Thanks, Valentin

         P.S : Please answer NOT to the List but direct to me..