]> sigrok.org Git - libsigrokdecode.git/log
libsigrokdecode.git
12 years agosrd: decoders: Don't use problematic and/or construct.
Uwe Hermann [Sat, 10 Dec 2011 15:54:47 +0000 (16:54 +0100)]
srd: decoders: Don't use problematic and/or construct.

12 years agosrd: UART: Simplify a code snippet.
Uwe Hermann [Wed, 7 Dec 2011 18:45:40 +0000 (19:45 +0100)]
srd: UART: Simplify a code snippet.

12 years agosrd: UART: Add some protocol documentation.
Uwe Hermann [Wed, 7 Dec 2011 18:43:24 +0000 (19:43 +0100)]
srd: UART: Add some protocol documentation.

12 years agosrd: Add initial UART decoder.
Uwe Hermann [Wed, 7 Dec 2011 01:03:25 +0000 (02:03 +0100)]
srd: Add initial UART decoder.

Works with any baudrate, number of bits, parity types, number of stop
bits and so on, in theory. Not all options are fully implemented or
tested though. Various TODOs remain.

12 years agosrd: Initialise struct members by name. Minor other fixes.
Gareth McMullin [Mon, 5 Dec 2011 07:31:32 +0000 (20:31 +1300)]
srd: Initialise struct members by name. Minor other fixes.

Restored some prototypes in sigrokdecode.h.
Abort sigrok-cli on error while decoding (includes KeyboardInterrupt).
Fixed passing metadata to Decoder.start() method.

12 years agosrd: Bring back the 'id' field and use it.
Uwe Hermann [Sun, 4 Dec 2011 22:36:52 +0000 (23:36 +0100)]
srd: Bring back the 'id' field and use it.

12 years agosrd: Update decoders to changed API.
Uwe Hermann [Sun, 4 Dec 2011 19:59:56 +0000 (20:59 +0100)]
srd: Update decoders to changed API.

12 years agorefactored PD framework, now using new sigrok.Decoder object
Bert Vermeulen [Sun, 4 Dec 2011 09:33:02 +0000 (10:33 +0100)]
refactored PD framework, now using new sigrok.Decoder object

This uses the new python unified type/class object API to construct
an object for PDs to subclass. The sigrok.Decoder class has a method
put() which is implemented as a C function, and receives the PD's
object instance as its first parameter.

12 years agosrd: Changed nunchuk and transitioncounter to new registraion api.
Gareth McMullin [Thu, 1 Dec 2011 17:44:42 +0000 (06:44 +1300)]
srd: Changed nunchuk and transitioncounter to new registraion api.

12 years agosrd: PDs now explicitly register with sigrok module.
Gareth McMullin [Thu, 1 Dec 2011 10:09:40 +0000 (23:09 +1300)]
srd: PDs now explicitly register with sigrok module.

12 years agosrd: i2c.py: States are global, not per-instance.
Uwe Hermann [Thu, 1 Dec 2011 10:04:35 +0000 (11:04 +0100)]
srd: i2c.py: States are global, not per-instance.

12 years agosrd: srd_usb.py: Cosmetics, white-space fixes.
Uwe Hermann [Wed, 30 Nov 2011 22:14:19 +0000 (23:14 +0100)]
srd: srd_usb.py: Cosmetics, white-space fixes.

12 years agosrd: nunchuk.py: Add some more URLs.
Uwe Hermann [Tue, 29 Nov 2011 23:19:16 +0000 (00:19 +0100)]
srd: nunchuk.py: Add some more URLs.

12 years agosrd: Added USB full-speed decoder.
Gareth McMullin [Tue, 29 Nov 2011 10:50:32 +0000 (23:50 +1300)]
srd: Added USB full-speed decoder.

12 years agosrd: nunchuk.py: Convert to new decoder API.
Uwe Hermann [Mon, 28 Nov 2011 20:46:55 +0000 (21:46 +0100)]
srd: nunchuk.py: Convert to new decoder API.

This is not really finished, or tested, or working. It's also a decoder
which stacks on top of the I2C decoder, and the infrastructure for
stacking decoders is not yet usable.

