~ubuntu-branches/ubuntu/saucy/tlf/saucy

« back to all changes in this revision

Viewing changes to src/writeparas.c

  • Committer: Package Import Robot
  • Author(s): John T. Nogatch
  • Date: 2013-02-09 14:56:34 UTC
  • mfrom: (1.2.5) (3.1.6 sid)
  • Revision ID: package-import@ubuntu.com-20130209145634-de47b40lyf5ntgsu
Tags: 1.1.5-1
* Update from upstream git
* LP: #854080, #514303

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 * along with this program; if not, write to the Free Software
17
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
18
 */
19
 
        /* ------------------------------------------------------------
20
 
        *        Write parameter file to disk
21
 
        *
22
 
        *--------------------------------------------------------------*/
 
19
        /* ------------------------------------------------------------
 
20
         *        Write parameter file to disk
 
21
         *
 
22
         *--------------------------------------------------------------*/
23
23
 
24
24
#include "writeparas.h"
25
25
 
26
 
int writeparas(void){
27
 
 
28
 
extern char call[];
29
 
extern char message[15][80];
30
 
extern char headerline[];
31
 
extern char logfile[];
32
 
extern char whichcontest[];
33
 
extern int shortqsonr;
34
 
extern char para_word[];
35
 
extern int cluster;
36
 
extern int searchflg;
37
 
extern int demode;
38
 
extern int contest;
39
 
extern int announcefilter;
40
 
extern int showscore_flag;
41
 
extern int cqdelay;
42
 
extern int speed;
43
 
extern int trxmode;
44
 
extern int stop_backgrnd_process;
45
 
 
46
 
FILE *fp;
47
 
int i;
48
 
 
49
 
stop_backgrnd_process = 1;
50
 
sleep(1);
51
 
 
52
 
if (strlen(call) <= 3) {
53
 
        mvprintw(24, 0, "Cannot write parameters file: data corrupt... ");
54
 
        refresh();
55
 
        sleep(1);
56
 
        return(-1);
57
 
}
58
 
 
59
 
 if  ( (fp = fopen(".paras","w"))  == NULL){
60
 
                mvprintw(24,0,  "writeparas.c: Error opening file.\n");
61
 
                refresh();
62
 
                sleep(1);
63
 
                endwin();
64
 
                exit(1);
65
 
        }
66
 
fputs ("# Call  ----------------------------------\n", fp);     
67
 
fputs (call, fp);
68
 
fputs ("# Messages  F1...F12 ---------------------\n", fp);     
69
 
 
70
 
for  (i =  0;  i  <= 13;  i++){
71
 
            if  (i ==  12)
72
 
                        fputs ("# TU message S&P mode---------------------\n", fp);     
73
 
            if  (i  == 13)
74
 
                    fputs ("# TU  message CQ mode---------------------\n", fp); 
75
 
                fputs(  message[i], fp);
76
 
        }
77
 
 
78
 
fputs ("# Info for top status line----------------\n", fp);     
79
 
        
80
 
fputs  (headerline, fp);
81
 
 
82
 
fputs ("# Logfile--------------------\n", fp);  
83
 
        
84
 
fputs  (logfile, fp);
85
 
fputs ("\n",  fp);
86
 
 
87
 
fputs ("# Contest--------------------\n", fp);  
88
 
        
89
 
fputs  (whichcontest, fp);
90
 
fputs ("\n", fp);
91
 
 
92
 
fputs ("# Parameters--don't change----\n", fp); 
93
 
 
94
 
if  (shortqsonr  ==  1)
95
 
        para_word[0]  =  'S'; /* short */
96
 
else
97
 
        para_word[0]  =  'L'; /* long  */
98
 
        
99
 
if  (cluster == 0)
100
 
        para_word[1]  = 'O';  /* OFF */
101
 
else if (cluster  == 1)
102
 
        para_word[1] = 'M';   /* MAP */
103
 
else if (cluster == 2)
104
 
        para_word[1] = 'S';    /* SPOTS  */
105
 
else  if (cluster == 3)
106
 
        para_word[1] = 'A';    /* All  */
107
 
        
108
 
if (searchflg == 1)
109
 
        para_word[2] = 'D';    /* DISPLAY */
110
 
else
111
 
        para_word[2] =  'N';    /* NO DISPLAY */
112
 
        
113
 
if (demode == 1)
114
 
        para_word[3]  = 'D';    /* DE mode on */
115
 
else
116
 
        para_word[3] =  'N';    /*  DE mode off */
117
 
        
118
 
if (contest == 1)
119
 
        para_word[4] =  'C';    /* contest  mode */
120
 
else
121
 
        para_word[4] = 'G';     /* general qso mode */
122
 
 
123
 
if (announcefilter == 1)
124
 
        para_word[5] = 'F';      /* filter  on  */
125
 
else
126
 
        para_word[5]  = 'N';     /* off */
127
 
        
128
 
if (showscore_flag == 0)
129
 
        para_word[6]  = 'N';     /* No score window */
130
 
else
131
 
        para_word[6] = 'S';      /* show score window */
132
 
        
133
 
        para_word[7] =  48 + speed;
134
 
 
135
 
if  (cqdelay > 0  && cqdelay < 23)      
136
 
    para_word[8] = 48 +  cqdelay;
137
 
 
138
 
if (trxmode == CWMODE)        /* use fifo for cw output */
 
26
int writeparas(void)
 
27
{
 
28
 
 
29
    extern char call[];
 
30
    extern char message[15][80];
 
31
    extern char headerline[];
 
32
    extern char logfile[];
 
33
    extern char whichcontest[];
 
34
    extern int shortqsonr;
 
35
    extern char para_word[];
 
36
    extern int cluster;
 
37
    extern int searchflg;
 
38
    extern int demode;
 
39
    extern int contest;
 
40
    extern int announcefilter;
 
41
    extern int showscore_flag;
 
42
    extern int cqdelay;
 
43
    extern int speed;
 
44
    extern int trxmode;
 
45
    extern int stop_backgrnd_process;
 
46
 
 
47
    FILE *fp;
 
48
    int i;
 
49
 
 
50
    stop_backgrnd_process = 1;
 
51
    sleep(1);
 
52
 
 
53
    if (strlen(call) <= 3) {
 
54
        mvprintw(24, 0, "Cannot write parameters file: data corrupt... ");
 
55
        refreshp();
 
56
        sleep(1);
 
57
        return (-1);
 
58
    }
 
59
 
 
60
    if ((fp = fopen(".paras", "w")) == NULL) {
 
61
        mvprintw(24, 0, "writeparas.c: Error opening file.\n");
 
62
        refreshp();
 
63
        sleep(1);
 
64
        endwin();
 
65
        exit(1);
 
66
    }
 
67
    fputs("# Call  ----------------------------------\n", fp);
 
68
    fputs(call, fp);
 
69
    fputs("# Messages  F1...F12 ---------------------\n", fp);
 
70
 
 
71
    for (i = 0; i <= 13; i++) {
 
72
        if (i == 12)
 
73
            fputs("# TU message S&P mode---------------------\n", fp);
 
74
        if (i == 13)
 
75
            fputs("# TU  message CQ mode---------------------\n", fp);
 
76
        fputs(message[i], fp);
 
77
    }
 
78
 
 
79
    fputs("# Info for top status line----------------\n", fp);
 
80
 
 
81
    fputs(headerline, fp);
 
82
 
 
83
    fputs("# Logfile--------------------\n", fp);
 
84
 
 
85
    fputs(logfile, fp);
 
86
    fputs("\n", fp);
 
87
 
 
88
    fputs("# Contest--------------------\n", fp);
 
89
 
 
90
    fputs(whichcontest, fp);
 
91
    fputs("\n", fp);
 
92
 
 
93
    fputs("# Parameters--don't change----\n", fp);
 
94
 
 
95
    if (shortqsonr == 1)
 
96
        para_word[0] = 'S';     /* short */
 
97
    else
 
98
        para_word[0] = 'L';     /* long  */
 
99
 
 
100
    if (cluster == 0)
 
101
        para_word[1] = 'O';     /* OFF */
 
102
    else if (cluster == 1)
 
103
        para_word[1] = 'M';     /* MAP */
 
104
    else if (cluster == 2)
 
105
        para_word[1] = 'S';     /* SPOTS  */
 
106
    else if (cluster == 3)
 
107
        para_word[1] = 'A';     /* All  */
 
108
 
 
109
    if (searchflg == 1)
 
110
        para_word[2] = 'D';     /* DISPLAY */
 
111
    else
 
112
        para_word[2] = 'N';     /* NO DISPLAY */
 
113
 
 
114
    if (demode == 1)
 
115
        para_word[3] = 'D';     /* DE mode on */
 
116
    else
 
117
        para_word[3] = 'N';     /*  DE mode off */
 
118
 
 
119
    if (contest == 1)
 
120
        para_word[4] = 'C';     /* contest  mode */
 
121
    else
 
122
        para_word[4] = 'G';     /* general qso mode */
 
123
 
 
124
    if (announcefilter == 1)
 
125
        para_word[5] = 'F';     /* filter  on  */
 
126
    else
 
127
        para_word[5] = 'N';     /* off */
 
128
 
 
129
    if (showscore_flag == 0)
 
130
        para_word[6] = 'N';     /* No score window */
 
131
    else
 
132
        para_word[6] = 'S';     /* show score window */
 
133
 
 
134
    para_word[7] = 48 + speed;
 
135
 
 
136
    if (cqdelay > 0 && cqdelay < 23)
 
137
        para_word[8] = 48 + cqdelay;
 
138
 
 
139
    if (trxmode == CWMODE)      /* use fifo for cw output */
139
140
        para_word[9] = 'C';
140
 
else
 
141
    else
141
142
        para_word[9] = 'P';
142
 
        
143
 
para_word[10] = '\n';
144
 
para_word[11] = '\0';
145
 
 
146
 
fputs( para_word, fp);
147
 
 
148
 
fclose(fp);
149
 
 
150
 
stop_backgrnd_process = 0;
151
 
 
152
 
return(0);
 
143
 
 
144
    para_word[10] = '\n';
 
145
    para_word[11] = '\0';
 
146
 
 
147
    fputs(para_word, fp);
 
148
 
 
149
    fclose(fp);
 
150
 
 
151
    stop_backgrnd_process = 0;
 
152
 
 
153
    return (0);
153
154
 
154
155
}
155