fw/stlink
11 years agoMerge pull request #135 from prattmic/signal_cleanup
texane [Wed, 6 Mar 2013 21:44:48 +0000 (13:44 -0800)]
Merge pull request #135 from prattmic/signal_cleanup

Add SIGINT handler for stlink cleanup

11 years agoAdd SIGINT handler for stlink cleanup
Michael Pratt [Wed, 6 Mar 2013 21:15:15 +0000 (16:15 -0500)]
Add SIGINT handler for stlink cleanup

SIGINT causes st-util to immediately exit, without closing the open
stlink.  This leaves devices (at least the F4 Discovery) in a state
where they are unable to reset.  st-util could still connect and control
them, but a power cycle was required before they could reset on their
own.

A signal handler is added for SIGINT, which performs cleanup and closing
of the open stlink device, allowing it to function normally on
disconnect.

11 years agoMerge pull request #133 from prattmic/master
texane [Wed, 6 Mar 2013 19:52:25 +0000 (11:52 -0800)]
Merge pull request #133 from prattmic/master

Move persistence flag to st_state_t

11 years agoMove persistence flag to st_state_t
Michael Pratt [Wed, 6 Mar 2013 19:23:17 +0000 (14:23 -0500)]
Move persistence flag to st_state_t

It makes sense for it to be with all other state data.  This meant
passing the entire state struct into serve.

11 years agoMerge pull request #132 from prattmic/master
texane [Wed, 6 Mar 2013 18:39:14 +0000 (10:39 -0800)]
Merge pull request #132 from prattmic/master

Add gdb-server persistence

11 years agoAdd persistence support to gdb-server
Michael Pratt [Wed, 6 Mar 2013 17:52:12 +0000 (12:52 -0500)]
Add persistence support to gdb-server

When started with -m, or connected with 'target extended-remote', the
GDB server will not terminate upon disconnection from GDB, instead it
will begin listening for conenctions again.

Starting with extended-remote also has the advantage of allowing 'run'
to be used to reset the target and begin again.  Unfortunately, 'start'
is not working properly, as it does not send a reset packet (R), so it
complains when it tries to access memory before it is connected to the
target.

11 years agoRevert "[ merge ] patch from fischermi@t-online.de, GDB server endless loop"
Michael Pratt [Wed, 6 Mar 2013 17:03:27 +0000 (12:03 -0500)]
Revert "[ merge ] patch from fischermi@t-online.de, GDB server endless loop"

This reverts commit 1c2828cc914260a57299461373bf835f90043863.

11 years agoMerge pull request #128 from schodet/unaligned-read
texane [Tue, 12 Feb 2013 19:13:54 +0000 (11:13 -0800)]
Merge pull request #128 from schodet/unaligned-read

Fix byte count when doing unaligned memory read, fix issue #127

11 years agoFix byte count when doing unaligned memory read, fix issue #127
Nicolas Schodet [Tue, 12 Feb 2013 18:38:46 +0000 (19:38 +0100)]
Fix byte count when doing unaligned memory read, fix issue #127

 - when start is adjusted, count should also be adjusted,
 - then, count is rounded to the next multiple of word size.

11 years agoMerge pull request #122 from sheaff/master
texane [Thu, 10 Jan 2013 06:26:09 +0000 (22:26 -0800)]
Merge pull request #122 from sheaff/master

STM32F4 flash while using DMA potential fix

11 years agoClears DMA config registers for Discovery F4 board
A Sheaff [Wed, 9 Jan 2013 22:00:52 +0000 (17:00 -0500)]
Clears DMA config registers for Discovery F4 board
to allow flash programming.  See texane/stlink issue #74.

11 years agoMerge pull request #121 from WinterMute/64bit_win_fix
texane [Sun, 6 Jan 2013 17:20:41 +0000 (09:20 -0800)]
Merge pull request #121 from WinterMute/64bit_win_fix

64bit win fix

11 years agobump version
Dave Murphy [Sun, 6 Jan 2013 16:00:57 +0000 (16:00 +0000)]
bump version

11 years agofile needs to be Binary for windows
Dave Murphy [Sun, 6 Jan 2013 15:34:54 +0000 (15:34 +0000)]
file needs to be Binary for windows

O_BINARY only defined on windows