12 years agosrd: Moved instance list to libsigrokdecode.
Gareth McMullin [Mon, 28 Nov 2011 09:54:18 +0000 (22:54 +1300)]
srd: Moved instance list to libsigrokdecode.

Functions changed to srd_session_start() to initialise the session,
and srd_session_feed() to feed sample data to the decoders.

12 years agosrd: Pass samplerate to decoder in metadata.
Gareth McMullin [Mon, 28 Nov 2011 08:52:35 +0000 (21:52 +1300)]
srd: Pass samplerate to decoder in metadata.

12 years agodecoders: Drop psyco stuff, seems obsolete.
Uwe Hermann [Sun, 27 Nov 2011 21:27:36 +0000 (22:27 +0100)]
decoders: Drop psyco stuff, seems obsolete.

The psyco module seems to be mostly unmaintained at this point, it does
not support Python 2.7 or higher at all, it only supports x86, it doesn't
support 64 bit systems at all, etc. etc.

We should try to find other ways to optimize our decoders for speed.

12 years agosrd: Python: Consistently use single quotes for strings.
Uwe Hermann [Sun, 27 Nov 2011 21:17:54 +0000 (22:17 +0100)]
srd: Python: Consistently use single quotes for strings.

12 years agosrd: i2c.py: Docstrings should use """.
Uwe Hermann [Sun, 27 Nov 2011 21:12:37 +0000 (22:12 +0100)]
srd: i2c.py: Docstrings should use """.

This is the most commonly used and recommended method for docstrings.

12 years agosrd: i2c.py: Mark Repeated Start condition as 'Sr'.
Uwe Hermann [Sun, 27 Nov 2011 20:51:39 +0000 (21:51 +0100)]
srd: i2c.py: Mark Repeated Start condition as 'Sr'.

12 years agosrd: i2c.py: Rework I2C decoder.
Uwe Hermann [Sun, 27 Nov 2011 19:17:49 +0000 (20:17 +0100)]
srd: i2c.py: Rework I2C decoder.

This should be working OK for most use-cases now, though there certainly
are a few TODOs left. The output format is just a quick hack and will
change.

12 years agosrd: Pass metadata to decoders only on SR_DF_HEADER.
Gareth McMullin [Sun, 27 Nov 2011 06:17:13 +0000 (19:17 +1300)]
srd: Pass metadata to decoders only on SR_DF_HEADER.

Before this was passed to the decoder's constuctor, but the parameters
may not all be known at construction.  Decoders now have a method start()
which is called at the start of the capture, and metadata is passed as
an arg to this function.

12 years agosrd: i2c.py: Convert to new API (unfinished).
Uwe Hermann [Thu, 24 Nov 2011 08:35:26 +0000 (09:35 +0100)]
srd: i2c.py: Convert to new API (unfinished).

This decoder is probably not fully converted yet, and doesn't really
successfully decode I2C, yet. It's work in progress.

12 years agosrd: Comment out debug line for now.
Uwe Hermann [Thu, 24 Nov 2011 00:24:46 +0000 (01:24 +0100)]
srd: Comment out debug line for now.

12 years agotransitioncounter.py: Convert to new API.
Uwe Hermann [Wed, 23 Nov 2011 22:08:39 +0000 (23:08 +0100)]
transitioncounter.py: Convert to new API.

This is still work-in-progress, but at least it runs and outputs stuff now.

12 years agonunchuk.py: Fix indentation (syntax error).
Uwe Hermann [Wed, 23 Nov 2011 22:05:01 +0000 (23:05 +0100)]
nunchuk.py: Fix indentation (syntax error).

12 years agoDecoders: Use 4 spaces for indentation as per PEP-8.
Uwe Hermann [Wed, 23 Nov 2011 15:15:55 +0000 (16:15 +0100)]
Decoders: Use 4 spaces for indentation as per PEP-8.

12 years agosrd: decode.c: Improve error handling a bit.
Uwe Hermann [Wed, 23 Nov 2011 08:17:48 +0000 (09:17 +0100)]
srd: decode.c: Improve error handling a bit.

