typedef struct {
      int   reservado           (GERAL);
      int   pagina              (GERAL);
      int   contador            (GERAL);
      int   dia                 (GERAL);
      int   mes                 (GERAL);
      int   ano                 (GERAL);
      char  mes_extenso         (GERAL)[20];
      data  d1                  (GERAL);
      data  d2                  (GERAL);
      tipo_horas  h1            (GERAL);
      tipo_horas  h2            (GERAL);
      char  aux1                (GERAL)[80];
      char  aux2                (GERAL)[80];
      char  original            (GERAL)[80];
      int   num_via             (GERAL);
      int   linha               (GERAL);
     } tipo_geral;


typedef struct {                // 1
        int   existe            (EMPRESA);
        int   numero            (EMPRESA);
        char  nome              (EMPRESA)[72];
        char  directoria        (EMPRESA)[20];
        char  password          (EMPRESA)[20];
        char  contribuinte      (EMPRESA)[15];
        char  dados 0           (EMPRESA)[72];
        char  dados 1           (EMPRESA)[72];
        char  dados 2           (EMPRESA)[72];
        char  dados 3           (EMPRESA)[72];
        char  dados 4           (EMPRESA)[72];
        char  dados 5           (EMPRESA)[72];
        char  dados 6           (EMPRESA)[72];
        char  dados 7           (EMPRESA)[72];
        char  MensAnual         (EMPRESA)[2];
        char  MensTrim          (EMPRESA)[2];
        char  Regime            (EMPRESA)[2];
        char  flg_s             (EMPRESA)[2];
        char  drive             (EMPRESA)[6];
        int   ano               (EMPRESA);
        char  flg_r             (EMPRESA)[2];
        char  flg_grl           (EMPRESA)[2];
        char  rsv               (EMPRESA)[297];
        int   existe            (OPERADORES);
        int   numero            (OPERADORES);
        char  nome              (OPERADORES)[41];
        char  password          (OPERADORES)[20];
        char  flg_pswd          (OPERADORES)[2];
        int   nivel             (OPERADORES);
        char  rsv               (OPERADORES)[187];
        char nome               (PROGRAMA)[15];
        char versao             (PROGRAMA)[10];
        int  demo               (PROGRAMA);
        char fic                (PROGRAMA)[9];
        char path               (PROGRAMA)[40];
        char driver             (PORTA)[15];
        char form_pagina        (PORTA)[2];
        char cpi_15             (PORTA)[2];
        char select             (PORTA)[2];
        char rsv                (PORTA)[29];
        data  d1                (AMBIENTE);
        data  d2                (AMBIENTE);
        data  d3                (AMBIENTE);
        data  d4                (AMBIENTE);
        data  d5                (AMBIENTE);
        data  dc                (AMBIENTE);
        char  st1               (AMBIENTE)[80];
        char  st2               (AMBIENTE)[80];
        char  st3               (AMBIENTE)[80];
        char  st4               (AMBIENTE)[80];
        int   flc               (AMBIENTE);
        int   oldc              (AMBIENTE);
        int   ins_mode          (AMBIENTE);
        int   pede_empresa      (AMBIENTE);
        int   pede_operador     (AMBIENTE);
        int   beep_activo       (AMBIENTE);
        char  edita_temp        (AMBIENTE)[2];
        int   p_via             (AMBIENTE);
        int   n_via             (AMBIENTE);
        double tela             (AMBIENTE);
        int   lpt               (AMBIENTE);
        char  KeySound          (AMBIENTE);
        char  rsv               (AMBIENTE)[269];
    } tipo_ambiente;             // 1

typedef struct {                 // 2
      int    existe              (ETQ-CAB);
      int    linhas              (ETQ-CAB);
      long   numero              (ETQ-CAB);
      data   d                   (ETQ-CAB);
      long   num_cliente         (ETQ-CAB);
      char   nome_cliente        (ETQ-CAB)[41];
      char   obs                 (ETQ-CAB)[51];
      char   linha_preco         (ETQ-CAB)[2];
      char   com_iva             (ETQ-CAB)[2];
      char   rsv                 (ETQ-CAB)[144];
     } tipo_etiquetas;           // 2

typedef struct {                 // 3
      int    existe              (ETQ-LNH);
      int    linha_f             (ETQ-LNH);
      int    cor                 (ETQ-LNH);
      long   numero              (ETQ-LNH);
      char   codigo              (ETQ-LNH)[15];
      char   descricao           (ETQ-LNH)[41];
      double preco               (ETQ-LNH);
      int    quantidade          (ETQ-LNH);
      char   rsv                 (ETQ-LNH)[116];
     } tipo_etiquetas_lnh;       // 3
