diff options
| author | Bdale Garbee <bdale@gag.com> | 2014-09-09 23:28:39 -0600 | 
|---|---|---|
| committer | Bdale Garbee <bdale@gag.com> | 2014-09-09 23:28:39 -0600 | 
| commit | 16405fd3eb6f82ef3a709e3ed30fc48faef7b547 (patch) | |
| tree | c111819b3ba0c9357af41c81b798326b9df7adad /src/drivers/ao_pad.c | |
| parent | 5a2f6ed6210844f7284fbf9f7ecba68c8a14fa52 (diff) | |
| parent | 28bd5057252e61bc5b1a35a00bc1f9fdfde097f7 (diff) | |
Merge branch 'branch-1.5' into debian
Conflicts:
	ChangeLog
	Releasing
	altosui/Instdrv/NSIS/Includes/java.nsh
	altosui/altos-windows.nsi.in
	configure.ac
	doc/Makefile
	doc/altusmetrum.xsl
	micropeak/micropeak-windows.nsi.in
	telegps/telegps-windows.nsi.in
Diffstat (limited to 'src/drivers/ao_pad.c')
| -rw-r--r-- | src/drivers/ao_pad.c | 16 | 
1 files changed, 14 insertions, 2 deletions
diff --git a/src/drivers/ao_pad.c b/src/drivers/ao_pad.c index 144cbd70..dc2c83fe 100644 --- a/src/drivers/ao_pad.c +++ b/src/drivers/ao_pad.c @@ -362,14 +362,26 @@ ao_pad_test(void)  void  ao_pad_manual(void)  { +	uint8_t	ignite; +	int	repeat;  	ao_cmd_white();  	if (!ao_match_word("DoIt"))  		return;  	ao_cmd_decimal();  	if (ao_cmd_status != ao_cmd_success)  		return; -	ao_pad_ignite = 1 << ao_cmd_lex_i; -	ao_wakeup(&ao_pad_ignite); +	ignite = 1 << ao_cmd_lex_i; +	ao_cmd_decimal(); +	if (ao_cmd_status != ao_cmd_success) { +		repeat = 1; +		ao_cmd_status = ao_cmd_success; +	} else +		repeat = ao_cmd_lex_i; +	while (repeat-- > 0) { +		ao_pad_ignite = ignite; +		ao_wakeup(&ao_pad_ignite); +		ao_delay(AO_PAD_FIRE_TIME>>1); +	}  }  static __xdata struct ao_task ao_pad_task;  | 