12 years agosrd: decode.c: Add/fix comments and coding-style.
Uwe Hermann [Wed, 23 Nov 2011 08:09:30 +0000 (09:09 +0100)]
srd: decode.c: Add/fix comments and coding-style.

12 years agosrd: Doxygen comments for srd_init() and srd_exit().
Uwe Hermann [Wed, 23 Nov 2011 07:56:44 +0000 (08:56 +0100)]
srd: Doxygen comments for srd_init() and srd_exit().

12 years agolibsigrokdecode: Allow frontend to configure decoder probes.
Gareth McMullin [Sun, 20 Nov 2011 05:39:50 +0000 (18:39 +1300)]
libsigrokdecode: Allow frontend to configure decoder probes.

12 years agolibsigrokdecode: Allow multiple PD instances.
Gareth McMullin [Sun, 20 Nov 2011 03:30:38 +0000 (16:30 +1300)]
libsigrokdecode: Allow multiple PD instances.

There is currently no way to configure options or probes, so they'll
always be the same, but it's a start.

12 years agolibsigrokdecode: Move decoder metadata into Decoder object.
Gareth McMullin [Sun, 20 Nov 2011 00:07:44 +0000 (13:07 +1300)]
libsigrokdecode: Move decoder metadata into Decoder object.

12 years agoSimplified code for calling Python decode method.
Gareth McMullin [Tue, 15 Nov 2011 05:47:15 +0000 (18:47 +1300)]
Simplified code for calling Python decode method.

12 years agoAdd support for OO based PDs.
Kristoffer Sjöberg [Mon, 14 Nov 2011 09:07:29 +0000 (10:07 +0100)]
Add support for OO based PDs.

12 years agoPass multiple samples to the protocol decoder and adapt transitioncounter.py to work...
Kristoffer Sjöberg [Sun, 13 Nov 2011 02:11:40 +0000 (03:11 +0100)]
Pass multiple samples to the protocol decoder and adapt transitioncounter.py to work with this.

12 years agoUpdate transitioncounter.py to the streaming PD API.
Kristoffer Sjöberg [Sat, 12 Nov 2011 23:27:58 +0000 (00:27 +0100)]
Update transitioncounter.py to the streaming PD API.

12 years agoPartial implementation of the streaming PD API.
Kristoffer Sjöberg [Sat, 12 Nov 2011 22:42:52 +0000 (23:42 +0100)]
Partial implementation of the streaming PD API.

12 years agolibsigrokdecode.pc.in: Add missing @CPPFLAGS_PYTHON@.
Uwe Hermann [Sat, 19 Nov 2011 17:10:32 +0000 (18:10 +0100)]
libsigrokdecode.pc.in: Add missing @CPPFLAGS_PYTHON@.

12 years agolibsigrokdecode.pc: Add glib + Python.
Uwe Hermann [Thu, 17 Nov 2011 21:42:30 +0000 (22:42 +0100)]
libsigrokdecode.pc: Add glib + Python.

13 years agoRevert temporary changes for 0.2 release.
Uwe Hermann [Sun, 3 Apr 2011 21:18:46 +0000 (23:18 +0200)]
Revert temporary changes for 0.2 release.

13 years agoDisable some stuff which should not be in 0.2.
Uwe Hermann [Sun, 3 Apr 2011 20:38:35 +0000 (22:38 +0200)]
Disable some stuff which should not be in 0.2.

Disable decoders, disable lib building.

13 years agoDecoders: s/dist_pkgdata_SCRIPTS/dist_pkgdata_DATA/.
Uwe Hermann [Sun, 3 Apr 2011 17:48:09 +0000 (19:48 +0200)]
Decoders: s/dist_pkgdata_SCRIPTS/dist_pkgdata_DATA/.

The .py decoder files are not technically scripts and should not be
executable and can not be invoked on the command line
(via ./foo.py --help or similar).

13 years agoMake some more items 'static'.
Uwe Hermann [Tue, 22 Feb 2011 22:12:41 +0000 (23:12 +0100)]
Make some more items 'static'.

13 years agosigrokdecode.h: More doxygen-friendly comments.
Uwe Hermann [Tue, 8 Feb 2011 23:01:02 +0000 (00:01 +0100)]
sigrokdecode.h: More doxygen-friendly comments.

