[Taranis] GVARS can now refer to the GVAR of another phase

[Taranis] Issue 90 fixed (french translation)
[9XR] TELEMETRY_MOD=STD|14051 added (thanks Gerard for the patch)
This commit is contained in:
bsongis@gmail.com
2013-08-06 16:50:23 +00:00
parent 0394b70d40
commit 1c7e7226de
23 changed files with 162 additions and 146 deletions
+14 -87
View File
@@ -289,7 +289,11 @@ ifeq ($(PCB), $(filter $(PCB), STD 9X 9XR))
else
CPPDEFS += -DPCB9X
endif
ifeq ($(TELEMETRY_MOD), 14051)
CPPDEFS += -DTELEMETRY_MOD_14051
endif
ifeq ($(AUDIO), YES)
CPPDEFS += -DAUDIO
CPPSRC += audio_avr.cpp
@@ -344,6 +348,10 @@ ifeq ($(PCB), $(filter $(PCB), STD128 9X128 9XR128))
else
CPPDEFS += -DPCB9X128
endif
ifeq ($(TELEMETRY_MOD), 14051)
CPPDEFS += -DTELEMETRY_MOD_14051
endif
ifeq ($(AUDIO), YES)
CPPDEFS += -DAUDIO
@@ -1044,7 +1052,7 @@ else
endif
tra: translations/se.h
lbm: fonts/std/font_05x07.lbm fonts/sqt5/font_05x07.lbm bitmaps/sticks.lbm
lbm: fonts bitmaps/sticks.lbm
elf: $(TARGET).elf
bin: $(TARGET).bin
@@ -1116,93 +1124,12 @@ translations/se.h: translations/cz.h.txt translations/de.h.txt translations/es.h
$(TRANSLATE) translations/pt.h.txt translations/pt.h pt
@echo "Swedish"
$(TRANSLATE) translations/se.h.txt translations/se.h se
ifeq ($(FONT), SQT5)
fonts/sqt5/font_05x07.lbm: fonts/std/font_03x05.png fonts/sqt5/font_04x06.png fonts/sqt5/font_05x07.png fonts/sqt5/font_08x10.png fonts/sqt5/font_10x14.png fonts/sqt5/font_10x14_compressed.png fonts/std/font_04x06_extra.png fonts/std/font_05x07_extra.png fonts/std/font_10x14_extra.png fonts/sqt5/font_cz_04x06.png fonts/sqt5/font_cz_05x07.png fonts/sqt5/font_cz_08x10.png fonts/sqt5/font_cz_10x14.png fonts/std/font_de_04x06.png fonts/std/font_de_05x07.png fonts/std/font_de_08x10.png fonts/std/font_de_10x14.png fonts/std/font_es_04x06.png fonts/std/font_es_05x07.png fonts/std/font_es_08x10.png fonts/std/font_es_10x14.png fonts/std/font_fr_04x06.png fonts/std/font_fr_05x07.png fonts/std/font_fr_08x10.png fonts/std/font_fr_10x14.png fonts/std/font_it_04x06.png fonts/std/font_it_05x07.png fonts/std/font_it_08x10.png fonts/std/font_it_10x14.png fonts/std/font_se_04x06.png fonts/std/font_se_05x07.png fonts/std/font_se_08x10.png fonts/std/font_se_10x14.png
@echo
@echo "Convert SQT5 fonts from png to lbm:"
$(IMG2LBM) fonts/std/font_03x05.png fonts/std/font_03x05.lbm 3x5
$(IMG2LBM) fonts/sqt5/font_04x06.png fonts/sqt5/font_04x06.lbm 4x6
$(IMG2LBM) fonts/sqt5/font_05x07.png fonts/sqt5/font_05x07.lbm 5x7
$(IMG2LBM) fonts/sqt5/font_08x10.png fonts/sqt5/font_08x10.lbm 8x10
$(IMG2LBM) fonts/sqt5/font_10x14.png fonts/sqt5/font_10x14.lbm 10x14
$(IMG2LBM) fonts/sqt5/font_10x14_compressed.png fonts/sqt5/font_10x14_compressed.lbm 10x14
$(IMG2LBM) fonts/std/font_04x06_extra.png fonts/std/font_04x06_extra.lbm 4x6
$(IMG2LBM) fonts/std/font_05x07_extra.png fonts/std/font_05x07_extra.lbm 5x7
$(IMG2LBM) fonts/std/font_10x14_extra.png fonts/std/font_10x14_extra.lbm 10x14
$(IMG2LBM) fonts/sqt5/font_cz_04x06.png fonts/sqt5/font_cz_04x06.lbm 4x6
$(IMG2LBM) fonts/sqt5/font_cz_05x07.png fonts/sqt5/font_cz_05x07.lbm 5x7
$(IMG2LBM) fonts/sqt5/font_cz_08x10.png fonts/sqt5/font_cz_08x10.lbm 8x10
$(IMG2LBM) fonts/sqt5/font_cz_10x14.png fonts/sqt5/font_cz_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_de_04x06.png fonts/std/font_de_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_de_05x07.png fonts/std/font_de_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_de_08x10.png fonts/std/font_de_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_de_10x14.png fonts/std/font_de_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_es_04x06.png fonts/std/font_es_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_es_05x07.png fonts/std/font_es_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_es_08x10.png fonts/std/font_es_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_es_10x14.png fonts/std/font_es_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_fr_04x06.png fonts/std/font_fr_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_fr_05x07.png fonts/std/font_fr_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_fr_08x10.png fonts/std/font_fr_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_fr_10x14.png fonts/std/font_fr_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_it_04x06.png fonts/std/font_it_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_it_05x07.png fonts/std/font_it_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_it_08x10.png fonts/std/font_it_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_it_10x14.png fonts/std/font_it_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_pt_04x06.png fonts/std/font_pt_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_pt_05x07.png fonts/std/font_pt_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_pt_08x10.png fonts/std/font_pt_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_pt_10x14.png fonts/std/font_pt_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_se_04x06.png fonts/std/font_se_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_se_05x07.png fonts/std/font_se_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_se_08x10.png fonts/std/font_se_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_se_10x14.png fonts/std/font_se_10x14.lbm 10x14
else
.PHONY: fonts
fonts: $(patsubst %.png,%.lbm,$(wildcard fonts/*/*.png))
fonts/std/font_05x07.lbm: fonts/std/font_03x05.png fonts/std/font_04x06.png fonts/std/font_05x07.png fonts/std/font_08x10.png fonts/std/font_10x14.png fonts/std/font_10x14_compressed.png fonts/std/font_04x06_extra.png fonts/std/font_05x07_extra.png fonts/std/font_10x14_extra.png fonts/std/font_cz_04x06.png fonts/std/font_cz_05x07.png fonts/std/font_cz_08x10.png fonts/std/font_cz_10x14.png fonts/std/font_de_04x06.png fonts/std/font_de_05x07.png fonts/std/font_de_08x10.png fonts/std/font_de_10x14.png fonts/std/font_es_04x06.png fonts/std/font_es_05x07.png fonts/std/font_es_08x10.png fonts/std/font_es_10x14.png fonts/std/font_fr_04x06.png fonts/std/font_fr_05x07.png fonts/std/font_fr_08x10.png fonts/std/font_fr_10x14.png fonts/std/font_it_04x06.png fonts/std/font_it_05x07.png fonts/std/font_it_08x10.png fonts/std/font_it_10x14.png fonts/std/font_se_04x06.png fonts/std/font_se_05x07.png fonts/std/font_se_08x10.png fonts/std/font_se_10x14.png
@echo
@echo "Convert fonts from png to lbm:"
$(IMG2LBM) fonts/std/font_03x05.png fonts/std/font_03x05.lbm 3x5
$(IMG2LBM) fonts/std/font_04x06.png fonts/std/font_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_05x07.png fonts/std/font_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_08x10.png fonts/std/font_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_10x14.png fonts/std/font_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_10x14_compressed.png fonts/std/font_10x14_compressed.lbm 10x14
$(IMG2LBM) fonts/std/font_04x06_extra.png fonts/std/font_04x06_extra.lbm 4x6
$(IMG2LBM) fonts/std/font_05x07_extra.png fonts/std/font_05x07_extra.lbm 5x7
$(IMG2LBM) fonts/std/font_10x14_extra.png fonts/std/font_10x14_extra.lbm 10x14
$(IMG2LBM) fonts/std/font_cz_04x06.png fonts/std/font_cz_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_cz_05x07.png fonts/std/font_cz_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_cz_08x10.png fonts/std/font_cz_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_cz_10x14.png fonts/std/font_cz_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_de_04x06.png fonts/std/font_de_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_de_05x07.png fonts/std/font_de_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_de_08x10.png fonts/std/font_de_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_de_10x14.png fonts/std/font_de_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_es_04x06.png fonts/std/font_es_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_es_05x07.png fonts/std/font_es_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_es_08x10.png fonts/std/font_es_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_es_10x14.png fonts/std/font_es_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_fr_04x06.png fonts/std/font_fr_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_fr_05x07.png fonts/std/font_fr_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_fr_08x10.png fonts/std/font_fr_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_fr_10x14.png fonts/std/font_fr_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_it_04x06.png fonts/std/font_it_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_it_05x07.png fonts/std/font_it_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_it_08x10.png fonts/std/font_it_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_it_10x14.png fonts/std/font_it_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_pt_04x06.png fonts/std/font_pt_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_pt_05x07.png fonts/std/font_pt_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_pt_08x10.png fonts/std/font_pt_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_pt_10x14.png fonts/std/font_pt_10x14.lbm 10x14
$(IMG2LBM) fonts/std/font_se_04x06.png fonts/std/font_se_04x06.lbm 4x6
$(IMG2LBM) fonts/std/font_se_05x07.png fonts/std/font_se_05x07.lbm 5x7
$(IMG2LBM) fonts/std/font_se_08x10.png fonts/std/font_se_08x10.lbm 8x10
$(IMG2LBM) fonts/std/font_se_10x14.png fonts/std/font_se_10x14.lbm 10x14
endif
fonts/%.lbm: fonts/%.png
$(IMG2LBM) $^ $@
bitmaps/sticks.lbm: bitmaps/sticks_4x1.xbm bitmaps/splash_9x.xbm bitmaps/splash_taranis.png bitmaps/logo_taranis.bmp bitmaps/icons.png bitmaps/asterisk.xbm bitmaps/about_9x.png bitmaps/about_taranis.png bitmaps/asterisk_4bits.png
@echo
+14 -7
View File
@@ -3711,7 +3711,7 @@ void menuModelGVars(uint8_t event)
putsStrIdx(0, y, STR_GV, i+1, (sub==i && m_posHorz<0) ? INVERS : 0);
for (uint8_t j=0; j<1+MAX_PHASES; j++) {
uint8_t attr = ((sub==i && m_posHorz==j) ? ((s_editMode>0) ? BLINK|INVERS : INVERS) : 0);
LcdFlags attr = ((sub==i && m_posHorz==j) ? ((s_editMode>0) ? BLINK|INVERS : INVERS) : 0);
xcoord_t x = 12*FW + FWNUM + (j-1)*(2+3*FWNUM) - 1;
#if MAX_GVARS == 6
@@ -3729,13 +3729,13 @@ void menuModelGVars(uint8_t event)
default:
{
PhaseData *phase = &g_model.phaseData[j-1];
int16_t v = phase->gvars[i];
int16_t & v = phase->gvars[i];
int16_t vmin, vmax;
if (v > GVAR_MAX) {
uint8_t p = v - GVAR_MAX - 1;
if (p >= s_currIdx) p++;
putsFlightPhase(x, y, p+1, attr);
vmin = GVAR_MAX+1; vmax = GVAR_MAX+MAX_PHASES;
if (p >= j-1) p++;
putsFlightPhase(x-15, y, p+1, attr|SMLSIZE);
vmin = GVAR_MAX+1; vmax = GVAR_MAX+MAX_PHASES-1;
}
else {
if (abs(v) >= 100)
@@ -3744,8 +3744,15 @@ void menuModelGVars(uint8_t event)
lcd_outdezAtt(x, y, v, attr);
vmin = -GVAR_MAX; vmax = GVAR_MAX;
}
if (attr && ((s_editMode>0) || p1valdiff)) {
phase->gvars[i] = checkIncDec(event, v, vmin, vmax, EE_MODEL);
if (attr) {
if (event == EVT_KEY_LONG(KEY_ENTER)) {
s_editMode = 2; // TODO constant for that ...
v = (v > GVAR_MAX ? 0 : GVAR_MAX+1);
eeDirty(EE_MODEL);
}
else if (s_editMode>0 || p1valdiff) {
v = checkIncDec(event, v, vmin, vmax, EE_MODEL);
}
}
break;
}
+2 -2
View File
@@ -932,12 +932,12 @@ int16_t gvarMenuItem(uint8_t x, uint8_t y, int16_t value, int16_t min, int16_t m
}
if (idx < 0) {
value = (int16_t) GV_CALC_VALUE_IDX_NEG(idx,delta);
value = (int16_t) GV_CALC_VALUE_IDX_NEG(idx, delta);
idx = -idx;
lcd_putcAtt(x-6, y, '-', attr);
}
else {
value = (int16_t) GV_CALC_VALUE_IDX_POS(idx,delta);
value = (int16_t) GV_CALC_VALUE_IDX_POS(idx, delta);
idx++;
}
putsStrIdx(x, y, STR_GV, idx, attr);
+84 -22
View File
@@ -1690,6 +1690,10 @@ void checkSwitches()
while (1) {
#if defined(TELEMETRY_MOD_14051)
getADC();
#endif
getMovedSwitch();
switches_states <<= 1;
@@ -1988,31 +1992,89 @@ void getADC()
}
}
#else
void getADC()
/**
* Read ADC using 10 bits
*/
inline uint16_t read_adc10(uint8_t adc_input)
{
uint16_t temp_ana;
for (uint8_t adc_input=0; adc_input<8; adc_input++) {
/*
ADMUX = adc_input|ADC_VREF_TYPE;
// ADCSRA|=0x08; // enable ADC Interrupt Enable should not be necessary? or is it
MCUCR|=0x28; // enable Sleep (bit5) enable ADC Noise Reduction (bit3)
asm volatile(" sleep \n\t"); // if _SLEEP() is not defined use this
while (ADCSRA & 0x40); // Wait for the AD conversion to complete
temp_ana = ADC;
asm volatile(" sleep \n\t"); // if _SLEEP() is not defined use this
while (ADCSRA & 0x40); // Wait for the AD conversion to complete
s_anaFilt[adc_input] = temp_ana + ADC;
MCUCR&=0x08; // disable sleep
*/
ADMUX = adc_input|ADC_VREF_TYPE;
#if defined(TELEMETRY_MOD_14051)
ADCSRA &= 0x87;
#endif
ADCSRA |= 1 << ADSC; // Start the AD conversion
while (ADCSRA & (1 << ADSC)); // Wait for the AD conversion to complete
temp_ana = ADC;
ADCSRA |= 1 << ADSC; // Start the second AD conversion
while (ADCSRA & (1 << ADSC)); // Wait for the AD conversion to complete
temp_ana += ADC;
return temp_ana;
}
#if defined(TELEMETRY_MOD_14051)
enum MuxInput {
MUX_BATT,
MUX_THR,
MUX_AIL,
MUX_MAX = MUX_AIL
};
uint8_t pf7_digital[2];
/**
* Update ADC PF7 using 14051 multiplexer
* X0 : Battery voltage
* X1 : THR SW
* X2 : AIL SW
*/
void readMultiplexAna()
{
static uint8_t muxNum = MUX_BATT;
uint16_t temp_ana;
uint8_t nextMuxNum = muxNum-1;
DDRC |= 0xC1;
temp_ana = read_adc10(7);
switch (muxNum) {
case MUX_BATT:
s_anaFilt[TX_VOLTAGE] = temp_ana;
nextMuxNum = MUX_MAX;
break;
case MUX_THR:
case MUX_AIL:
// Digital switch depend from input voltage
// take half voltage to determine digital state
pf7_digital[muxNum-1] = (temp_ana >= (s_anaFilt[TX_VOLTAGE] / 2)) ? 1 : 0;
break;
}
// set the mux number for the next ADC convert,
// stabilize voltage before ADC read.
muxNum = nextMuxNum;
PORTC &= ~((1 << PC7) | (1 << PC6) | (1 << PC0)); // Clear CTRL ABC
switch (muxNum) {
case 1:
PORTC |= (1 << PC6); // Mux CTRL A : SW_THR
break;
case 2:
PORTC |= (1 << PC7); // Mux CTRL B : SW_AIL
break;
}
}
#endif
void getADC()
{
#if defined(TELEMETRY_MOD_14051)
readMultiplexAna();
#define ADC_READ_COUNT 7
#else
#define ADC_READ_COUNT 8
#endif
ADMUX = adc_input|ADC_VREF_TYPE;
ADCSRA|=0x40; // Start the AD conversion
while (ADCSRA & 0x40); // Wait for the AD conversion to complete
temp_ana = ADC;
ADCSRA|=0x40; // Start the second AD conversion
while (ADCSRA & 0x40); // Wait for the AD conversion to complete
s_anaFilt[adc_input] = temp_ana + ADC;
for (uint8_t adc_input=0; adc_input<ADC_READ_COUNT; adc_input++) {
s_anaFilt[adc_input] = read_adc10(adc_input);
}
}
#endif
+2 -2
View File
@@ -890,8 +890,8 @@ extern void setTrimValue(uint8_t phase, uint8_t idx, int16_t trim);
#define GV_RANGELARGE_NEG (-GV1_LARGE + (RESERVE_RANGE_FOR_GVARS+1))
extern uint16_t s_timeCumTot;
extern uint16_t s_timeCumThr; //gewichtete laufzeit in 1/16 sec
extern uint16_t s_timeCum16ThrP; //gewichtete laufzeit in 1/16 sec
extern uint16_t s_timeCumThr;
extern uint16_t s_timeCum16ThrP;
struct TimerState {
uint8_t lastPos;
+14 -17
View File
@@ -154,6 +154,18 @@ uint8_t keyDown()
return ((~PINB) & 0x7E) | ROTENC_DOWN();
}
#if defined(TELEMETRY_MOD_14051)
extern uint8_t pf7_digital[2];
#define THR_STATE() pf7_digital[0]
#define AIL_STATE() pf7_digital[1]
#elif defined(JETI) || defined(FRSKY) || defined(ARDUPILOT) || defined(NMEA) || defined(MAVLINK)
#define THR_STATE() (PINC & (1<<INP_C_ThrCt))
#define AIL_STATE() (PINC & (1<<INP_C_AileDR))
#else
#define THR_STATE() (PINE & (1<<INP_E_ThrCt))
#define AIL_STATE() (PINE & (1<<INP_E_AileDR))
#endif
bool switchState(EnumKeys enuk)
{
uint8_t result = 0 ;
@@ -166,15 +178,9 @@ bool switchState(EnumKeys enuk)
result = PINE & (1<<INP_E_ElevDR);
break;
#if defined(JETI) || defined(FRSKY) || defined(ARDUPILOT) || defined(NMEA) || defined(MAVLINK)
case SW_AIL:
result = PINC & (1<<INP_C_AileDR); //shad974: rerouted inputs to free up UART0
result = AIL_STATE();
break;
#else
case SW_AIL:
result = PINE & (1<<INP_E_AileDR);
break;
#endif
case SW_RUD:
result = PING & (1<<INP_G_RuddDR);
@@ -213,19 +219,10 @@ bool switchState(EnumKeys enuk)
result = PINE & (1<<INP_E_Gear);
break;
//case SW_THR : return PINE & (1<<INP_E_ThrCt);
#if defined(JETI) || defined(FRSKY) || defined(ARDUPILOT) || defined(NMEA) || defined(MAVLINK)
case SW_THR:
result = PINC & (1<<INP_C_ThrCt); //shad974: rerouted inputs to free up UART0
result = THR_STATE();
break;
#else
case SW_THR:
result = PINE & (1<<INP_E_ThrCt);
break;
#endif
case SW_TRN:
result = PINE & (1<<INP_E_Trainer);
break;
+1 -1
View File
@@ -360,7 +360,7 @@ const pm_char STR_INSERT_BEFORE[] PROGMEM = TR_INSERT_BEFORE;
const pm_char STR_INSERT_AFTER[] PROGMEM = TR_INSERT_AFTER;
const pm_char STR_COPY[] PROGMEM = TR_COPY;
const pm_char STR_MOVE[] PROGMEM = TR_MOVE;
const pm_char STR_PASTE[] PROGMEM = "Paste";
const pm_char STR_PASTE[] PROGMEM = TR_PASTE;
const pm_char STR_DELETE[] PROGMEM = TR_DELETE;
const pm_char STR_RESET_FLIGHT[] PROGMEM = TR_RESET_FLIGHT;
const pm_char STR_RESET_TIMER1[] PROGMEM = TR_RESET_TIMER1;
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Vlo\217it za"
#define TR_COPY "Kop\204rovat"
#define TR_MOVE "P\206esunout"
#define TR_PASTE "Paste"
#define TR_DELETE "Odstranit"
#define TR_RESET_FLIGHT "Vynulovat let"
#define TR_RESET_TIMER1 "Vynulovat Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Vložit za"
#define TR_COPY "Kopírovat"
#define TR_MOVE "Přesunout"
#define TR_PASTE "Paste"
#define TR_DELETE "Odstranit"
#define TR_RESET_FLIGHT "Vynulovat let"
#define TR_RESET_TIMER1 "Vynulovat Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Neue Zeile danach"
#define TR_COPY "Zeile Kopieren"
#define TR_MOVE "Zeile Verschieben"
#define TR_PASTE "Paste"
#define TR_DELETE "Zeile L\203schen"
#define TR_RESET_FLIGHT "Reset Flugdaten"
#define TR_RESET_TIMER1 "Reset Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Neue Zeile danach"
#define TR_COPY "Zeile Kopieren"
#define TR_MOVE "Zeile Verschieben"
#define TR_PASTE "Paste"
#define TR_DELETE "Zeile L\203schen"
#define TR_RESET_FLIGHT "Reset Flugdaten"
#define TR_RESET_TIMER1 "Reset Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Insert After"
#define TR_COPY "Copy"
#define TR_MOVE "Move"
#define TR_PASTE "Paste"
#define TR_DELETE "Delete"
#define TR_RESET_FLIGHT "Reset Flight"
#define TR_RESET_TIMER1 "Reset Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Insertar despues"
#define TR_COPY "Copiar"
#define TR_MOVE "Mover"
#define TR_PASTE "Paste"
#define TR_DELETE "Borrar"
#define TR_RESET_FLIGHT "Reset Vuelo"
#define TR_RESET_TIMER1 "Reset Reloj1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Insertar despues"
#define TR_COPY "Copiar"
#define TR_MOVE "Mover"
#define TR_PASTE "Paste"
#define TR_DELETE "Borrar"
#define TR_RESET_FLIGHT "Reset Vuelo"
#define TR_RESET_TIMER1 "Reset Reloj1"
+1
View File
@@ -619,6 +619,7 @@
#define TR_INSERT_AFTER "Ins\200rer apr\201s"
#define TR_COPY "Copier"
#define TR_MOVE "D\200placer"
#define TR_PASTE "Coller"
#define TR_DELETE "Effacer"
#define TR_RESET_FLIGHT TR("R\200init. vol","R\200initialiser vol")
#define TR_RESET_TIMER1 TR("R\200init. Timer1","R\200initialiser Timer1")
+1
View File
@@ -619,6 +619,7 @@
#define TR_INSERT_AFTER "Insérer après"
#define TR_COPY "Copier"
#define TR_MOVE "Déplacer"
#define TR_PASTE "Coller"
#define TR_DELETE "Effacer"
#define TR_RESET_FLIGHT TR("Réinit. vol","Réinitialiser vol")
#define TR_RESET_TIMER1 TR("Réinit. Timer1","Réinitialiser Timer1")
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Inserisci dopo"
#define TR_COPY "Copia"
#define TR_MOVE "Muovi"
#define TR_PASTE "Paste"
#define TR_DELETE "Cancella"
#define TR_RESET_FLIGHT "Azzera volo"
#define TR_RESET_TIMER1 "Azzera Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Inserisci dopo"
#define TR_COPY "Copia"
#define TR_MOVE "Muovi"
#define TR_PASTE "Paste"
#define TR_DELETE "Cancella"
#define TR_RESET_FLIGHT "Azzera volo"
#define TR_RESET_TIMER1 "Azzera Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Insert After"
#define TR_COPY "Copy"
#define TR_MOVE "Move"
#define TR_PASTE "Paste"
#define TR_DELETE "Delete"
#define TR_RESET_FLIGHT "Reset Flight"
#define TR_RESET_TIMER1 "Reset Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Insert After"
#define TR_COPY "Copy"
#define TR_MOVE "Move"
#define TR_PASTE "Paste"
#define TR_DELETE "Delete"
#define TR_RESET_FLIGHT "Reset Flight"
#define TR_RESET_TIMER1 "Reset Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Addera Efter"
#define TR_COPY "Kopiera"
#define TR_MOVE "Flytta"
#define TR_PASTE "Paste"
#define TR_DELETE "Radera"
#define TR_RESET_FLIGHT "Reset Flygning"
#define TR_RESET_TIMER1 "Reset Timer1"
+1
View File
@@ -618,6 +618,7 @@
#define TR_INSERT_AFTER "Addera Efter"
#define TR_COPY "Kopiera"
#define TR_MOVE "Flytta"
#define TR_PASTE "Paste"
#define TR_DELETE "Radera"
#define TR_RESET_FLIGHT "Reset Flygning"
#define TR_RESET_TIMER1 "Reset Timer1"
+16 -8
View File
@@ -8,7 +8,15 @@ width, height = image.size().width(), image.size().height()
f = open(sys.argv[2], "w")
if sys.argv[3] == "largimg":
if len(sys.argv) > 3:
what = sys.argv[3]
else:
for s in ("03x05", "04x06", "05x07", "08x10", "10x14"):
if s in sys.argv[2]:
what = s
break
if what == "largimg":
rows = 1
if len(sys.argv) > 4:
rows = int(sys.argv[4])
@@ -21,7 +29,7 @@ if sys.argv[3] == "largimg":
value += 1 << z
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "img":
elif what == "img":
rows = 1
if len(sys.argv) > 4:
rows = int(sys.argv[4])
@@ -34,7 +42,7 @@ elif sys.argv[3] == "img":
value += 1 << z
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "bmp":
elif what == "bmp":
rows = 1
colors = []
if len(sys.argv) > 4:
@@ -52,7 +60,7 @@ elif sys.argv[3] == "bmp":
for value in values:
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "3x5":
elif what == "03x05":
for y in range(0, height, 5):
for x in range(width):
value = 0
@@ -61,7 +69,7 @@ elif sys.argv[3] == "3x5":
value += 1 << z
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "4x6":
elif what == "04x06":
for y in range(0, height, 7):
for x in range(width):
value = 0
@@ -70,7 +78,7 @@ elif sys.argv[3] == "4x6":
value += 1 << z
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "5x7":
elif what == "05x07":
for y in range(0, height, 8):
for x in range(width):
value = 0
@@ -79,7 +87,7 @@ elif sys.argv[3] == "5x7":
value += 1 << z
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "8x10":
elif what == "08x10":
for y in range(0, height, 12):
for x in range(width):
for l in range(0, 12, 8):
@@ -89,7 +97,7 @@ elif sys.argv[3] == "8x10":
value += 1 << z
f.write("0x%02x," % value)
f.write("\n")
elif sys.argv[3] == "10x14":
elif what == "10x14":
for y in range(0, height, 16):
for x in range(width):
for l in range(0, 16, 8):