11 years agofix write_flash size of len for 64bit
Dave Murphy [Sun, 6 Jan 2013 15:33:48 +0000 (15:33 +0000)]
fix write_flash size of len for 64bit

11 years agobump version
Dave Murphy [Mon, 31 Dec 2012 23:11:46 +0000 (23:11 +0000)]
bump version

11 years agoMerge branch 'master' of git://github.com/texane/stlink
Dave Murphy [Mon, 31 Dec 2012 23:09:50 +0000 (23:09 +0000)]
Merge branch 'master' of git://github.com/texane/stlink

11 years agobump version
Dave Murphy [Mon, 31 Dec 2012 23:09:30 +0000 (23:09 +0000)]
bump version

11 years ago[ merge ] patch from fischermi@t-online.de, GDB server endless loop
Fabien Le Mentec [Thu, 27 Dec 2012 13:00:46 +0000 (07:00 -0600)]
[ merge ] patch from fischermi@t-online.de, GDB server endless loop

11 years ago[ merge ] patch from jgobat@gmail.com, add STM32F373 support
Fabien Le Mentec [Wed, 28 Nov 2012 18:48:50 +0000 (12:48 -0600)]
[ merge ] patch from jgobat@gmail.com, add STM32F373 support

11 years ago[ merge ] Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de> patches
Fabien Le Mentec [Sun, 25 Nov 2012 15:50:44 +0000 (09:50 -0600)]
[ merge ] Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de> patches

11 years ago[ merge ] STM32_CHIPIP_F3 patch from Geoffrey Brown
lementec [Thu, 15 Nov 2012 16:37:00 +0000 (17:37 +0100)]
[ merge ] STM32_CHIPIP_F3 patch from Geoffrey Brown

11 years agoMerge pull request #114 from wkoszek/master
texane [Sun, 4 Nov 2012 06:45:47 +0000 (23:45 -0700)]
Merge pull request #114 from wkoszek/master

Support for STM32 F3 Discovery board (ARM Techcon 2012)

11 years agoBring the support for STM32 F3 Discovery board (ARM Techcon 2012)
Wojciech A. Koszek [Sun, 4 Nov 2012 06:20:17 +0000 (23:20 -0700)]
Bring the support for STM32 F3 Discovery board (ARM Techcon 2012)

Support was tested by attaching USB cable to USB ST-LINK USB port, starting

./st-util

Which resulted in proper device recognition:

2012-11-03T23:11:25 INFO src/stlink-common.c: Device connected is: F3 device, id 0x10016422
2012-11-03T23:11:25 INFO src/stlink-common.c: SRAM size: 0xa000 bytes (40 KiB), Flash: 0x40000 bytes (256 KiB) in pages of 2048 bytes
Chip ID is 00000422, Core ID is  2ba01477.

Then from GDB, after "target remove localhost:4242", I tested reads:

x/w 0x20000000

And writes:

set {int}0x20000000 1

And ELF loading:

(gdb) load main
Loading section .text, size 0x10 lma 0x20000000
Start address 0x20000000, load size 16
Transfer rate: 410 bytes/sec, 16 bytes/write.

And verified dissasembly (in my case--with Thumb mode) with objdump -d <elf>
output:

(gdb) set arm force-mode thumb
(gdb) x/7i 0x20000000
=> 0x20000000: push {r7}
   0x20000002: sub sp, #12
   0x20000004: add r7, sp, #0
   0x20000006: ldr r3, [r7, #4]
   0x20000008: add.w r3, r3, #1
   0x2000000c: str r3, [r7, #4]
   0x2000000e: b.n 0x20000006

11 years agoMerge pull request #111 from Senseg/master
texane [Thu, 18 Oct 2012 11:58:04 +0000 (04:58 -0700)]
Merge pull request #111 from Senseg/master

Experimental support for STM32F0-Discovery

11 years agoAdd support for STM32F0-Discovery
Pekka Nikander [Fri, 5 Oct 2012 12:34:03 +0000 (15:34 +0300)]
Add support for STM32F0-Discovery

11 years agosrc/stlink-common.c: Improve error reporting
Pekka Nikander [Fri, 5 Oct 2012 12:32:48 +0000 (15:32 +0300)]
src/stlink-common.c: Improve error reporting

11 years agosrc/stlink-common.[ch]: Another fix on white spaces, unifying coding style
Pekka Nikander [Fri, 5 Oct 2012 12:30:28 +0000 (15:30 +0300)]
src/stlink-common.[ch]: Another fix on white spaces, unifying coding style

11 years agoMerge pull request #109 from Senseg/master
texane [Thu, 4 Oct 2012 07:31:05 +0000 (00:31 -0700)]
Merge pull request #109 from Senseg/master

Commit to fix white spaces and unify coding style.

11 years agosrc/stlink-common.c: Fix white spaces, unify coding style
Pekka Nikander [Thu, 4 Oct 2012 06:17:50 +0000 (09:17 +0300)]
src/stlink-common.c: Fix white spaces, unify coding style

11 years agoMerge pull request #108 from jkent/master
texane [Wed, 19 Sep 2012 17:35:56 +0000 (10:35 -0700)]
Merge pull request #108 from jkent/master

Workaround for nRST not being asserted via on the F4-Discovery's st-link/v2...

11 years agoworkaround for asserting nRST, issue "monitor jtag_reset" from gdb
Jeff Kent [Wed, 19 Sep 2012 17:22:28 +0000 (12:22 -0500)]
workaround for asserting nRST, issue "monitor jtag_reset" from gdb

11 years agoMerge pull request #106 from thotsch/master
texane [Wed, 22 Aug 2012 13:41:30 +0000 (06:41 -0700)]
Merge pull request #106 from thotsch/master

Added kext for OS X 10.8

11 years agoAdded kext for os x 10.8
Thomas Gärtner [Wed, 22 Aug 2012 13:33:19 +0000 (15:33 +0200)]
Added kext for os x 10.8

I added a kext for mountain lion to osx.tar.gz and modified install.sh
to use the right one or fail if no suitable kext is available.

11 years agoMerge pull request #105 from prattmic/master
texane [Sun, 19 Aug 2012 16:30:43 +0000 (09:30 -0700)]
Merge pull request #105 from prattmic/master

Fix watchpoint support

11 years agoFix watchpoint support
Michael Pratt [Sun, 19 Aug 2012 16:19:25 +0000 (12:19 -0400)]
Fix watchpoint support

Setting of watchpoints was nested inside of a case statement, so it
would only run for that case, even though it supports all cases.

11 years agoMerge pull request #102 from prattmic/master
texane [Mon, 9 Jul 2012 16:29:53 +0000 (09:29 -0700)]
Merge pull request #102 from prattmic/master

Fix the stlink-sg backend to leave space for new functions

11 years agoFix build warning
Michael Pratt [Mon, 9 Jul 2012 15:08:55 +0000 (11:08 -0400)]
Fix build warning

11 years agoFix the stlink-sg backend to leave space for new functions
Michael Pratt [Mon, 9 Jul 2012 15:06:50 +0000 (11:06 -0400)]
Fix the stlink-sg backend to leave space for new functions

11 years agoMerge pull request #101 from prattmic/master
texane [Mon, 9 Jul 2012 06:23:53 +0000 (23:23 -0700)]
Merge pull request #101 from prattmic/master

Add support for all core registers on the STM32F4DISCOVERY, including floating point registers.

11 years agoWrite to extra (FP, etc) registers from GDB
Michael Pratt [Mon, 9 Jul 2012 05:00:53 +0000 (01:00 -0400)]
Write to extra (FP, etc) registers from GDB

The extra registers added in my previous commit can now be modified from
within GDB.  Since the ST-LINK does not support accessing these
registers, a workaround was used from reading an writing to them.

That is, the Debug Core Register Selector Register (DCRSR) can be written
with the register requested, and it will be read/written to/from the
Debug Core Register Data Register (DCRDR).  The standard ST-LINK memory
access functions are used to make these accesses.

A target descriptor XML file is sent to GDB from the server, which tells
GDB which registers exist on the target.

This is only supported for the STM32F4, and has only been tested on the
STM32F4DISCOVERY.  I tested st-util on an STM32L-DISCOVERY and my
changes did not seem to interfere with its operation.

11 years agoExtra registers integration with GDB
Michael Pratt [Mon, 9 Jul 2012 03:04:35 +0000 (23:04 -0400)]
Extra registers integration with GDB

The support for extra registers has been added to GDB.  Now all core
registers can be read from GDB.  Write support has not yet been added.

11 years agoRead Cortex M4F floating point registers
Michael Pratt [Mon, 9 Jul 2012 01:04:30 +0000 (21:04 -0400)]
Read Cortex M4F floating point registers

Since the ST-LINK does not seem to support reading these registers, I
have implemented functions that will manually request these registers
and add them to the reg struct.

As of now, these functions are just backend and are not integrated into
anything, however I have verified that they work with the STM32F407
DISCOVERY board.

11 years agoMerge pull request #100 from prattmic/master
texane [Sun, 8 Jul 2012 19:58:37 +0000 (12:58 -0700)]
Merge pull request #100 from prattmic/master

Update .gitignore for test binaries

11 years agoMerge remote-tracking branch 'upstream/master'
Michael Pratt [Sun, 8 Jul 2012 19:52:00 +0000 (15:52 -0400)]
Merge remote-tracking branch 'upstream/master'

11 years agoUpdated .gitignore to include test binaries
Michael Pratt [Sun, 8 Jul 2012 19:49:36 +0000 (15:49 -0400)]
Updated .gitignore to include test binaries

11 years agoMerge pull request #99 from TheSeven/master
texane [Tue, 3 Jul 2012 13:20:23 +0000 (06:20 -0700)]
Merge pull request #99 from TheSeven/master

Fix misinterpreted monitor commands

11 years agoFix "monitor reset" gdb command being misinterpreted as "monitor resume"
Michael Sparmann [Tue, 3 Jul 2012 13:10:07 +0000 (15:10 +0200)]
Fix "monitor reset" gdb command being misinterpreted as "monitor resume"
by checking for the full word, not just the first two chars.

11 years agoMerge pull request #98 from karlp/master
texane [Thu, 21 Jun 2012 05:16:23 +0000 (22:16 -0700)]
Merge pull request #98 from karlp/master

page count is wrong when writing to 32L

11 years agoDisplay proper final page write count for 32L
Karl Palsson [Thu, 3 May 2012 22:05:32 +0000 (22:05 +0000)]
Display proper final page write count for 32L

11 years agoMerge pull request #97 from karlp/kill_examples
texane [Wed, 20 Jun 2012 19:40:45 +0000 (12:40 -0700)]
Merge pull request #97 from karlp/kill_examples

Kill examples and update the docs

11 years agoUpdate tutorial documentation to reflect current code.
Karl Palsson [Wed, 20 Jun 2012 19:35:46 +0000 (19:35 +0000)]
Update tutorial documentation to reflect current code.

11 years agoUpdate primary README with current documentation
Karl Palsson [Wed, 20 Jun 2012 19:16:40 +0000 (19:16 +0000)]
Update primary README with current documentation

11 years agoExamples have no place in stlink codebase.
Karl Palsson [Wed, 20 Jun 2012 19:01:27 +0000 (19:01 +0000)]
Examples have no place in stlink codebase.

They should be in a standalone repository, that can focus on clean,
easy to follow, well documented, well tested examples.

If you just want some example binaries that you can use to test your
installation is working, the libopencm3 project has various blink
projects for all the STM32 Discovery boards.

11 years agoMerge pull request #93 from zyp/master
texane [Fri, 8 Jun 2012 14:57:31 +0000 (07:57 -0700)]
Merge pull request #93 from zyp/master

Added flash loader stub for F2/F4.

11 years agoAdded flash loader stub for F2/F4.
Vegard Storheil Eriksen [Thu, 7 Jun 2012 21:16:19 +0000 (23:16 +0200)]
Added flash loader stub for F2/F4.

11 years agoMerge pull request #91 from UweBonnes/master
texane [Thu, 7 Jun 2012 16:23:57 +0000 (09:23 -0700)]
Merge pull request #91 from UweBonnes/master

st-flash: Honor read size, when given and add \n to mesage when no STLINK found

11 years agoAdd \n to WLOG when no STLINK found
Uwe Bonnes [Thu, 7 Jun 2012 16:13:43 +0000 (18:13 +0200)]
Add \n to WLOG when no STLINK found

11 years agost-flash: Honor size, if given
Uwe Bonnes [Thu, 7 Jun 2012 16:03:23 +0000 (18:03 +0200)]
st-flash: Honor size, if given

11 years agoMerge pull request #86 from szczys/master
texane [Sun, 3 Jun 2012 17:28:42 +0000 (10:28 -0700)]
Merge pull request #86 from szczys/master

Added support for the STM32F0-Discovery board

11 years agoAdded STM32F0-Discovery board to the blink example code
Mike Szczys [Sun, 3 Jun 2012 15:47:18 +0000 (10:47 -0500)]
Added STM32F0-Discovery board to the blink example code

11 years agoAdded memory map for STM32F05xxx chips
Mike Szczys [Sun, 3 Jun 2012 15:44:48 +0000 (10:44 -0500)]
Added memory map for STM32F05xxx chips

11 years agoCorrected F0 DBGMCU_IDCODE register address
Mike Szczys [Sun, 3 Jun 2012 15:39:34 +0000 (10:39 -0500)]
Corrected F0 DBGMCU_IDCODE register address

11 years ago[ update ] F0 chip id
Fabien Le Mentec [Sun, 3 Jun 2012 06:40:27 +0000 (01:40 -0500)]
[ update ] F0 chip id

12 years ago[ fix ] apply jserv@0xlab.org patch, 0001-trivial-documentation-fix-for-st-util-path
Fabien Le Mentec [Sat, 26 May 2012 14:48:48 +0000 (09:48 -0500)]
[ fix ] apply jserv@0xlab.org patch, 0001-trivial-documentation-fix-for-st-util-path

12 years agoMerge pull request #84 from Tectu/master
texane [Sat, 26 May 2012 14:33:01 +0000 (07:33 -0700)]
Merge pull request #84 from Tectu/master

Fixed option bytes

12 years agofixed option bytes amount
Tectu [Fri, 25 May 2012 15:05:44 +0000 (17:05 +0200)]
fixed option bytes amount

12 years ago[ fix ] missing LIBUSB_CALL definition
Fabien Le Mentec [Thu, 17 May 2012 06:39:16 +0000 (01:39 -0500)]
[ fix ] missing LIBUSB_CALL definition

12 years agoMerge pull request #79 from WinterMute/mingw-mmap
texane [Thu, 17 May 2012 06:21:02 +0000 (23:21 -0700)]
Merge pull request #79 from WinterMute/mingw-mmap

Mingw mmap reimplementation

12 years agouse BSD timersub
Dave Murphy [Wed, 16 May 2012 22:41:42 +0000 (23:41 +0100)]
use BSD timersub

12 years agobump version
Dave Murphy [Wed, 16 May 2012 22:31:07 +0000 (23:31 +0100)]
bump version

12 years agoadd COPYING to repository to avoid license confusion
Dave Murphy [Wed, 16 May 2012 21:44:31 +0000 (22:44 +0100)]
add COPYING to repository to avoid license confusion

12 years agofix whitespace
Dave Murphy [Wed, 16 May 2012 21:22:54 +0000 (22:22 +0100)]
fix whitespace

12 years agoreimplement mingw mmap
Dave Murphy [Wed, 16 May 2012 21:15:38 +0000 (22:15 +0100)]
reimplement mingw mmap

12 years agoMerge pull request #77 from WinterMute/mingw
texane [Mon, 14 May 2012 15:18:46 +0000 (08:18 -0700)]
Merge pull request #77 from WinterMute/mingw

Changes to allow compiling for windows using mingw toolchains

12 years agoMerge branch 'master' into mingw
Dave Murphy [Mon, 14 May 2012 11:35:30 +0000 (12:35 +0100)]
Merge branch 'master' into mingw

12 years agoignore elf files in example
Dave Murphy [Mon, 14 May 2012 09:57:41 +0000 (10:57 +0100)]
ignore elf files in example

12 years agobump stlink version
Dave Murphy [Mon, 14 May 2012 09:55:55 +0000 (10:55 +0100)]
bump stlink version

12 years agouse sys/time.h for mingw compatiblity, use LIBUSB_CALL modifier for callback
Dave Murphy [Sun, 13 May 2012 21:57:27 +0000 (22:57 +0100)]
use sys/time.h for mingw compatiblity, use LIBUSB_CALL modifier for callback

12 years agocast to avoid pointer warning
Dave Murphy [Sun, 13 May 2012 21:55:41 +0000 (22:55 +0100)]
cast to avoid pointer warning

12 years agofix signedness warning
Dave Murphy [Sun, 13 May 2012 21:54:26 +0000 (22:54 +0100)]
fix signedness warning

12 years agoMerge pull request #76 from prattmic/master
texane [Fri, 11 May 2012 18:14:04 +0000 (11:14 -0700)]
Merge pull request #76 from prattmic/master

Fixed issue #66

12 years agoFixed issue #66 - Fixed the F4 memory map to include CCM RAM. https://github.com...
Michael Pratt [Fri, 11 May 2012 18:11:12 +0000 (14:11 -0400)]
Fixed issue #66 - Fixed the F4 memory map to include CCM RAM.  https://github.com/texane/stlink/issues/66

12 years agoprototype main function properly
Dave Murphy [Sun, 29 Apr 2012 18:44:51 +0000 (19:44 +0100)]
prototype main function properly

12 years agowrap read/write socket functions on mingw
Dave Murphy [Sun, 29 Apr 2012 18:30:27 +0000 (19:30 +0100)]
wrap read/write socket functions on mingw

12 years agoallow use of %zx format specifier om mingw
Dave Murphy [Sun, 29 Apr 2012 17:49:08 +0000 (18:49 +0100)]
allow use of %zx format specifier om mingw

12 years agouse WSAStartup on windows, replace bzero with memset
Dave Murphy [Sun, 29 Apr 2012 17:48:26 +0000 (18:48 +0100)]
use WSAStartup on windows, replace bzero with memset

12 years agoundefine macros for socket redirection, fix warnings
Dave Murphy [Sun, 29 Apr 2012 17:47:38 +0000 (18:47 +0100)]
undefine macros for socket redirection, fix warnings

12 years agouse correct headers
Dave Murphy [Sun, 29 Apr 2012 17:45:37 +0000 (18:45 +0100)]
use correct headers

12 years agobuild with mingw
Dave Murphy [Sun, 29 Apr 2012 13:43:46 +0000 (14:43 +0100)]
build with mingw

12 years agoupdate ignores for generated files
Dave Murphy [Sun, 29 Apr 2012 13:09:06 +0000 (14:09 +0100)]
update ignores for generated files

12 years agoChanges for compiling with mingw32
Dave Murphy [Sat, 28 Apr 2012 21:55:23 +0000 (22:55 +0100)]
Changes for compiling with mingw32

add mmap & pread functions when compiling for systems that don't provide them
don't use libtoolize, stick with static libraries

12 years agoautoconfiscate
Dave Murphy [Sat, 28 Apr 2012 01:13:58 +0000 (02:13 +0100)]
autoconfiscate

12 years agoMerge pull request #73 from xgoat/master
texane [Tue, 24 Apr 2012 05:16:12 +0000 (22:16 -0700)]
Merge pull request #73 from xgoat/master

Fix an unused parameter compiler warning

12 years agoFix an unused parameter warning
Rob Spanton [Mon, 23 Apr 2012 22:19:55 +0000 (23:19 +0100)]
Fix an unused parameter warning

test_sg.c's main doesn't use its argv parameter, and so the compiler
warns us this is the case.  This patch stops it from warning us.

12 years agoMerge pull request #61 from UweBonnes/master
texane [Wed, 8 Feb 2012 17:00:42 +0000 (09:00 -0800)]
Merge pull request #61 from UweBonnes/master

Use stlink-usb also for STLINKV1, Rename flash to st-flash

12 years agoRename "flash" to "st-flash"
Uwe Bonnes [Tue, 7 Feb 2012 20:48:46 +0000 (21:48 +0100)]
Rename "flash" to "st-flash"

12 years agoRevive the V1 pathes in stlink-usb. Tested with the STM32VL Discovery.
Uwe Bonnes [Tue, 7 Feb 2012 20:43:43 +0000 (21:43 +0100)]
Revive the V1 pathes in stlink-usb. Tested with the STM32VL Discovery.

12 years agoRemove an outdated FIXME
Uwe Bonnes [Tue, 7 Feb 2012 20:20:54 +0000 (21:20 +0100)]
Remove an outdated FIXME

12 years agoMerge pull request #59 from UweBonnes/master
texane [Sat, 4 Feb 2012 15:17:34 +0000 (07:17 -0800)]
Merge pull request #59 from UweBonnes/master

Distinguish L1/F2/F4 and let F2 program