13 years agoDoxygen config files: Initial configuration.
Uwe Hermann [Tue, 8 Feb 2011 22:46:29 +0000 (23:46 +0100)]
Doxygen config files: Initial configuration.

13 years agoAdd doxygen config files for both libs.
Uwe Hermann [Tue, 8 Feb 2011 22:00:49 +0000 (23:00 +0100)]
Add doxygen config files for both libs.

13 years agostruct srd_decoder: Add more string fields.
Uwe Hermann [Sun, 6 Feb 2011 16:36:32 +0000 (17:36 +0100)]
struct srd_decoder: Add more string fields.

Get the following string fields from the .py decoders' register()
function and store them in the respective 'struct srd_decoder':

 - longname
 - longdesc
 - author
 - email
 - license

13 years agoPython decoders: Add more metadata.
Uwe Hermann [Sun, 6 Feb 2011 16:29:44 +0000 (17:29 +0100)]
Python decoders: Add more metadata.

Make the list of metadata info match the spec in the wiki more closely.

13 years agoRevert FIRMWARE_DIR / DECODERS_DIR method for now.
Uwe Hermann [Fri, 4 Feb 2011 19:11:17 +0000 (20:11 +0100)]
Revert FIRMWARE_DIR / DECODERS_DIR method for now.

There were several issues with the other method, revert for now.

13 years agoFix build when no libusb-LA is compiled.
Uwe Hermann [Wed, 2 Feb 2011 09:25:52 +0000 (10:25 +0100)]
Fix build when no libusb-LA is compiled.

Until now the build would break if the user doesn't enable at least one
of the libusb1.0-based LAs. I.e., you could not compile only OLS, or
only the demo driver.

13 years agoConsistently use _exit prefix for functions.
Uwe Hermann [Sun, 30 Jan 2011 18:22:13 +0000 (19:22 +0100)]
Consistently use _exit prefix for functions.

13 years agoChange SIGROKDECODE_ prefix to SRD_.
Uwe Hermann [Sat, 29 Jan 2011 14:41:39 +0000 (15:41 +0100)]
Change SIGROKDECODE_ prefix to SRD_.

Do the same for sigrokdecode_ -> srd_ in struct names and function names.

13 years agoProperly free all memory upon sigrokdecode_shutdown().
Uwe Hermann [Thu, 27 Jan 2011 23:56:46 +0000 (00:56 +0100)]
Properly free all memory upon sigrokdecode_shutdown().

13 years agolibsigrokdecode: Always load all decoders upon init.
Uwe Hermann [Thu, 27 Jan 2011 23:11:00 +0000 (00:11 +0100)]
libsigrokdecode: Always load all decoders upon init.

Let sigrokdecode_init() always load all decoders it can find in the
decoders directory, i.e., the user doesn't need to manually load decoders.
Instead he can just look up the list via sigrokdecode_list_decoders()
after sigrokdecode_init() has run.

This is not a problem, as sigrokdecode_init() is only run once per
sigrok-cli or sigrok-gui invocation, and even with many decoders this
should not take too long.

The list of decoders within libsigrokdecode is no longer a string, but
rather a list of 'struct sigrokdecode_decoder *' pointers.

Add sigrokdecode_get_decoder_by_id() API function which returns the
decoder with the specified ID (file name without ".py" suffix, for now),
or NULL if it cannot be found.

sigrokdecode_load_decoder() is now a private function and not exported
via the lib, i.e. not available to users of libsigrokdecode.

13 years agoFix some compiler warnings.
Uwe Hermann [Thu, 27 Jan 2011 22:17:47 +0000 (23:17 +0100)]
Fix some compiler warnings.

13 years agodecode.c: Simplify the import code.
Uwe Hermann [Thu, 27 Jan 2011 22:12:34 +0000 (23:12 +0100)]
decode.c: Simplify the import code.

Use PyImport_ImportModule() instead of PyImport_Import(), so we don't
have to temporarily create a py_name object.

