Subversion Repositories Projects

Rev

Rev 567 | Rev 685 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 567 Rev 677
Line 156... Line 156...
156
                write_ascii_string_pgm(23, 2, VM_NTSC);
156
                write_ascii_string_pgm(23, 2, VM_NTSC);
157
        } else {
157
        } else {
158
                write_ascii_string_pgm(23, 2, VM_PAL);
158
                write_ascii_string_pgm(23, 2, VM_PAL);
159
        }
159
        }
Line -... Line 160...
-
 
160
 
-
 
161
        // request version from board
-
 
162
        rxd_buffer_locked = 0;
-
 
163
        #if FCONLY
-
 
164
        usart1_request_mk_data(0, 'v', 0);
-
 
165
        write_ascii_string_pgm(2, 11, PSTR("FC VERSION: ........"));
-
 
166
        #else
-
 
167
        usart1_request_mk_data(1, 'v', 0);
-
 
168
        write_ascii_string_pgm(2, 11, PSTR("NC VERSION: ........"));
-
 
169
        #endif
-
 
170
        // wait for response
-
 
171
        while (rxd_buffer_locked == 0) {
-
 
172
                asm("nop");
-
 
173
        }
-
 
174
        Decode64();
-
 
175
        str_VersionInfo VersionInfo;
-
 
176
        VersionInfo = *((str_VersionInfo*) pRxData);
-
 
177
       
-
 
178
        write_ndigit_number_u(14, 11, VersionInfo.SWMajor, 3, 1);
-
 
179
        write_ndigit_number_u(18, 11, VersionInfo.SWMinor, 3, 1);
-
 
180
        write_ascii_char(22 + 11*30, 'a' + VersionInfo.SWPatch);
-
 
181
        // end version request
Line 160... Line 182...
160
 
182
 
161
 
183
 
162
        #if FCONLY
184
        #if FCONLY
163
        COSD_DISPLAYMODE %= (sizeof(fcdisplaymodes) / sizeof(displaymode_t));
185
        COSD_DISPLAYMODE %= (sizeof(fcdisplaymodes) / sizeof(displaymode_t));
164
        mode = fcdisplaymodes;
186
        mode = fcdisplaymodes;
-
 
187
        mode += COSD_DISPLAYMODE;
-
 
188
        osd_fcmode = (int(*)(void)) pgm_read_word(&mode->dfun);
165
        mode += COSD_DISPLAYMODE;
189
        // re-request data ever 100ms from FC;
166
        osd_fcmode = (int(*)(void)) pgm_read_word(&mode->dfun);
190
        usart1_request_mk_data(0, 'd', 100);
167
        #else
191
        #else
168
        COSD_DISPLAYMODE %= (sizeof(ncdisplaymodes) / sizeof(displaymode_t));
192
        COSD_DISPLAYMODE %= (sizeof(ncdisplaymodes) / sizeof(displaymode_t));
169
        mode = ncdisplaymodes;
193
        mode = ncdisplaymodes;
-
 
194
        mode += COSD_DISPLAYMODE;
-
 
195
        osd_ncmode = (int(*)(void)) pgm_read_word(&mode->dfun);
170
        mode += COSD_DISPLAYMODE;
196
        // re-request OSD Data from NC every 100ms
Line 171... Line 197...
171
        osd_ncmode = (int(*)(void)) pgm_read_word(&mode->dfun);
197
        usart1_request_mk_data(1, 'o', 100);
172
        #endif
198
        #endif
173
 
199