13 years agoSome more simplifications in decode.c.
Uwe Hermann [Thu, 27 Jan 2011 22:02:39 +0000 (23:02 +0100)]
Some more simplifications in decode.c.

13 years agoUse Py_XINCREF/Py_XDECREF, not Py_INCREF/Py_DECREF.
Uwe Hermann [Thu, 27 Jan 2011 21:53:29 +0000 (22:53 +0100)]
Use Py_XINCREF/Py_XDECREF, not Py_INCREF/Py_DECREF.

They're defined like this in Python.h:

  /* Macros to use in case the object pointer may be NULL: */
  #define Py_XINCREF(op) if ((op) == NULL) ; else Py_INCREF(op)
  #define Py_XDECREF(op) if ((op) == NULL) ; else Py_DECREF(op)

I.e., the performance penalty we take by using Py_XINCREF/Py_XDECREF is
pretty much non-existant.

13 years agodecode.c: Simplify sigrokdecode_run_decoder().
Uwe Hermann [Thu, 27 Jan 2011 21:50:57 +0000 (22:50 +0100)]
decode.c: Simplify sigrokdecode_run_decoder().

13 years agoBugfix: Add missing Py_INCREF()s.
Uwe Hermann [Thu, 27 Jan 2011 21:13:08 +0000 (22:13 +0100)]
Bugfix: Add missing Py_INCREF()s.

This should fix an error/segfault when running a decoder on bigger
datasets.

13 years agodecode.c: Better documentation.
Uwe Hermann [Thu, 27 Jan 2011 20:07:40 +0000 (21:07 +0100)]
decode.c: Better documentation.

Mark all Python/C API functions returning a new reference with "NEWREF",
and those that steal references with "STEAL".

13 years agodecode.c: Fix typos.
Uwe Hermann [Thu, 27 Jan 2011 19:57:09 +0000 (20:57 +0100)]
decode.c: Fix typos.

13 years agoBugfix: PyTuple_SetItem() "steals" a reference.
Uwe Hermann [Thu, 27 Jan 2011 19:56:39 +0000 (20:56 +0100)]
Bugfix: PyTuple_SetItem() "steals" a reference.

13 years agoconfigure.ac: Fix firmware/decoders dir variables.
Uwe Hermann [Sun, 23 Jan 2011 23:24:27 +0000 (00:24 +0100)]
configure.ac: Fix firmware/decoders dir variables.

FIRMWARE_DIR and DECODERS_DIR as defined in config.h need some magic applied
to resolve the $prefix/$data variable to an absolute path.

13 years agoIntroduce proper libtool versioning for the libs.
Uwe Hermann [Sun, 23 Jan 2011 18:53:50 +0000 (19:53 +0100)]
Introduce proper libtool versioning for the libs.

13 years agolib headers: Add 'extern "C"' for C++ usage.
Uwe Hermann [Thu, 20 Jan 2011 22:00:59 +0000 (23:00 +0100)]
lib headers: Add 'extern "C"' for C++ usage.

13 years agoRe-enable stuff we temporarily disabled for 0.1.
Uwe Hermann [Wed, 19 Jan 2011 23:39:59 +0000 (00:39 +0100)]
Re-enable stuff we temporarily disabled for 0.1.

13 years agoDisable decoders and session CLI options for 0.1.
Uwe Hermann [Wed, 19 Jan 2011 21:32:00 +0000 (22:32 +0100)]
Disable decoders and session CLI options for 0.1.

13 years agoDon't install libs and headers in the 0.1 release.
Uwe Hermann [Wed, 19 Jan 2011 18:20:44 +0000 (19:20 +0100)]
Don't install libs and headers in the 0.1 release.

The library APIs are not yet usable or finalized, so don't expose the
libs for now. Instead, only install sigrok-cli, the manpages, and
the decoders.

13 years agolibsigrokdecode fix to handle unusual dirnames.
Uwe Hermann [Sat, 15 Jan 2011 03:26:07 +0000 (04:26 +0100)]
libsigrokdecode fix to handle unusual dirnames.

Windows paths such as c:\... and/or those with spaces in them were
problematic.

13 years agoOnly load decoders from $(datadir)/sigrok/decoders.
Uwe Hermann [Sat, 15 Jan 2011 02:30:26 +0000 (03:30 +0100)]
Only load decoders from $(datadir)/sigrok/decoders.

Drop convenience locations which were supposed to allow running
./cli/sigrok-cli in the build directory. That will not really work fine
due to some other reasons. We only support running sigrok-cli after an
installation (into /usr/local or /opt or $HOME/sigrokinst or whatever).

13 years agoDon't print .py suffix in protocol decoder names.
Uwe Hermann [Sat, 15 Jan 2011 02:07:00 +0000 (03:07 +0100)]
Don't print .py suffix in protocol decoder names.

13 years agoBugfix: Use only .py decoders, ignore .pyc files.
Uwe Hermann [Sat, 15 Jan 2011 02:00:15 +0000 (03:00 +0100)]
Bugfix: Use only .py decoders, ignore .pyc files.

13 years agoDon't expose libsigrokdecode's interal GSList.
Uwe Hermann [Sat, 15 Jan 2011 01:37:51 +0000 (02:37 +0100)]
Don't expose libsigrokdecode's interal GSList.

Instead, add a libsigrokdecode_list_decoders() API call which gives you
the list of known protocol decoders.

13 years agoInstall decoders into a decoders/ subdir.
Uwe Hermann [Sat, 15 Jan 2011 01:32:03 +0000 (02:32 +0100)]
Install decoders into a decoders/ subdir.

Use $(datadir)/sigrok/decoders as subdirectory for the protocol decoders
(instead of installing them in the top-level $(datadir)/sigrok), just
as we do for $(datadir)/sigrok/firmware.

13 years agoCLI: Support for running protocol decoders.
Uwe Hermann [Sat, 15 Jan 2011 00:44:41 +0000 (01:44 +0100)]
CLI: Support for running protocol decoders.

Add a new -A | --list-protocol-decoders option to show the list of
protocol decoders we could find.

Add -a | --protocol-decoders to specify a list of decoders that shall
be applied to the datastream. Currently only works for one decoder.

Define DECODERS_DIR, which is the directory where the decoders will be
installed upon 'make install', and where libsigrokdecode_init() will
search for them.

Thanks Olivier Fauchon <redacted> for the initial patch,
merged in slightly different form.

13 years agoRename the scripts/ directory to decoders/.
Uwe Hermann [Mon, 10 Jan 2011 22:27:15 +0000 (23:27 +0100)]
Rename the scripts/ directory to decoders/.

13 years agoFix compile for Python >= 3.0.
Uwe Hermann [Sat, 8 Jan 2011 16:00:18 +0000 (17:00 +0100)]
Fix compile for Python >= 3.0.

Python docs tells us more about string functions:
"These functions have been renamed to PyBytes_* in Python 3.x. Unless
otherwise noted, the PyBytes functions available in 3.x are aliased to
their PyString_* equivalents to help porting."
(http://docs.python.org/c-api/string.html)

Use #defines to map the new names and fix the compile for Python >= 3.0.

Thanks Olivier Fauchon <redacted> for the patch.

13 years agolibsigrokdecode: Use SIGROKDECODE_OK.
Uwe Hermann [Fri, 14 May 2010 10:50:01 +0000 (12:50 +0200)]
libsigrokdecode: Use SIGROKDECODE_OK.

13 years agopkg-config: Add libsigrokdecode.pc.
Uwe Hermann [Tue, 11 May 2010 19:55:35 +0000 (21:55 +0200)]
pkg-config: Add libsigrokdecode.pc.

13 years agoUse CLEANFILES instead of extra target.
Uwe Hermann [Tue, 11 May 2010 15:16:38 +0000 (17:16 +0200)]
Use CLEANFILES instead of extra target.

13 years agoscripts: Add clean-local target for *.pyc.
Uwe Hermann [Sun, 9 May 2010 19:07:03 +0000 (21:07 +0200)]
scripts: Add clean-local target for *.pyc.

13 years agoI2C: Convert output to more usable format.
Uwe Hermann [Tue, 4 May 2010 21:19:31 +0000 (23:19 +0200)]
I2C: Convert output to more usable format.

13 years agoi2c.py: Fix typo resulting in a nonworking script.
Uwe Hermann [Tue, 27 Apr 2010 21:18:05 +0000 (23:18 +0200)]
i2c.py: Fix typo resulting in a nonworking script.

13 years agoAdd Python decoder for the Wii Nunchuk.
Uwe Hermann [Tue, 27 Apr 2010 21:13:45 +0000 (23:13 +0200)]
Add Python decoder for the Wii Nunchuk.

Untested, unfinished.

13 years agoI2C decoder format draft (unfinished).
Uwe Hermann [Sat, 24 Apr 2010 14:52:55 +0000 (16:52 +0200)]
I2C decoder format draft (unfinished).

13 years agoVarious small decoder script fixes.
Uwe Hermann [Fri, 23 Apr 2010 23:33:52 +0000 (01:33 +0200)]
Various small decoder script fixes.

13 years agodist_pkgdata_SCRIPTS: Add i2c.py.
Uwe Hermann [Fri, 23 Apr 2010 23:12:09 +0000 (01:12 +0200)]
dist_pkgdata_SCRIPTS: Add i2c.py.

13 years agoVarious Python decoder infrastructure improvements.
Uwe Hermann [Fri, 23 Apr 2010 23:04:20 +0000 (01:04 +0200)]
Various Python decoder infrastructure improvements.

 - Introduce 'struct sigrokdecode_decoder'.

 - Decoders are now handled via two C functions:
   - sigrokdecode_load_decoder(): Fills a 'struct sigrokdecode_decoder'.
   - sigrokdecode_run_decoder(): Runs a decoder function.

 - There are now two decoder API functions a script needs to implement:
   - register(): Returns a Python dict with certain metadata.
   - decode(): Runs the actual decoder code.

 - libsigrokdecode: Add and use some more #defines for errors:
   - SIGROKDECODE_ERR_ARGS
   - SIGROKDECODE_ERR_PYTHON

 - Various other smaller Python decode script infrastructure issues.

13 years agosigrokdecode.h: Add struct sigrokdecode_decoder_info.
unknown [Fri, 23 Apr 2010 16:49:17 +0000 (18:49 +0200)]
sigrokdecode.h: Add struct sigrokdecode_decoder_info.

13 years agoRename sigrokdecode_register_i2c() to register().
unknown [Fri, 23 Apr 2010 16:47:43 +0000 (18:47 +0200)]
Rename sigrokdecode_register_i2c() to register().

13 years agotransitioncounter: Add register() function.
unknown [Fri, 23 Apr 2010 16:46:36 +0000 (18:46 +0200)]
transitioncounter: Add register() function.

13 years agosigrokdecode_run_decoder(): Pass in the module name.
unknown [Fri, 23 Apr 2010 16:06:22 +0000 (18:06 +0200)]
sigrokdecode_run_decoder(): Pass in the module name.

13 years agoPython: Use "enums" as states, not strings.
Uwe Hermann [Wed, 21 Apr 2010 18:31:10 +0000 (20:31 +0200)]
Python: Use "enums" as states, not strings.

Also, fix a typo.

14 years agoPython: Bugfixes (True/False != 1/0).
Uwe Hermann [Sun, 18 Apr 2010 01:15:06 +0000 (03:15 +0200)]
Python: Bugfixes (True/False != 1/0).

14 years agoPython: Use range instead of xrange.
Uwe Hermann [Sun, 18 Apr 2010 00:02:35 +0000 (02:02 +0200)]
Python: Use range instead of xrange.

For small numbers range seems to be faster, and xramge is being removed
anyway in Python 3 AFAIK.

14 years agosigrokdecode_init: Add more Python search paths.
Uwe Hermann [Sat, 17 Apr 2010 23:58:45 +0000 (01:58 +0200)]
sigrokdecode_init: Add more Python search paths.

14 years agotransitioncounter.py: Simplify and optimize a bit.
Uwe Hermann [Sat, 17 Apr 2010 23:54:49 +0000 (01:54 +0200)]
transitioncounter.py: Simplify and optimize a bit.