From 91938e444f97ac68d5f5abb73bddbad0c1a07ebc Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Fri, 17 Jul 2015 16:23:42 +0800 Subject: [PATCH 01/25] fix compile warning --- DSView/cmake_clear | 2 ++ DSView/pv/data/decoderstack.h | 2 +- DSView/pv/data/logicsnapshot.cpp | 11 +++-------- DSView/pv/mainwindow.cpp | 1 - DSView/pv/prop/int.cpp | 28 ++++++++++++++-------------- DSView/pv/sigsession.cpp | 12 ++++++------ DSView/pv/sigsession.h | 4 ++-- DSView/pv/view/cursor.cpp | 3 ++- DSView/pv/view/logicsignal.cpp | 2 -- DSView/pv/view/trace.cpp | 2 +- DSView/pv/view/trace.h | 2 +- DSView/pv/view/viewport.cpp | 2 +- libsigrok4DSL/dsdevice.c | 4 ++-- libsigrok4DSL/hardware/DSL/dscope.c | 4 ++-- libsigrok4DSL/hardware/DSL/dslogic.c | 4 ++-- libsigrok4DSL/hardware/demo/demo.c | 5 +++-- libsigrok4DSL/input/in_binary.c | 2 +- libsigrok4DSL/input/in_vcd.c | 2 +- libsigrok4DSL/libsigrok-internal.h | 2 +- libsigrok4DSL/libsigrok.h | 2 +- libsigrok4DSL/proto.h | 2 +- libsigrok4DSL/session_file.c | 6 ++++-- 22 files changed, 51 insertions(+), 53 deletions(-) diff --git a/DSView/cmake_clear b/DSView/cmake_clear index 6a573ce0..592a8878 100755 --- a/DSView/cmake_clear +++ b/DSView/cmake_clear @@ -3,4 +3,6 @@ rm ./cmake_install.cmake rm -r ./CMakeFiles rm ./Makefile rm ./CMakeCache.txt +find . -name 'moc_*.cpp*' | xargs rm -rf +find . -name 'qrc_*.cpp' | xargs rm -rf echo "rm cmake cache end..." diff --git a/DSView/pv/data/decoderstack.h b/DSView/pv/data/decoderstack.h index 19c518a4..b2cd65f8 100644 --- a/DSView/pv/data/decoderstack.h +++ b/DSView/pv/data/decoderstack.h @@ -173,7 +173,7 @@ private: QString _error_message; - std::auto_ptr _decode_thread; + std::unique_ptr _decode_thread; decode_state _decode_state; bool _options_changed; diff --git a/DSView/pv/data/logicsnapshot.cpp b/DSView/pv/data/logicsnapshot.cpp index 31614471..ec5e4df6 100644 --- a/DSView/pv/data/logicsnapshot.cpp +++ b/DSView/pv/data/logicsnapshot.cpp @@ -192,9 +192,7 @@ void LogicSnapshot::get_subsampled_edges( float min_length, int sig_index) { uint64_t index = start; - unsigned int level; bool last_sample; - bool fast_forward; assert(end <= get_sample_count()); assert(start <= end); @@ -447,9 +445,9 @@ bool LogicSnapshot::get_pre_edge( // If resolution is less than a mip map block, // round up to the beginning of the mip-map block // for this level of detail - const int min_level_scale_power = + const unsigned int min_level_scale_power = (level + 1) * MipMapScalePower; - if (index < (1 << min_level_scale_power)) + if (index < (uint64_t)(1 << min_level_scale_power)) index = 0; else index = pow2_ceil(index, min_level_scale_power) - (1 << min_level_scale_power) - 1; @@ -539,16 +537,13 @@ bool LogicSnapshot::get_pre_edge( // do a linear search for the next transition within the // block if (min_length < MipMapScaleFactor) { - for (; index >= 0; index--) { + for (; index > 0; index--) { const bool sample = (get_sample(index) & sig_mask) != 0; if (sample != last_sample) { index++; return true; } - - if (index == 0) - return false; } } } diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index a00cc679..44ca1e4a 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -632,7 +632,6 @@ bool MainWindow::load_session(QString name) bool isEnabled = false; foreach (const QJsonValue &value, sessionObj["channel"].toArray()) { QJsonObject obj = value.toObject(); - qDebug("obj.index = %d", obj["index"].toDouble()); if ((probe->index == obj["index"].toDouble()) && (probe->type == obj["type"].toDouble())) { isEnabled = true; diff --git a/DSView/pv/prop/int.cpp b/DSView/pv/prop/int.cpp index 5c0dc7d7..1c9e79cd 100644 --- a/DSView/pv/prop/int.cpp +++ b/DSView/pv/prop/int.cpp @@ -32,20 +32,20 @@ using boost::optional; using namespace std; -#define INT8_MIN (-0x7f - 1) -#define INT16_MIN (-0x7fff - 1) -#define INT32_MIN (-0x7fffffff - 1) -#define INT64_MIN (-0x7fffffffffffffff - 1) - -#define INT8_MAX 0x7f -#define INT16_MAX 0x7fff -#define INT32_MAX 0x7fffffff -#define INT64_MAX 0x7fffffffffffffff - -#define UINT8_MAX 0xff -#define UINT16_MAX 0xffff -#define UINT32_MAX 0xffffffff -#define UINT64_MAX 0xffffffffffffffff +//#define INT8_MIN (-0x7f - 1) +//#define INT16_MIN (-0x7fff - 1) +//#define INT32_MIN (-0x7fffffff - 1) +//#define INT64_MIN (-0x7fffffffffffffff - 1) +// +//#define INT8_MAX 0x7f +//#define INT16_MAX 0x7fff +//#define INT32_MAX 0x7fffffff +//#define INT64_MAX 0x7fffffffffffffff +// +//#define UINT8_MAX 0xff +//#define UINT16_MAX 0xffff +//#define UINT32_MAX 0xffffffff +//#define UINT64_MAX 0xffffffffffffffff namespace pv { namespace prop { diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index 3a6cb096..89957c24 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -205,7 +205,7 @@ QList SigSession::getSuportedExportFormats(){ format.append((*supportedModules)->id); format.append(")"); list.append(format); - *supportedModules++; + supportedModules++; } return list; } @@ -245,7 +245,7 @@ void SigSession::export_file(const QString name, QWidget* parent, const QString outModule = *supportedModules; break; } - *supportedModules++; + supportedModules++; } if(outModule == NULL) return; @@ -283,8 +283,8 @@ void SigSession::export_file(const QString name, QWidget* parent, const QString unsigned char* datat = (unsigned char*)snapshot->get_data(); unsigned int numsamples = snapshot->get_sample_count()*snapshot->unit_size(); GString *data_out; - int usize = 8192; - int size = usize; + unsigned int usize = 8192; + unsigned int size = usize; struct sr_datafeed_logic lp; struct sr_datafeed_packet p; for(uint64_t i = 0; i < numsamples; i+=usize){ @@ -311,8 +311,8 @@ void SigSession::export_file(const QString name, QWidget* parent, const QString unsigned char* datat = (unsigned char*)snapshot->get_data(); unsigned int numsamples = snapshot->get_sample_count(); GString *data_out; - int usize = 8192; - int size = usize; + unsigned int usize = 8192; + unsigned int size = usize; struct sr_datafeed_dso dp; struct sr_datafeed_packet p; for(uint64_t i = 0; i < numsamples; i+=usize){ diff --git a/DSView/pv/sigsession.h b/DSView/pv/sigsession.h index 96503ef2..b781b697 100644 --- a/DSView/pv/sigsession.h +++ b/DSView/pv/sigsession.h @@ -251,10 +251,10 @@ private: boost::shared_ptr _cur_group_snapshot; int _group_cnt; - std::auto_ptr _sampling_thread; + std::unique_ptr _sampling_thread; libusb_hotplug_callback_handle _hotplug_handle; - std::auto_ptr _hotplug; + std::unique_ptr _hotplug; bool _hot_attach; bool _hot_detach; diff --git a/DSView/pv/view/cursor.cpp b/DSView/pv/view/cursor.cpp index d93b1495..baa00faf 100644 --- a/DSView/pv/view/cursor.cpp +++ b/DSView/pv/view/cursor.cpp @@ -151,7 +151,8 @@ void Cursor::paint_fix_label(QPainter &p, const QRect &rect, void Cursor::compute_text_size(QPainter &p, unsigned int prefix) { - _text_size = p.boundingRect(QRectF(), 0, + (void)prefix; + _text_size = p.boundingRect(QRectF(), 0, Ruler::format_real_time(_index, _view.session().get_device()->get_sample_rate())).size(); } diff --git a/DSView/pv/view/logicsignal.cpp b/DSView/pv/view/logicsignal.cpp index 6faede11..4395d48d 100644 --- a/DSView/pv/view/logicsignal.cpp +++ b/DSView/pv/view/logicsignal.cpp @@ -72,7 +72,6 @@ LogicSignal::LogicSignal(boost::shared_ptr dev_inst, Signal(dev_inst, probe, SR_CHANNEL_LOGIC), _data(data) { - assert(probe->index >= 0); _colour = SignalColours[probe->index % countof(SignalColours)]; } @@ -82,7 +81,6 @@ LogicSignal::LogicSignal(const Signal &s, Signal(s, probe), _data(data) { - assert(probe->index >= 0); } LogicSignal::~LogicSignal() diff --git a/DSView/pv/view/trace.cpp b/DSView/pv/view/trace.cpp index d0093578..62f38511 100644 --- a/DSView/pv/view/trace.cpp +++ b/DSView/pv/view/trace.cpp @@ -53,7 +53,7 @@ const QPen Trace::SignalAxisPen = QColor(128, 128, 128, 64); const QPen Trace::AxisPen(QColor(128, 128, 128, 64)); const int Trace::LabelHitPadding = 2; -Trace::Trace(QString name, int index, int type) : +Trace::Trace(QString name, uint16_t index, int type) : _view(NULL), _name(name), _v_offset(INT_MAX), diff --git a/DSView/pv/view/trace.h b/DSView/pv/view/trace.h index 8cc73307..05dc10ab 100644 --- a/DSView/pv/view/trace.h +++ b/DSView/pv/view/trace.h @@ -84,7 +84,7 @@ public: static const QPen SignalAxisPen; protected: - Trace(QString name, int index, int type); + Trace(QString name, uint16_t index, int type); Trace(QString name, std::list index_list, int type, int sec_index); /** diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 32652017..31503ed0 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -444,7 +444,7 @@ void Viewport::mousePressEvent(QMouseEvent *event) _dso_xm_index[i-1] = min(_dso_xm_index[i-1], _dso_xm_index[i]); _dso_xm_index[i] = max_index; } - _dso_xm_stage = (++_dso_xm_stage) % (DsoMeasureStages + 1); + _dso_xm_stage = (_dso_xm_stage + 1) % (DsoMeasureStages + 1); } } } diff --git a/libsigrok4DSL/dsdevice.c b/libsigrok4DSL/dsdevice.c index ec0346f6..f3067c26 100644 --- a/libsigrok4DSL/dsdevice.c +++ b/libsigrok4DSL/dsdevice.c @@ -47,7 +47,7 @@ */ /** @private */ -SR_PRIV struct sr_channel *sr_channel_new(int index, int type, +SR_PRIV struct sr_channel *sr_channel_new(uint16_t index, int type, gboolean enabled, const char *name) { struct sr_channel *probe; @@ -156,7 +156,7 @@ SR_API int sr_dev_probe_enable(const struct sr_dev_inst *sdi, int probenum, * * @since 0.1.0 (but the API changed in 0.2.0) */ -SR_API int sr_dev_trigger_set(const struct sr_dev_inst *sdi, int probenum, +SR_API int sr_dev_trigger_set(const struct sr_dev_inst *sdi, uint16_t probenum, const char *trigger) { GSList *l; diff --git a/libsigrok4DSL/hardware/DSL/dscope.c b/libsigrok4DSL/hardware/DSL/dscope.c index 07b3bc3f..fbc1e0bb 100644 --- a/libsigrok4DSL/hardware/DSL/dscope.c +++ b/libsigrok4DSL/hardware/DSL/dscope.c @@ -606,7 +606,7 @@ static int init(struct sr_context *sr_ctx) static int set_probes(struct sr_dev_inst *sdi, int num_probes) { - int j; + uint16_t j; struct sr_channel *probe; for (j = 0; j < num_probes; j++) { @@ -627,7 +627,7 @@ static int set_probes(struct sr_dev_inst *sdi, int num_probes) static int adjust_probes(struct sr_dev_inst *sdi, int num_probes) { - int j; + uint16_t j; GSList *l; struct sr_channel *probe; GSList *p; diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index e50092c5..e373e19c 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -676,7 +676,7 @@ static int init(struct sr_context *sr_ctx) static int set_probes(struct sr_dev_inst *sdi, int num_probes) { - int j; + uint16_t j; struct sr_channel *probe; for (j = 0; j < num_probes; j++) { @@ -696,7 +696,7 @@ static int set_probes(struct sr_dev_inst *sdi, int num_probes) static int adjust_probes(struct sr_dev_inst *sdi, int num_probes) { - int j; + uint16_t j; GSList *l; struct sr_channel *probe; GSList *p; diff --git a/libsigrok4DSL/hardware/demo/demo.c b/libsigrok4DSL/hardware/demo/demo.c index 56a3a90f..eedd6c88 100644 --- a/libsigrok4DSL/hardware/demo/demo.c +++ b/libsigrok4DSL/hardware/demo/demo.c @@ -204,7 +204,7 @@ static GSList *hw_scan(GSList *options) struct drv_context *drvc; struct dev_context *devc; GSList *devices; - int i; + uint16_t i; (void)options; @@ -396,7 +396,8 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, struct sr_channel *ch, const struct sr_channel_group *cg) { - int i, ret; + uint16_t i; + int ret; const char *stropt; struct sr_channel *probe; diff --git a/libsigrok4DSL/input/in_binary.c b/libsigrok4DSL/input/in_binary.c index 261156c5..00b954a8 100644 --- a/libsigrok4DSL/input/in_binary.c +++ b/libsigrok4DSL/input/in_binary.c @@ -53,7 +53,7 @@ static int format_match(const char *filename) static int init(struct sr_input *in, const char *filename) { struct sr_channel *probe; - int num_probes, i; + uint16_t num_probes, i; char name[SR_MAX_PROBENAME_LEN + 1]; char *param; struct context *ctx; diff --git a/libsigrok4DSL/input/in_vcd.c b/libsigrok4DSL/input/in_vcd.c index 61c896c1..61e72d7d 100644 --- a/libsigrok4DSL/input/in_vcd.c +++ b/libsigrok4DSL/input/in_vcd.c @@ -319,7 +319,7 @@ static int format_match(const char *filename) static int init(struct sr_input *in, const char *filename) { struct sr_channel *probe; - int num_probes, i; + uint16_t num_probes, i; char name[SR_MAX_PROBENAME_LEN + 1]; char *param; struct context *ctx; diff --git a/libsigrok4DSL/libsigrok-internal.h b/libsigrok4DSL/libsigrok-internal.h index 9c65e4d0..a201548c 100644 --- a/libsigrok4DSL/libsigrok-internal.h +++ b/libsigrok4DSL/libsigrok-internal.h @@ -83,7 +83,7 @@ SR_PRIV int sr_err(const char *format, ...); /*--- device.c --------------------------------------------------------------*/ -SR_PRIV struct sr_channel *sr_channel_new(int index, int type, +SR_PRIV struct sr_channel *sr_channel_new(uint16_t index, int type, gboolean enabled, const char *name); SR_PRIV void sr_dev_probes_free(struct sr_dev_inst *sdi); diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index d3cd9ee4..60794b31 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -556,7 +556,7 @@ enum { struct sr_channel { /* The index field will go: use g_slist_length(sdi->channels) instead. */ - int index; + uint16_t index; int type; gboolean enabled; char *name; diff --git a/libsigrok4DSL/proto.h b/libsigrok4DSL/proto.h index 4ff18d18..fe9b1d95 100644 --- a/libsigrok4DSL/proto.h +++ b/libsigrok4DSL/proto.h @@ -49,7 +49,7 @@ SR_API int sr_dev_probe_name_set(const struct sr_dev_inst *sdi, int probenum, const char *name); SR_API int sr_dev_probe_enable(const struct sr_dev_inst *sdi, int probenum, gboolean state); -SR_API int sr_dev_trigger_set(const struct sr_dev_inst *sdi, int probenum, +SR_API int sr_dev_trigger_set(const struct sr_dev_inst *sdi, uint16_t probenum, const char *trigger); SR_API gboolean sr_dev_has_option(const struct sr_dev_inst *sdi, int key); SR_API GSList *sr_dev_list(const struct sr_dev_driver *driver); diff --git a/libsigrok4DSL/session_file.c b/libsigrok4DSL/session_file.c index e4b3b674..174a8f94 100644 --- a/libsigrok4DSL/session_file.c +++ b/libsigrok4DSL/session_file.c @@ -121,8 +121,10 @@ SR_API int sr_session_load(const char *filename) struct zip_stat zs; struct sr_dev_inst *sdi; struct sr_channel *probe; - int ret, probenum, devcnt, version, i, j; - uint64_t tmp_u64, total_probes, enabled_probes, p; + int ret, devcnt, i, j; + uint16_t probenum; + uint64_t tmp_u64, total_probes, enabled_probes; + uint16_t p; char **sections, **keys, *metafile, *val, s[11]; char probename[SR_MAX_PROBENAME_LEN + 1]; From c54022b81b4dbdc620632f52bfa133dd6654b688 Mon Sep 17 00:00:00 2001 From: Anatol Pomozov Date: Mon, 29 Jun 2015 19:11:19 -0700 Subject: [PATCH 02/25] Fix compile error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit /home/anatol/sources/dreamstudio/DSView/DSView/pv/mainwindow.cpp: In member function ‘bool pv::MainWindow /home/anatol/sources/dreamstudio/DSView/DSView/pv/mainwindow.cpp:742:77: error: conversion from ‘uint64_t s_obj["vdiv"] = QJsonValue::fromVariant(dsoSig->get_vDialValue()); ^ --- DSView/pv/mainwindow.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index 44ca1e4a..f8234d4a 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -738,8 +738,8 @@ bool MainWindow::store_session(QString name) s_obj["strigger"] = s->get_trig(); boost::shared_ptr dsoSig; if (dsoSig = dynamic_pointer_cast(s)) { - s_obj["vdiv"] = QJsonValue::fromVariant(dsoSig->get_vDialValue()); - s_obj["vfactor"] = QJsonValue::fromVariant(dsoSig->get_factor()); + s_obj["vdiv"] = QJsonValue::fromVariant(static_cast(dsoSig->get_vDialValue())); + s_obj["vfactor"] = QJsonValue::fromVariant(static_cast(dsoSig->get_factor())); s_obj["coupling"] = dsoSig->get_acCoupling(); s_obj["trigValue"] = dsoSig->get_trigRate(); s_obj["zeroPos"] = dsoSig->get_zeroRate(); From a7cc4fd8bf9351ef600ca6703986fecf49c3216d Mon Sep 17 00:00:00 2001 From: Anatol Pomozov Date: Fri, 15 May 2015 16:04:00 -0700 Subject: [PATCH 03/25] Fix compilation error found at Linux Arch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit /home/anatol/sources/archpackages/dsview-git/src/DSView/DSView/pv/data/decode/annotation.cpp: In constructor ‘pv::data::decode::Annotation::Annotation(const srd_proto_data*)’: /home/anatol/sources/archpackages/dsview-git/src/DSView/DSView/pv/data/decode/annotation.cpp:43:17: error: ‘const struct srd_proto_data_annotation’ has no member named ‘ann_class’ _format = pda->ann_class; --- DSView/pv/data/decode/annotation.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DSView/pv/data/decode/annotation.cpp b/DSView/pv/data/decode/annotation.cpp index 32d38970..c3c74400 100644 --- a/DSView/pv/data/decode/annotation.cpp +++ b/DSView/pv/data/decode/annotation.cpp @@ -40,7 +40,7 @@ Annotation::Annotation(const srd_proto_data *const pdata) : (const srd_proto_data_annotation*)pdata->data; assert(pda); - _format = pda->ann_class; + _format = pda->ann_format; const char *const *annotations = (char**)pda->ann_text; while(*annotations) { From 082804268ad2822db5e378b5cb674ba733b378d3 Mon Sep 17 00:00:00 2001 From: Anatol Pomozov Date: Fri, 19 Jun 2015 07:38:27 -0700 Subject: [PATCH 04/25] The newest libpng update (1.6.2) has stricter rules about iCCP and will print this warning every time it finds a png that is broken. Fix the warning with imagemagicks 'convert -strip' tool. --- DSView/icons/about.png | Bin 6091 -> 954 bytes DSView/icons/add.png | Bin 198 -> 260 bytes DSView/icons/capture.png | Bin 6010 -> 860 bytes DSView/icons/decoder-hidden.png | Bin 1440 -> 1275 bytes DSView/icons/decoder-shown.png | Bin 1041 -> 883 bytes DSView/icons/del.png | Bin 566 -> 624 bytes DSView/icons/down-arrow.png | Bin 165 -> 248 bytes DSView/icons/dsl_logo.png | Bin 16789 -> 16354 bytes DSView/icons/file.png | Bin 1186 -> 1012 bytes DSView/icons/file_dis.png | Bin 811 -> 641 bytes DSView/icons/gear.png | Bin 1576 -> 2016 bytes DSView/icons/instant.png | Bin 1246 -> 1081 bytes DSView/icons/logo.png | Bin 16145 -> 15979 bytes DSView/icons/logo_color.png | Bin 2401 -> 2199 bytes DSView/icons/logo_noColor.png | Bin 1906 -> 1716 bytes DSView/icons/measure.png | Bin 1290 -> 1136 bytes DSView/icons/measure_dis.png | Bin 1169 -> 1002 bytes DSView/icons/next.png | Bin 5866 -> 699 bytes DSView/icons/open.png | Bin 5806 -> 692 bytes DSView/icons/params.png | Bin 1381 -> 1210 bytes DSView/icons/params_dis.png | Bin 1339 -> 1162 bytes DSView/icons/pre.png | Bin 5851 -> 681 bytes DSView/icons/protocol.png | Bin 1141 -> 967 bytes DSView/icons/protocol_dis.png | Bin 1090 -> 931 bytes DSView/icons/save.png | Bin 5658 -> 502 bytes DSView/icons/search-bar.png | Bin 1694 -> 1520 bytes DSView/icons/search-bar_dis.png | Bin 1563 -> 1388 bytes DSView/icons/search.png | Bin 251 -> 313 bytes DSView/icons/slider-handle.png | Bin 1179 -> 1211 bytes DSView/icons/start.png | Bin 1244 -> 1079 bytes DSView/icons/stop.png | Bin 789 -> 628 bytes DSView/icons/trigger.png | Bin 1007 -> 840 bytes DSView/icons/trigger_dis.png | Bin 978 -> 820 bytes DSView/icons/wiki.png | Bin 2610 -> 2787 bytes 34 files changed, 0 insertions(+), 0 deletions(-) diff --git a/DSView/icons/about.png b/DSView/icons/about.png index b249edb13e0c36023c71e0f8b116f25fa23d931e..ac3890958c56d5ab27b7f7e95dd117c3439ce667 100644 GIT binary patch delta 874 zcmV-w1C{*CFS-YiBa?y@ED!(&VoOIv0RI600RN!9r<0Qq3KxF^E=fc|RA}DqT3c@7 zKoG2noP}F({qCGPx8DBAg60vP8)ECPeU zz#yqh-X(t|tz0Bc1-|vcU@(q?HaUQzn{D>{eITC1rb_=|6vnGizu(Vdl-GX0#wGX$q(dA?(SEB&$%jDXajIBo3Ubf_->+cs+UX>FG(~ z5Ti3mRDeq7Q<26P|3+2f@$vC^QzM`Oz|ql>^YDN0u(<-#a{gbyf&y%$TP{&8zy{*0 zP%BOHDWC&X=o=>bm}^Hkx=I&~?2@vaWFHld<|F`M*XW zM7!Nydw-x*Dkb&@=IYS2+wBXI^;I($Lexv8l3a%-#QpvK%6nudCnsupWFhYE?pD^N zJUu;C+og=+_V(7ms7kCWB;EmVes*@&ocBr(OA82bb8};0l;AZ9;ue5Lxm=!`xH16| zAz1*mpt@JV9Pdg9AzA>ea=9$^u7p^{SvXDn0lW191`&7FfB*mh07*qoM6N<$f|z)u Af&c&j literal 6091 zcmcIo2{@GP`hP{%L@FxujUh_RYRNR#8C!NnXdg4LF`0##vByWHC?&}rX(d~sNGM7u zTa*?=SyK9NqEZRxosm9uI_H0#b6tPeES~qd@B8s#Ulr4v$(4K5OXnzAeX|S`|{{)7K|U0?8)}$8N%VvJnVaL zUvD;#&Glyc{(xX{zpDo6hx{>(L?ckhg^t#~JcxP3wfb`vWM`T=`?R1_lMh0Y=g+Y0w9jS=2y@E?6Yuf z5R9GOe>P__e+tj#nFm11e&40vlH!treL=nsu?L^2N~a6sr2 zN=Xa~jnYP;q1P`~kOh?vf$?*J21Q|jUStZ0fVS%wLsNgAH=DzCWOM2K6o8VG!-Em& z9FW3ea|E^vw+Ls=;(-hXH0e)fSb{A6w))Z`QyPan7a5WTX9wjwmCPgasV?A%C1KDw z9TX0W-H1ZtP$)rkfs9aCE|1KjfYwAqIP?TTr&DoQqCQa{UQdR!Oy|xx66yoaM0kO)+1=>Tyg+No$ChkQ}q9}-9oKy zE_k3f2%Qx_j-TJQ_8-O+Z>aG3#}$%)6XKr?@VVacJ$>ibfk*z!O6RtB!5sx!{@gR@ z?gL%BkU#ES(BQ|-4P-%J9Oz!weI_jmy3UUIhS>4s-&+(Q*E2 z1G6R&V7?r-7o7nDKu~9f3ytLRR^D*3=YyF|bi^qew)0AHn6uf@h!yebnko{qTcTCY zK40lnv&`IFM6n?&TKM?!h}e}*T1$>dJ`)>IId}ZP`RF4Lre1}f_jyt|`MP=L`ctE! z{E3W`RdrFQKY%r&Wc3&*6CdMtHT@ zEkG#fk(4-4ZI@n+QaU^$Pxke zG*UeK0Y`0MkH(*`9{~{=pHoAHfbFMLRtjas1F+>_G!gLL4CJ?NJz@^Hqkt7&Hnj%8 zGi?B6?dD|#TrC5tTV$n*0r4dO$|*W(10WI#>}gO{4FV3P0xK-W-SF=>7RnB3LQ16; z<@&mW98QPuQ)o#;_FX8xalOJE+>Qjrv z?2NP&`TX)u(+As&O06d)4tjRKjYoB0R?I z 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 JPDHLkV1llyZ`c3; literal 6010 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 Gz5kzI^Nu(G diff --git a/DSView/icons/decoder-hidden.png b/DSView/icons/decoder-hidden.png index 215b5ada038497ff658eedb6b5887706700644b7..8d098807231a79082126fc1f068850673f9e4cf5 100644 GIT binary patch delta 1216 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 diff --git a/DSView/icons/decoder-shown.png b/DSView/icons/decoder-shown.png index d745e24fc1cef63e7b5d73b97dc2fe3da3282a0d..2526204491c449f83bd60a8d60d3f0370927cb7f 100644 GIT binary patch delta 821 zcmV-51Iql72=fMzBs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*)A=L_t(&-tAbwPZU8Iec$34MGj&R&_cjp ziJ_8cA%&em%oP+`kQhzuBo@ZM!T1koqmlnX3lk$qEYw(Pp(g%7NF&dpq+! z3-^)@x!c>r(}B1znPO(YZ|1$3o0&H!s*0@)&ozNefNKJo0M`UE0j>#T0$dZwe+0ND zkO^>2;7_rw*&V8CD}cQsl2_Fn0EkGaswDu+B2sMTc+w0zy}G)(yREJ5wC8z400saY z0k8+aj!4u`5m^Q>58xeumjEV3WWlKbRqYj#%c?pC;E;&q8pxdi@IXZF0eJsU1+1*B zbma5-E1u_#i%4G$f^Svzvxuw#f9MBrLPT1s#Q6a3ipVVh-#0Rg4V54Wj**>t+kI6RiekuYOQ@)gOh%FL5os6xsQf?y!(vxnsC zI(^*aF!c%|LRF&Yz5u-48c zti*(>w%5vcdXZI15CnrHrxQp_tLmt#?vLelk{mY1Bw2|UB!?R1Z?jQ1+F`A&XXf6h z>TFswS1Ofm=kxh*jS~4k?eu!oc+hkM*cpYa;kQ-ZTo0OR(CA4CpdG;WsJRT_2R7@I z(j~V1zY>`M*T@98Mkc^DG6AlU32==}fNT5$30+v-b3MEQ00000NkvXXu0mjf=IVTu delta 983 zcmey&Hj!h3%ETn~dIt6q*N76w(vpn)B8HXg&Ui2|Fz|qcTvCgZi!uvJGV}8oggF(J zf#O^sap(Mk%A(Blj1q=5{Aa9yqI_V{qSQo?QiYPt+*AhB@BExV8BUN)aDG}zd16s2 zLu|o+kaBLY;hDwBIf+1}^+gQZ4{YfNigSR(!xM}0GV{_I4oE+12a18+7Mx#Nl$^@& z^?&ngm@?=5+}zZ>5{7SQrtJrcv4OOPWR~QlGOT!aNu7a#>5iw1V@O8h+lcetqJa{& z_iuC?%@w=a zni={SZ?GqbGpu-}FBr+Vf#HE|LpZ}Smz2WI#ra+htG;!e5Dk@OFK}_;(kx16v=N#3 zo53z;%HcMaHS5-uiF6-b-S^n1!y}&MVEL+Ft}fRYzc5>9D(RL!iedQf^2Dq`e&xv( zS*xB^-YcARS*kaE-~0ZFZ+M@UPLiot{Arh~9`)!N}=cLI` zi*_n&-7mdsd+pY4LnX0ZL-Bu|4EMjEpA^%l_C&+5 zx06>`t%~|qyZ=fEqe}JKt@6nyeyf~seRSNjj@P!l*KoSid3VoWfnV2bo$v9@Jov!b z8RqrNRN^PU;Ywon(7UGiv}&HY#FaOSKbJY4jrQE3YS|ghFeiV5V2#+srwgo=l-U3E z70N8%9iTCXZpQcw$xH{{3 zrL#(UlE;}9uV$>0;{k=K;jtr;ozqp?FMqnZLi+87Yi35p`JttHD`&0_(JJpc`sn)> zmw*1&f6bNjOz!$Jl(8$m{*gR&`?c0(awa>1m@?Qm7)z{U`q8lqBYyxOV@Og>004R>004l5008;`004mK004C`008P>0026e000+o zoVrmw00006VoOIv0RI600RN!9r;`8x0r^QpK~zY`?Uhkd(@+$K|Ko_ISlR$$2dgL> zh)ako39urUkm?H9fzuTj! zV3k$=S46}X5vL|=ipUocX+KJuG26^6%q$tRqhZaAIecJ;8S`>-m1cIDW->o2&72a} zRB0CG*r7_Z#pH=f?L?(gGER;)6P1P~>@ZPjp`7vy)0x@_@J;h>{q@G$@pPt400RJq zj@60*;C7nW0DnGd(aNjh5|Q=1`7AEFNL6><{F>Hj zUMg*EG~zOVbWgaR+%4MNB_gZcT92zBtr!5p__l6ymxwH5vl;8ar**{4;sS_J{UZT@ zyJKu$??t;* zUMN1lyfy(0s9HJ#@UFTz`n}ywq5MgH;cOi3Gs{3&3}!*exFUGZjKc~B!g6#rjy~2B zzv&v^MdXAgw^^nzi%pOw!0000p^z delta 542 zcmV+(0^$Ae1hxc_BYy$?Nkl*dsnGV`dyWqfQ-}F;3lF~ZOYY0fm;B~r=460XR{38M5l=)q zmR(0gzKTfwQK(_|m|2)v409oFm>t6$-*x+j`C+)y#?#u!;(t-vWa3I2M`;tMx_zb1 za`;?nZ?3fDoKC9i%$1IFy8XG*nK-2{rZcq<;Csolb=NCvAEz_r0O$c|mUT;E0Jxsc zJpi9e@M8cUN>HDO+-hZQYy|_r=U-=_uJ}mY%RQnFTq=7r}dG9Df#cAS_3xqvVqn{HE3XAtJ{t zf}G~j#;;qAFDy7L=q4h_{G;W*0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66lK=n!fk{L`R0!97jv)%fFcd_8U@wtV#MIVA=N7p_ zAfjjchp36Fs*TU5Q1VtRgW W>rf&{@oc>oprUyKndPYNvL$ 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 literal 16789 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 delta 1129 zcmV-v1eW{s2cij(B#~k#e*gz`MObt}b#!QNasa8W%t!zL01R|RSad{Xb7OL8aCB*J zZU7SrAtL|)019+PSad^gaCvfRXJ~W)tPjjO0000EbVXQnLvm$dbZKvHAarSMWdJqz z4+#JO010$OSaefwW^{L9a%BKraQ`|0000YgMObu1X>((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000ARNkl^}tgfLsK)KGYH_RF>^3tSyPu zOb!thilyw7y9wb!4_I(_wcLGgXJ&UOQdQh!aM1)zu@q1=mI8`KInPTXQaL<4d>V$~ z1LnnhFdB{iytugdfti15Hk;?USzdu$0sx>|t)kIr%-SLXe`W>|&H4s|!R>y(|HyUS zSG`{E7ZLgA*sxuh-M{*h|Eg7`^n;Y-bcRgf8{vNx324c(&=s4CXh z)|}JR(>(yUP^5sEXvXO?dpeGTa=APg)BtdPZg#&}iGlQ8k|v)NW*bHVk~>)xj9e(| ztiNuoZ5X@IRm9@{XQjPZM5bm1IfhN~Xw_PRD4qS}GzSBKW?Km6eq@lV&7(z`q5SN+oo=-QTvh zwmvIFKoZ?rJMk3);yN>2g0TgT zj*gg_%jI&pTCdk%#r^Ge+XIkv56!5nh(u8oe~q@cw{z{}jkm!6_kW@HnL++nT;(M< z-U8MIh{#QsuNKiK;zm;EWk!GcficwrMiCw z01>I1&VL=OyO65hQ`K`3xtr{d-6?4;8|xVhAff|R)v2#9+;JlM9>C8;M5_9!sy?=1 zUm+V`WCuh<%=|Gkw-*d+sA@A7OGM9Y#fi0K?i&0Jpbg*!5#6^r@rSwx1_17>YBLT1 vTSx1{TxfX{e;_Oc6piKgK+#wVC>pN;`*tj2nmByV00000NkvXXu0mjfH~Ic$ diff --git a/DSView/icons/file_dis.png b/DSView/icons/file_dis.png index 71eb703df680221c17dd72973143e4d06bb2e956..65373110f596d41f07eb7fde6c83770352d1d259 100644 GIT binary patch delta 577 zcmV-H0>1sL27v{TBs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*xl2L_t(&-tCw{OB+EHfWKt7)!1Usg?KVQ zL3pvhpuO~FussMZ;vtCs1k-bimmYd3gmeho5YX;U zd|90DlI5|vj+sW3lEThWQtrLg>)(J!b>jcV@7WtB@J_f!6Z*IBu$T|19e_pSD zX}8=CnA@j2DpzU)C4{Pzmp{S1hj_3VX$%UYY)r<&zy5> zz@~GqrK(Al1g?1ktOMIX5DAMe)BxTAU0|`SgjE}D0PleH7e zJ&>l8{&P2;U=^^U^tAb-a0<+b$Z0M<59F6eHs(45E`W0pDKwLnufW564onl37YN?_ zRCO8n3cU280q{*kK1`K>?=t(qaxUEQpG{x^_%n&5g9zm4jhWp&FWIbud%z7;b%oIq zdPS}RUS`0kG5{SB*(*Ci?U09agH P00000NkvXXu0mjfz}Wj$ delta 751 zcmZoigZ4^XpcxYIHxa$?%!!hiej-!>%4Vek4@!MXM%xFe|8iVkG{0f|z*LcA?U=!M4(OatCMRLmmSbKA5)2$% z;(qcSYnydCT{QITN8e{oE@rv$WkLZ*!g@Nc#QdpRUEk=Ie6Rl9sgKhd11$8T>qPSy z_+3+iHrO+F-B#AE^lP+!5azNbtmvWfhx&QU|An~q4^+PozN%NiwC4FT#Sf7#_kMq4 zhB%1b8n~X zom;)DvG*j?UoEA*na$}7wHWuGu)4CL;H{qaznPuo3qg?p@%1xv^A(fAuAV>B1xyzV Mp00i_>zopr0GT5>4FCWD diff --git a/DSView/icons/gear.png b/DSView/icons/gear.png index 2c52b8df040f5a7f65386cd77baf5679c0552836..4a1883e21fcf704405c81b2ee758c1fb43ffd669 100644 GIT binary patch delta 2003 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 Ef=H++=l}o! diff --git a/DSView/icons/logo.png b/DSView/icons/logo.png index 9cdf46442dfa1e69386a956a643d634dcad829a1..ca65932dba42d47c3b34759ac84cf0302fcb5eb4 100644 GIT binary patch delta 15316 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 delta 15467 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 Y5A0fDvgcQL9smFU07*qoM6N<$f&_|OCjbBd diff --git a/DSView/icons/logo_noColor.png b/DSView/icons/logo_noColor.png index a245df3959e6fef33409e5c01d5dac36f16af13c..dc69820cd81af3ed69ca1019465d8e173fe6e855 100644 GIT binary patch delta 1661 zcmV-@27>wW4zvxBBs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re+CsvL_t(&-tAg#OjBnRe(pzG%7xY_2F-|O zivi8n%%ur)%MzFQ!!6rfvOg|F{*AO^foNQqOjgPySTO=pW6SWD$rk;=qWEJjaUa>T zF>vF&9qbI)_ndCz^{_m&|dfBc(; zO|=9683J~@eQ#%HCk+h^-AYVEIi8?+eBD#3-V%L!)N3!DWmujaYM<^6> z5E1$P{tJopTM;P)0O4?WgW5DEf6|Xng|l9-w_LB+?^YD$>zg-kmb=|`7{wh6h*h1LSGRPii?Z$qj7C*ZNIIE z6ykaQZMDe&0LO9f007IfbLKRHAiN3y4u?Yr05dZ)&pI5AocZ>aoq!}sf9KRDsn?$Y zfTAc&G)@%7%K+f zBGU@H-M%F)EiFG74F2TvfBE{8o-Rj^9(}*Jw|9()ZdX@V?<69OkB^@wA{rYT`+Tt! zBBClHqK=M^Ux)~$rKN91SEjPEvKNw?LRD2&R;$(esl{T+2Jm!cW#yMmO-&5PaZ)07 z7=}>*z-Tl&0idj`Y!v`(+O+9lQVFD`rEL~P5dd)V|i zY;1g}61$gF0+W-Im(6DL2mq9pmYxFuo6R;#M2U_)1^^}|CQ9n+>aGJoeSLjzcXzil zse`ztrY7KYI<1+RnL}2q)ga4q1;=p+hr?V#-ZKmX0A81EXAa{Zyx=_UYxf8#jAKecBx8dn1V5gCAGdK0f%vqm3FuP93N{k1%27sE-Cq*HNx zECOk9`V_&{*4CO;gT}wZ84PnDyrL+f7}#m`9C^9PvOJ@8(R3WgjRSyAr<;O$V~mW9 zIEjcxM@Q?m8oYo1e)4!c)N>5MEoF4&$!LSMd7>0@H1VJ#&$0bWx z_2v=)@H`(`NE49)0D(Xt0*w2Q4|1}nwm<;;NioE z8J_2}0N~N1e@8;n2^19-W!}1VYZm|v4-fCM+wB{dVo0acNdT~8$Bu7ub92`LKt@K! z!HSBC)l0D#H-W8Nx4O1%+qND6^7Hev%w}_w`ddP~z6`@iEiEnU@7}$;9RS>JcP;>! zOs3b9N`Q#6fyWahhGEt%#Sjs(!C-Jqk|YTL%FE09e*s`>YN{`(1pI#gap3U;DHsg8 zw1=9AAz7AnB_$;^JUsjsfPrh*uHAFH-9^>a)xRc_0N>Ei&}FmP@{C5~OViWS9bT{Z z`ce#O1)#FB@-l#DEEWqa7E3aHpCteQKA*22K>xho;wpt4$AtiZ=lPj<@K0J|&V>pK z3r&GQf4~3$d3kxQiy0uI%>a;|p8i}a2*i9nx3;#nM=#xqi;JHpBB;wfQa7RC^ZAa? z+oZBD_YTK`2sj*$93pyAZR-F)5QLp`!lrIQ@jPFksrI2=A_v)N88H-UumEouxLOT~`flh~OH0)SqxPf5v)C29fqZCEie7y?XWg=#tsc&`_A_^ocu#oKC0CWHP;?UNQin*Xv(S^}|mn0yO*a zH(3)|{WzWS2qXj^92~se+1W`pn{98Z9oG(q=>LDKq*VR_F0F%&D*CaT00000NkvXX Hu0mjfE7J{m delta 1855 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 diff --git a/DSView/icons/measure_dis.png b/DSView/icons/measure_dis.png index 244eb97940ef585830cdb642b50c062b79d12f99..8510560a6824e086cc832dd7025d2c29f4e18b40 100644 GIT binary patch delta 897 zcmV-{1AhFG3F-%sBs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1R9Ro{AL_t(&-tCx8NK{c2$A3>VvS=)fN*vup zAK;Tb0Wp8*bsA-!^WZ7H1H-#>=H7G8|D1b1-UMM7vYV+cX#-LKNgI#?NZNoDK+*>M z_W<_PDnL~O;3&`ld>4@=Rc!%UfoTz$vVC?*nlG*jx52m+e=(h6;PPO>vY_ zfJuL##h$CiTL8YTh?U>f)VOc290iUYt3a1ED~^Q3I5Ruht&qht+gTM>iEYlo^@kY(SGn1W(axiKR z)B|UL->i=WanLew(i{|Nyod@Q#3kx7a6*4ozp}AmZHGeKAXvmzu1HB46+nQyc87qM zrZf%!^*|G@GDVUX6+jU;1|P;Xq*{&lLHx8&q{0vtz%SscovXT1R7rKXo)YOLXV>?E zbeKz;QUFQQ1^}v>Q`Jyab6fFt5|x+H4triw)dAdG(gl1;+R$nNfctZ*)4*hLb$Ndh z=up)x@ESLf0(6VWphc(8c(cG|5gAd{E}&riJ`w5nWaNPX+yIBCD+8Q2-aop^ja|D! zs+ut&vnJ@Gd4GuY=5im%i%4Kfa%NE8i&7JC&-lG&cpxJERXB89MA}7UatmFR0eCcL zM)z1GhCL5;0)46)ns>4msRA%+#*cq^a=L+@2st!n&fH8_Tls-XS7_X>Os}oSjGr;1 z21TUXi(J-(580lqoyR=cZdd7%st!|KK9#QRsIRLM`4K27FL`1d7_vWL$2^aAnny!b z&6$yTTn@bV((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000AANklMIs z+Q1KW#?WskfO|G>4as|f zcfhT<#*@f_GB9i7M&Jf;3V39)R$v}Di*tO%8IFjo$-zMdTImAT*~W zBF}+`z+02$aCs98N#8=Vz^aWGLh_&X^l;Gt*qem?qzTl8bb5cV6UYi%2;MC#;~gKVZkH>}Z$msIRI8bFzrbfj1$2IaQss9V`JOA~ISve=cNq x{YAzqZ2o4e7J;l6N*fu0w2=`=8ySJL@e6XbEz8|gUIzdG002ovPDHLkV1lc=-6H@1 diff --git a/DSView/icons/next.png b/DSView/icons/next.png index 9e86ecf6472b9b0332d72dd9a042bab6aa62be12..cc35544b3e7214988506aca02f398494c7b80ab6 100644 GIT binary patch delta 617 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 PU4Vm)3!&6{NAy1d_2NA+ diff --git a/DSView/icons/open.png b/DSView/icons/open.png index df9cf3f961e8670a8115aac59e775e44f33f5dce..5fde3ba2947ba529cea3da9f2d097316b2655d8c 100644 GIT binary patch delta 610 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 EFNt<4xBvhE diff --git a/DSView/icons/params.png b/DSView/icons/params.png index 5b5af1745e41cdc0e01c37a6ccc94f40bd91cfb9..ea7c1a0e7110651c6aa8aae38dd42dc96d67324f 100644 GIT binary patch delta 1151 zcmV-_1c3YH3c3l9Bs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*_yzL_t(&-tAb=Yg|p-e3lDJm2}5T_ z#WqZA)3o+{F6P|k&h1Px?@cmeU=Cc~o%8NJ@B7Y=`(r2xn_0490~iq)Hh>XdFn^b%Qvgl?c(5=7Nk!XsGh0+k4y5nRY@eCk zG_xg1&qn$~X7;I>o%Ojgvoo%HEH91+3UD5iGzs7#0C(L95Bu+Bk~e*v0k{Kzl8j`S zUm^KcY>?zpxAPf*pYwppokEg!e*^d$z*&-$uKpOnHvnEsfSD7CC6GQT>7chSeSGe7 zP3{Od=-rZ*CCvl)7r+$BrzK7GV#1#nNPg>NUe1dnNRbExkJbPjB>5bGsD=zgEBzccZ$nyz|$Cz?LrkHL?5ic>r4^jRSbfNhu<=f8hk~ME< zCCS@rT{Z~dc1o7y5dcRLzP~^gDoQ zlJ81dB6&>GKL9S~Mw55r@D1v!nJq*c(UO_{VP;6lwza9>6$O z>fk)dIge03d0+Xo?J+K*(oFuLIcY>ag6dd&K)9K(Z5{8|Nk0LYl{6#ie*==tvh3Ju5lIO&0W?TH z5l28$nPel&vS#FoK(Y>?>^HOf#P#=_BB|l}a%?L&iewYOVE}J*iomJ_9N;+sFGR)o zBFTyaje!M{RR9f1O_HS;n1gF`N_ZcLbOe=UjV#Nixu002ovPDHLkV1g9B5J~_5 delta 1326 zcmV+}1=0Gt3FQiqB#~k#e*gz`MObt}b#!QNasa8W%t!zL01R|RSad{Xb7OL8aCB*J zZU7SrAtL|)019+PSad^gaCvfRXJ~W)tPjjO0000EbVXQnLvm$dbZKvHAarSMWdJqz z4+#JO010$OSaefwW^{L9a%BKraQ`|0000YgMObu1X>((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000CqNkl6oKNVL6~8zT&| zB#5yfLMo6T2*zARe-aTyEoRd$%of&8f))wUA23skuognKiKLCV(S#O7I!PAkaLwQO zd|TZ2)pL(`X6`w6^fGY2aJcVz&ig*+`+eT$dEfV3*=8l97&d`HF%mFrj06lDBLTxk zV*$3;*xqmZpzX~)x;$w6qjYWRF@Ce{gTRNty-j&wyXmzqej&yyU`qw_!)SiJv zdaLcLwvPkxwv0oZm)R9_fG!1Yr5 zYW1O{Ywmn(2)I^yv?@K{4eYKEt`i8LnSlJpS8P9=f7+YUuTw-H1-5Z3x1Z<)SHA&Y z+5Q9ABIzC5mnH49{V#B`Hk-N|N7|syM#Ow+Bf1+v{x4N}2%P1&#v00y`zGw|x@$Aq{(4(iYpROMb?BwdsodtSQ;^DibAJ-}^&d ztoY;fAj{~YkTedg2CzNeG)0!evJ1%hZ2L9f$z;yU?Xu7KKmsK7B6QLA8DM=nCt>?S zvR&-ae;`o<39vnuQlm`b8{inQ&Gu(>3jJ+5f6MHdQolT=@e&FH2(Wzx_#}PI{GRQS z&I9Ld{|y}Im~E?bK9smjO7bj3E6uK6UaYfMD!UBK6TL`;@~cC+t70;(xA0kmwN z$cCaQ+LGpMw<2Pq)OR)==x2c`;0@cSZEu$}Tk$y~>8I3xm!#>+OwHQfVEboaukC5u z?@Llq6#EvNk*a_;FemAe@(kE+Nt!E)f1+KAL>4&^Fp@x3N?auQ+s_Bt}PP kp&?-OJuqyH1PmMh1F@z;zDfN4BLDyZ07*qoM6N<$f>zvVUjP6A diff --git a/DSView/icons/params_dis.png b/DSView/icons/params_dis.png index 67811f26785ef29a24942c5f1d43f9cba1a6445b..277a326663dbfe191f2318d57672dab53db1fcc7 100644 GIT binary patch delta 1103 zcmV-V1hD(N3W^DkBs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*^1DL_t(&-tCxQh}2aS$3MT;U8O&>i4Q$E zS}%bVlu7W#r5BO@i4+7o^&~||1gRL}TeiCoJw+n)5SaMZ!%iZRfF*Cafd?x99O9_}+FVGJx2ky9fg_$h} zrX~I7x*6b>6PSritOwr9n0?3Ff3Jat2;|9uXMykBtNpIq2Ye4~$;_R}fF~lo7ue{} z5!W?*ugMca{Z3*UI0M`URs+v@TTc>iPfPj%z|3CHfdk051Hq%Cq~6;AeB!!04cJ*0 z^?UOYXeNoLB>e?oW><2okIByDSl={(o*Mmn65{+tGwT8RfVG*iwh*`#fAy!UjNf!X ziTAT)-}0xHQ(8tKB;lK8w#NHUcv~^EKHwQ(9ka3hyqP7yufR9JAHY+j=g4(n82A@B z*D#ny-^k2t05}XRWwwmo0ImWfz$May?UBsVDPV`BgOQyRzywf?&X1Pwz!~5T;31$4 z6oB2pDc~1ilY>78{OD_5e{hd4jqLQ+=(m=Dq)Fg}hf2tUQ!w_HZJsvTMj({G7{pQFH0eS1C2696Kw4%mR{@^8e}pzm;0EwH=_}=L zK`Chhm@u=yN$>m#a9q-#nf1Rr!GGLVE@}8AUTCuD%V?KCr=?{FnVGEz_5-g-8gDBB zGy51Aic}>@dUE9Q;mTKvDvffKf9WtYd2x>D3wlNo7fo zI+>QqePz_l3hu>me@UfkI`{OL0}k?`lMcF)xBG!tNo#(*W=PU-6CC4n}_*z|Q5AFkUmUC5=m3U1PWIlOBW>$*k z1&@yT{9x~-=Rj79W_F3$yeQ9A2=aWD2#I%~UVOGg7X3-wy^VHSx&%5cT>_n!yA`5R VFH=CcUH||92>?k&PDHLkV1j)x0p|b! delta 1283 zcmV+e1^oJo3A+lAB#~k#e*gz`MObt}b#!QNasa8W%t!zL01R|RSad{Xb7OL8aCB*J zZU7SrAtL|)019+PSad^gaCvfRXJ~W)tPjjO0000EbVXQnLvm$dbZKvHAarSMWdJqz z4+#JO010$OSaefwW^{L9a%BKraQ`|0000YgMObu1X>((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000CANkle1-uObRUe@0iLND;vgD&np+&BB!^f(xOFI~N&6Le$@OFCP{j>-gpRlp0t zb-;(f(cJh=z>7czdAH&%M#i&I4~s`k{;wr3skX05A-!1unXHotdo# z<|O^)vU%Ww6PQm_YyqClseRhpkAPAHs^q|(z*hvX4!i7a;A`N?+}wE<8V@bfZvprE z?{k-xzSmR z6^x%J7?gQGB9eW=e-wPo}A0&GA0niYN)wPY1MKrqiFt59(jCPbjk| zl6i4Wq2jR}2e*t?X{gzw*3xVLDuB#GCpTz$)toSn8 zC(vtj?I1I=Ex;b&K}l2HdQKq$GkXmfOGI@^jinTsSq=CS*e+>5Q1jn_B}`RST5NxKVlo$~oL!dH*Wa~C6!-+>`td^igH{yzoOoJ>T+cc=l30^8ltkzBY9 zxiQ}*JG#Sj9Y1k~UDhTMKYS z74p~wnDiEktI(*KHEG4|VL}K@m{~oU7d<-Z^P|4~o&$N*%7?9 ta`E|ZV8x%r{o81-(I?Pr^a=DDmjD%_QZI;**}DJ$002ovPDHLkV1iz?MbrQQ diff --git a/DSView/icons/pre.png b/DSView/icons/pre.png index 1eac2f4e8105f121ae3820514bb59bd97821980b..f7ccd2ebfe11c3dfb2733134678f602571a97923 100644 GIT binary patch delta 599 zcmV-d0;v7lEvW^NBa?y@ED!(&VoOIv0RI600RN!9r<0Qq3KxF@9Z5t%R9M5sS6hnW zKomW97zm;gQ9&gj^Wnd}gzUiHf$1H%gxNv&4#wWW%nn?F{VyaDUr~@mQ4}?2ezcI8 zpFDhAsE;bRbx)o9sw*V%O!)=?A_5Ts$reeQ_ZORFOGF?fAtE@PPAvexA56fj0&qMY zZ2&(W48ReRI2?ZtIspH{#sQpT002ndV)X&MlI%y-Q7+i+c4^b0FCwOQFOmw14t-705g-xd|eK<+ijagm1G;S%j=JWacMW>7$Kxa+?E^3k!%+QTJRY|J zL}nuGf1p6JHyVwamwODuh{c3rU^pD6NopT}S+Ca>6T{)~9YE*a3|uqObzN5n0M~W( zb9zQ+z;T>gj7WU|KhNtWih=@Q+xAmtwCi5r;0ZT_$u)ou9zU9OlnVf0Fc`GXKbw0q l;fP45(P;dUTeQ?P@)yW0nU%^g#qaB7| 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 delta 1084 zcmV-C1jGBs2lWV$B#~k#e*gz`MObt}b#!QNasa8W%t!zL01R|RSad{Xb7OL8aCB*J zZU7SrAtL|)019+PSad^gaCvfRXJ~W)tPjjO0000EbVXQnLvm$dbZKvHAarSMWdJqz z4+#JO010$OSaefwW^{L9a%BKraQ`|0000YgMObu1X>((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y0009(NklKX*p3LvxheK7 zo*fUHot+&otL%|RtG(~N`|g={@0mMe?#?(P8g&3=F(EK&ObCn`V^82}k;!IORUGFi zD(i&^^n;a^6>Bsa*MZ2)aCZaFTCLXW&CShWZ`Wqr@6`{Qf6eACNe?9@;d&(LL6Rib zhaHc*5B~&!o4_hCm$GdEkAPRh-mD4&05Y?4-|p^J)z8?g(AX0gIE5A$7o(}EsrP`c z+^E;<*RnRi>-GAzrKP1CS^Mef>Fe$7?SWfjE26vUJl@^i{cvt>?mkchI!+vTAGm8~ zADl<&{v7xofA}-)4mjD{+xvEYe*Q&jZXp6?iue|AADGD*yOR0;QJ9;>A@CjWB4?~G zlvN>1t4)td5jpi19&)ARscaFK)yC4=TIK})0gl~0?ZauOPc8Et_zU=hH?`8i5%713 z7)lX%27CrgrEH>|@9W{WgWrIMzzN-V{S#+?ym55ZbxQzwTdqwWB(+6X9TMH{!~Rb>cE-1zf9TAcw2#nf+`674tztq zrGR!l>{G$J0F>y3F2cgX0y8r+*@jMshlgi7J3IfmzG$iyB5)Zo_9`^N{~D6kB<)Lz z2ldfae*==1-TlbBv06UV>TppJ-?O%6-UA*>T6>2v6+%xHGP4a}1GpopA!$E*GLmYN zwu0?Q(z2vDJvV&=(x+@@>%kmneRq6FdeSS+ipc0!Kw@U*?w`8*nxqEs1Ax2VG_z^o zDe&0Le(9W|nSCCJ)qpR7&ERMKBHut9ZelBnf1;10C_2ass^3;3HnSRVC$;G@aNFHu zAc>;rB-m>}?Cw7XVh5q`kHgoA82Gy5*vw{uSztNidp7j^PkRN{^8`YgtO8%SdkfgG zH<%7V9?(v)T3B`h9GKbd5MbOP(isarJ2(!+vc7-r6x@0O2GUBF zGTuYdmZT>k=evBTYT(ie$OIEy229=uMvV!9QR82fBd8wac+%7W0000}` diff --git a/DSView/icons/protocol_dis.png b/DSView/icons/protocol_dis.png index 3238fcfce2313e054efcc22ea91d727c8ed8c540..b5278b685f83ed145eddffdcdd0b82b7ab57ee4e 100644 GIT binary patch delta 870 zcmV-s1DX872%`s(Bs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re**+bL_t(&-tCyNPZU8E#(#4dE=F^p0gdr6 zTA9O&>K*V0Tqrf+{(v*FvY{v8XzUal6B`V*7b^?I#tP0?Q7zF@q0z(yP%-BzYq7Jq zE_Zm`-LhGnppw6rvw%jIT(%l;U^JI8UJluD)V-6qiW2mk}X zG;lp&TLYc}i68*5AM))QVl zClj*&1itcDD?YY?UvUxm0Ne-C0oy)azL)LW$9v!bo@j%sUc(c3+lb;Ue{>_4%Pj*p z1Lil58gO50r>jA%BpJ`U%0$`}*Lu_f_4@rei<&|VReBz@GW4gbGQPXS^{5y z$9P8y@bvJJ2<`$9K@|d+oSY0F==N7vSL=x(aFXa%p}3KF0#RM+TY{?20e6835!vdP zfU1rI%Xq&=d=y2b5+~84f6y$2iXviwBJkX<)TzXgDI_8lRjmL8`+fzC1V~m?HDm4L zc=v-Tyd&~jpl?}3=AmJfH-W6G2KyI*s`aspcfV+uX2%inBVf@+W&)T~)loZnfB_L1 z1RUTw@HP;|8C4y(WFG>rZCkmSZy;;iHbmrFGmW%LAPeMyvZ}gve`T`3E&E;(kzLz2 zV{MN8-U|5e+k%=JvC#|r_M_o&1db%2s?&J?Ip={5pdup1K7+uDonXPPE;i&_mYhFv zpNQW!9T;W@FO9;!tF5f;KSzlM`MCp3iAYsdvoy%-kiD4(4k}q_jH->wJYH%Y_y!iO wk40ZU|0R$_Bz`CEAQ6ZgJpyr~M<8ze0U6o&qhGQhYXATM07*qoM6N<$f?2eS{Qv*} delta 1032 zcmV+j1o!)+2f_%DB#~k#e*gz`MObt}b#!QNasa8W%t!zL01R|RSad{Xb7OL8aCB*J zZU7SrAtL|)019+PSad^gaCvfRXJ~W)tPjjO0000EbVXQnLvm$dbZKvHAarSMWdJqz z4+#JO010$OSaefwW^{L9a%BKraQ`|0000YgMObu1X>((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y0009GNklA zE2?+EA8?`6g!==|f5gg$o`j>ZQ*2CZFw|VAED#$jIH#goqNPHki3y-$&QsQ6W^q~W zPPn~g-Q>Q>X0vZ5@4fH5A2YMcbzPE-RNM}PMUOz-=n;q;Jpys#T(=b#i$#^s=Pv*$ zr4+8~DxfhxKfm8?TL7xt8`X{(a}^ooj#8#(nHM5%=8CkfIBoa)L$qRE(YcG zdVPOmW256v(s38kT3-Vm02#nj;sTd|yTE1N^ex~e@WXE#*aM!6$fu5+AY2g-V+dSn zGS(OPzHa9RfAJYu24W!qW))AOBSrIiQyfpXQz2{-hwY7_dux~o{04RdI$TWpWCHS^ zz*qj(iiaKGR|p?M5%>T+1kyg)0Vdxo_U++4@CZ}1{#CDI3cO=PaTdCj%jH&p+dlCd z$8qkJ%jKP}8Y7yGtdHZlol;6ga%@TbPJCtrqWb?7e??ebpaFdI$r>E*KwUu;1ik=I zF-Hn8_3)7h?g9`&7Xp}=mFtiOZ|zUwVnm;1LGpH z-HDDP1hm#;zzXKqh=-DhR6F)EVzf%3l87jv1T5K=`Y+Kog+!#PwXOn1`+fzC*x`~L z&sg~wf98HLi8&&#`{q_eWDc4}c?-yDt^M;$K+Wpd!`v^LrrBwV_zAFJBQp-nYOV9u zd4K^C83Y_)33%&^;Oqy(}+0jOxLUChd4fjjoS zDk6J!ZpO+S`@QYc;f?ugY6KI#pl&Z34sFnuet_0`3iF?H4%h^$BBJaw2&`HMi*|Lv zgnZkQ^Bnhxcw0~@>Vr)*vSGmYM7|Z zVN&Z*H?UxJEO_I5t+4!Tan$o)f00002 z)P2xi-Z`WoLGnJ`1b@BA>m08C5 z4tN1C@ZSZTe+yA5CC09y{a-K6`F6M|=X`6juSpFyj!=JA6vga(4>tq%5-^>C%u=0` z_c7`~k|b}I1hmXLLXUtKSen&-kvZQ1FW?1c3iu(m#cGd`7g$=r53wy)dxV@9@H1cw zZ3lF}w=l*IOBa2HF?P_^N%A~*qXinAIYK)85HHOt1Twhucbg&E4_gYSzyFnMn*aa+ N07*qoM6LruV1oSrxgY=l literal 5658 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 MwR9vF;(ZSP6H6b~X#fBK diff --git a/DSView/icons/search-bar.png b/DSView/icons/search-bar.png index ee7e1121a04e4ae9ad6682f9d63ef267bc92dab2..20b94274e45735c4f05fc0fb62a11075b533a7d9 100644 GIT binary patch delta 1463 zcmV;o1xWgy4e$$)Bs(BuNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re+5xVL_t(&-tAd!OqFFAzMhvON0cEJYjAcX zwkALNV4*XlI$L=L%reN8CILVCL2Cic{AjqL$nwyKA?rsv*9te+Mwo5r4?0kb<-%HI zxRg~(P{7kBlEU$vKz*;fAH3+hBL_K$kAoZ6_U@eX?0%p3y6*da?)!P(qeKMve=@X4 z6POneX#(>CB28ebuuRr)-@bj=x^?Rv;|_;oF@Pli76BlDYXGixbaY(zdc7f$sjaQW z=FOXDMnE8(PG@vRMn?LcJ$qgR@F;)>0O$aE0sMU6z=7tHl9Dsw&Od30$fT~Cni{j$ zW4pS#UMJZ>a#&2@D28-hZ*OX9e|o04xHzN;OqS2s74jNzI-Lufo14p0Qc~UrkT&WA z=@yZbBJvA>egH8_sTDanIdu+)BR4)iK5C`{5ONCD)zz)ATCF8Ysih(^;_-MsudlDK z2ha&%VQOmXQ|s2PD+1sIu&l7KuteAO&eGD-zkNR6^eYG@g|=|4e&(`=>Ix(OL>%1pw>xyFc_kpaEDs#`KGRaFZnf3UsZMEXDD-pC5Lbm`KFuIqmoKOf4<%F0PfO1fi?UAuNI zN>5MUpp=RdkzoLT0=PaC0z#@nWo2c0US8hUcDwyKrBn=ncUoIpFSuN;9{^l69AeAN z%zV{qwZ3HBcCNLx^+&(oer-vj8t=yu|1 z02u)86Okde+x_L~)2Fd_@7}fT?d{(jJa}+=Qz_I=Y_V8WadGkEUaz-_q~GYgH%MM1 z=_9Ed*EN#w4GauCJ2*J_Ey?qPgM)>orKQme7L31i!YQL+Z6yGpsHkXJe}8`k$zMrc zGzbroyg;(0rKRN!f09p-Y$HjdCtM_1QeIxZXu1T1y_q|F_;9b^@Bc6{F|l#Ynl&lw z*RM|kpr1N*s;{oD?ysXqkM?>zp63BPXp~YYrEDUy!{u_Rk&%&4YHMq!o=)LLz>I{1 z1f->t#elZ0OaQ8MqRmbrGVu501^L?-0pI@V!{;=_8JHU$BrG- zH*MPV)$!xUHH*bk1t3L@B2h$kY}vAfx~_-ip;~SSBzr_;!?X!7O*)2rBk|#Y| z1Q0X=N~t~o*(5W~2MRL|G7lSL4TgQ3G2TWpF3>3?D^1UBxEn{A=*5<%X+xT(J!u?9j)+JN z$<-pVS}C<#L_{gorj)V+cmzhuiO3QWIT_%jv&Ppr0CoUwP1A((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000GPNkl@G~7^RdGy2Z)*tCyE8JY0VYZ=v5KxQd!dhgw zlvPVmz-tpp;k*mf@B7mq_XWQ@J-j=S!;RPW-F@%b=Xsv@=XpNQ=XstxB_g<&(PAy& zPMLKe*33E(Yb@a!?%ur{n>KB_soddk%m=Ulz&rp1a0S5Sf3B{st6r}+A~9~a8yhxk zh^S834g}+LI^(mmv$J;Y-1#DaM*%zlKnKtd;OD)2_qLXom!FEZ{jd>{u%7z*`iVLY zha<74r{{H&T_i`v1Otrdy58B`-26;gSy|Xx+-`T+dd8oK*MQUMoZH&kTA7iN@jige zz!*rch#VJ@e_sF$0!UCwEzQr*Z*Vvq1gaoJIczNa7jf)Mf{vOw_ZBYq|vC3 z5&%$ITDoX(aIl)>uO!bKf=5W6BiYv0*7gR;CrEaXq_HQQCs|%qRW)y_9Ekcbci_N* ze}2E;|6yusYSYSK%tS(64pKXKy3Ktn^rUxyDL?)P{+&jWbSNTpCp*+gWk%jHsI zV`HDV-R?UNr)X!uOiD@$GBY!^%*;$JJw1J*yr`%s(dYA(8M8vuf$v|h*ZW#kRh7kJ zxiN;*8baYxSXgKo7#Mh&GCe|2?rNmi?M<~jfX1qB6hmo8l@CV4i+0*RTKT=+UE^#bT)ikf8#kipbWD8#hwd^{7T@+U~?HEiGfY zxw&8T_4U04;CHhI5lI{!9gR-QbcB$Zyu7@)zP`RyBzuf?@NRW=^#Wi9uYq8ee=S=U zN3xLQo7=W+ONoz*Hee<3=@5N8i|%(%!rY?L(`_DM#02g#)1K_OXV>bLQB z8bv1gVN27r5lz#cG%h2DM5LbN3K3bMl-eO8qLk`TO4$KC0wd%^WPykr4;rM?#%mG) zJAf8V(?){(R7!Pgnl@t0eprN+g-ilQ01N;)q;8N5;4}ccVK*-FR*curUpLRdoiJGz zng|D_)Y|}F(KM|az&a6GVG5NRP16Pde5RDzp_B^wpMWvy>j2o5Qo|9&dI&0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re+11*L_t(&-tCxwNZe%{$6t5TO*glB8ET%! zsIa6+n!&Ry3{9pZat3a2LgrWzDkW=)h%>!OcN_j7km**5f4D*3l8)FPHfqH&^d8bm z+O#B!w%z`)#ci4{%X$6reJ*ZJZJu|YgL}i5@AsY`pL@Tb&*$^}(s?`{?q%phe@!4P zAk+lH0zyq-rHELmfvl{oO~6)QBQOX230!wL9DlEd0G+?nXl`!qdLhJ91qB6#z!N|` za0|E$$f2R3v*qRG7uKYJtgNh(M zMm04xy$Kuvo>YW?1qOg`fZu^=e_*@8VCd@Z?k+GG4C{g=VA&p!Qf2}+zzEC$o#)S= z{}>nnqEb^+pN)@?e+75}SPy(TIyzcWT3Y&ZFa-FM#Jd%FfX}L`s_GpM$2D)I(P;dn zqoZRqAtB)dU-Bq-fWLsBfS@dF{>(zf zz(;6Pr3(hXJ=;*tO)^SWn~GarKKl;m(b$- z67Uu9J=%8SIY0pS0h4aGyLotc_=~u>xY)tL!M@|ij|ViAmMtJMGE%p1-@f$y`}bRc z=Yc4+yqHmfqEyqHKpSuts0AJY4xK!C($?127O-&gdoNT{Qj$_pe^K!&@G_8ywxOE? z+`!o6Vz=A7tXAuENCf~C6&0;dOiX+cif3(}}-Bzo0c1;La426Y-5j8b6g}_nZA)l&0fTQQmojXxeQ#0YO z{h*)7>~{OC#bWssco+E1rz#G3J0~aS4U5GR?XUfyd%%nQ{QM1Ovw1II2DWi~IK3x? zXz|DHs-21Z`ub+7tE*1|Zvj8d;}BC@Tk98>Rr7!sd3ky3e-0l$yc0MEYympXoH^6n z*w}c(FM}SBXVssKjEr?or*pT{=`63StGjKU?~sS0H+Y*!BCT23X4voQc4@J6WAq$81N}y&@)oXdZ0m- z-2ir>UA^=Je-mhnR;K#y1D;u+U5ami-~U|fxGd*q5^~v6GDhgMf5b#BBk7ccDibi zQhL;=B?FJ6LQWBwKXMn((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000E$Nkl9m?96pcUf}Xp1A(t@#JJvUX#7&(eye zP_ETd&p*s|3W-t3^~dvE9m(Yw~zJ zSAvyRtM%iKj*gM+?Cke|0^rG2t5y|Qt=6A?KHro9oTnk85OTR(si=_!m8=Is$piR& zzA2l{cE)TrzmEzp3$U8$d14qM%>gs8M899Et*yN>e^aCD*RKaACnvuJ{sv5_8EQ`Q zAW{JV)Km$OX1CjuXK9@q$SBFp&ArV=Q&ZDov)Q~E zCE!osM_^7CwrFOd3g83OROth1+S}Vbz*W?M3hw{SN@$vCj*R5N3(pc&W z5eulQf2zu^tgJi&ynu@D^T3zDcc|^eGk^f@0ml4(|AC>Qq0cijGc!(|IyG?k@L@wk zDPjT1$;qZ|+qUIz-@e@mJPV|t@?rudC`C8D0ki?ffJWdUU{_C1kE^Y%&9HEadM~tf z>(;!Qnwpn^7l9nqhHeV*1LwxZ#`>2oUHT31e=cf0FaehUhuiJ$ayp&kaTNftY15{K zIXO8G7Znw)uv)G60XLJ9k}h_2b)D<)@4w)7yPpTzf!vU8K44#OZ||Yj*4CKADJB7- z$j{F=0}Krf{kz&$R8*wZ*4Em9T|gen3!uET)9rS5JDtwSSiWnRfN&@;FHdS{XebBv ze*+JMRQ(R@KYsl9k%oqb(P-_@`H9T!c27DSj!%HMfnP(aGJ!XXii%!yI2@_b+Mja| z1W{UAy2x&~ZvpJU3Z{qCJ3@$q(b%20Gx5N{z(jq0{fEFC!1uRsNNa3tjEc*=c_4_A zl9B~`_Uu^?90JmTj-yA99@x8g@3p85e+B}9d4JZdS+l_F^=|Zfz16#S@4hz{Tl4M# zqjA^Y3nc`^8!_L^838Hfa^M88QwY%)N#C#nLX76=qAigcpAXFD0TZZz2w~EMnzX1+O$5~8=Ab4GFswZpBoDAm2$69M$!6Vm7})WD z@0=JIbS^b-?+kYm6m}v_=tjjOn z3HezCgdq?#-Y0}G=_f diff --git a/DSView/icons/search.png b/DSView/icons/search.png index 3ad1068b576a3a7223202518a5d792bb2d9f6013..5a67758ef6a0fb268a29a71f5e5dff8a632b4f71 100644 GIT binary patch delta 286 zcmV+(0pb4p0l5N@B!3`dNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66lK=n!!bwCyR5;6}k}(d0FbqYXm@;JSz!5kGV`s#` z0hlW;)RR=5GqNCc=pi~VcA(2gjgUzy`Xx(|zyFtG8@_PB1%C*@tO&|EGAMx&SaxDm zjR_ZtpFj_IMX%gyVsf{B~M@%Y-7vK$a kM@(vo&BOW?ofpK{59G{9p+|NA^8f$<07*qoM6N<$f>U#KbN~PV delta 223 zcmV<503iRl0{a1wB!9w5L_t(Ijir(y4ue1tMPE=WkQE$(V<4*uf&-u%F4U7W)hjV1 z6+J`+vVxjVSjeyt`jbh>{`rrA9hl{S8{mOK<#p!RQ3iCtxKW*YOt~QZ1{xq$H9DIh z<|J(pP7OZ|Agu-PGONfZR_gJVImoo$9!@c;ccCN_I-~^X^;mq3^i5uGnScMp^);5v z*H{MO7m*Pf diff --git a/DSView/icons/slider-handle.png b/DSView/icons/slider-handle.png index a23b0fb73298e546af6a6eadd151405665146a45..ac1f6e22cc975c9c462ac86c8de49a56c72c80b1 100644 GIT binary patch delta 1191 zcmV;Y1X%l<3A+i9B!3`dNK#Dz0D2|>0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66lK=n&L`g(JR9M69ms@KcRTO}~wP)tcoXLr4bFr;y zJ*`Dc>4O)lw%VVdB+>_=Mewct3nBW#k3T{~JnKiTb`qtWO&)Or#7}m3?b+!IKz`p^&z8#Z{ z5A?6<{Y{U2_8*SG_&~o4^Z>m;C*S}PFa=x(CV=3!1B?&!E1(Gn~xjIIWD=}`@j$owwha(`x0iJ->2*KmvTd*^3mv+| z6^Gi5ktC?qPpf?XdEmC0k2?@qvB;cBwcy>i70qjvt_?BXJCoNmK71F-RPvsN>|z z_*?F_ENveJb^)>`03c7C?DIREZpSMiNduxJGrp80NYcP|8u;CJb`vN2fc#nk3MSA8 zoVE@T9e+X)Lui(lAVzeE<9CP&^Z}r-l!2DJAPBYRL=+VbBr>2^Ub@AKQDS2viURJc z0YpTGzkMP~0usV02roerg4K~OsnrfxU=;udlIe6{Qcioz#po^Q&`p9y66ZZ@^${5S zvr^mXc|(T6UbF{63C#2g+_%B&#VDV!9{w>NhJV%l2fvoFvwaIf*eVC)osWluaxMBQ zsJ3II3v?c0H81<;NvuHUG15g)ZKoC{Uw-n%Xk#fOEtBx0&qvIUH!EjKL(?T=ZwGr5 zXb%zvF$*P8>2rG%#@xDBVyD56`^v)`_c=wD=Azngb#t*&zA(x0(2blY^&^8MAlyqg$Wq z+4dmH8HHd1;u@F)!~)v~w+Efu%EYxggXc$1zIb}*)9=nr#H~DB6u=l`M8p6F&;u8y zsz+{JI`(oUtlYnQ zinwGk5)qXFdO#a+hv!-wo_=ie?!)^xKYLe~`;eQr+MPC+s2UJ9lFC>qIDg`Yv3EcG ze(cwJBbfmzK#jB_CUd)>xfrzq5WoU*=>p?t(w0HxdOO|x!3TQoJ#}I7%4n%k&3_El z=1EApKg?nP_9BKEJKHyRt4Z^lY&l}m(~bi;*QWyO^>0Q;vu8)31IPWVCZe zL!bdvv#^$dY0_g@b6*B#GtYx;tZtfb_n!T%KAhQ|Ft?YU>)7LZLc+UH!j4zr4 z>C!KJZ;@-6r#DT~tXt5UZLaiCx*+VNYi;ZPU$E`~e*-^*9`$pKFd6^=002ovPDHLk FV1i77EjIuF delta 1158 zcmV;11bO?r37ZL!B!3xnMObuGZ)S9NVRB^vL1b@YWgtmyVP|DhWnpA_ami&o000C% zNklD`iRtcUZEIT7TC^;E@PqZE>Yt#j(g(pJ_}2XwNq)&kZEM`LQql#}PnpZ5+lC8N?`p zAwonMaRsq}@YkIH8dlLtBPNB{m?ly9D4`H1rcFUgA%dVTO?Jj`p}pH zTR7Y&gWx3y8-E94=}lwSXa=Zl0U;9Y6A*z+gw@Kk%^TOAl9U}Imh~a(E3 zLhbnjqS<`SV&Rm#Jxf{20mJfv7+kFYfCQwVNWzAw#=yHe$9=CkW5i;IQ1@bQBnC~w zQ5l9WI*yo1?%GZ55d)}I1A{ctHj)rQdsNSA-bytfk$>GuW69K%($je|+&O^W6C8FM z5ubK58OmHV1ZX&lFzsX~_5Oow&#U(=Rt0zKy_5=bTIs7u4|@>BAmUHBDVAnV0tj!R zA+C+D1m2c2Sqt3s-D#!YUS~)G3F(WcSv*BlsKH0i1GzR(PRTPjMU=i;XQ(Rh1L3d` zvIew(D1Yz7?YC}1aXW|!67@0u_P_)PUWMDV@CfAosd>8`Codr}3BtjUl(6I~x8Xi6>tsM0E(Fcs z@9RO(*t_prGXL|G93%(Gd!H8ksuzCaHm`jn-ll?tV?@><4D?KmZUw`&h zu{Bf@e)8p<{N-BhR4HF6NplCrYcsSX!BH)OTcPIFdz4f1r9!3j`(oqNoA3T5hphtR z?T>Qh3zy1om982f-8~rEEY6NVJFf()bJ7{rvzo{EN>0fa3QKRibNtfcYUhBtQUYov z@_*Z(OVKMQax;geoSb-k+w++#Enb^1`LoA=nt%V}ALsvQw)hh2)DWKThBXA)zF5#9t65RWIqCCAH#rx%a20mH|Xt%^w*C13V&i( z%04~vU9qU&ac#)&La65luL8|>*{JeD)pA3JRULN~{TbFhs`}+qApigX07*qoM6N<$g1p~1PXGV_ diff --git a/DSView/icons/start.png b/DSView/icons/start.png index badd73e5d6b54eab43d63ea2571e3250d59577d1..bd42b6024a2bd09ea86c3cc26ef3bde3e655aa4c 100644 GIT binary patch delta 1019 zcmV0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*>6FL_t(&-tAajNE=xcJ~vwl2u)#g|!ug(js}N;6j7D?t-{!U4*ex6JsN$ znyS@7YAgsf+Qd>#(|ArFOv-dV_D)J*{qscKzaUB8H;cs~#bc-(IHk81gfZK?@89?xYu!prUL z?b}|jx0UDl@5)Ai+wFD}5g{TG5vJ4WXJcbyS35g98ygxLEM+6$@bK`EB*$_NAUw^E-q1g^daKdV}p0Qf3-*X&SZ@1gWeLmm6!C>%7BofK0CNF`20!~&{ zRXJTQ*IB32$=mJr2hGjRV}c;OC>H?*d|O#r`EzS)tE0NQ`n1>Uy+1QEf4j1>vYg!6 zNxm(btpqvnDWK&2^R=~&>z6KdoL92GUbPSdfc#bP-4AtjwLjI>InF5|(zBRj0I<2d zymsftjo*JAA0HGLW2{&bJ#qj5;9zfW?_qCm@7-`X{CIWs*=8cKnNvbkY5|#pgM&yY z6nZc*F)=wXFc96{-BlELf2jrJa=F~v{QUgXkg)1#WW6auyu78YjX z@%UeUzyCi$5MFk7cOM_SR>vqJW-^&fOccc{EiEml%Bh&c{r&w7Q563e85s!-4GnFq zudlz+YI{`+C>(tzlgR`CucxM_{vI72y*E8Q9Sw)WJ3gOJtJsf6e}LI+CICopZEZb@ zMx%lL{{Cnz7F$gwlc;Ir1*r9)%jIhE`~AOlbaY(M%IBKqfX!x`U0PatJUBR*F3C48 z10yp2oi+rNOaKvaM3jJ|QkVdsP0}AHq9z4=MbDGstCN_BEC4Xf7@GlrTG?<709X{P zuXNr=ffdt+i717Le@%rxMC1@LA*mwT5b>Jia|#ig3eO>8JpbyH&r@=Y7WFV9S`aZL zUo;;fF!rv40t$pNPPf08zHMN#B2U2;9e6Ub{>{FIh plmo^uvEDEQ=nX@F-Y^8{jrT4+SXU#WnBf2b002ovPDHLkV1fk^*`xpf delta 1188 zcmV;V1Y7&J2;2#fB#~k#e*gz`MObt}b#!QNasa8W%t!zL01R|RSad{Xb7OL8aCB*J zZU7SrAtL|)019+PSad^gaCvfRXJ~W)tPjjO0000EbVXQnLvm$dbZKvHAarSMWdJqz z4+#JO010$OSaefwW^{L9a%BKraQ`|0000YgMObu1X>((2VQFn;e{uk~z_gD5000Pd zMObuKVRCM1Zf5|%8|H@q000McMObuGZ*_8GWdQa6gX;hQ00?wNSad^gZEa<4bO83u zmcIZ100wkLSaeirbZlh+sP57y000B0NklB2}%ctLuAF6rTkG0gv15{#q?xf3Zz9fyd+dfsXKYdwcu7 z*XwQNdH$>GbQdv9Vj7ot=#h4Gor4BjE7x@Q@_PX0wsGxw%e{ z$5U%Io4?RYz!|-2tD>T!(cy4hve|5HH8nN&c%FY5i^cxdd?LM8K!W$FRBCl`anaw` z*Y{n0eZ8iuf1%q7NN~n#wO+JZt>-w7tGCIyyfA4=G2*TU$?r!ba_1Z=eF_Xz;VxlPCY-wpZujTPU+Voff+~42d5JmB~k&%(W z(9qDv`uh66I?MwA8d#{X^_fg269D`(H8u5kbaeE=^z?Kz91idJd_L7l{vT8eFq_Q; z0O_r*t>2^3XrRBpKN^e0R+GsjYLMTjq1J;gf0wJp@Av=M(a~{5FQ4mL12&s&c4=wp z)!^V@T8kgFSTLgU+i64bc?lpQj))R)bQC54Xp{8EiKs~dU(s<=oVbXI$N~VvjIkL2 zsFe-Z0Dwio{7U0KO01YROhhR}Y%262B8P|x$tj`@5pPSbQ;679xDOHI`A?@jPRTY} zf7H#0XhFn~eA0Y^iGnb>C`1e);^lnbu!QfUI3=y98eoj=F~+XI(bLpJBKnz#IN6GR zuo@9ri6|@^|5KG^WKg^d$rE9WSr}s+9C@0{k6QqMJ1+j1IK_#a)IM^rrzDn458Xp{vQjj{lv8c`NtH2woFJy=%^`nE;@00000Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*x7=L_t(&-tCw_Zo)7W#=jR;?Us&R(jK5l z9g*k>7+ErRsKhmTf*v6k2va6*fRJFS`e#Qhl^81eM{0-nI^fU<1&VDoCdHqGK=zCC z{o?nG9TE}LS%GT<9>BE$58&Fs-UA%y1QXGp8`53YwE&9hbUIDXyNy(f8X!l zWmz^i9l#i%*=(M7yWIr9i3Py(Y&N^fvTRs602cKV649~g03z}M%Q~!m5qkjF@&K;o z0bI)ixRwWSEf3&YwFj`-PBVZv5qY&3;~jw2n>AyA(P;FPB*`^^Ba8cgj>qFi8vxQd zgYM#)SPNhm^?!@Figejlo3f<#e>1Ru0L&aQ^F)3W7uxTcxm6{A*8c!AhX7I{8WPdj zO7|&%uuAg)76nrF*$|(K$V>4_m(9v*8#CXmiCxa3u168k2VmxqnFl2))MDm|`p#og zWgyO>3jldv%FF{byV?NSH4p^BJP3kITCB4@5xHgNXeBHJ5Q)fxGB5=IZX#O7<$VBp z03sNspVcZXuJsLvHw0Swlf+2?0000 delta 729 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 diff --git a/DSView/icons/trigger_dis.png b/DSView/icons/trigger_dis.png index 0a0ed1902c082e1d10aba566978c78c98b63b0b1..9c804d0eb81aea468c80b574242263ef78debcc4 100644 GIT binary patch delta 758 zcmV0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqa zx=}m;000JJOGiWi{{a60|De66laV1Re*%?BL_t(&-tE}2i(FL{2JqjQ5D~&ASSXrZ z!B(&n52m(Aw6HRjZ8{-{A{I*4KOj{)WwEd_X>26HLQ(|7DHJTUQ$#lwDZ=ic1~$gA zxOYexc4l5?p8Iym`{2RMne*;B-#y>G=iV8NMk5Cqk9D0uPoV1rdIDW1&=cr7e}SGr z*9koG1P(9ra%R4PxAAx#>kfXv2NAKe?+M^3yo$fDg%dcoSINU*-eE2?-@@}#eh$2j z_wXgYz%$su-4^ouH6lKr<MD|+$MoBi5+Z4#J`IUl9|J%zK?bv z*aag+Mkg|J840a)L13iF=S6&_EaF87>|nJ`0>>Np{8Izp!xNQ68<-or34x2IH?o)U z8lF_PzN7d9pJ}O)&2yOBiDw}*&*BrMfo&@IW*-zW#Tf19|5>zR3E zuLvwvf&G93-v@dEU85(^H4Z$1rO!f{`3gS8sfgIzHv}^CH>^#V*CXQN3EOIY)|6}I zo?>Pr%ghyARW2xJ_By#Hcqj>F<|@9$P&u=o#8^V7BjQGt)D;}7uWjRW{XA(uiwo{o z`V4MN#+W6|MHlf;5%JvQf55e37w~mN46t4k*`8v52OHIP66f8&3+x)BEdoDIv9Htw zE{~I#VP8|Kx1O1!I_u-LG%H3c1g2rAEaW%q_ZMc^xA8kJN5r5$#}x@RMyq$?h!|$( zySP$kbv%nhOxlNv<}XznMOqsV6Z3yPPG{yNMHZ(bVmQyf2-^NvFhXXYS7wsB1J%mx oYF{>9f1&9bJ%OX+WM0ftr9{JX?8{Qv*}07*qoM6N<$f*FimfdBvi delta 920 zcmdnOc8Pt0%ETn~dIt6q*N76w(vpn)B8HXg&Ui2|Fz|qcTvCgZi!uvJGV}8oggF(J zf#O^sap(Mk%A(Blj1q=5{Aa9yqI_V{qSQo?QiYPt+*AhB@BExV8BUN)aDG}zd16s2 zLu|o+kaBLY;hDwBIf+1}^+gQZ4{YfNigSR(!xM}0GV{_I4oE+12a18+7Mx#Nl$^@& z^?&ngm@?=5+}zZ>5{7SQrtJrcv4OOPWR~QlGOT!aNu7a#X|AV>V@O8h+Zh|Pg9Am5 z)n5z}RMF+@G82qpHUF59-X6xTZoRWi*hQqiFhJ^mgI}IkLBXcjm?e)C_>wG}o0{{w zGD-?2JXt6flr3|P_p1A+d%o|C&p-J6z_F<4p6&D9&v$>nGdpPc<-|D~mEW^C1qz&y zW^LR9r3}BZs5!-jT{S*XnJ`^Co4JBBMs#9XMb%3VC5AW5eoXfp)C`z?dbKJWf^O9( z`h}inZ2$d7=RoEIqXPLI>@p0m4y3XD+$%hBwUyy|5I zBa3iG)ej$r$p`#$WcRRcYnXI=cVSLa(4F_f)+M}u`h?sb@v5zU&$In>F2nT(ZM$=k zLJZ0m*`$;{72j|SG5z%Q@BZHo{3QmGXIEr()VG}42UPGP;gcno%>l8G1}wK6j$Xgn zeqc-cd4BN8PkWh8z<6qqZSpTv1)XHmcJn3z6xF=D~bTC~p z)RyrMTm3VaC4%!VCA{!<2))mIb;eFLCG(_hUDc~@Y%N;ik(072icKy_d`j!YR8t1F zNfTCuHKaSV%)Oc3xUS`yYsy{EEZ!MK>$f&kez(kvXPI_$-4~_}a{Uuk&L)a~%oem1 zk-rg|BUz!Mq`KglQ0CW-@hq>-nQ`lEtQCJDsjSVk{@0EA(|V0p^Mp9RX@%{bwW@4G zpN`VRRdGz$?yMCJY>YyZ6#tn$9$({#HrCbjC8^J7u*S+F$n bk-IJQ+8gTe~DWM4f?o@;x diff --git a/DSView/icons/wiki.png b/DSView/icons/wiki.png index aa9d2d58f83f40e9c4c97b40ab0e58006140424b..4515019c3d72c3eed72d3965b5f7b72ebc9a2e25 100644 GIT binary patch delta 2780 zcmV<23M2Kh6yp_;BYyxOV@Og>004R>004l5008;`004mK004C`008P>0026e000+o zoVrmw00006VoOIv0RI600RN!9r;`8x3T#P4K~z}7rI%}rT;+Mkf9K4ZbLPyi_&- zA;iZH;d1&Pf6GUQ1kkeWt5*~RBH^$AwEgOxch*%ZmGp*n>wW^1PK}(lM@LRGI5@<` zi{o^p(@YnO%zv3X7teJNgb-ffA`-&&TtZ?9F(l%79-<%+jm4QWFmMUr|BFaC9R0;F z-@gA-D^@_~I$z(E1|9tDyZ@%*%``*~Fal^`+mfnz9^GAOy z{J{VlHg25ry}$e0W1=7=&!4|QRE^-eE-(K06=YeaJ(A(GNzWdz1 zH~)3VOMlCjExUGT!C>rn0T4p`?;})Yxub3vrzA=0$>wsjCldVqbI;M+)6JugZFz4~ zu~?v5sgg>kX|-Aq1c;)D>$(gN55M@?wQIi(OrJRQuK7`qPz3OOA61s+bK@6Yh(sbi z`C<_f5m}P(e4hut_z(c5W%BZ?uTjf?(EqdJ9?BK{^&(E-uDGY zMou#_dWO1g@ZbaYvE&m&gd_=BR5MWu>^r3?X|N7yF9{MMsa`N=B z_kY0-2$zLO$>sBVQ>oOg;}<6gg+k1pJ&V8i<~P~3_vd_S)vZJ#3ZC!Nnd~5yPBUlD zH4M&QKsGzU!UYTHNTsk$6QgP1dOr9ro(F#5V>I-0zy8%b-+Fw@=AA(8x2I0}@6&F)@XmjGYwO}g*B$_LAP9*d zy!QI*U+wGbyR%d(qbd<%(I|$|WW~x=tXO_C2Y+*bi`g72SFB|2tO2sQNerWj7k~Jq zI+BEh5dXes52K@_NRmW69!C@fl!#1JRguFovZ9boB>I+IfBmKn8`j?(mgR$o4;?BA zA&@WTvbz$A*P&Xikbg`hY3MqEAad@)IJd1{Nh}uq_2QvL_lSTTkH?2B z%ffeD&R-ZOmz%`*eNw3oR8?i~o;_5mRbGDO6|&hZuIth=Tbv#p#kL(>$EJ`kkS`R7 zMq`+!jUol89BvGPTtMS_tCy2#jba!{NaQ-~{XZDfoNRiFu5JM7yAfVT3BogiP_4ObKBAHAE zMOLWQG-O$(uGjEgkE&KBEX!#?k^nIj62gw-;5Z(gU0tY(N>qt5Ri37N)oM_K|p{cN_c_qUVoVdu5DX2Q4~-V zg>+|{_V#vc$060xL2pkFK@d=_)^R ztXg#ox~}88E~aJS`#zRwVVN!BZ82=yt^uwHIE{vJPF17S>veX%wUe|7R zJ3B@qkpO(kr81+#Cx6Liv-n;>Utfk~GKnCFc&LN1pllj)+-XkeNqj^`0?Yk$MEO{S)c%paUjUr#T` zjvw0x*b?CH-LvP7!3Bd)btDrkzV12{MaHr$D%C2AqL4@?xa+QaXfzr$bR9JsrC}I& zo=3H+F>Bx&blpJHYPhaVB%;#a-;bdil(h=gs)itdqC~j!_D>TK@Qb}ae*^HZ%!1ft zp>RwJhvywXaeopu8bOg|Dw;+rnM4o-!r?HAq9BSQEz_i4(+C2X%omU(2~|~rfN(g> z=~Jh#}fY5su?f*Xxu^6`t7q4Lr{sn=>%$dce41NSX%@?0-g8Bg~x9!*BNQ zXEL8Bsz%67PSR>M$xTj@&E=_7tBj6}5{*Vtln8U@%zvS(X()<3^x?Lkk91j%O!~ftmf642kRd6iX#z^JAOWw^~isue+C_p&`nZ3gNJXuItDV znW?EMjvP5myo?ec8agQ_Uh->to_V(&wuqedg5Iy(?)OTBoYZkQAE=;qR}Y6 z?;}ZJg21O%t5d7jP*oMnGBGWidc96=GDlY`#aI6H5!zyLcI?=({>zViX~%eW!Uq_b z+5dik%MjAG?b|oq_UYSR1{fVX$Jp3eEZe3hlcCvap(+Ymy^bVF5Clw5myi{iW~+tS zGJmORRT_rDlEv4u?sK0(6hz*B`|XGC|NMQgjb|s``$t?A00J_dUD69b_`&V>uDf@e zs;X_}a+wn+hba__=z4=hq8$L&_pwcjhS9(>O)SSD@I7YEn8B(Q%UL*oK3ct||7`pA zjgNif&wlxTi+?CU5Crsebqhf1$g!g@Tz@k#@cED!qFgR>F`J`UDp4twX|`H;o`(<; zNyOXf@9$&wzyN)HJ-DvN*|TT=<>nigJqlFDvlGDw4e5shTuSK6WaQ0TwhaEsrUxFM zF=OVv(Wsh$0N3>{6$eB~LJEZlf`DeTS(})cc=IR!{QCEv|Ni$!#FK#aR^%=K%d(~m`NH9&M~)nLdh6Cxfbqe0e<;B35yIt3 idPT_m%NhKx2mKF9-%6X|a(5m80000feIO{0PD`sDtj=^gR+)~)2Rf8I0HvUlA)x~#ifCShB!o@& z{mN#uue*19{(qElre%uOf9KBKoxS%z-}%mWzH_fkfty~kFMkgS-{DdMKsXlr?-6A( zXjCc|H0|`qAFuIxy@s`G*1QG4-8;}98yx6IX{iNcV^@)BFu>(-pk&r8B*Zw~t3V?W;>kMTyxAIc~gIaNWsM|J)D^hx?Z;U;f6z#S8y%?!x(w zT`#=QSYBF|bAR`b?^gc*4BTL81tHt!biQvi8kYgUp67RA)#^Kumsc=r{rdHPy>s=Q zJ+Hs^+8#@3X$JuRxt?z6I{`p}Wt+EbDVvT)y97bV7#46`gFW<-~bjaT6i5`W@aXVNJqf$hfbHulnS=0s^+gf^!D4ATH4xPsw}T8 zs<2ozH-8O4k|Y*f7`{6Csz#$R*+|WD`UpxT67=7LO%H*sNHl^s{`Mw({z+UOx&oOT z&}uZ0({&QtOfHATVtKT;zklG}!-sdyE59YLvb^hhiL>+mSb=FUY{RyLxM2tv~#h;j*XNu&g{#@p)ZUi{?Zr_CRo z{(t!SiZV+ZfWYUyUtI4P?u7L#R~EG&KR)L1df^ZFAtfXf78Kyu+qYxIsvjVkOrW*> z7#7qlz+)R9f|_Wzl1A(fH_9z@aqQSJF3{PtXQQa7h>JEx<|fAD9JIub1Uw#3cUw#A zj(vOgb^!a_0-c?yXGgD^82`Zl@u3)&|q}* zDuTf&MmOKQbWSPGp8XdNAAS$#&!4CNf;^x`tA;*34e4ogr0X%$JhSGJM;|?Yrt{2^ z$2M&$`-%Z!Y~0$e*JrG>5&d0fI&jAwt9TX!h>XX?Y6?H8o&<{E)D(PyNo1s_Lw}NrsygWYC_&2FdG zOhF_PgHlj&u;FM7L={2=Zs^JtTz|fD8G>4a>?}hmi>(BpR4P^35xOuMk78NfGGt|E zVUi(ECh5X#$~b_}Kl_YOrywUM2YDtFAWI@j!L8(sB_+j_oeV*`t}s6z`S~VFAj#a4 z0}KTGOe3^s0Fs!1k4ieDu)x4#%K^rqOcf`=#N!EM8;#JawJ;itn4}CQgMWT%#UJ7O zD^{Sfu@PxhPb)DrIyMfM%Z&sHc5L(-KbKj`$g)+4Q8FI48wx6op7g{LnWpxhN!?}2 z%O{2+P{`#f05ZlvlGqkykO@pUa+wNlj~nzG;cx^F3Nk$%hQW}@DYe<0v{4~61agA1 z&&|z&N~z>p=ZmMpmq zOPAKMZs5TqOka{jLXFZ9Mrv9LYtsOW%>cxwrb5GPvq@5KTWcGJE`JX(5ERr$!Wn{I zuLmFztsV^aeZhq&C6ZL@Tx1Z%GE#R!BygnmZQHgn8>b+8GO8F0%;!cjk>o%xUA)M} zP2h%EYz83abUHdzN(C1gvtor(MQjL2(dh^|;P?8`(sC5X+S<|4(Sh?9F7Wy$C1Aof zK{}a4rXhePU#%voAO|{+dEin20)@VdzVi- zqPKG1JRY3dlC>VsAXT4=RjXFx_WBj5uU`qX+021bnYdwPQ*fpOzdt~f$H*_V+!51L z(*a&SKY2=s_SN7Hx}WLb z-F;u5hSObLox8MJ4b1=(&USVZwKn!JLW-WCZkXn0>$r`xGB_|uhNI&d%_=G3wIu=b z-vJuc!B7yDw|`a<;B5E<0mc*s^`WkAF)}mt=<4j+#bRCu;P!cwYu7X!b-Udc&E^@% zAp_|nRlD6j%2>fQq0{K#aM&<0VdM3^di5H$tA_(MP`B_brl%pO1*&ryqnuAoCHaES z>qBmi5%tTKv#z<=_`m~4uUfAquLBT82@bbAwDlKT8-G}~4QuXU4;G;5$esmxI|&+r z_jpfFH+4$@-Q5>RNH!2_JVUq317>E|tYlDjCu=acqC$$p#7@ z`q~2t_Yl609yv17-qzL-jYhC|VJ(UZ^AV4U#DoW4%A%AqD=)8rnH;TVK`o5NTxM3> zZe1Q1FMoxMEIJa8a+ZciN064HL-XU0KuaZRZE0<2Yi%95;WHtzAT>2MwVXb6`eAyB zAi>;9)@J_Y@x0UMRYL2T7jRblIvW~9=9I(hQs z!#~@wv4ygiZU_JzgiE})q2bMU-hO8_xmD0YeSf=TQ7s87i|DoTXMqUp#RPi$``%f&ptc!+ zmw$=w8@(CXoDMbuJo&k~OLn(VsfJq42!Oe! ziylb2Kk4b|dTz&#UH~CR_Y>Qn#Q$34dn4a!@x;HTA?eE_iEp_64Vq~i8^3Wd_5c6? M07*qoM6N<$f?09)#Q*>R From f3023e7917e20cee560a9102f1ab081907c47c4b Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Sat, 26 Sep 2015 21:59:40 +0800 Subject: [PATCH 05/25] add RLE compress function --- DSView/pv/data/decode/annotation.cpp | 9 +- DSView/pv/data/decode/annotation.h | 1 + DSView/pv/data/decode/decoder.cpp | 6 +- DSView/pv/data/decode/row.cpp | 5 + DSView/pv/data/decode/row.h | 1 + DSView/pv/data/decode/rowdata.cpp | 5 + DSView/pv/data/decode/rowdata.h | 1 + DSView/pv/data/decoderstack.cpp | 8 +- DSView/pv/data/logicsnapshot.cpp | 10 +- DSView/pv/data/logicsnapshot.h | 3 +- DSView/pv/dialogs/deviceoptions.cpp | 99 +++++++- DSView/pv/dialogs/deviceoptions.h | 6 + .../pv/prop/binding/binding_deviceoptions.cpp | 12 +- DSView/pv/prop/property.cpp | 2 +- DSView/pv/prop/property.h | 6 +- DSView/pv/sigsession.cpp | 20 +- DSView/pv/storesession.cpp | 9 +- DSView/pv/toolbars/samplingbar.cpp | 78 +++++- DSView/pv/view/decodetrace.cpp | 12 + DSView/pv/view/decodetrace.h | 1 + DSView/pv/view/logicsignal.cpp | 1 + libsigrok4DSL/hardware/DSL/dscope.c | 10 +- libsigrok4DSL/hardware/DSL/dsl.h | 4 + libsigrok4DSL/hardware/DSL/dslogic.c | 230 ++++++++++++------ libsigrok4DSL/hwdriver.c | 4 +- libsigrok4DSL/libsigrok.h | 15 +- libsigrok4DSL/session_driver.c | 12 +- 27 files changed, 425 insertions(+), 145 deletions(-) diff --git a/DSView/pv/data/decode/annotation.cpp b/DSView/pv/data/decode/annotation.cpp index 32d38970..9cd82f4e 100644 --- a/DSView/pv/data/decode/annotation.cpp +++ b/DSView/pv/data/decode/annotation.cpp @@ -42,13 +42,18 @@ Annotation::Annotation(const srd_proto_data *const pdata) : _format = pda->ann_class; - const char *const *annotations = (char**)pda->ann_text; + const char *const *annotations = (char**)pda->ann_text; while(*annotations) { - _annotations.push_back(QString::fromUtf8(*annotations)); + _annotations.push_back(QString::fromUtf8(*annotations)); annotations++; } } +Annotation::~Annotation() +{ + _annotations.clear(); +} + uint64_t Annotation::start_sample() const { return _start_sample; diff --git a/DSView/pv/data/decode/annotation.h b/DSView/pv/data/decode/annotation.h index dcbdd5cd..a2676bd3 100644 --- a/DSView/pv/data/decode/annotation.h +++ b/DSView/pv/data/decode/annotation.h @@ -35,6 +35,7 @@ class Annotation { public: Annotation(const srd_proto_data *const pdata); + ~Annotation(); uint64_t start_sample() const; uint64_t end_sample() const; diff --git a/DSView/pv/data/decode/decoder.cpp b/DSView/pv/data/decode/decoder.cpp index da17fb48..6e8bd2e0 100644 --- a/DSView/pv/data/decode/decoder.cpp +++ b/DSView/pv/data/decode/decoder.cpp @@ -46,6 +46,10 @@ Decoder::~Decoder() for (map::const_iterator i = _options.begin(); i != _options.end(); i++) g_variant_unref((*i).second); + + for (map::const_iterator i = _options_back.begin(); + i != _options_back.end(); i++) + g_variant_unref((*i).second); } const srd_decoder* Decoder::decoder() const @@ -164,7 +168,7 @@ srd_decoder_inst* Decoder::create_decoder_inst(srd_session *session, int unit_si g_hash_table_insert(probes, (*i).first->id, gvar); } - srd_inst_channel_set_all(decoder_inst, probes, unit_size); + srd_inst_channel_set_all(decoder_inst, probes); return decoder_inst; } diff --git a/DSView/pv/data/decode/row.cpp b/DSView/pv/data/decode/row.cpp index 2aabf0f9..1c0ee9cc 100644 --- a/DSView/pv/data/decode/row.cpp +++ b/DSView/pv/data/decode/row.cpp @@ -38,6 +38,11 @@ Row::Row(const srd_decoder *decoder, const srd_decoder_annotation_row *row) : { } +Row::~Row() +{ + +} + const srd_decoder* Row::decoder() const { return _decoder; diff --git a/DSView/pv/data/decode/row.h b/DSView/pv/data/decode/row.h index 71ee071e..6826c0fc 100644 --- a/DSView/pv/data/decode/row.h +++ b/DSView/pv/data/decode/row.h @@ -36,6 +36,7 @@ class Row { public: Row(); + ~Row(); Row(const srd_decoder *decoder, const srd_decoder_annotation_row *row = NULL); diff --git a/DSView/pv/data/decode/rowdata.cpp b/DSView/pv/data/decode/rowdata.cpp index 1d3ed27f..840459a6 100644 --- a/DSView/pv/data/decode/rowdata.cpp +++ b/DSView/pv/data/decode/rowdata.cpp @@ -34,6 +34,11 @@ RowData::RowData() : { } +RowData::~RowData() +{ + _annotations.clear(); +} + uint64_t RowData::get_max_sample() const { if (_annotations.empty()) diff --git a/DSView/pv/data/decode/rowdata.h b/DSView/pv/data/decode/rowdata.h index ddcdfe24..03076494 100644 --- a/DSView/pv/data/decode/rowdata.h +++ b/DSView/pv/data/decode/rowdata.h @@ -33,6 +33,7 @@ class RowData { public: RowData(); + ~RowData(); public: uint64_t get_max_sample() const; diff --git a/DSView/pv/data/decoderstack.cpp b/DSView/pv/data/decoderstack.cpp index b78b9996..1df0abb0 100644 --- a/DSView/pv/data/decoderstack.cpp +++ b/DSView/pv/data/decoderstack.cpp @@ -88,6 +88,8 @@ DecoderStack::~DecoderStack() // _decode_thread.join(); // } stop_decode(); + _stack.clear(); + clear(); } const std::list< boost::shared_ptr >& @@ -335,7 +337,7 @@ void DecoderStack::decode_data( { //uint8_t chunk[DecodeChunkLength]; uint8_t *chunk = NULL; - chunk = (uint8_t *)realloc(chunk, DecodeChunkLength); + //chunk = (uint8_t *)realloc(chunk, DecodeChunkLength); const uint64_t chunk_sample_count = DecodeChunkLength / _snapshot->unit_size(); @@ -349,10 +351,10 @@ void DecoderStack::decode_data( const uint64_t chunk_end = min( i + chunk_sample_count, sample_count); - _snapshot->get_samples(chunk, i, chunk_end); + chunk = _snapshot->get_samples(i, chunk_end); if (srd_session_send(session, i, i + sample_count, chunk, - (chunk_end - i) * unit_size) != SRD_OK) { + (chunk_end - i) * unit_size, unit_size) != SRD_OK) { _error_message = tr("Decoder reported an error"); break; } diff --git a/DSView/pv/data/logicsnapshot.cpp b/DSView/pv/data/logicsnapshot.cpp index ec5e4df6..b78b9a9f 100644 --- a/DSView/pv/data/logicsnapshot.cpp +++ b/DSView/pv/data/logicsnapshot.cpp @@ -74,10 +74,9 @@ void LogicSnapshot::append_payload( append_payload_to_mipmap(); } -void LogicSnapshot::get_samples(uint8_t *const data, - int64_t start_sample, int64_t end_sample) const +uint8_t * LogicSnapshot::get_samples(int64_t start_sample, int64_t end_sample) const { - assert(data); + //assert(data); assert(start_sample >= 0); assert(start_sample <= (int64_t)_sample_count); assert(end_sample >= 0); @@ -86,8 +85,9 @@ void LogicSnapshot::get_samples(uint8_t *const data, //lock_guard lock(_mutex); - const size_t size = (end_sample - start_sample) * _unit_size; - memcpy(data, (const uint8_t*)_data + start_sample * _unit_size, size); + //const size_t size = (end_sample - start_sample) * _unit_size; + //memcpy(data, (const uint8_t*)_data + start_sample * _unit_size, size); + return (uint8_t*)_data + start_sample * _unit_size; } void LogicSnapshot::reallocate_mipmap_level(MipMapLevel &m) diff --git a/DSView/pv/data/logicsnapshot.h b/DSView/pv/data/logicsnapshot.h index 6e9aae12..ba40df84 100644 --- a/DSView/pv/data/logicsnapshot.h +++ b/DSView/pv/data/logicsnapshot.h @@ -67,8 +67,7 @@ public: void append_payload(const sr_datafeed_logic &logic); - void get_samples(uint8_t *const data, - int64_t start_sample, int64_t end_sample) const; + uint8_t * get_samples(int64_t start_sample, int64_t end_sample) const; private: void reallocate_mipmap_level(MipMapLevel &m); diff --git a/DSView/pv/dialogs/deviceoptions.cpp b/DSView/pv/dialogs/deviceoptions.cpp index ade12c06..f8a1a88f 100644 --- a/DSView/pv/dialogs/deviceoptions.cpp +++ b/DSView/pv/dialogs/deviceoptions.cpp @@ -41,7 +41,7 @@ DeviceOptions::DeviceOptions(QWidget *parent, boost::shared_ptrdev_inst()) { @@ -68,7 +68,16 @@ DeviceOptions::DeviceOptions(QWidget *parent, boost::shared_ptrget_config(NULL, NULL, SR_CONF_OPERATION_MODE); + if (gvar != NULL) { + _mode = g_variant_get_string(gvar, NULL); + g_variant_unref(gvar); + } + connect(&_mode_check, SIGNAL(timeout()), this, SLOT(mode_check())); + _mode_check.setInterval(100); + _mode_check.start(); } void DeviceOptions::accept() @@ -100,9 +109,7 @@ void DeviceOptions::accept() void DeviceOptions::reject() { - using namespace Qt; - QDialog::reject(); - + accept(); } QWidget* DeviceOptions::get_property_form() @@ -116,8 +123,11 @@ QWidget* DeviceOptions::get_property_form() BOOST_FOREACH(boost::shared_ptr p, properties) { assert(p); - const QString label = p->labeled_widget() ? QString() : p->name(); - layout->addRow(label, p->get_widget(form)); + const QString label = p->labeled_widget() ? QString() : p->name(); + if (label == "Operation Mode") + layout->addRow(label, p->get_widget(form, true)); + else + layout->addRow(label, p->get_widget(form)); } return form; @@ -127,8 +137,9 @@ void DeviceOptions::setup_probes() { using namespace Qt; - int row = 0, col = 0; + int row0 = 0, row1 = 0, col = 0; int index = 0; + uint16_t ch_mode; while(_probes_box_layout.count() > 0) { @@ -140,6 +151,29 @@ void DeviceOptions::setup_probes() _probes_label_list.clear(); _probes_checkBox_list.clear(); + if (_dev_inst->dev_inst()->mode == LOGIC) { + GVariant *gvar_opts; + gsize num_opts; + if (sr_config_list(_dev_inst->dev_inst()->driver, _dev_inst->dev_inst(), NULL, SR_CONF_CHANNEL_MODE, + &gvar_opts) == SR_OK) { + const char **const options = g_variant_get_strv(gvar_opts, &num_opts); + GVariant* gvar = _dev_inst->get_config(NULL, NULL, SR_CONF_CHANNEL_MODE); + if (gvar != NULL) { + ch_mode = g_variant_get_uint16(gvar); + g_variant_unref(gvar); + } + for (int i=0; isetChecked(true); + } + } + g_variant_unref(gvar_opts); + } + for (const GSList *l = _dev_inst->dev_inst()->channels; l; l = l->next) { sr_channel *const probe = (sr_channel*)l->data; assert(probe); @@ -147,14 +181,14 @@ void DeviceOptions::setup_probes() QLabel *probe_label = new QLabel(QString::number(probe->index), this); QCheckBox *probe_checkBox = new QCheckBox(this); probe_checkBox->setCheckState(probe->enabled ? Qt::Checked : Qt::Unchecked); - _probes_box_layout.addWidget(probe_label, row * 2, col); - _probes_box_layout.addWidget(probe_checkBox, row * 2 + 1, col); + _probes_box_layout.addWidget(probe_label, row1 * 2 + row0, col); + _probes_box_layout.addWidget(probe_checkBox, row1 * 2 + 1 + row0, col); _probes_label_list.push_back(probe_label); _probes_checkBox_list.push_back(probe_checkBox); index++; col = index % 8; - row = index / 8; + row1 = index / 8; } QPushButton *_enable_all_probes = new QPushButton(tr("Enable All"), this); @@ -165,8 +199,8 @@ void DeviceOptions::setup_probes() connect(_disable_all_probes, SIGNAL(clicked()), this, SLOT(disable_all_probes())); - _probes_box_layout.addWidget(_enable_all_probes, (row + 1) * 2, 0, 1, 4); - _probes_box_layout.addWidget(_disable_all_probes, (row + 1) * 2, 4, 1, 4); + _probes_box_layout.addWidget(_enable_all_probes, (row1 + 1) * 2 + row0, 0, 1, 4); + _probes_box_layout.addWidget(_disable_all_probes, (row1 + 1) * 2 + row0, 4, 1, 4); } void DeviceOptions::set_all_probes(bool set) @@ -206,5 +240,44 @@ void DeviceOptions::zero_adj() } } +void DeviceOptions::mode_check() +{ + bool test; + QString mode; + GVariant* gvar = _dev_inst->get_config(NULL, NULL, SR_CONF_OPERATION_MODE); + if (gvar != NULL) { + mode = g_variant_get_string(gvar, NULL); + g_variant_unref(gvar); + + if (mode != _mode) { + setup_probes(); + _mode = mode; + } + } + + gvar = _dev_inst->get_config(NULL, NULL, SR_CONF_TEST); + if (gvar != NULL) { + test = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + + if (test) { + QVector::iterator i = _probes_checkBox_list.begin(); + while(i != _probes_checkBox_list.end()) { + (*i)->setCheckState(Qt::Checked); + (*i)->setDisabled(TRUE); + i++; + } + } + } +} + +void DeviceOptions::channel_check() +{ + QRadioButton* sc=dynamic_cast(sender()); + if(sc != NULL) + _dev_inst->set_config(NULL, NULL, SR_CONF_CHANNEL_MODE, g_variant_new_string(sc->text().toLocal8Bit())); + setup_probes(); +} + } // namespace dialogs } // namespace pv diff --git a/DSView/pv/dialogs/deviceoptions.h b/DSView/pv/dialogs/deviceoptions.h index 14b1e5ce..e8cc4ce7 100644 --- a/DSView/pv/dialogs/deviceoptions.h +++ b/DSView/pv/dialogs/deviceoptions.h @@ -36,6 +36,7 @@ #include #include #include +#include #include @@ -68,6 +69,8 @@ private slots: void enable_all_probes(); void disable_all_probes(); void zero_adj(); + void mode_check(); + void channel_check(); private: boost::shared_ptr _dev_inst; @@ -84,6 +87,9 @@ private: QPushButton *_config_button; QDialogButtonBox _button_box; + QTimer _mode_check; + QString _mode; + pv::prop::binding::DeviceOptions _device_options_binding; }; diff --git a/DSView/pv/prop/binding/binding_deviceoptions.cpp b/DSView/pv/prop/binding/binding_deviceoptions.cpp index e1ce83ec..8b227ffb 100644 --- a/DSView/pv/prop/binding/binding_deviceoptions.cpp +++ b/DSView/pv/prop/binding/binding_deviceoptions.cpp @@ -91,7 +91,7 @@ DeviceOptions::DeviceOptions(struct sr_dev_inst *sdi) : case SR_CONF_TEST: case SR_CONF_STATUS: case SR_CONF_FACTOR: - bind_enum(name, key, gvar_list); + bind_enum(name, key, gvar_list); break; case SR_CONF_VTH: @@ -110,11 +110,11 @@ DeviceOptions::DeviceOptions(struct sr_dev_inst *sdi) : break; case SR_CONF_TIMEBASE: - bind_enum(name, key, gvar_list, print_timebase); + bind_enum(name, key, gvar_list, print_timebase); break; case SR_CONF_VDIV: - bind_enum(name, key, gvar_list, print_vdiv); + bind_enum(name, key, gvar_list, print_vdiv); break; default: gvar_list = NULL; @@ -153,7 +153,7 @@ void DeviceOptions::bind_bool(const QString &name, int key) } void DeviceOptions::bind_enum(const QString &name, int key, - GVariant *const gvar_list, boost::function printer) + GVariant *const gvar_list, boost::function printer) { GVariant *gvar; GVariantIter iter; @@ -166,7 +166,7 @@ void DeviceOptions::bind_enum(const QString &name, int key, values.push_back(make_pair(gvar, printer(gvar))); _properties.push_back(boost::shared_ptr( - new Enum(name, values, + new Enum(name, values, bind(config_getter, _sdi, key), bind(config_setter, _sdi, key, _1)))); } @@ -235,7 +235,7 @@ void DeviceOptions::bind_samplerate(const QString &name, else if ((gvar_list_samplerates = g_variant_lookup_value(gvar_list, "samplerates", G_VARIANT_TYPE("at")))) { - bind_enum(name, SR_CONF_SAMPLERATE, + bind_enum(name, SR_CONF_SAMPLERATE, gvar_list_samplerates, print_samplerate); g_variant_unref(gvar_list_samplerates); } diff --git a/DSView/pv/prop/property.cpp b/DSView/pv/prop/property.cpp index d0ab15ea..48ca4a2c 100644 --- a/DSView/pv/prop/property.cpp +++ b/DSView/pv/prop/property.cpp @@ -29,7 +29,7 @@ namespace prop { Property::Property(QString name, Getter getter, Setter setter) : _getter(getter), _setter(setter), - _name(name) + _name(name) { } diff --git a/DSView/pv/prop/property.h b/DSView/pv/prop/property.h index d02bd510..6ef784d5 100644 --- a/DSView/pv/prop/property.h +++ b/DSView/pv/prop/property.h @@ -45,10 +45,10 @@ public: typedef boost::function Setter; protected: - Property(QString name, Getter getter, Setter setter); + Property(QString name, Getter getter, Setter setter); public: - const QString& name() const; + const QString& name() const; virtual QWidget* get_widget(QWidget *parent, bool auto_commit = false) = 0; @@ -61,7 +61,7 @@ protected: const Setter _setter; private: - QString _name; + QString _name; }; } // prop diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index 89957c24..7c67795a 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -793,12 +793,20 @@ void SigSession::reload() signal.reset(); switch(probe->type) { case SR_CHANNEL_LOGIC: - if (probe->enabled && probe->index < _signals.size()) - signal = boost::shared_ptr( - new view::LogicSignal(*_signals[probe->index].get(), _logic_data, probe)); - else if (probe->enabled) - signal = boost::shared_ptr( - new view::LogicSignal(_dev_inst, _logic_data, probe)); + if (probe->enabled) { + std::vector< boost::shared_ptr >::iterator i = _signals.begin(); + while (i != _signals.end()) { + if ((*i)->get_index() == probe->index) { + signal = boost::shared_ptr( + new view::LogicSignal(**i, _logic_data, probe)); + break; + } + i++; + } + if (!signal.get()) + signal = boost::shared_ptr( + new view::LogicSignal(_dev_inst, _logic_data, probe)); + } break; case SR_CHANNEL_DSO: diff --git a/DSView/pv/storesession.cpp b/DSView/pv/storesession.cpp index a687a0b0..6d2ea359 100644 --- a/DSView/pv/storesession.cpp +++ b/DSView/pv/storesession.cpp @@ -150,8 +150,9 @@ void StoreSession::store_proc(shared_ptr snapshot) uint64_t start_sample = 0; /// TODO: Wrap this in a std::unique_ptr when we transition to C++11 - uint8_t *const data = new uint8_t[BlockSize]; - assert(data); + uint8_t *data = NULL; + //uint8_t *const data = new uint8_t[BlockSize]; + //assert(data); const int unit_size = snapshot->unit_size(); assert(unit_size != 0); @@ -170,7 +171,7 @@ void StoreSession::store_proc(shared_ptr snapshot) const uint64_t end_sample = min( start_sample + samples_per_block, _unit_count); - snapshot->get_samples(data, start_sample, end_sample); + data = snapshot->get_samples(start_sample, end_sample); if(sr_session_append(_file_name.c_str(), data, unit_size, end_sample - start_sample) != SR_OK) @@ -189,7 +190,7 @@ void StoreSession::store_proc(shared_ptr snapshot) progress_updated(); - delete[] data; + //delete[] data; } } // pv diff --git a/DSView/pv/toolbars/samplingbar.cpp b/DSView/pv/toolbars/samplingbar.cpp index bad13045..90d6d29c 100644 --- a/DSView/pv/toolbars/samplingbar.cpp +++ b/DSView/pv/toolbars/samplingbar.cpp @@ -222,8 +222,10 @@ void SamplingBar::on_configure() pv::dialogs::DeviceOptions dlg(this, dev_inst); ret = dlg.exec(); - if (ret == QDialog::Accepted) + if (ret == QDialog::Accepted) { device_updated(); + update_sample_rate_selector(); + } GVariant* gvar = dev_inst->get_config(NULL, NULL, SR_CONF_ZERO); if (gvar != NULL) { @@ -479,10 +481,10 @@ void SamplingBar::on_samplecount_sel(int index) { uint64_t sample_count = 0; uint64_t max_sample_count = 0; - uint64_t last_sample_count = 0; + //uint64_t last_sample_count = 0; bool stream_mode = false; - bool buffer2stream = false; - bool stream2buffer = false; + //bool buffer2stream = false; + //bool stream2buffer = false; if (index >= 0) sample_count = _sample_count.itemData( @@ -492,7 +494,7 @@ void SamplingBar::on_samplecount_sel(int index) assert(_devInst); if (strcmp(_devInst->dev_inst()->driver->name, "DSLogic") == 0 && _devInst->dev_inst()->mode != DSO) { - GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); + /*GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); if (gvar != NULL) { last_sample_count = g_variant_get_uint64(gvar); g_variant_unref(gvar); @@ -515,7 +517,7 @@ void SamplingBar::on_samplecount_sel(int index) } else if (stream_mode && sample_count <= max_sample_count) { stream_mode = sample_count > max_sample_count; stream2buffer = true; - } + }*/ // Set the sample count _devInst->set_config(NULL, NULL, @@ -523,8 +525,29 @@ void SamplingBar::on_samplecount_sel(int index) g_variant_new_uint64(sample_count)); + GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); + if (gvar != NULL) { + stream_mode = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + } + gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); + if (gvar != NULL) { + max_sample_count = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + } + if (!stream_mode) { + if (sample_count > max_sample_count) { + _devInst->set_config(NULL, NULL, + SR_CONF_RLE, + g_variant_new_boolean(true)); + } else { + _devInst->set_config(NULL, NULL, + SR_CONF_RLE, + g_variant_new_boolean(false)); + } + } - if (buffer2stream) { + /*if (buffer2stream) { pv::dialogs::StreamOptions stream(this, _devInst, sample_count, stream_mode); stream.setFixedSize(300, 150); stream.exec(); @@ -543,7 +566,7 @@ void SamplingBar::on_samplecount_sel(int index) g_variant_new_boolean(false)); } - device_updated(); + device_updated();*/ update_scale(); } } @@ -552,24 +575,53 @@ void SamplingBar::on_samplerate_sel(int index) { uint64_t sample_rate = 0; //uint64_t last_sample_rate = 0; + uint64_t max_sample_count = 0; + uint64_t sample_count = 0; + bool stream_mode = false; if (index >= 0) sample_rate = _sample_rate.itemData( index).value(); - const sr_dev_inst* _sdi = get_selected_device()->dev_inst(); - assert(_sdi); + boost::shared_ptr _devInst = get_selected_device(); + assert(_devInst); // Get last samplerate //last_sample_rate = get_selected_device()->get_sample_rate(); - if (strcmp(_sdi->driver->name, "DSLogic") == 0 && _sdi->mode != DSO) { + if (strcmp(_devInst->dev_inst()->driver->name, "DSLogic") == 0 && _devInst->dev_inst()->mode != DSO) { // Set the samplerate get_selected_device()->set_config(NULL, NULL, SR_CONF_SAMPLERATE, g_variant_new_uint64(sample_rate)); - update_sample_count_selector_value(); - device_updated(); + + GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); + if (gvar != NULL) { + stream_mode = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + } + gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); + if (gvar != NULL) { + sample_count = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + } + gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); + if (gvar != NULL) { + max_sample_count = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + } + if (!stream_mode) { + if (sample_count > max_sample_count) { + _devInst->set_config(NULL, NULL, + SR_CONF_RLE, + g_variant_new_boolean(true)); + } else { + _devInst->set_config(NULL, NULL, + SR_CONF_RLE, + g_variant_new_boolean(false)); + } + } + update_scale(); } } diff --git a/DSView/pv/view/decodetrace.cpp b/DSView/pv/view/decodetrace.cpp index 22cfa930..25cbac8c 100644 --- a/DSView/pv/view/decodetrace.cpp +++ b/DSView/pv/view/decodetrace.cpp @@ -136,6 +136,18 @@ DecodeTrace::DecodeTrace(pv::SigSession &session, this, SLOT(on_show_hide_decoder(int))); } +DecodeTrace::~DecodeTrace() +{ + if (_popup_form) + delete _popup_form; + if (_popup) + delete _popup; + _cur_row_headings.clear(); + _decoder_forms.clear(); + _probe_selectors.clear(); + _bindings.clear(); +} + bool DecodeTrace::enabled() const { return true; diff --git a/DSView/pv/view/decodetrace.h b/DSView/pv/view/decodetrace.h index a7532dd0..44c5791f 100644 --- a/DSView/pv/view/decodetrace.h +++ b/DSView/pv/view/decodetrace.h @@ -89,6 +89,7 @@ public: DecodeTrace(pv::SigSession &session, boost::shared_ptr decoder_stack, int index); + ~DecodeTrace(); bool enabled() const; diff --git a/DSView/pv/view/logicsignal.cpp b/DSView/pv/view/logicsignal.cpp index 4395d48d..3b2527d6 100644 --- a/DSView/pv/view/logicsignal.cpp +++ b/DSView/pv/view/logicsignal.cpp @@ -85,6 +85,7 @@ LogicSignal::LogicSignal(const Signal &s, LogicSignal::~LogicSignal() { + _cur_edges.clear(); } const sr_channel* LogicSignal::probe() const diff --git a/libsigrok4DSL/hardware/DSL/dscope.c b/libsigrok4DSL/hardware/DSL/dscope.c index fbc1e0bb..77aca0bf 100644 --- a/libsigrok4DSL/hardware/DSL/dscope.c +++ b/libsigrok4DSL/hardware/DSL/dscope.c @@ -48,8 +48,6 @@ static struct sr_dev_mode mode_list[] = { static const char *opmodes[] = { "Normal", "Internal Test", - "External Test", - "DRAM Loopback Test", }; static const char *thresholds[] = { @@ -254,7 +252,7 @@ static int fpga_setting(const struct sr_dev_inst *sdi) ((devc->op_mode == SR_OP_EXTERNAL_TEST) << 14) + ((devc->op_mode == SR_OP_LOOPBACK_TEST) << 13) + trigger->trigger_en + - ((sdi->mode > 0) << 4) + (devc->clock_type << 1) + (devc->clock_edge << 1) + + ((sdi->mode > 0) << 4) + (devc->clock_type << 1) + (devc->clock_edge << 2) + (((devc->cur_samplerate == SR_MHZ(200) && sdi->mode != DSO) || (sdi->mode == ANALOG)) << 5) + ((devc->cur_samplerate == SR_MHZ(400)) << 6) + ((sdi->mode == ANALOG) << 7) + @@ -579,7 +577,7 @@ static struct DSL_context *DSCope_dev_new(void) devc->clock_type = FALSE; devc->clock_edge = FALSE; devc->instant = FALSE; - devc->op_mode = SR_OP_NORMAL; + devc->op_mode = SR_OP_BUFFER; devc->th_level = SR_TH_3V3; devc->filter = SR_FILTER_NONE; devc->timebase = 10000; @@ -1386,8 +1384,8 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else if (id == SR_CONF_OPERATION_MODE) { stropt = g_variant_get_string(data, NULL); ret = SR_OK; - if (!strcmp(stropt, opmodes[SR_OP_NORMAL])) { - devc->op_mode = SR_OP_NORMAL; + if (!strcmp(stropt, opmodes[SR_OP_BUFFER])) { + devc->op_mode = SR_OP_BUFFER; } else if (!strcmp(stropt, opmodes[SR_OP_INTERNAL_TEST])) { devc->op_mode = SR_OP_INTERNAL_TEST; } else if (!strcmp(stropt, opmodes[SR_OP_EXTERNAL_TEST])) { diff --git a/libsigrok4DSL/hardware/DSL/dsl.h b/libsigrok4DSL/hardware/DSL/dsl.h index a83a43a0..4f5d022b 100644 --- a/libsigrok4DSL/hardware/DSL/dsl.h +++ b/libsigrok4DSL/hardware/DSL/dsl.h @@ -150,13 +150,17 @@ struct DSL_context { /* Device/capture settings */ uint64_t cur_samplerate; uint64_t limit_samples; + uint64_t actual_samples; /* Operational settings */ gboolean sample_wide; gboolean clock_type; gboolean clock_edge; + gboolean rle_mode; gboolean instant; uint16_t op_mode; + uint16_t ch_mode; + uint16_t samplerates_size; uint16_t th_level; double vth; uint16_t filter; diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index e373e19c..75aa014e 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -52,10 +52,31 @@ static struct sr_dev_mode pro_mode_list[] = { }; static const char *opmodes[] = { - "Normal", + "Buffer Mode", + "Stream Mode", "Internal Test", - "External Test", - "DRAM Loopback Test", +}; + +static const char *stream_ch_modes[] = { + "Use Channels 0~15 (Max 10MHz)", + "Use Channels 0~7 (Max 25MHz)", +}; + +static const uint16_t stream_ch_num[] = { + 16, + 8, +}; + +static const char *buffer_ch_modes[] = { + "Use Channels 0~15 (Max 100MHz)", + "Use Channels 0~7 (Max 200MHz)", + "Use Channels 0~3 (Max 400MHz)", +}; + +static const uint16_t buffer_ch_num[] = { + 16, + 8, + 4, }; static const char *thresholds[] = { @@ -104,6 +125,7 @@ static const int32_t sessions[] = { SR_CONF_CLOCK_TYPE, SR_CONF_CLOCK_EDGE, SR_CONF_OPERATION_MODE, + SR_CONF_CHANNEL_MODE, SR_CONF_THRESHOLD, SR_CONF_FILTER, SR_CONF_TRIGGER_SLOPE, @@ -118,6 +140,7 @@ static const int32_t sessions_pro[] = { SR_CONF_CLOCK_TYPE, SR_CONF_CLOCK_EDGE, SR_CONF_OPERATION_MODE, + SR_CONF_CHANNEL_MODE, SR_CONF_VTH, SR_CONF_FILTER, SR_CONF_TRIGGER_SLOPE, @@ -318,9 +341,10 @@ static int fpga_setting(const struct sr_dev_inst *sdi) ((devc->stream) << 12) + ((trigger->trigger_mode == SERIAL_TRIGGER) << 11) + trigger->trigger_en + - ((sdi->mode > 0) << 4) + (devc->clock_type << 1) + (devc->clock_edge << 1) + - (((channel_cnt == 8 && sdi->mode != DSO) || (sdi->mode == ANALOG)) << 5) + - ((channel_cnt == 4) << 6) + + ((sdi->mode > 0) << 4) + (devc->clock_type << 1) + (devc->clock_edge << 2) + + (devc->rle_mode << 3) + + ((((devc->cur_samplerate == (2 * DSLOGIC_MAX_LOGIC_SAMPLERATE)) && sdi->mode != DSO) || (sdi->mode == ANALOG)) << 5) + + ((devc->cur_samplerate == (4 * DSLOGIC_MAX_LOGIC_SAMPLERATE)) << 6) + ((sdi->mode == ANALOG) << 7) + ((devc->filter == SR_FILTER_1T) << 8) + (devc->instant << 9) + (devc->zero << 10); @@ -459,6 +483,7 @@ static int fpga_config(struct libusb_device_handle *hdl, const char *filename) offset += chunksize; } fclose(fw); + g_free(buf); if (result == SR_OK) sr_info("FPGA configure done"); @@ -596,12 +621,6 @@ static int configure_probes(const struct sr_dev_inst *sdi) if (probe->enabled == FALSE) continue; - if ((probe->index > 7 && probe->type == SR_CHANNEL_LOGIC) || - (probe->type == SR_CHANNEL_ANALOG || probe->type == SR_CHANNEL_DSO)) - devc->sample_wide = TRUE; - else - devc->sample_wide = FALSE; - probe_bit = 1 << (probe->index); if (!(probe->trigger)) continue; @@ -642,11 +661,14 @@ static struct DSL_context *DSLogic_dev_new(void) devc->fw_updated = 0; devc->cur_samplerate = DEFAULT_SAMPLERATE; devc->limit_samples = DEFAULT_SAMPLELIMIT; - devc->sample_wide = 0; + devc->sample_wide = TRUE; devc->clock_type = FALSE; devc->clock_edge = FALSE; + devc->rle_mode = FALSE; devc->instant = FALSE; - devc->op_mode = SR_OP_NORMAL; + devc->op_mode = SR_OP_BUFFER; + devc->ch_mode = 0; + devc->samplerates_size = 14; devc->th_level = SR_TH_3V3; devc->vth = 1.0; devc->filter = SR_FILTER_NONE; @@ -812,9 +834,11 @@ static GSList *scan(GSList *options) sdi->conn = sr_usb_dev_inst_new(libusb_get_bus_number(devlist[i]), libusb_get_device_address(devlist[i]), NULL); } else { - char *firmware = malloc(strlen(config_path)+strlen(prof->firmware)+1); - if (firmware == NULL) + char *firmware; + if (!(firmware = g_try_malloc(strlen(config_path)+strlen(prof->firmware)+1))) { + sr_err("Firmware path malloc error!"); return NULL; + } strcpy(firmware, config_path); strcat(firmware, prof->firmware); if (ezusb_upload_firmware(devlist[i], USB_CONFIGURATION, @@ -824,6 +848,7 @@ static GSList *scan(GSList *options) else sr_err("Firmware upload failed for " "device %d.", devcnt); + g_free(firmware); sdi->inst_type = SR_INST_USB; sdi->conn = sr_usb_dev_inst_new (libusb_get_bus_number(devlist[i]), 0xff, NULL); @@ -1060,9 +1085,11 @@ static int dev_open(struct sr_dev_inst *sdi) } else { /* Takes >= 10ms for the FX2 to be ready for FPGA configure. */ g_usleep(10 * 1000); - char *fpga_bit = malloc(strlen(config_path)+strlen(devc->profile->fpga_bit33)+1); - if (fpga_bit == NULL) + char *fpga_bit; + if (!(fpga_bit = g_try_malloc(strlen(config_path)+strlen(devc->profile->fpga_bit33)+1))) { + sr_err("fpag_bit path malloc error!"); return SR_ERR_MALLOC; + } strcpy(fpga_bit, config_path); switch(devc->th_level) { case SR_TH_3V3: @@ -1078,6 +1105,7 @@ static int dev_open(struct sr_dev_inst *sdi) if (ret != SR_OK) { sr_err("Configure FPGA failed!"); } + g_free(fpga_bit); } } @@ -1133,6 +1161,7 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, struct DSL_context *devc; struct sr_usb_dev_inst *usb; char str[128]; + uint64_t max_limits = DSLOGIC_MAX_LOGIC_DEPTH; (void)cg; @@ -1172,6 +1201,12 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, devc = sdi->priv; *data = g_variant_new_boolean(devc->clock_edge); break; + case SR_CONF_RLE: + if (!sdi) + return SR_ERR; + devc = sdi->priv; + *data = g_variant_new_boolean(devc->rle_mode); + break; case SR_CONF_INSTANT: if (!sdi) return SR_ERR; @@ -1184,11 +1219,18 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, devc = sdi->priv; *data = g_variant_new_string(opmodes[devc->op_mode]); break; + case SR_CONF_CHANNEL_MODE: + if (!sdi) + return SR_ERR; + devc = sdi->priv; + *data = g_variant_new_uint16(devc->ch_mode); + break; case SR_CONF_TEST: if (!sdi) return SR_ERR; devc = sdi->priv; - *data = g_variant_new_boolean(devc->op_mode != SR_OP_NORMAL); + *data = g_variant_new_boolean((devc->op_mode != SR_OP_BUFFER) && + (devc->op_mode != SR_OP_STREAM)); break; case SR_CONF_FILTER: if (!sdi) @@ -1306,7 +1348,12 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_MAX_LOGIC_SAMPLELIMITS: if (!sdi) return SR_ERR; - *data = g_variant_new_uint64(DSLOGIC_MAX_LOGIC_DEPTH); + if (devc->cur_samplerate == 2*DSLOGIC_MAX_LOGIC_SAMPLERATE) { + max_limits = DSLOGIC_MAX_LOGIC_DEPTH * 2; + } else if (devc->cur_samplerate == 4*DSLOGIC_MAX_LOGIC_SAMPLERATE) { + max_limits = DSLOGIC_MAX_LOGIC_DEPTH * 4; + } + *data = g_variant_new_uint64(max_limits); break; case SR_CONF_STATUS: if (!sdi) @@ -1328,6 +1375,7 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, const char *stropt; int ret, num_probes; struct sr_usb_dev_inst *usb; + int i; (void)cg; @@ -1339,37 +1387,22 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, if (id == SR_CONF_SAMPLERATE) { devc->cur_samplerate = g_variant_get_uint64(data); - if (sdi->mode == LOGIC) { - if (devc->limit_samples > DSLOGIC_MAX_LOGIC_DEPTH) { - if (devc->cur_samplerate > SR_MHZ(25)) { - devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; - } else if (devc->cur_samplerate >= SR_MHZ(20) || - devc->limit_samples >= SR_GB(1)) { - adjust_probes(sdi, 8); - } else { - adjust_probes(sdi, 16); - } - } - - if (devc->limit_samples <= DSLOGIC_MAX_LOGIC_DEPTH) { - if (devc->cur_samplerate >= SR_MHZ(200)) { - adjust_probes(sdi, SR_MHZ(1600)/devc->cur_samplerate); - } else { - adjust_probes(sdi, 16); - } - } - - ret = SR_OK; - } else if(sdi->mode == DSO) { + if(sdi->mode == DSO) { + devc->sample_wide = (devc->cur_samplerate <= DSLOGIC_MAX_DSO_SAMPLERATE); ret = command_dso_ctrl(usb->devhdl, dso_cmd_gen(sdi, 0, SR_CONF_SAMPLERATE)); + } else { + devc->sample_wide = (devc->cur_samplerate <= DSLOGIC_MAX_LOGIC_SAMPLERATE); + ret = SR_OK; } - } else if (id == SR_CONF_CLOCK_TYPE) { devc->clock_type = g_variant_get_boolean(data); ret = SR_OK; } else if (id == SR_CONF_CLOCK_EDGE) { devc->clock_edge = g_variant_get_boolean(data); ret = SR_OK; + } else if (id == SR_CONF_RLE) { + devc->rle_mode = g_variant_get_boolean(data); + ret = SR_OK; } else if (id == SR_CONF_INSTANT) { if (sdi->mode == DSO) { devc->instant = g_variant_get_boolean(data); @@ -1494,18 +1527,40 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else if (id == SR_CONF_OPERATION_MODE) { stropt = g_variant_get_string(data, NULL); ret = SR_OK; - if (!strcmp(stropt, opmodes[SR_OP_NORMAL])) { - devc->op_mode = SR_OP_NORMAL; - } else if (!strcmp(stropt, opmodes[SR_OP_INTERNAL_TEST])) { + if (!strcmp(stropt, opmodes[SR_OP_BUFFER]) && (devc->op_mode != SR_OP_BUFFER)) { + devc->op_mode = SR_OP_BUFFER; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); + } else if (!strcmp(stropt, opmodes[SR_OP_STREAM]) && (devc->op_mode != SR_OP_STREAM)) { + devc->op_mode = SR_OP_STREAM; + devc->stream = TRUE; + devc->ch_mode = 0; + devc->samplerates_size = 10; + adjust_probes(sdi, stream_ch_num[0]); + } else if (!strcmp(stropt, opmodes[SR_OP_INTERNAL_TEST]) && (devc->op_mode != SR_OP_INTERNAL_TEST)) { devc->op_mode = SR_OP_INTERNAL_TEST; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; - } else if (!strcmp(stropt, opmodes[SR_OP_EXTERNAL_TEST])) { + } else if (!strcmp(stropt, opmodes[SR_OP_EXTERNAL_TEST]) && (devc->op_mode != SR_OP_EXTERNAL_TEST)) { devc->op_mode = SR_OP_EXTERNAL_TEST; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; - } else if (!strcmp(stropt, opmodes[SR_OP_LOOPBACK_TEST])) { + } else if (!strcmp(stropt, opmodes[SR_OP_LOOPBACK_TEST]) && (devc->op_mode != SR_OP_LOOPBACK_TEST)) { devc->op_mode = SR_OP_LOOPBACK_TEST; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; } else { @@ -1513,6 +1568,28 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } sr_dbg("%s: setting pattern to %d", __func__, devc->op_mode); + } else if (id == SR_CONF_CHANNEL_MODE) { + stropt = g_variant_get_string(data, NULL); + ret = SR_OK; + if (devc->stream) { + for (i = 0; i < ARRAY_SIZE(stream_ch_modes); i++) + if (!strcmp(stropt, stream_ch_modes[i])) { + devc->ch_mode = i; + devc->samplerates_size = 10 + i * 2; + adjust_probes(sdi, stream_ch_num[i]); + break; + } + } else { + for (i = 0; i < ARRAY_SIZE(buffer_ch_modes); i++) + if (!strcmp(stropt, buffer_ch_modes[i])) { + devc->ch_mode = i; + devc->samplerates_size = 14 + i; + adjust_probes(sdi, buffer_ch_num[i]); + break; + } + } + sr_dbg("%s: setting channel mode to %d", + __func__, devc->ch_mode); } else if (id == SR_CONF_THRESHOLD) { stropt = g_variant_get_string(data, NULL); ret = SR_OK; @@ -1528,9 +1605,11 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else { /* Takes >= 10ms for the FX2 to be ready for FPGA configure. */ g_usleep(10 * 1000); - char *fpga_bit = malloc(strlen(config_path)+strlen(devc->profile->fpga_bit33)+1); - if (fpga_bit == NULL) + char *fpga_bit; + if (!(fpga_bit = g_try_malloc(strlen(config_path)+strlen(devc->profile->fpga_bit33)+1))) { + sr_err("fpag_bit path malloc error!"); return SR_ERR_MALLOC; + } strcpy(fpga_bit, config_path); switch(devc->th_level) { case SR_TH_3V3: @@ -1546,6 +1625,7 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, if (ret != SR_OK) { sr_err("Configure FPGA failed!"); } + g_free(fpga_bit); } sr_dbg("%s: setting threshold to %d", __func__, devc->th_level); @@ -1724,11 +1804,13 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, const struct sr_channel_group *cg) { + struct DSL_context *devc; GVariant *gvar; GVariantBuilder gvb; //(void)sdi; (void)cg; + devc = sdi->priv; switch (key) { case SR_CONF_SCAN_OPTIONS: @@ -1766,7 +1848,7 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, // gvar = g_variant_new_fixed_array(G_VARIANT_TYPE("t"), samplerates, // ARRAY_SIZE(samplerates), sizeof(uint64_t)); gvar = g_variant_new_from_data(G_VARIANT_TYPE("at"), - samplerates, ARRAY_SIZE(samplerates)*sizeof(uint64_t), TRUE, NULL, NULL); + samplerates, devc->samplerates_size*sizeof(uint64_t), TRUE, NULL, NULL); g_variant_builder_add(&gvb, "{sv}", "samplerates", gvar); *data = g_variant_builder_end(&gvb); break; @@ -1783,6 +1865,14 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_OPERATION_MODE: *data = g_variant_new_strv(opmodes, ARRAY_SIZE(opmodes)); break; + case SR_CONF_CHANNEL_MODE: + if (devc->stream) + *data = g_variant_new_strv(stream_ch_modes, ARRAY_SIZE(stream_ch_modes)); + else if (devc->op_mode != SR_OP_BUFFER) + *data = g_variant_new_strv(buffer_ch_modes, 1); + else + *data = g_variant_new_strv(buffer_ch_modes, ARRAY_SIZE(buffer_ch_modes)); + break; case SR_CONF_THRESHOLD: *data = g_variant_new_strv(thresholds, ARRAY_SIZE(thresholds)); break; @@ -1919,12 +2009,7 @@ static void receive_transfer(struct libusb_transfer *transfer) /* Save incoming transfer before reusing the transfer struct. */ cur_buf = transfer->buffer; - GSList *l; - int channel_cnt = 0; - for (l = ((struct sr_dev_inst *)(devc->cb_data))->channels; l; l = l->next) - channel_cnt++; - - sample_width = (channel_cnt > 8) ? 2 : 1; + sample_width = (devc->sample_wide) ? 2 : 1; cur_sample_count = transfer->actual_length / sample_width; switch (transfer->status) { @@ -2098,9 +2183,9 @@ static void receive_transfer(struct libusb_transfer *transfer) analog.data = cur_buf + trigger_offset_bytes; } - if ((devc->limit_samples && devc->num_samples < devc->limit_samples) || + if ((devc->limit_samples && devc->num_samples < devc->actual_samples) || (*(struct sr_dev_inst *)(devc->cb_data)).mode != LOGIC ) { - const uint64_t remain_length= (devc->limit_samples - devc->num_samples) * sample_width; + const uint64_t remain_length= (devc->actual_samples - devc->num_samples) * sample_width; logic.length = min(logic.length, remain_length); /* in test mode, check data content*/ @@ -2145,9 +2230,9 @@ static void receive_transfer(struct libusb_transfer *transfer) } devc->num_samples += cur_sample_count; - if (((*(struct sr_dev_inst *)(devc->cb_data)).mode == LOGIC || devc->instant) && + if (((*(struct sr_dev_inst *)(devc->cb_data)).mode == LOGIC || devc->instant) && devc->limit_samples && - (unsigned int)devc->num_samples >= devc->limit_samples) { + (unsigned int)devc->num_samples >= devc->actual_samples) { //abort_acquisition(devc); free_transfer(transfer); devc->status = DSL_STOP; @@ -2327,14 +2412,21 @@ static void receive_trigger_pos(struct libusb_transfer *transfer) switch (transfer->status) { case LIBUSB_TRANSFER_COMPLETED: if (transfer->actual_length == sizeof(struct ds_trigger_pos)) { - packet.type = SR_DF_TRIGGER; - packet.payload = trigger_pos; - sr_session_send(devc->cb_data, &packet); + if (trigger_pos->remain_cnt < devc->limit_samples) { + devc->actual_samples = (devc->limit_samples - ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE) * (trigger_pos->remain_cnt + devc->rle_mode)); - devc->status = DSL_TRIGGERED; - free_transfer(transfer); - devc->num_transfers = 0; - devc->empty_transfer_count = 0; + packet.type = SR_DF_TRIGGER; + packet.payload = trigger_pos; + sr_session_send(devc->cb_data, &packet); + + devc->status = DSL_TRIGGERED; + free_transfer(transfer); + devc->num_transfers = 0; + devc->empty_transfer_count = 0; + } else { + free_transfer(transfer); + devc->status = DSL_ERROR; + } } else { free_transfer(transfer); devc->status = DSL_ERROR; @@ -2447,7 +2539,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, void *cb_data) } if ((ret = command_start_acquisition (usb->devhdl, - devc->cur_samplerate, devc->sample_wide, (sdi->mode == LOGIC))) != SR_OK) { + devc->cur_samplerate, 1, (sdi->mode == LOGIC))) != SR_OK) { abort_acquisition(devc); return ret; } diff --git a/libsigrok4DSL/hwdriver.c b/libsigrok4DSL/hwdriver.c index 0d187cca..25b7dbf8 100644 --- a/libsigrok4DSL/hwdriver.c +++ b/libsigrok4DSL/hwdriver.c @@ -62,7 +62,7 @@ static struct sr_config_info sr_config_info_data[] = { {SR_CONF_CLOCK_TYPE, SR_T_BOOL, "clocktype", "Using External Clock", "Using External Clock", NULL}, {SR_CONF_CLOCK_EDGE, SR_T_BOOL, "clockedge", - "Using Clock Negedge", "Using Clock Negedge", NULL}, + "Using Clock Negedge", "Using Clock Negedge", NULL}, {SR_CONF_CAPTURE_RATIO, SR_T_UINT64, "captureratio", "Pre-trigger capture ratio", "Pre-trigger capture ratio", NULL}, {SR_CONF_PATTERN_MODE, SR_T_CHAR, "pattern", @@ -95,6 +95,8 @@ static struct sr_config_info sr_config_info_data[] = { "Datalog", "Datalog", NULL}, {SR_CONF_OPERATION_MODE, SR_T_CHAR, "operation", "Operation Mode", "Operation Mode", NULL}, + {SR_CONF_CHANNEL_MODE, SR_T_CHAR, "channel", + "Channel Mode", "Channel Mode", NULL}, {SR_CONF_THRESHOLD, SR_T_CHAR, "threshold", "Threshold Level", "Threshold Level", NULL}, {SR_CONF_VTH, SR_T_FLOAT, "threshold", diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index 60794b31..abe72ff3 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -801,6 +801,9 @@ enum { /** Device operation mode */ SR_CONF_OPERATION_MODE, + /** Device channel mode */ + SR_CONF_CHANNEL_MODE, + /** Device sample threshold */ SR_CONF_THRESHOLD, SR_CONF_VTH, @@ -919,13 +922,14 @@ enum { /** Device operation modes. */ enum { /** Normal */ - SR_OP_NORMAL = 0, + SR_OP_BUFFER = 0, + SR_OP_STREAM = 1, /** Internal pattern test mode */ - SR_OP_INTERNAL_TEST = 1, + SR_OP_INTERNAL_TEST = 2, /** External pattern test mode */ - SR_OP_EXTERNAL_TEST = 2, + SR_OP_EXTERNAL_TEST = 3, /** SDRAM loopback test mode */ - SR_OP_LOOPBACK_TEST = 3, + SR_OP_LOOPBACK_TEST = 4, }; /** Device threshold level. */ @@ -1065,7 +1069,8 @@ struct ds_trigger { struct ds_trigger_pos { uint32_t real_pos; uint32_t ram_saddr; - unsigned char first_block[504]; + uint32_t remain_cnt; + unsigned char first_block[500]; }; #include "proto.h" diff --git a/libsigrok4DSL/session_driver.c b/libsigrok4DSL/session_driver.c index dc9569b9..81b475de 100644 --- a/libsigrok4DSL/session_driver.c +++ b/libsigrok4DSL/session_driver.c @@ -141,6 +141,13 @@ static int dev_open(struct sr_dev_inst *sdi) return SR_ERR_MALLOC; } + struct session_vdev *vdev; + vdev = sdi->priv; + if (!(vdev->buf = g_try_malloc(CHUNKSIZE))) { + sr_err("%s: vdev->buf malloc failed", __func__); + return SR_ERR_MALLOC; + } + dev_insts = g_slist_append(dev_insts, sdi); return SR_OK; @@ -291,11 +298,6 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, return SR_ERR; } - if (!(vdev->buf = g_try_malloc(CHUNKSIZE))) { - sr_err("%s: buf malloc failed", __func__); - return SR_ERR; - } - /* Send header packet to the session bus. */ std_session_send_df_header(sdi, LOG_PREFIX); From 48ab8049cfe6299e955bebc2fc84bd623244b72b Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Mon, 28 Sep 2015 16:31:19 +0800 Subject: [PATCH 06/25] Fix display issue, add signal height limit --- DSView/pv/data/decode/annotation.cpp | 2 +- DSView/pv/dialogs/search.cpp | 2 +- DSView/pv/mainwindow.cpp | 1 + .../pv/prop/binding/binding_deviceoptions.cpp | 2 + DSView/pv/view/devmode.cpp | 2 +- DSView/pv/view/view.cpp | 13 ++++++- DSView/pv/view/view.h | 1 + libsigrok4DSL/hardware/DSL/dsl.h | 1 + libsigrok4DSL/hardware/DSL/dslogic.c | 38 +++++++++++++++++++ libsigrok4DSL/hardware/demo/demo.c | 32 ++++++++++++++++ libsigrok4DSL/hwdriver.c | 4 ++ libsigrok4DSL/libsigrok.h | 4 ++ 12 files changed, 98 insertions(+), 4 deletions(-) diff --git a/DSView/pv/data/decode/annotation.cpp b/DSView/pv/data/decode/annotation.cpp index 8e89b1df..a474dd90 100644 --- a/DSView/pv/data/decode/annotation.cpp +++ b/DSView/pv/data/decode/annotation.cpp @@ -40,7 +40,7 @@ Annotation::Annotation(const srd_proto_data *const pdata) : (const srd_proto_data_annotation*)pdata->data; assert(pda); - _format = pda->ann_format; + _format = pda->ann_class; const char *const *annotations = (char**)pda->ann_text; while(*annotations) { diff --git a/DSView/pv/dialogs/search.cpp b/DSView/pv/dialogs/search.cpp index 13dd3d72..aeaeb464 100644 --- a/DSView/pv/dialogs/search.cpp +++ b/DSView/pv/dialogs/search.cpp @@ -48,7 +48,7 @@ Search::Search(QWidget *parent, struct sr_dev_inst *sdi, QString pattern) : search_lineEdit.setInputMask("X X X X X X X X X X X X X X X X"); search_lineEdit.setFont(font); - QLabel *search_label = new QLabel("1 1 1 1 1\n5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0"); + QLabel *search_label = new QLabel("1 1 1 1 1 1\n5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0"); search_label->setFont(font); search_buttonBox.addButton(QDialogButtonBox::Ok); diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index f8234d4a..a8fb8d31 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -284,6 +284,7 @@ void MainWindow::update_device_list() { assert(_sampling_bar); + _session.stop_capture(); _view->show_trig_cursor(false); _trigger_widget->device_change(); #ifdef ENABLE_DECODE diff --git a/DSView/pv/prop/binding/binding_deviceoptions.cpp b/DSView/pv/prop/binding/binding_deviceoptions.cpp index 8b227ffb..c8c1e9a0 100644 --- a/DSView/pv/prop/binding/binding_deviceoptions.cpp +++ b/DSView/pv/prop/binding/binding_deviceoptions.cpp @@ -82,6 +82,8 @@ DeviceOptions::DeviceOptions(struct sr_dev_inst *sdi) : case SR_CONF_BUFFERSIZE: case SR_CONF_TRIGGER_SOURCE: case SR_CONF_FILTER: + case SR_CONF_MAX_HEIGHT: + case SR_CONF_MAX_HEIGHT_VALUE: case SR_CONF_COUPLING: case SR_CONF_EN_CH: case SR_CONF_OPERATION_MODE: diff --git a/DSView/pv/view/devmode.cpp b/DSView/pv/view/devmode.cpp index 295f8b0d..f48c453c 100644 --- a/DSView/pv/view/devmode.cpp +++ b/DSView/pv/view/devmode.cpp @@ -122,10 +122,10 @@ void DevMode::on_mode_change() i != _mode_button_list.end(); i++) { if ((*i).first.get() == button) { if (dev_inst->dev_inst()->mode != (*i).second->mode) { + _view.session().stop_capture(); dev_inst->set_config(NULL, NULL, SR_CONF_DEVICE_MODE, g_variant_new_int16((*i).second->mode)); - mode_changed(); } } diff --git a/DSView/pv/view/view.cpp b/DSView/pv/view/view.cpp index eb7f815a..77e9d199 100644 --- a/DSView/pv/view/view.cpp +++ b/DSView/pv/view/view.cpp @@ -57,6 +57,7 @@ const int View::LabelMarginWidth = 70; const int View::RulerHeight = 50; const int View::MaxScrollValue = INT_MAX / 2; +const int View::MaxHeightUnit = 20; //const int View::SignalHeight = 30;s const int View::SignalMargin = 10; @@ -470,6 +471,7 @@ void View::update_scale() void View::signals_changed() { int total_rows = 0; + uint8_t max_height = MaxHeightUnit; const vector< boost::shared_ptr > traces(get_traces()); BOOST_FOREACH(const boost::shared_ptr t, traces) { @@ -483,7 +485,16 @@ void View::signals_changed() - horizontalScrollBar()->height() - 2 * SignalMargin * traces.size()) * 1.0 / total_rows; - _signalHeight = (int)((height <= 0) ? 1 : height); + if (_session.get_device()->dev_inst()->mode == LOGIC) { + GVariant* gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_MAX_HEIGHT_VALUE); + if (gvar != NULL) { + max_height = (g_variant_get_byte(gvar) + 1) * MaxHeightUnit; + g_variant_unref(gvar); + } + _signalHeight = (int)((height <= 0) ? 1 : (height >= max_height) ? max_height : height); + } else { + _signalHeight = (int)((height <= 0) ? 1 : height); + } _spanY = _signalHeight + 2 * SignalMargin; int next_v_offset = SignalMargin; BOOST_FOREACH(boost::shared_ptr t, traces) { diff --git a/DSView/pv/view/view.h b/DSView/pv/view/view.h index 92ba5c01..c3f6ac72 100644 --- a/DSView/pv/view/view.h +++ b/DSView/pv/view/view.h @@ -64,6 +64,7 @@ private: static const int RulerHeight; static const int MaxScrollValue; + static const int MaxHeightUnit; public: //static const int SignalHeight; diff --git a/libsigrok4DSL/hardware/DSL/dsl.h b/libsigrok4DSL/hardware/DSL/dsl.h index 4f5d022b..9f1bbf73 100644 --- a/libsigrok4DSL/hardware/DSL/dsl.h +++ b/libsigrok4DSL/hardware/DSL/dsl.h @@ -169,6 +169,7 @@ struct DSL_context { int trigger_stage; uint16_t trigger_buffer[NUM_TRIGGER_STAGES]; uint64_t timebase; + uint8_t max_height; uint8_t trigger_slope; uint8_t trigger_source; uint8_t trigger_hrate; diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index 75aa014e..6269e28c 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -89,6 +89,14 @@ static const char *filters[] = { "1 Sample Clock", }; +static const char *maxHeights[] = { + "1X", + "2X", + "3X", + "4X", + "5X", +}; + static const int32_t hwopts[] = { SR_CONF_CONN, }; @@ -99,6 +107,7 @@ static const int32_t hwcaps[] = { SR_CONF_SAMPLERATE, /* These are really implemented in the driver, not the hardware. */ + SR_CONF_MAX_HEIGHT, SR_CONF_LIMIT_SAMPLES, SR_CONF_CONTINUOUS, }; @@ -107,6 +116,7 @@ static const int32_t hwoptions[] = { SR_CONF_OPERATION_MODE, SR_CONF_THRESHOLD, SR_CONF_FILTER, + SR_CONF_MAX_HEIGHT, SR_CONF_CLOCK_TYPE, SR_CONF_CLOCK_EDGE, }; @@ -115,6 +125,7 @@ static const int32_t hwoptions_pro[] = { SR_CONF_OPERATION_MODE, SR_CONF_VTH, SR_CONF_FILTER, + SR_CONF_MAX_HEIGHT, SR_CONF_CLOCK_TYPE, SR_CONF_CLOCK_EDGE, }; @@ -682,6 +693,7 @@ static struct DSL_context *DSLogic_dev_new(void) devc->stream = FALSE; devc->mstatus_valid = FALSE; devc->data_lock = FALSE; + devc->max_height = 1; return devc; } @@ -1238,6 +1250,18 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, devc = sdi->priv; *data = g_variant_new_string(filters[devc->filter]); break; + case SR_CONF_MAX_HEIGHT: + if (!sdi) + return SR_ERR; + devc = sdi->priv; + *data = g_variant_new_string(maxHeights[devc->max_height]); + break; + case SR_CONF_MAX_HEIGHT_VALUE: + if (!sdi) + return SR_ERR; + devc = sdi->priv; + *data = g_variant_new_byte(devc->max_height); + break; case SR_CONF_THRESHOLD: if (!sdi) return SR_ERR; @@ -1650,6 +1674,17 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } sr_dbg("%s: setting threshold to %d", __func__, devc->th_level); + } else if (id == SR_CONF_MAX_HEIGHT) { + stropt = g_variant_get_string(data, NULL); + ret = SR_OK; + for (i = 0; i < ARRAY_SIZE(maxHeights); i++) { + if (!strcmp(stropt, maxHeights[i])) { + devc->max_height = i; + break; + } + } + sr_dbg("%s: setting Signal Max Height to %d", + __func__, devc->max_height); } else if (id == SR_CONF_EN_CH) { ch->enabled = g_variant_get_boolean(data); if (sdi->mode == DSO) { @@ -1879,6 +1914,9 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_FILTER: *data = g_variant_new_strv(filters, ARRAY_SIZE(filters)); break; + case SR_CONF_MAX_HEIGHT: + *data = g_variant_new_strv(maxHeights, ARRAY_SIZE(maxHeights)); + break; default: return SR_ERR_NA; } diff --git a/libsigrok4DSL/hardware/demo/demo.c b/libsigrok4DSL/hardware/demo/demo.c index eedd6c88..0a2f28e2 100644 --- a/libsigrok4DSL/hardware/demo/demo.c +++ b/libsigrok4DSL/hardware/demo/demo.c @@ -78,6 +78,14 @@ static const char *pattern_strings[] = { "Random", }; +static const char *maxHeights[] = { + "1X", + "2X", + "3X", + "4X", + "5X", +}; + static struct sr_dev_mode mode_list[] = { {"LA", LOGIC}, {"DAQ", ANALOG}, @@ -100,6 +108,7 @@ struct dev_context { uint64_t timebase; gboolean instant; gboolean data_lock; + uint8_t max_height; int trigger_stage; uint16_t trigger_mask; @@ -112,6 +121,7 @@ static const int hwcaps[] = { SR_CONF_DEMO_DEV, SR_CONF_SAMPLERATE, SR_CONF_PATTERN_MODE, + SR_CONF_MAX_HEIGHT, SR_CONF_LIMIT_SAMPLES, SR_CONF_LIMIT_MSEC, SR_CONF_CONTINUOUS, @@ -119,6 +129,7 @@ static const int hwcaps[] = { static const int hwoptions[] = { SR_CONF_PATTERN_MODE, + SR_CONF_MAX_HEIGHT, }; static const int32_t sessions[] = { @@ -234,6 +245,7 @@ static GSList *hw_scan(GSList *options) devc->sample_generator = PATTERN_SINE; devc->timebase = 10000; devc->data_lock = FALSE; + devc->max_height = 1; sdi->priv = devc; @@ -355,6 +367,12 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_PATTERN_MODE: *data = g_variant_new_string(pattern_strings[devc->sample_generator]); break; + case SR_CONF_MAX_HEIGHT: + *data = g_variant_new_string(maxHeights[devc->max_height]); + break; + case SR_CONF_MAX_HEIGHT_VALUE: + *data = g_variant_new_byte(devc->max_height); + break; case SR_CONF_VDIV: *data = g_variant_new_uint64(ch->vdiv); break; @@ -484,6 +502,17 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } sr_dbg("%s: setting pattern to %d", __func__, devc->sample_generator); + } else if (id == SR_CONF_MAX_HEIGHT) { + stropt = g_variant_get_string(data, NULL); + ret = SR_OK; + for (i = 0; i < ARRAY_SIZE(maxHeights); i++) { + if (!strcmp(stropt, maxHeights[i])) { + devc->max_height = i; + break; + } + } + sr_dbg("%s: setting Signal Max Height to %d", + __func__, devc->max_height); } else if (id == SR_CONF_INSTANT) { devc->instant = g_variant_get_boolean(data); sr_dbg("%s: setting INSTANT mode to %d", __func__, @@ -575,6 +604,9 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_PATTERN_MODE: *data = g_variant_new_strv(pattern_strings, ARRAY_SIZE(pattern_strings)); break; + case SR_CONF_MAX_HEIGHT: + *data = g_variant_new_strv(maxHeights, ARRAY_SIZE(maxHeights)); + break; default: return SR_ERR_NA; } diff --git a/libsigrok4DSL/hwdriver.c b/libsigrok4DSL/hwdriver.c index 25b7dbf8..6bbd0051 100644 --- a/libsigrok4DSL/hwdriver.c +++ b/libsigrok4DSL/hwdriver.c @@ -83,6 +83,10 @@ static struct sr_config_info sr_config_info_data[] = { "Buffer size", "Buffer size", NULL}, {SR_CONF_TIMEBASE, SR_T_UINT64, "timebase", "Time base", "Time base", NULL}, + {SR_CONF_MAX_HEIGHT, SR_T_CHAR, "height", + "Max Height", "Max Height", NULL}, + {SR_CONF_MAX_HEIGHT_VALUE, SR_T_UINT8, "height", + "Max Height", "Max Height", NULL}, {SR_CONF_FILTER, SR_T_CHAR, "filter", "Filter Targets", "Filter Targets", NULL}, {SR_CONF_VDIV, SR_T_RATIONAL_VOLT, "vdiv", diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index abe72ff3..be9b1d74 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -804,6 +804,10 @@ enum { /** Device channel mode */ SR_CONF_CHANNEL_MODE, + /** Signal max height **/ + SR_CONF_MAX_HEIGHT, + SR_CONF_MAX_HEIGHT_VALUE, + /** Device sample threshold */ SR_CONF_THRESHOLD, SR_CONF_VTH, From 0030ae48fd9b0d74f1d0c2406bdd5a70aa324b6e Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Tue, 29 Sep 2015 10:05:12 +0800 Subject: [PATCH 07/25] Fix issues of group function @ LA mode --- DSView/pv/data/groupsnapshot.cpp | 155 ++++++++++++++++++++----------- DSView/pv/data/groupsnapshot.h | 5 +- DSView/pv/sigsession.cpp | 8 +- 3 files changed, 112 insertions(+), 56 deletions(-) diff --git a/DSView/pv/data/groupsnapshot.cpp b/DSView/pv/data/groupsnapshot.cpp index 8a1c4c8c..51dd70db 100644 --- a/DSView/pv/data/groupsnapshot.cpp +++ b/DSView/pv/data/groupsnapshot.cpp @@ -61,6 +61,37 @@ GroupSnapshot::GroupSnapshot(const boost::shared_ptr &_logic_snap _sample_count = _logic_snapshot->get_sample_count(); _unit_size = _logic_snapshot->unit_size(); _index_list = index_list; + + _mask = 0; + std::list::iterator j = _index_list.begin(); + while(j != _index_list.end()) + _mask |= value_mask[(*j++)]; + + for (int i=0; i<32; i++) { + _bubble_start[i] = -1; + _bubble_end[i] = -1; + } + uint16_t mask = _mask; + int i = 0; + int k = 0; + int zero = 0; + int zero_pre = 0; + // max bubble count: 31 + do { + if (mask & 0x1) { + if (_bubble_start[k] != -1 && + _bubble_end[k] == -1) + _bubble_end[k++] = i - zero_pre; + } else { + if (_bubble_start[k] == -1) { + _bubble_start[k] = i - zero; + zero_pre = zero; + } + zero++; + } + i++; + }while(mask >>= 1); + append_payload(); } @@ -96,20 +127,26 @@ const uint16_t* GroupSnapshot::get_samples( int64_t i; uint64_t pow; + uint16_t mask; + uint16_t tmpl, tmpr; boost::lock_guard lock(_mutex); uint16_t *const data = new uint16_t[end_sample - start_sample]; // memcpy(data, (uint16_t*)_data + start_sample, sizeof(uint16_t) * // (end_sample - start_sample)); - memset(data, 0, sizeof(uint16_t) * (end_sample - start_sample)); +// memset(data, 0, sizeof(uint16_t) * (end_sample - start_sample)); for(i = start_sample; i < end_sample; i++) { - std::list::iterator j = _index_list.begin(); - pow = 0; - while(j != _index_list.end()) { - *(data + i - start_sample) += ((*((uint16_t*)_data + i) & value_mask[(*j)]) >> ((*j) - pow)); - pow++; - j++; + if (_unit_size == 2) + tmpl = *((uint16_t*)_data + i) & _mask; + else + tmpl = *((uint8_t*)_data + i) & _mask; + for(int j=0; _bubble_start[j] != -1; j++) { + tmpr = tmpl & (0xffff >> (16 - _bubble_start[j])); + tmpl >>= _bubble_end[j]; + tmpl <<= _bubble_start[j]; + tmpl += tmpr; } + *(data + i - start_sample) = tmpl; } return data; } @@ -155,6 +192,7 @@ void GroupSnapshot::append_payload_to_envelope_levels() Envelope &e0 = _envelope_levels[0]; uint64_t prev_length; EnvelopeSample *dest_ptr; + uint16_t mask; // Expand the data buffer to fit the new samples prev_length = e0.length; @@ -170,61 +208,74 @@ void GroupSnapshot::append_payload_to_envelope_levels() // Iterate through the samples to populate the first level mipmap uint16_t group_value[EnvelopeScaleFactor]; - const uint16_t *const end_src_ptr = (uint16_t*)_data + - e0.length * EnvelopeScaleFactor; - for (const uint16_t *src_ptr = (uint16_t*)_data + - prev_length * EnvelopeScaleFactor; - src_ptr < end_src_ptr; src_ptr += EnvelopeScaleFactor) + const uint8_t *const end_src_ptr = (uint8_t*)_data + + e0.length * EnvelopeScaleFactor * _unit_size; + for (const uint8_t *src_ptr = (uint8_t*)_data + + prev_length * EnvelopeScaleFactor * _unit_size; + src_ptr < end_src_ptr; src_ptr += EnvelopeScaleFactor * _unit_size) { - int pow; -// for(i = 0; i < EnvelopeScaleFactor; i++) { + uint16_t tmpr; + for(int i = 0; i < EnvelopeScaleFactor; i++) { + if (_unit_size == 2) + group_value[i] = *((uint16_t*)src_ptr + i) & _mask; + else + group_value[i] = *((uint8_t*)src_ptr + i) & _mask; + for(int j=0; _bubble_start[j] != -1; j++) { + tmpr = group_value[i] & (0xffff >> (16 - _bubble_start[j])); + group_value[i] >>= _bubble_end[j]; + group_value[i] <<= _bubble_start[j]; + group_value[i] += tmpr; + } // group_value[i] = 0; // std::list::iterator j = _index_list.begin(); // pow = 0; // while(j != _index_list.end()) { +// mask = value_mask[(*j)]; +// if ( *(j+1) == (*j) + 1) +// mask |= value_mask[*(j+1)]; // group_value[i] += ((*(src_ptr + i) & value_mask[(*j)]) >> ((*j) - pow)); // pow++; // j++; // } -// } - group_value[0] = 0; - group_value[1] = 0; - group_value[2] = 0; - group_value[3] = 0; - group_value[4] = 0; - group_value[5] = 0; - group_value[6] = 0; - group_value[7] = 0; - group_value[8] = 0; - group_value[9] = 0; - group_value[10] = 0; - group_value[11] = 0; - group_value[12] = 0; - group_value[13] = 0; - group_value[14] = 0; - group_value[15] = 0; - std::list::iterator j = _index_list.begin(); - pow = 0; - while(j != _index_list.end()) { - group_value[0] += ((*(src_ptr + 0) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[1] += ((*(src_ptr + 1) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[2] += ((*(src_ptr + 2) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[3] += ((*(src_ptr + 3) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[4] += ((*(src_ptr + 4) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[5] += ((*(src_ptr + 5) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[6] += ((*(src_ptr + 6) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[7] += ((*(src_ptr + 7) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[8] += ((*(src_ptr + 8) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[9] += ((*(src_ptr + 9) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[10] += ((*(src_ptr + 10) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[11] += ((*(src_ptr + 11) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[12] += ((*(src_ptr + 12) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[13] += ((*(src_ptr + 13) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[14] += ((*(src_ptr + 14) & value_mask[(*j)]) >> ((*j) - pow)); - group_value[15] += ((*(src_ptr + 15) & value_mask[(*j)]) >> ((*j) - pow)); - pow++; - j++; } +// group_value[0] = 0; +// group_value[1] = 0; +// group_value[2] = 0; +// group_value[3] = 0; +// group_value[4] = 0; +// group_value[5] = 0; +// group_value[6] = 0; +// group_value[7] = 0; +// group_value[8] = 0; +// group_value[9] = 0; +// group_value[10] = 0; +// group_value[11] = 0; +// group_value[12] = 0; +// group_value[13] = 0; +// group_value[14] = 0; +// group_value[15] = 0; +// std::list::iterator j = _index_list.begin(); +// pow = 0; +// while(j != _index_list.end()) { +// group_value[0] += ((*(src_ptr + 0) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[1] += ((*(src_ptr + 1) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[2] += ((*(src_ptr + 2) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[3] += ((*(src_ptr + 3) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[4] += ((*(src_ptr + 4) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[5] += ((*(src_ptr + 5) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[6] += ((*(src_ptr + 6) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[7] += ((*(src_ptr + 7) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[8] += ((*(src_ptr + 8) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[9] += ((*(src_ptr + 9) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[10] += ((*(src_ptr + 10) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[11] += ((*(src_ptr + 11) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[12] += ((*(src_ptr + 12) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[13] += ((*(src_ptr + 13) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[14] += ((*(src_ptr + 14) & value_mask[(*j)]) >> ((*j) - pow)); +// group_value[15] += ((*(src_ptr + 15) & value_mask[(*j)]) >> ((*j) - pow)); +// pow++; +// j++; +// } const EnvelopeSample sub_sample = { *min_element(group_value, group_value + EnvelopeScaleFactor), *max_element(group_value, group_value + EnvelopeScaleFactor), diff --git a/DSView/pv/data/groupsnapshot.h b/DSView/pv/data/groupsnapshot.h index 0b66bf00..729b57a7 100644 --- a/DSView/pv/data/groupsnapshot.h +++ b/DSView/pv/data/groupsnapshot.h @@ -68,7 +68,7 @@ private: }; private: - static const unsigned int ScaleStepCount = 10; + static const unsigned int ScaleStepCount = 16; static const int EnvelopeScalePower; static const int EnvelopeScaleFactor; static const float LogEnvelopeScaleFactor; @@ -103,6 +103,9 @@ private: int _unit_size; boost::shared_ptr _signal; std::list _index_list; + uint16_t _mask; + int _bubble_start[32]; + int _bubble_end[32]; friend class GroupSnapshotTest::Basic; }; diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index 7c67795a..3550b4ae 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -467,6 +467,7 @@ set< boost::shared_ptr > SigSession::get_data() const assert(sig); data.insert(sig->data()); } + data.insert(_group_data); return data; } @@ -624,15 +625,15 @@ void SigSession::add_group() _group_cnt++; if (_capture_state == Stopped) { - if (!_cur_group_snapshot) - { + //if (!_cur_group_snapshot) + //{ // Create a new data snapshot _cur_group_snapshot = boost::shared_ptr( new data::GroupSnapshot(_logic_data->get_snapshots().front(), signal->get_index_list())); //_cur_group_snapshot->append_payload(); _group_data->push_snapshot(_cur_group_snapshot); _cur_group_snapshot.reset(); - } + //} } signals_changed(); @@ -1071,6 +1072,7 @@ void SigSession::data_feed_in(const struct sr_dev_inst *sdi, _cur_group_snapshot = boost::shared_ptr( new data::GroupSnapshot(_logic_data->get_snapshots().front(), g->get_index_list())); _group_data->push_snapshot(_cur_group_snapshot); + _cur_group_snapshot.reset(); } _cur_logic_snapshot.reset(); _cur_dso_snapshot.reset(); From 49eea5765dfbc04c9f295fcd95a1b0840c4e3b21 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Tue, 29 Sep 2015 10:36:42 +0800 Subject: [PATCH 08/25] Add cousor by dobuleclick --- DSView/pv/view/viewport.cpp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 31503ed0..6e3bc1b1 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -532,14 +532,20 @@ void Viewport::mouseDoubleClickEvent(QMouseEvent *event) (void)event; if (_view.session().get_device()->dev_inst()->mode == LOGIC) { - if (_view.scale() == _view.get_maxscale()) - _view.set_preScale_preOffset(); - else - _view.set_scale_offset(_view.get_maxscale(), 0); - + if (event->button() & Qt::RightButton) { + if (_view.scale() == _view.get_maxscale()) + _view.set_preScale_preOffset(); + else + _view.set_scale_offset(_view.get_maxscale(), 0); + } else if (event->button() & Qt::LeftButton) { + uint64_t index = (_view.offset() + (event->pos().x() + 0.5) * _view.scale()) * _view.session().get_device()->get_sample_rate(); + _view.add_cursor(view::Ruler::CursorColor[_view.get_cursorList().size() % 8], index); + _view.show_cursors(true); + } update(); } else if (_view.session().get_device()->dev_inst()->mode == DSO && - _view.session().get_capture_state() != SigSession::Init) { + _view.session().get_capture_state() != SigSession::Init && + event->button() & Qt::LeftButton) { if (_dso_xm_stage == 0) { uint64_t sample_rate = _view.session().get_device()->get_sample_rate(); double scale = _view.scale(); From a042fabfb6cdf200428096f6b30bcb3feb7e736f Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Tue, 29 Sep 2015 11:20:06 +0800 Subject: [PATCH 09/25] Fix probe index error when load certain probes enabled *.dsl file --- libsigrok4DSL/dsdevice.c | 2 +- libsigrok4DSL/hardware/DSL/dslogic.c | 1 - libsigrok4DSL/hardware/demo/demo.c | 1 - libsigrok4DSL/session_file.c | 13 +++++-------- 4 files changed, 6 insertions(+), 11 deletions(-) diff --git a/libsigrok4DSL/dsdevice.c b/libsigrok4DSL/dsdevice.c index f3067c26..cbc56591 100644 --- a/libsigrok4DSL/dsdevice.c +++ b/libsigrok4DSL/dsdevice.c @@ -208,7 +208,7 @@ SR_API gboolean sr_dev_has_option(const struct sr_dev_inst *sdi, int key) if (!sdi || !sdi->driver || !sdi->driver->config_list) return FALSE; - if (sdi->driver->config_list(SR_CONF_DEVICE_OPTIONS, &gvar, NULL, NULL) != SR_OK) + if (sdi->driver->config_list(SR_CONF_DEVICE_OPTIONS, &gvar, sdi, NULL) != SR_OK) return FALSE; ret = FALSE; diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index 6269e28c..fced7cc4 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -107,7 +107,6 @@ static const int32_t hwcaps[] = { SR_CONF_SAMPLERATE, /* These are really implemented in the driver, not the hardware. */ - SR_CONF_MAX_HEIGHT, SR_CONF_LIMIT_SAMPLES, SR_CONF_CONTINUOUS, }; diff --git a/libsigrok4DSL/hardware/demo/demo.c b/libsigrok4DSL/hardware/demo/demo.c index 0a2f28e2..df4414b7 100644 --- a/libsigrok4DSL/hardware/demo/demo.c +++ b/libsigrok4DSL/hardware/demo/demo.c @@ -121,7 +121,6 @@ static const int hwcaps[] = { SR_CONF_DEMO_DEV, SR_CONF_SAMPLERATE, SR_CONF_PATTERN_MODE, - SR_CONF_MAX_HEIGHT, SR_CONF_LIMIT_SAMPLES, SR_CONF_LIMIT_MSEC, SR_CONF_CONTINUOUS, diff --git a/libsigrok4DSL/session_file.c b/libsigrok4DSL/session_file.c index 174a8f94..5e84ee66 100644 --- a/libsigrok4DSL/session_file.c +++ b/libsigrok4DSL/session_file.c @@ -206,7 +206,7 @@ SR_API int sr_session_load(const char *filename) g_variant_new_uint64(total_probes), sdi, NULL, NULL); for (p = 0; p < total_probes; p++) { snprintf(probename, SR_MAX_PROBENAME_LEN, "%" PRIu64, p); - if (!(probe = sr_channel_new(p, SR_CHANNEL_LOGIC, TRUE, + if (!(probe = sr_channel_new(p, SR_CHANNEL_LOGIC, FALSE, probename))) return SR_ERR; sdi->channels = g_slist_append(sdi->channels, probe); @@ -217,17 +217,14 @@ SR_API int sr_session_load(const char *filename) enabled_probes++; tmp_u64 = strtoul(keys[j]+5, NULL, 10); /* sr_session_save() */ - sr_dev_probe_name_set(sdi, tmp_u64 - 1, val); + sr_dev_probe_name_set(sdi, tmp_u64, val); + sr_dev_probe_enable(sdi, tmp_u64, TRUE); } else if (!strncmp(keys[j], "trigger", 7)) { probenum = strtoul(keys[j]+7, NULL, 10); sr_dev_trigger_set(sdi, probenum, val); } } g_strfreev(keys); - /* Disable probes not specifically listed. */ - if (total_probes) - for (p = enabled_probes; p < total_probes; p++) - sr_dev_probe_enable(sdi, p, FALSE); } devcnt++; } @@ -307,9 +304,9 @@ SR_API int sr_session_save(const char *filename, const struct sr_dev_inst *sdi, probe = l->data; if (probe->enabled) { if (probe->name) - fprintf(meta, "probe%d = %s\n", probecnt, probe->name); + fprintf(meta, "probe%d = %s\n", probe->index, probe->name); if (probe->trigger) - fprintf(meta, " trigger%d = %s\n", probecnt, probe->trigger); + fprintf(meta, " trigger%d = %s\n", probe->index, probe->trigger); probecnt++; } } From c15558972d0d44d9f34f47f2d51d79c652d5dec6 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Mon, 5 Oct 2015 23:42:48 +0800 Subject: [PATCH 10/25] Add edges calculation function @ LA mode --- DSView/pv/data/logicsnapshot.cpp | 2 +- DSView/pv/view/logicsignal.cpp | 44 ++++++++ DSView/pv/view/logicsignal.h | 2 + DSView/pv/view/viewport.cpp | 167 ++++++++++++++++++++++--------- DSView/pv/view/viewport.h | 11 +- 5 files changed, 178 insertions(+), 48 deletions(-) diff --git a/DSView/pv/data/logicsnapshot.cpp b/DSView/pv/data/logicsnapshot.cpp index b78b9a9f..2b53292e 100644 --- a/DSView/pv/data/logicsnapshot.cpp +++ b/DSView/pv/data/logicsnapshot.cpp @@ -252,7 +252,7 @@ bool LogicSnapshot::get_nxt_edge( unsigned int level; bool fast_forward; - assert(index > 0); + //assert(index > 0); const unsigned int min_level = max((int)floorf(logf(min_length) / LogMipMapScaleFactor) - 1, 0); diff --git a/DSView/pv/view/logicsignal.cpp b/DSView/pv/view/logicsignal.cpp index 3b2527d6..f52282ce 100644 --- a/DSView/pv/view/logicsignal.cpp +++ b/DSView/pv/view/logicsignal.cpp @@ -324,5 +324,49 @@ bool LogicSignal::measure(const QPointF &p, uint64_t &index0, uint64_t &index1, return false; } + +bool LogicSignal::edges(const QPointF &p, uint64_t start, uint64_t &rising, uint64_t &falling) const +{ + uint64_t index, end; + const float gap = abs(p.y() - get_y()); + if (gap < get_signalHeight() * 0.5) { + const deque< boost::shared_ptr > &snapshots = + _data->get_snapshots(); + if (snapshots.empty()) + return false; + + const boost::shared_ptr &snapshot = + snapshots.front(); + if (snapshot->buf_null()) + return false; + + end = _data->samplerate() * (_view->offset() - _data->get_start_time() + p.x() * _view->scale()); + index = min(start, end); + end = max(start, end); + start = index; + if (end > (snapshot->get_sample_count() - 1)) + return false; + + const uint64_t sig_mask = 1ULL << get_index(); + bool sample = snapshot->get_sample(start) & sig_mask; + + rising = 0; + falling = 0; + do { + if (snapshot->get_nxt_edge(index, sample, snapshot->get_sample_count(), 1, get_index())) { + if (index > end) + break; + rising += !sample; + falling += sample; + sample = !sample; + } else { + break; + } + } while(index <= end); + return true; + } + return false; +} + } // namespace view } // namespace pv diff --git a/DSView/pv/view/logicsignal.h b/DSView/pv/view/logicsignal.h index 9a03464f..5a3a444e 100644 --- a/DSView/pv/view/logicsignal.h +++ b/DSView/pv/view/logicsignal.h @@ -82,6 +82,8 @@ public: bool measure(const QPointF &p, uint64_t &index0, uint64_t &index1, uint64_t &index2) const; + bool edges(const QPointF &p, uint64_t start, uint64_t &rising, uint64_t &falling) const; + protected: void paint_type_options(QPainter &p, int right, bool hover, int action); diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 6e3bc1b1..bc781a61 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -511,16 +511,34 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) if(_drag_sig) _drag_sig.reset(); - const double strength = _drag_strength*DragTimerInterval*1.0/_time.elapsed(); - if (abs(_drag_strength) < MinorDragOffsetUp && abs(strength) > MinorDragRateUp) { - _drag_strength = _drag_strength; - _drag_timer.start(DragTimerInterval); - } else if (abs(strength) > DragTimerInterval) { - _drag_strength = strength * 5; - _drag_timer.start(DragTimerInterval); - } else { - _drag_strength = 0; - _drag_timer.stop(); + if (_mouse_down_point.x() == event->pos().x() && + event->button() & Qt::LeftButton) { + if (_measure_type == LOGIC_EDGE) { + _measure_type = NO_MEASURE; + _measure_shown = false; + _edge_rising = 0; + _edge_falling = 0; + } else if (_measure_type != LOGIC_MOVE) { + _measure_type = LOGIC_EDGE; + _edge_start = (_view.offset() + (event->pos().x() + 0.5) * _view.scale()) * _view.session().get_device()->get_sample_rate(); + } + } + + if (_measure_type != LOGIC_EDGE) { + const double strength = _drag_strength*DragTimerInterval*1.0/_time.elapsed(); + if (abs(_drag_strength) < MinorDragOffsetUp && abs(strength) > MinorDragRateUp) { + _drag_strength = _drag_strength; + _drag_timer.start(DragTimerInterval); + _measure_type = LOGIC_MOVE; + } else if (abs(strength) > DragTimerInterval) { + _drag_strength = strength * 5; + _drag_timer.start(DragTimerInterval); + _measure_type = LOGIC_MOVE; + } else { + _drag_strength = 0; + _drag_timer.stop(); + _measure_type = NO_MEASURE; + } } update(); @@ -593,6 +611,10 @@ void Viewport::leaveEvent(QEvent *) _measure_shown = _dso_xm || _dso_ym; _mouse_point = QPoint(-1, -1); //_view.show_cursors(false); + if (_measure_type == LOGIC_EDGE) { + _measure_type = NO_MEASURE; + _measure_shown = false; + } update(); } @@ -622,46 +644,62 @@ void Viewport::measure() _view.session().get_capture_state() == SigSession::Running) || _drag_strength != 0) return; - _measure_shown = _dso_xm || _dso_ym; - const uint64_t sample_rate = _view.session().get_device()->get_sample_rate(); - const vector< boost::shared_ptr > sigs(_view.session().get_signals()); - BOOST_FOREACH(const boost::shared_ptr s, sigs) { - assert(s); - boost::shared_ptr logicSig; - boost::shared_ptr dsoSig; - if (logicSig = dynamic_pointer_cast(s)) { - if (logicSig->measure(_view.hover_point(), _cur_sample, _nxt_sample, _thd_sample)) { - _measure_shown = true; - _measure_type = LOGIC_FREQ; + _measure_shown = _dso_xm || _dso_ym; + const uint64_t sample_rate = _view.session().get_device()->get_sample_rate(); + const vector< boost::shared_ptr > sigs(_view.session().get_signals()); + BOOST_FOREACH(const boost::shared_ptr s, sigs) { + assert(s); + boost::shared_ptr logicSig; + boost::shared_ptr dsoSig; + if (logicSig = dynamic_pointer_cast(s)) { + if (_measure_type != LOGIC_EDGE && + logicSig->measure(_view.hover_point(), _cur_sample, _nxt_sample, _thd_sample)) { + _measure_shown = true; + _measure_type = LOGIC_FREQ; - _mm_width = _view.get_ruler()->format_real_time(_nxt_sample - _cur_sample, sample_rate); - _mm_period = _thd_sample != 0 ? _view.get_ruler()->format_real_time(_thd_sample - _cur_sample, sample_rate) : "#####"; - _mm_freq = _thd_sample != 0 ? _view.get_ruler()->format_real_freq(_thd_sample - _cur_sample, sample_rate) : "#####"; + _mm_width = _view.get_ruler()->format_real_time(_nxt_sample - _cur_sample, sample_rate); + _mm_period = _thd_sample != 0 ? _view.get_ruler()->format_real_time(_thd_sample - _cur_sample, sample_rate) : "#####"; + _mm_freq = _thd_sample != 0 ? _view.get_ruler()->format_real_freq(_thd_sample - _cur_sample, sample_rate) : "#####"; - const double pixels_offset = _view.offset() / _view.scale(); - const double samples_per_pixel = sample_rate * _view.scale(); - _cur_preX = _cur_sample / samples_per_pixel - pixels_offset; - _cur_aftX = _nxt_sample / samples_per_pixel - pixels_offset; - _cur_thdX = _thd_sample / samples_per_pixel - pixels_offset; - _cur_midY = logicSig->get_y(); + const double pixels_offset = _view.offset() / _view.scale(); + const double samples_per_pixel = sample_rate * _view.scale(); + _cur_preX = _cur_sample / samples_per_pixel - pixels_offset; + _cur_aftX = _nxt_sample / samples_per_pixel - pixels_offset; + _cur_thdX = _thd_sample / samples_per_pixel - pixels_offset; + _cur_midY = logicSig->get_y(); - _mm_duty = _thd_sample != 0 ? QString::number((_nxt_sample - _cur_sample) * 100.0 / (_thd_sample - _cur_sample), 'f', 2)+"%" : + _mm_duty = _thd_sample != 0 ? QString::number((_nxt_sample - _cur_sample) * 100.0 / (_thd_sample - _cur_sample), 'f', 2)+"%" : "#####"; - mouse_measure(); - break; - } else { - _mm_width = "#####"; - _mm_period = "#####"; - _mm_freq = "#####"; - _mm_duty = "#####"; - } - mouse_measure(); - } else if (dsoSig = dynamic_pointer_cast(s)) { - if (_measure_en && dsoSig->measure(_view.hover_point())) { - _measure_shown = true; - _measure_type = DSO_FREQ; - } - } + mouse_measure(); + break; + } else if (_measure_type == LOGIC_EDGE && + logicSig->edges(_view.hover_point(), _edge_start, _edge_rising, _edge_falling)) { + _measure_shown = true; + + const double pixels_offset = _view.offset() / _view.scale(); + const double samples_per_pixel = sample_rate * _view.scale(); + _cur_preX = _edge_start / samples_per_pixel - pixels_offset; + _cur_aftX = _view.hover_point().x(); + _cur_midY = logicSig->get_y() - logicSig->get_signalHeight()/2 - 5; + + _em_rising = "Rising: " + QString::number(_edge_rising); + _em_falling = "Falling: " + QString::number(_edge_falling); + _em_edges = "Edges: " + QString::number(_edge_rising + _edge_falling); + + break; + } else { + _mm_width = "#####"; + _mm_period = "#####"; + _mm_freq = "#####"; + _mm_duty = "#####"; + } + mouse_measure(); + } else if (dsoSig = dynamic_pointer_cast(s)) { + if (_measure_en && dsoSig->measure(_view.hover_point())) { + _measure_shown = true; + _measure_type = DSO_FREQ; + } + } } } @@ -721,6 +759,43 @@ void Viewport::paintMeasure(QPainter &p) p.drawText(measure4_rect, Qt::AlignRight | Qt::AlignVCenter, tr("Duty Cycle: ") + _mm_duty); } + } else if (_measure_type == LOGIC_EDGE) { + p.setPen(QColor(17, 133, 209, 255)); + + p.drawLine(QLineF(_cur_preX, _cur_midY-5, _cur_preX, _cur_midY+5)); + p.drawLine(QLineF(_cur_aftX, _cur_midY-5, _cur_aftX, _cur_midY+5)); + p.drawLine(QLineF(_cur_preX, _cur_midY, _cur_aftX, _cur_midY)); + + int typical_width = p.boundingRect(0, 0, INT_MAX, INT_MAX, + Qt::AlignLeft | Qt::AlignTop, _em_edges).width(); + typical_width = max(typical_width, p.boundingRect(0, 0, INT_MAX, INT_MAX, + Qt::AlignLeft | Qt::AlignTop, _em_rising).width()); + typical_width = max(typical_width, p.boundingRect(0, 0, INT_MAX, INT_MAX, + Qt::AlignLeft | Qt::AlignTop, _em_falling).width()); + + typical_width = typical_width + 30; + + const double width = _view.get_view_width(); + const double height = _view.viewport()->height(); + const double left = _view.hover_point().x(); + const double top = _view.hover_point().y(); + const double right = left + typical_width; + const double bottom = top + 60; + QPointF org_pos = QPointF(right > width ? left - typical_width : left, bottom > height ? top - 80 : top); + QRectF measure_rect = QRectF(org_pos.x(), org_pos.y(), (double)typical_width, 60.0); + QRectF measure1_rect = QRectF(org_pos.x(), org_pos.y(), (double)typical_width, 20.0); + QRectF measure2_rect = QRectF(org_pos.x(), org_pos.y()+20, (double)typical_width, 20.0); + QRectF measure3_rect = QRectF(org_pos.x(), org_pos.y()+40, (double)typical_width, 20.0); + + p.setPen(Qt::NoPen); + p.setBrush(QColor(17, 133, 209, 150)); + p.drawRect(measure_rect); + + p.setPen(Qt::black); + p.drawText(measure1_rect, Qt::AlignRight | Qt::AlignVCenter, _em_edges); + p.drawText(measure2_rect, Qt::AlignRight | Qt::AlignVCenter, _em_rising); + p.drawText(measure3_rect, Qt::AlignRight | Qt::AlignVCenter, _em_falling); + } else if (_measure_type == DSO_FREQ) { const vector< boost::shared_ptr > sigs(_view.session().get_signals()); BOOST_FOREACH(const boost::shared_ptr s, sigs) { diff --git a/DSView/pv/view/viewport.h b/DSView/pv/view/viewport.h index 6a0f8909..9c0da6be 100644 --- a/DSView/pv/view/viewport.h +++ b/DSView/pv/view/viewport.h @@ -57,6 +57,8 @@ public: enum MeasureType { NO_MEASURE, LOGIC_FREQ, + LOGIC_EDGE, + LOGIC_MOVE, DSO_FREQ }; @@ -118,7 +120,7 @@ private: bool _measure_en; bool _measure_shown; - int _measure_type; + MeasureType _measure_type; uint64_t _cur_sample; uint64_t _nxt_sample; uint64_t _thd_sample; @@ -131,6 +133,13 @@ private: QString _mm_freq; QString _mm_duty; + uint64_t _edge_rising; + uint64_t _edge_falling; + uint64_t _edge_start; + QString _em_rising; + QString _em_falling; + QString _em_edges; + QTimer trigger_timer; bool triggered; int timer_cnt; From 51cb900cba593a788473878fb55b517dbc03c19b Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Wed, 7 Oct 2015 13:45:35 +0800 Subject: [PATCH 11/25] Improve measure @ OSC mode; add Vrms and Vmean --- DSView/DSView.qrc | 5 +- .../icons/{decoder-hidden.png => hidden.png} | Bin DSView/icons/settings.png | Bin 0 -> 4440 bytes DSView/icons/{decoder-shown.png => shown.png} | Bin DSView/pv/data/dsosnapshot.cpp | 95 +++++++-- DSView/pv/data/dsosnapshot.h | 5 + DSView/pv/dialogs/dsomeasure.cpp | 84 ++++++++ DSView/pv/dialogs/dsomeasure.h | 67 ++++++ DSView/pv/view/dsosignal.cpp | 196 ++++++++++++++---- DSView/pv/view/dsosignal.h | 37 ++++ DSView/pv/view/viewport.cpp | 24 ++- DSView/pv/widgets/decodergroupbox.cpp | 6 +- 12 files changed, 451 insertions(+), 68 deletions(-) rename DSView/icons/{decoder-hidden.png => hidden.png} (100%) create mode 100755 DSView/icons/settings.png rename DSView/icons/{decoder-shown.png => shown.png} (100%) create mode 100644 DSView/pv/dialogs/dsomeasure.cpp create mode 100644 DSView/pv/dialogs/dsomeasure.h diff --git a/DSView/DSView.qrc b/DSView/DSView.qrc index f93bad84..05955d6d 100644 --- a/DSView/DSView.qrc +++ b/DSView/DSView.qrc @@ -24,8 +24,8 @@ icons/start.png icons/dsl_logo.png icons/logo.png - icons/decoder-hidden.png - icons/decoder-shown.png + icons/hidden.png + icons/shown.png icons/instant.png icons/trigger_dis.png icons/file_dis.png @@ -55,5 +55,6 @@ icons/instant_dis_cn.png icons/start_dis.png icons/start_dis_cn.png + icons/settings.png diff --git a/DSView/icons/decoder-hidden.png b/DSView/icons/hidden.png similarity index 100% rename from DSView/icons/decoder-hidden.png rename to DSView/icons/hidden.png diff --git a/DSView/icons/settings.png b/DSView/icons/settings.png new file mode 100755 index 0000000000000000000000000000000000000000..b0065b510a7b42f26f5cece13c439feef66091a4 GIT binary patch literal 4440 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 lN*7{tFHMu|og= literal 0 HcmV?d00001 diff --git a/DSView/icons/decoder-shown.png b/DSView/icons/shown.png similarity index 100% rename from DSView/icons/decoder-shown.png rename to DSView/icons/shown.png diff --git a/DSView/pv/data/dsosnapshot.cpp b/DSView/pv/data/dsosnapshot.cpp index af1ae6dc..7585561b 100644 --- a/DSView/pv/data/dsosnapshot.cpp +++ b/DSView/pv/data/dsosnapshot.cpp @@ -45,6 +45,8 @@ const float DsoSnapshot::LogEnvelopeScaleFactor = logf(EnvelopeScaleFactor); const uint64_t DsoSnapshot::EnvelopeDataUnit = 4*1024; // bytes +const int DsoSnapshot::VrmsScaleFactor = 1 << 8; + DsoSnapshot::DsoSnapshot(const sr_datafeed_dso &dso, uint64_t _total_sample_len, unsigned int channel_num, bool instant) : Snapshot(sizeof(uint16_t), _total_sample_len, channel_num), _envelope_en(false), @@ -79,7 +81,7 @@ void DsoSnapshot::append_payload(const sr_datafeed_dso &dso) void DsoSnapshot::enable_envelope(bool enable) { - if (!_envelope_done & enable) + if (!_envelope_done && enable) append_payload_to_envelope_levels(); _envelope_en = enable; } @@ -146,24 +148,20 @@ void DsoSnapshot::reallocate_envelope(Envelope &e) void DsoSnapshot::append_payload_to_envelope_levels() { - unsigned int i; - for (i = 0; i < _channel_num; i++) { + for (int i = 0; i < _channel_num; i++) { Envelope &e0 = _envelope_levels[i][0]; uint64_t prev_length; EnvelopeSample *dest_ptr; - // Expand the data buffer to fit the new samples prev_length = e0.length; - e0.length = get_sample_count() / EnvelopeScaleFactor; + e0.length = _sample_count / EnvelopeScaleFactor; - // Break off if there are no new samples to compute - // if (e0.length == prev_length) - // return; if (e0.length == 0) return; if (e0.length == prev_length) prev_length = 0; + // Expand the data buffer to fit the new samples reallocate_envelope(e0); dest_ptr = e0.samples + prev_length; @@ -171,17 +169,6 @@ void DsoSnapshot::append_payload_to_envelope_levels() // Iterate through the samples to populate the first level mipmap const uint8_t *const stop_src_ptr = (uint8_t*)_data + e0.length * EnvelopeScaleFactor * _channel_num; -// for (const uint16_t *src_ptr = (uint16_t*)_data + -// prev_length * EnvelopeScaleFactor; -// src_ptr < end_src_ptr; src_ptr += EnvelopeScaleFactor) -// { -// const EnvelopeSample sub_sample = { -// *min_element(src_ptr, src_ptr + EnvelopeScaleFactor), -// *max_element(src_ptr, src_ptr + EnvelopeScaleFactor), -// }; - -// *dest_ptr++ = sub_sample; -// } for (const uint8_t *src_ptr = (uint8_t*)_data + prev_length * EnvelopeScaleFactor * _channel_num + i; src_ptr < stop_src_ptr; src_ptr += EnvelopeScaleFactor * _channel_num) @@ -194,14 +181,13 @@ void DsoSnapshot::append_payload_to_envelope_levels() EnvelopeSample sub_sample; sub_sample.min = *begin_src_ptr; sub_sample.max = *begin_src_ptr; - begin_src_ptr += _channel_num; + //begin_src_ptr += _channel_num; while (begin_src_ptr < end_src_ptr) { sub_sample.min = min(sub_sample.min, *begin_src_ptr); sub_sample.max = max(sub_sample.max, *begin_src_ptr); begin_src_ptr += _channel_num; } - *dest_ptr++ = sub_sample; } @@ -248,5 +234,72 @@ void DsoSnapshot::append_payload_to_envelope_levels() _envelope_done = true; } +double DsoSnapshot::cal_vrms(double zero_off, int index) const +{ + assert(index >= 0); + assert(index < _channel_num); + + // root-meam-squart value + double vrms_pre = 0; + double vrms = 0; + double tmp; + + // Iterate through the samples to populate the first level mipmap + const uint8_t *const stop_src_ptr = (uint8_t*)_data + + _sample_count * _channel_num; + for (const uint8_t *src_ptr = (uint8_t*)_data + index; + src_ptr < stop_src_ptr; src_ptr += VrmsScaleFactor * _channel_num) + { + const uint8_t * begin_src_ptr = + src_ptr; + const uint8_t *const end_src_ptr = + src_ptr + VrmsScaleFactor * _channel_num; + + while (begin_src_ptr < end_src_ptr) + { + tmp = (zero_off - *begin_src_ptr); + vrms += tmp * tmp; + begin_src_ptr += _channel_num; + } + vrms = vrms_pre + vrms / _sample_count; + vrms_pre = vrms; + } + vrms = std::pow(vrms, 0.5); + + return vrms; +} + +double DsoSnapshot::cal_vmean(int index) const +{ + assert(index >= 0); + assert(index < _channel_num); + + // mean value + double vmean_pre = 0; + double vmean = 0; + + // Iterate through the samples to populate the first level mipmap + const uint8_t *const stop_src_ptr = (uint8_t*)_data + + _sample_count * _channel_num; + for (const uint8_t *src_ptr = (uint8_t*)_data + index; + src_ptr < stop_src_ptr; src_ptr += VrmsScaleFactor * _channel_num) + { + const uint8_t * begin_src_ptr = + src_ptr; + const uint8_t *const end_src_ptr = + src_ptr + VrmsScaleFactor * _channel_num; + + while (begin_src_ptr < end_src_ptr) + { + vmean += *begin_src_ptr; + begin_src_ptr += _channel_num; + } + vmean = vmean_pre + vmean / _sample_count; + vmean_pre = vmean; + } + + return vmean; +} + } // namespace data } // namespace pv diff --git a/DSView/pv/data/dsosnapshot.h b/DSView/pv/data/dsosnapshot.h index 88b678b8..06474564 100644 --- a/DSView/pv/data/dsosnapshot.h +++ b/DSView/pv/data/dsosnapshot.h @@ -67,6 +67,8 @@ private: static const float LogEnvelopeScaleFactor; static const uint64_t EnvelopeDataUnit; + static const int VrmsScaleFactor; + public: DsoSnapshot(const sr_datafeed_dso &dso, uint64_t _total_sample_len, unsigned int channel_num, bool instant); @@ -82,6 +84,9 @@ public: void enable_envelope(bool enable); + double cal_vrms(double zero_off, int index) const; + double cal_vmean(int index) const; + private: void reallocate_envelope(Envelope &l); diff --git a/DSView/pv/dialogs/dsomeasure.cpp b/DSView/pv/dialogs/dsomeasure.cpp new file mode 100644 index 00000000..69b30841 --- /dev/null +++ b/DSView/pv/dialogs/dsomeasure.cpp @@ -0,0 +1,84 @@ +/* + * This file is part of the DSView project. + * DSView is based on PulseView. + * + * Copyright (C) 2012 Joel Holdsworth + * Copyright (C) 2013 DreamSourceLab + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +#include "dsomeasure.h" + +#include +#include + +#include + +using namespace boost; +using namespace std; +using namespace pv::view; + +namespace pv { +namespace dialogs { + +DsoMeasure::DsoMeasure(QWidget *parent, boost::shared_ptr dsoSig) : + QDialog(parent), + _dsoSig(dsoSig), + _layout(this), + _button_box(QDialogButtonBox::Ok, + Qt::Horizontal, this) +{ + setWindowTitle(tr("DSO Measure Options")); + setLayout(&_layout); + + for (int i=DsoSignal::DSO_MS_BEGIN+1; iget_ms_string(i), this); + checkBox->setProperty("id", QVariant(i)); + checkBox->setChecked(dsoSig->get_ms_en(i)); + _layout.addWidget(checkBox); + connect(checkBox, SIGNAL(toggled(bool)), this, SLOT(set_measure(bool))); + } + + _layout.addWidget(&_button_box); + + connect(&_button_box, SIGNAL(accepted()), this, SLOT(accept())); + connect(&_button_box, SIGNAL(rejected()), this, SLOT(accept())); +} + +void DsoMeasure::set_measure(bool en) +{ + QCheckBox* sc=dynamic_cast(sender()); + if(sc != NULL) { + QVariant id = sc->property("id"); + _dsoSig->set_ms_en(id.toInt(), sc->isChecked()); + } +} + +void DsoMeasure::accept() +{ + using namespace Qt; + + QDialog::accept(); +} + +void DsoMeasure::reject() +{ + accept(); +} + +} // namespace dialogs +} // namespace pv diff --git a/DSView/pv/dialogs/dsomeasure.h b/DSView/pv/dialogs/dsomeasure.h new file mode 100644 index 00000000..05a1ba1a --- /dev/null +++ b/DSView/pv/dialogs/dsomeasure.h @@ -0,0 +1,67 @@ +/* + * This file is part of the DSView project. + * DSView is based on PulseView. + * + * Copyright (C) 2012 Joel Holdsworth + * Copyright (C) 2013 DreamSourceLab + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +#ifndef DSVIEW_PV_DSOMEASURE_H +#define DSVIEW_PV_DSOMEASURE_H + +#include +#include +#include + +#include + +#include + +namespace pv { + +namespace view { +class DsoSignal; +} + +namespace dialogs { + +class DsoMeasure : public QDialog +{ + Q_OBJECT + +public: + DsoMeasure(QWidget *parent, boost::shared_ptr dsoSig); + +private slots: + void set_measure(bool en); + +protected: + void accept(); + void reject(); + +private: + boost::shared_ptr _dsoSig; + + QVBoxLayout _layout; + QDialogButtonBox _button_box; +}; + +} // namespace dialogs +} // namespace pv + +#endif // DSVIEW_PV_DSOMEASURE_H diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index 995bb4d4..cedc272e 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -127,7 +127,10 @@ DsoSignal::DsoSignal(boost::shared_ptr dev_inst, _hover_en(false), _hover_index(0), _hover_point(QPointF(0, 0)), - _hover_value(0) + _hover_value(0), + _ms_gear_hover(false), + _ms_show_hover(false), + _ms_show(false) { QVector vValue; QVector vUnit; @@ -148,31 +151,12 @@ DsoSignal::DsoSignal(boost::shared_ptr dev_inst, _colour = SignalColours[probe->index % countof(SignalColours)]; -// GVariant* gvar; + for (int i = DSO_MS_BEGIN; i < DSO_MS_END; i++) + _ms_en[i] = false; + _ms_en[DSO_MS_FREQ] = true; + _ms_en[DSO_MS_VMAX] = true; + _ms_en[DSO_MS_VMIN] = true; -// gvar = dev_inst->get_config(probe, NULL, SR_CONF_VDIV); -// if (gvar != NULL) { -// _vDial->set_value(g_variant_get_uint64(gvar)); -// g_variant_unref(gvar); -// } else { -// qDebug() << "ERROR: config_get SR_CONF_VDIV failed."; -// } - -// gvar = dev_inst->get_config(NULL, NULL, SR_CONF_TIMEBASE); -// if (gvar != NULL) { -// _hDial->set_value(g_variant_get_uint64(gvar)); -// g_variant_unref(gvar); -// } else { -// qDebug() << "ERROR: config_get SR_CONF_TIMEBASE failed."; -// } - -// gvar = dev_inst->get_config(probe, NULL, SR_CONF_COUPLING); -// if (gvar != NULL) { -// _acCoupling = g_variant_get_byte(gvar); -// g_variant_unref(gvar); -// } else { -// qDebug() << "ERROR: config_get SR_CONF_COUPLING failed."; -// } update_vDial(); update_hDial(); update_acCoupling(); @@ -191,6 +175,14 @@ void DsoSignal::set_view(pv::view::View *view) { Trace::set_view(view); update_zeroPos(); + + const double ms_left = get_view_rect().right() - (MS_RectWidth + MS_RectMargin) * (get_index() + 1); + const double ms_top = get_view_rect().top() + 5; + for (int i = DSO_MS_BEGIN; i < DSO_MS_END; i++) + _ms_rect[i] = QRect(ms_left, ms_top + MS_RectHeight * i, MS_RectWidth, MS_RectHeight); + _ms_gear_rect = QRect(ms_left+MS_RectRad, ms_top+MS_RectRad, MS_IconSize, MS_IconSize); + _ms_show_rect = QRect(ms_left+MS_RectWidth-MS_RectRad-MS_IconSize, ms_top+MS_RectRad, MS_IconSize, MS_IconSize); + } void DsoSignal::set_scale(float scale) @@ -648,6 +640,59 @@ uint64_t DsoSignal::get_factor() } } +void DsoSignal::set_ms_show(bool show) +{ + _ms_show = show; +} + +bool DsoSignal::get_ms_show() const +{ + return _ms_show; +} + +bool DsoSignal::get_ms_show_hover() const +{ + return _ms_show_hover; +} + +bool DsoSignal::get_ms_gear_hover() const +{ + return _ms_gear_hover; +} + +void DsoSignal::set_ms_en(int index, bool en) +{ + assert(index > DSO_MS_BEGIN); + assert(index < DSO_MS_END); + + _ms_en[index] = en; +} + +bool DsoSignal::get_ms_en(int index) const +{ + assert(index > DSO_MS_BEGIN); + assert(index < DSO_MS_END); + + return _ms_en[index]; +} + +QString DsoSignal::get_ms_string(int index) const +{ + assert(index > DSO_MS_BEGIN); + assert(index < DSO_MS_END); + + switch(index) { + case DSO_MS_FREQ: return "Frequency"; + case DSO_MS_PERD: return "Period"; + case DSO_MS_VMAX: return "Vmax"; + case DSO_MS_VMIN: return "Vmin"; + case DSO_MS_VRMS: return "Vrms"; + case DSO_MS_VMEA: return "Vmean"; + case DSO_MS_VP2P: return "Vp-p"; + default: return "Error: Out of Bound"; + } +} + void DsoSignal::update_zeroPos() { if (strcmp(_dev_inst->dev_inst()->driver->name, "DSCope") == 0) { @@ -1020,24 +1065,90 @@ void DsoSignal::paint_measure(QPainter &p) const uint32_t count = (index == 0) ? status.ch0_pcnt : status.ch1_pcnt; double value_max = (_zero_off - _min) * _scale * _vDial->get_value() * _vDial->get_factor() * DS_CONF_DSO_VDIVS / get_view_rect().height(); double value_min = (_zero_off - _max) * _scale * _vDial->get_value() * _vDial->get_factor() * DS_CONF_DSO_VDIVS / get_view_rect().height(); + double value_p2p = value_max - value_min; _period = (count == 0) ? period * 10.0 : period * 10.0 / count; const int channel_count = _view->session().get_ch_num(SR_CHANNEL_DSO); uint64_t sample_rate = _dev_inst->get_sample_rate(); _period = _period * 200.0 / (channel_count * sample_rate * 1.0 / SR_MHZ(1)); - QString max_string = abs(value_max) > 1000 ? QString::number(value_max/1000.0, 'f', 2) + "V" : QString::number(value_max, 'f', 2) + "mV"; - QString min_string = abs(value_min) > 1000 ? QString::number(value_min/1000.0, 'f', 2) + "V" : QString::number(value_min, 'f', 2) + "mV"; - QString period_string = abs(_period) > 1000000000 ? QString::number(_period/1000000000, 'f', 2) + "S" : + _ms_string[DSO_MS_VMAX] = "Vmax: " + (abs(value_max) > 1000 ? QString::number(value_max/1000.0, 'f', 2) + "V" : QString::number(value_max, 'f', 2) + "mV"); + _ms_string[DSO_MS_VMIN] = "Vmin: " + (abs(value_min) > 1000 ? QString::number(value_min/1000.0, 'f', 2) + "V" : QString::number(value_min, 'f', 2) + "mV"); + _ms_string[DSO_MS_PERD] = "Perd: " + (abs(_period) > 1000000000 ? QString::number(_period/1000000000, 'f', 2) + "S" : abs(_period) > 1000000 ? QString::number(_period/1000000, 'f', 2) + "mS" : - abs(_period) > 1000 ? QString::number(_period/1000, 'f', 2) + "uS" : QString::number(_period, 'f', 2) + "nS"; - QString freq_string = abs(_period) > 1000000 ? QString::number(1000000000/_period, 'f', 2) + "Hz" : - abs(_period) > 1000 ? QString::number(1000000/_period, 'f', 2) + "kHz" : QString::number(1000/_period, 'f', 2) + "MHz"; + abs(_period) > 1000 ? QString::number(_period/1000, 'f', 2) + "uS" : QString::number(_period, 'f', 2) + "nS"); + _ms_string[DSO_MS_FREQ] = "Freq: " + (abs(_period) > 1000000 ? QString::number(1000000000/_period, 'f', 2) + "Hz" : + abs(_period) > 1000 ? QString::number(1000000/_period, 'f', 2) + "kHz" : QString::number(1000/_period, 'f', 2) + "MHz"); + _ms_string[DSO_MS_VP2P] = "Vp-p: " + (abs(value_p2p) > 1000 ? QString::number(value_p2p/1000.0, 'f', 2) + "V" : QString::number(value_p2p, 'f', 2) + "mV"); + + if (_ms_show && _ms_en[DSO_MS_VRMS]) { + const deque< boost::shared_ptr > &snapshots = + _data->get_snapshots(); + if (!snapshots.empty()) { + const boost::shared_ptr &snapshot = + snapshots.front(); + const double vrms = snapshot->cal_vrms(_zero_off, get_index()); + const double value_vrms = vrms * _scale * _vDial->get_value() * _vDial->get_factor() * DS_CONF_DSO_VDIVS / get_view_rect().height(); + _ms_string[DSO_MS_VRMS] = "Vrms: " + (abs(value_vrms) > 1000 ? QString::number(value_vrms/1000.0, 'f', 2) + "V" : QString::number(value_vrms, 'f', 2) + "mV"); + } + } + + if (_ms_show && _ms_en[DSO_MS_VMEA]) { + const deque< boost::shared_ptr > &snapshots = + _data->get_snapshots(); + if (!snapshots.empty()) { + const boost::shared_ptr &snapshot = + snapshots.front(); + const double vmean = snapshot->cal_vmean(get_index()); + const double value_vmean = (_zero_off - vmean) * _scale * _vDial->get_value() * _vDial->get_factor() * DS_CONF_DSO_VDIVS / get_view_rect().height(); + _ms_string[DSO_MS_VMEA] = "Vmean: " + (abs(value_vmean) > 1000 ? QString::number(value_vmean/1000.0, 'f', 2) + "V" : QString::number(value_vmean, 'f', 2) + "mV"); + } + } + QColor measure_colour = _colour; measure_colour.setAlpha(180); - p.setPen(measure_colour); - p.drawText(QRectF(0, 100*index + UpMargin, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Max: ")+max_string+" "); - p.drawText(QRectF(0, 100*index + UpMargin + 20, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Min: ")+min_string+" "); - p.drawText(QRectF(0, 100*index + UpMargin + 40, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Period: ")+period_string+" "); - p.drawText(QRectF(0, 100*index + UpMargin + 60, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Frequency: ")+freq_string+" "); + QColor back_colour = Qt::white; + back_colour.setAlpha(100); + //p.setPen(measure_colour); + //p.drawText(QRectF(0, 100*index + UpMargin, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Max: ")+max_string+" "); + //p.drawText(QRectF(0, 100*index + UpMargin + 20, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Min: ")+min_string+" "); + //p.drawText(QRectF(0, 100*index + UpMargin + 40, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Period: ")+period_string+" "); + //p.drawText(QRectF(0, 100*index + UpMargin + 60, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Frequency: ")+freq_string+" "); + + bool antialiasing = p.Antialiasing; + p.setRenderHint(QPainter::Antialiasing, true); + + p.setPen(Qt::NoPen); + p.setBrush(measure_colour); + p.drawRoundedRect(_ms_rect[DSO_MS_BEGIN], MS_RectRad, MS_RectRad); + const QPixmap gear_pix(":/icons/settings.png"); + const QPixmap show_pix(_ms_show ? ":/icons/shown.png" : ":/icons/hidden.png"); + if (_ms_gear_hover) { + p.setBrush(back_colour); + p.drawRoundedRect(_ms_gear_rect, MS_RectRad, MS_RectRad); + } else if (_ms_show_hover) { + p.setBrush(back_colour); + p.drawRoundedRect(_ms_show_rect, MS_RectRad, MS_RectRad); + } + p.drawPixmap(_ms_gear_rect, gear_pix); + p.drawPixmap(_ms_show_rect, show_pix); + p.setPen(Qt::white); + p.drawText(_ms_rect[DSO_MS_BEGIN], Qt::AlignCenter | Qt::AlignVCenter, "CH"+QString::number(index)); + + if (_ms_show) { + p.setBrush(back_colour); + int j = DSO_MS_BEGIN+1; + for (int i=DSO_MS_BEGIN+1; i dev_inst, boost::shared_ptr data, @@ -158,6 +178,14 @@ public: QRectF get_trig_rect(int left, int right) const; + void set_ms_show(bool show); + bool get_ms_show() const; + bool get_ms_show_hover() const; + bool get_ms_gear_hover() const; + void set_ms_en(int index, bool en); + bool get_ms_en(int index) const; + QString get_ms_string(int index) const; + protected: void paint_type_options(QPainter &p, int right, bool hover, int action); @@ -200,6 +228,15 @@ private: uint64_t _hover_index; QPointF _hover_point; double _hover_value; + + QRect _ms_gear_rect; + QRect _ms_show_rect; + QRect _ms_rect[DSO_MS_END-DSO_MS_BEGIN]; + bool _ms_gear_hover; + bool _ms_show_hover; + bool _ms_show; + bool _ms_en[DSO_MS_END-DSO_MS_BEGIN]; + QString _ms_string[DSO_MS_END-DSO_MS_BEGIN]; }; } // namespace view diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index bc781a61..9e03acc7 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -32,10 +32,12 @@ #include "../data/logic.h" #include "../data/logicsnapshot.h" #include "../sigsession.h" +#include <../dialogs/dsomeasure.h> #include #include + #include #include @@ -396,10 +398,18 @@ void Viewport::mousePressEvent(QMouseEvent *event) if (!s->enabled()) continue; boost::shared_ptr dsoSig; - if ((dsoSig = dynamic_pointer_cast(s)) && - dsoSig->get_trig_rect(0, _view.get_view_width()).contains(_mouse_point)) { - _drag_sig = s; - break; + if (dsoSig = dynamic_pointer_cast(s)) { + if (dsoSig->get_trig_rect(0, _view.get_view_width()).contains(_mouse_point)) { + _drag_sig = s; + break; + } else if (dsoSig->get_ms_show_hover()) { + dsoSig->set_ms_show(!dsoSig->get_ms_show()); + break; + } else if (dsoSig->get_ms_gear_hover()) { + pv::dialogs::DsoMeasure dsoMeasureDialog(this, dsoSig); + dsoMeasureDialog.exec(); + break; + } } } @@ -511,7 +521,8 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) if(_drag_sig) _drag_sig.reset(); - if (_mouse_down_point.x() == event->pos().x() && + if (_view.session().get_device()->dev_inst()->mode == LOGIC && + _mouse_down_point.x() == event->pos().x() && event->button() & Qt::LeftButton) { if (_measure_type == LOGIC_EDGE) { _measure_type = NO_MEASURE; @@ -524,7 +535,8 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) } } - if (_measure_type != LOGIC_EDGE) { + if (_view.session().get_device()->dev_inst()->mode == LOGIC && + _measure_type != LOGIC_EDGE) { const double strength = _drag_strength*DragTimerInterval*1.0/_time.elapsed(); if (abs(_drag_strength) < MinorDragOffsetUp && abs(strength) > MinorDragRateUp) { _drag_strength = _drag_strength; diff --git a/DSView/pv/widgets/decodergroupbox.cpp b/DSView/pv/widgets/decodergroupbox.cpp index 7f90ad0d..3b4ec20a 100644 --- a/DSView/pv/widgets/decodergroupbox.cpp +++ b/DSView/pv/widgets/decodergroupbox.cpp @@ -33,7 +33,7 @@ namespace widgets { DecoderGroupBox::DecoderGroupBox(QString title, QWidget *parent) : QWidget(parent), _layout(new QGridLayout), - _show_hide_button(QIcon(":/icons/decoder-shown.png"), QString(), this) + _show_hide_button(QIcon(":/icons/shown.png"), QString(), this) { _layout->setContentsMargins(0, 0, 0, 0); setLayout(_layout); @@ -61,8 +61,8 @@ void DecoderGroupBox::add_layout(QLayout *layout) void DecoderGroupBox::set_decoder_visible(bool visible) { _show_hide_button.setIcon(QIcon(visible ? - ":/icons/decoder-shown.png" : - ":/icons/decoder-hidden.png")); + ":/icons/shown.png" : + ":/icons/hidden.png")); } } // widgets From 1dcd92cff04417b71df5db4b1b3482e675d40051 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Thu, 8 Oct 2015 18:16:44 +0800 Subject: [PATCH 12/25] Fix session load issues --- DSView/CMakeLists.txt | 2 ++ DSView/pv/data/decode/decoder.cpp | 1 + DSView/pv/data/dsosnapshot.cpp | 2 +- DSView/pv/data/groupsnapshot.cpp | 53 +--------------------------- DSView/pv/data/logicsnapshot.cpp | 1 + DSView/pv/dialogs/deviceoptions.cpp | 21 +++++------ DSView/pv/dialogs/dsomeasure.cpp | 1 + DSView/pv/sigsession.cpp | 1 + DSView/pv/sigsession.h | 2 -- DSView/pv/toolbars/samplingbar.cpp | 28 +++++++++++---- DSView/pv/view/dsosignal.cpp | 14 ++++++-- DSView/pv/view/viewport.cpp | 2 +- libsigrok4DSL/hardware/DSL/dscope.c | 6 +++- libsigrok4DSL/hardware/DSL/dslogic.c | 38 +++++++++++--------- 14 files changed, 80 insertions(+), 92 deletions(-) diff --git a/DSView/CMakeLists.txt b/DSView/CMakeLists.txt index 652cb58d..d26d1c5f 100644 --- a/DSView/CMakeLists.txt +++ b/DSView/CMakeLists.txt @@ -144,6 +144,7 @@ set(DSView_SOURCES pv/dialogs/storeprogress.cpp pv/dialogs/streamoptions.cpp pv/dialogs/waitingdialog.cpp + pv/dialogs/dsomeasure.cpp pv/dock/dsotriggerdock.cpp pv/dock/measuredock.cpp pv/dock/searchdock.cpp @@ -189,6 +190,7 @@ set(DSView_HEADERS pv/dialogs/storeprogress.h pv/dialogs/streamoptions.h pv/dialogs/waitingdialog.h + pv/dialogs/dsomeasure.h pv/dock/dsotriggerdock.h pv/dock/measuredock.h pv/dock/searchdock.h diff --git a/DSView/pv/data/decode/decoder.cpp b/DSView/pv/data/decode/decoder.cpp index 6e8bd2e0..00d6a1f5 100644 --- a/DSView/pv/data/decode/decoder.cpp +++ b/DSView/pv/data/decode/decoder.cpp @@ -134,6 +134,7 @@ set< shared_ptr > Decoder::get_data() srd_decoder_inst* Decoder::create_decoder_inst(srd_session *session, int unit_size) const { + (void)unit_size; GHashTable *const opt_hash = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_variant_unref); diff --git a/DSView/pv/data/dsosnapshot.cpp b/DSView/pv/data/dsosnapshot.cpp index 7585561b..8cb95f6e 100644 --- a/DSView/pv/data/dsosnapshot.cpp +++ b/DSView/pv/data/dsosnapshot.cpp @@ -148,7 +148,7 @@ void DsoSnapshot::reallocate_envelope(Envelope &e) void DsoSnapshot::append_payload_to_envelope_levels() { - for (int i = 0; i < _channel_num; i++) { + for (unsigned int i = 0; i < _channel_num; i++) { Envelope &e0 = _envelope_levels[i][0]; uint64_t prev_length; EnvelopeSample *dest_ptr; diff --git a/DSView/pv/data/groupsnapshot.cpp b/DSView/pv/data/groupsnapshot.cpp index 51dd70db..69a18f1a 100644 --- a/DSView/pv/data/groupsnapshot.cpp +++ b/DSView/pv/data/groupsnapshot.cpp @@ -126,8 +126,6 @@ const uint16_t* GroupSnapshot::get_samples( assert(start_sample <= end_sample); int64_t i; - uint64_t pow; - uint16_t mask; uint16_t tmpl, tmpr; boost::lock_guard lock(_mutex); @@ -192,7 +190,6 @@ void GroupSnapshot::append_payload_to_envelope_levels() Envelope &e0 = _envelope_levels[0]; uint64_t prev_length; EnvelopeSample *dest_ptr; - uint16_t mask; // Expand the data buffer to fit the new samples prev_length = e0.length; @@ -226,56 +223,8 @@ void GroupSnapshot::append_payload_to_envelope_levels() group_value[i] <<= _bubble_start[j]; group_value[i] += tmpr; } -// group_value[i] = 0; -// std::list::iterator j = _index_list.begin(); -// pow = 0; -// while(j != _index_list.end()) { -// mask = value_mask[(*j)]; -// if ( *(j+1) == (*j) + 1) -// mask |= value_mask[*(j+1)]; -// group_value[i] += ((*(src_ptr + i) & value_mask[(*j)]) >> ((*j) - pow)); -// pow++; -// j++; -// } } -// group_value[0] = 0; -// group_value[1] = 0; -// group_value[2] = 0; -// group_value[3] = 0; -// group_value[4] = 0; -// group_value[5] = 0; -// group_value[6] = 0; -// group_value[7] = 0; -// group_value[8] = 0; -// group_value[9] = 0; -// group_value[10] = 0; -// group_value[11] = 0; -// group_value[12] = 0; -// group_value[13] = 0; -// group_value[14] = 0; -// group_value[15] = 0; -// std::list::iterator j = _index_list.begin(); -// pow = 0; -// while(j != _index_list.end()) { -// group_value[0] += ((*(src_ptr + 0) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[1] += ((*(src_ptr + 1) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[2] += ((*(src_ptr + 2) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[3] += ((*(src_ptr + 3) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[4] += ((*(src_ptr + 4) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[5] += ((*(src_ptr + 5) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[6] += ((*(src_ptr + 6) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[7] += ((*(src_ptr + 7) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[8] += ((*(src_ptr + 8) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[9] += ((*(src_ptr + 9) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[10] += ((*(src_ptr + 10) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[11] += ((*(src_ptr + 11) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[12] += ((*(src_ptr + 12) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[13] += ((*(src_ptr + 13) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[14] += ((*(src_ptr + 14) & value_mask[(*j)]) >> ((*j) - pow)); -// group_value[15] += ((*(src_ptr + 15) & value_mask[(*j)]) >> ((*j) - pow)); -// pow++; -// j++; -// } + const EnvelopeSample sub_sample = { *min_element(group_value, group_value + EnvelopeScaleFactor), *max_element(group_value, group_value + EnvelopeScaleFactor), diff --git a/DSView/pv/data/logicsnapshot.cpp b/DSView/pv/data/logicsnapshot.cpp index 2b53292e..ebdb904e 100644 --- a/DSView/pv/data/logicsnapshot.cpp +++ b/DSView/pv/data/logicsnapshot.cpp @@ -83,6 +83,7 @@ uint8_t * LogicSnapshot::get_samples(int64_t start_sample, int64_t end_sample) c assert(end_sample <= (int64_t)_sample_count); assert(start_sample <= end_sample); + (void)end_sample; //lock_guard lock(_mutex); //const size_t size = (end_sample - start_sample) * _unit_size; diff --git a/DSView/pv/dialogs/deviceoptions.cpp b/DSView/pv/dialogs/deviceoptions.cpp index f8a1a88f..29c5920b 100644 --- a/DSView/pv/dialogs/deviceoptions.cpp +++ b/DSView/pv/dialogs/deviceoptions.cpp @@ -139,7 +139,7 @@ void DeviceOptions::setup_probes() int row0 = 0, row1 = 0, col = 0; int index = 0; - uint16_t ch_mode; + QString ch_mode; while(_probes_box_layout.count() > 0) { @@ -159,16 +159,17 @@ void DeviceOptions::setup_probes() const char **const options = g_variant_get_strv(gvar_opts, &num_opts); GVariant* gvar = _dev_inst->get_config(NULL, NULL, SR_CONF_CHANNEL_MODE); if (gvar != NULL) { - ch_mode = g_variant_get_uint16(gvar); + ch_mode = g_variant_get_string(gvar, NULL); g_variant_unref(gvar); - } - for (int i=0; isetChecked(true); + + for (unsigned int i=0; isetChecked(true); + } } } g_variant_unref(gvar_opts); diff --git a/DSView/pv/dialogs/dsomeasure.cpp b/DSView/pv/dialogs/dsomeasure.cpp index 69b30841..9bb36909 100644 --- a/DSView/pv/dialogs/dsomeasure.cpp +++ b/DSView/pv/dialogs/dsomeasure.cpp @@ -61,6 +61,7 @@ DsoMeasure::DsoMeasure(QWidget *parent, boost::shared_ptr dsoSig) : void DsoMeasure::set_measure(bool en) { + (void)en; QCheckBox* sc=dynamic_cast(sender()); if(sc != NULL) { QVariant id = sc->property("id"); diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index 3550b4ae..459b4fa7 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -436,6 +436,7 @@ void SigSession::start_capture(bool instant, void SigSession::stop_capture() { + _instant = false; if (get_capture_state() != Running) return; sr_session_stop(); diff --git a/DSView/pv/sigsession.h b/DSView/pv/sigsession.h index b781b697..fbee995c 100644 --- a/DSView/pv/sigsession.h +++ b/DSView/pv/sigsession.h @@ -122,8 +122,6 @@ public: void set_default_device(boost::function error_handler); void export_file(const QString name, QWidget* parent, const QString ext); - void set_default_device(); - void release_device(device::DevInst *dev_inst); capture_state get_capture_state() const; diff --git a/DSView/pv/toolbars/samplingbar.cpp b/DSView/pv/toolbars/samplingbar.cpp index 90d6d29c..8b06e0cd 100644 --- a/DSView/pv/toolbars/samplingbar.cpp +++ b/DSView/pv/toolbars/samplingbar.cpp @@ -291,12 +291,24 @@ void SamplingBar::set_record_length(uint64_t length) void SamplingBar::update_record_length() { + disconnect(&_sample_count, SIGNAL(currentIndexChanged(int)), + this, SLOT(on_samplecount_sel(int))); + update_sample_count_selector_value(); + + connect(&_sample_count, SIGNAL(currentIndexChanged(int)), + this, SLOT(on_samplecount_sel(int))); } void SamplingBar::update_sample_rate() { + disconnect(&_sample_rate, SIGNAL(currentIndexChanged(int)), + this, SLOT(on_samplerate_sel(int))); + update_sample_rate_selector_value(); + + connect(&_sample_rate, SIGNAL(currentIndexChanged(int)), + this, SLOT(on_samplerate_sel(int))); } void SamplingBar::set_sampling(bool sampling) @@ -417,9 +429,9 @@ void SamplingBar::update_sample_rate_selector() _updating_sample_rate = false; g_variant_unref(gvar_dict); + update_sample_rate_selector_value(); connect(&_sample_rate, SIGNAL(currentIndexChanged(int)), this, SLOT(on_samplerate_sel(int))); - update_sample_rate_selector_value(); } void SamplingBar::update_sample_rate_selector_value() @@ -486,13 +498,14 @@ void SamplingBar::on_samplecount_sel(int index) //bool buffer2stream = false; //bool stream2buffer = false; + qDebug() << "index: " << index; if (index >= 0) sample_count = _sample_count.itemData( index).value(); boost::shared_ptr _devInst = get_selected_device(); assert(_devInst); - +qDebug() << "1!\n"; if (strcmp(_devInst->dev_inst()->driver->name, "DSLogic") == 0 && _devInst->dev_inst()->mode != DSO) { /*GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); if (gvar != NULL) { @@ -518,23 +531,26 @@ void SamplingBar::on_samplecount_sel(int index) stream_mode = sample_count > max_sample_count; stream2buffer = true; }*/ - +qDebug() << "2!\n"; // Set the sample count _devInst->set_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES, g_variant_new_uint64(sample_count)); - +qDebug() << "21!\n"; GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); if (gvar != NULL) { stream_mode = g_variant_get_boolean(gvar); g_variant_unref(gvar); } + qDebug() << "22!\n"; gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); + qDebug() << "23!\n"; if (gvar != NULL) { max_sample_count = g_variant_get_uint64(gvar); g_variant_unref(gvar); } + qDebug() << "3!\n"; if (!stream_mode) { if (sample_count > max_sample_count) { _devInst->set_config(NULL, NULL, @@ -546,7 +562,7 @@ void SamplingBar::on_samplecount_sel(int index) g_variant_new_boolean(false)); } } - +qDebug() << "4!\n"; /*if (buffer2stream) { pv::dialogs::StreamOptions stream(this, _devInst, sample_count, stream_mode); stream.setFixedSize(300, 150); @@ -675,9 +691,9 @@ void SamplingBar::update_sample_count_selector() _updating_sample_count = false; g_variant_unref(gvar_dict); + update_sample_count_selector_value(); connect(&_sample_count, SIGNAL(currentIndexChanged(int)), this, SLOT(on_samplecount_sel(int))); - update_sample_count_selector_value(); } void SamplingBar::update_sample_count_selector_value() diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index cedc272e..7c231611 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -428,6 +428,7 @@ bool DsoSignal::go_hDialNext(bool setted) bool DsoSignal::update_vDial() { uint64_t vdiv; + uint64_t vfactor; //uint64_t pre_vdiv = _vDial->get_value(); GVariant* gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_VDIV); if (gvar != NULL) { @@ -437,10 +438,18 @@ bool DsoSignal::update_vDial() qDebug() << "ERROR: config_get SR_CONF_TIMEBASE failed."; return false; } + gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_FACTOR); + if (gvar != NULL) { + vfactor = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + } else { + qDebug() << "ERROR: config_get SR_CONF_TIMEBASE failed."; + return false; + } _vDial->set_value(vdiv); - _dev_inst->set_config(_probe, NULL, SR_CONF_VDIV, - g_variant_new_uint64(_vDial->get_value())); + _vDial->set_factor(vfactor); + if (_view) { update_zeroPos(); _view->set_need_update(true); @@ -599,6 +608,7 @@ void DsoSignal::set_zeroPos(int pos) void DsoSignal::set_zeroRate(double rate) { _zeroPos = rate; + _zero_off = rate * 255; update_zeroPos(); } diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 9e03acc7..43f0145f 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -32,7 +32,7 @@ #include "../data/logic.h" #include "../data/logicsnapshot.h" #include "../sigsession.h" -#include <../dialogs/dsomeasure.h> +#include "../dialogs/dsomeasure.h" #include #include diff --git a/libsigrok4DSL/hardware/DSL/dscope.c b/libsigrok4DSL/hardware/DSL/dscope.c index 77aca0bf..8e1a9cf5 100644 --- a/libsigrok4DSL/hardware/DSL/dscope.c +++ b/libsigrok4DSL/hardware/DSL/dscope.c @@ -48,8 +48,12 @@ static struct sr_dev_mode mode_list[] = { static const char *opmodes[] = { "Normal", "Internal Test", + "External Test", + "DRAM Loopback Test", }; +static uint16_t opmodes_show_count = 2; + static const char *thresholds[] = { "1.8/2.5/3.3V Level", "5.0V Level", @@ -1649,7 +1653,7 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, *data = g_variant_new_string(TRIGGER_TYPE); break; case SR_CONF_OPERATION_MODE: - *data = g_variant_new_strv(opmodes, ARRAY_SIZE(opmodes)); + *data = g_variant_new_strv(opmodes, opmodes_show_count); break; case SR_CONF_THRESHOLD: *data = g_variant_new_strv(thresholds, ARRAY_SIZE(thresholds)); diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index fced7cc4..c3bd8198 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -55,8 +55,12 @@ static const char *opmodes[] = { "Buffer Mode", "Stream Mode", "Internal Test", + "External Test", + "DRAM Loopback Test", }; +static uint16_t opmodes_show_count = 3; + static const char *stream_ch_modes[] = { "Use Channels 0~15 (Max 10MHz)", "Use Channels 0~7 (Max 25MHz)", @@ -229,7 +233,6 @@ static const uint64_t samplecounts[] = { SR_MB(128), SR_MB(256), SR_MB(512), - SR_GB(1), }; static const uint8_t zero_base_addr = 0x80; @@ -1172,7 +1175,6 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, struct DSL_context *devc; struct sr_usb_dev_inst *usb; char str[128]; - uint64_t max_limits = DSLOGIC_MAX_LOGIC_DEPTH; (void)cg; @@ -1234,7 +1236,10 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, if (!sdi) return SR_ERR; devc = sdi->priv; - *data = g_variant_new_uint16(devc->ch_mode); + if (devc->stream) + *data = g_variant_new_string(stream_ch_modes[devc->ch_mode]); + else + *data = g_variant_new_string(buffer_ch_modes[devc->ch_mode]); break; case SR_CONF_TEST: if (!sdi) @@ -1371,16 +1376,18 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_MAX_LOGIC_SAMPLELIMITS: if (!sdi) return SR_ERR; - if (devc->cur_samplerate == 2*DSLOGIC_MAX_LOGIC_SAMPLERATE) { - max_limits = DSLOGIC_MAX_LOGIC_DEPTH * 2; - } else if (devc->cur_samplerate == 4*DSLOGIC_MAX_LOGIC_SAMPLERATE) { - max_limits = DSLOGIC_MAX_LOGIC_DEPTH * 4; - } - *data = g_variant_new_uint64(max_limits); + sr_spew("dslogic:before"); + devc = sdi->priv; + sr_spew("DSLOGIC_MAX_LOGIC_DEPTH: %d", DSLOGIC_MAX_LOGIC_DEPTH); + sr_spew("devc->cur_samplerate: %d", devc->cur_samplerate); + sr_spew("DSLOGIC_MAX_LOGIC_SAMPLERATE: %d", DSLOGIC_MAX_LOGIC_SAMPLERATE); + *data = g_variant_new_uint64(DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)); + sr_spew("dslogic:after"); break; case SR_CONF_STATUS: if (!sdi) return SR_ERR; + devc = sdi->priv; *data = g_variant_new_boolean(devc->status != DSL_INIT); break; default: @@ -1589,6 +1596,8 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else { ret = SR_ERR; } + if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) + devc->cur_samplerate = samplerates[devc->samplerates_size-1]; sr_dbg("%s: setting pattern to %d", __func__, devc->op_mode); } else if (id == SR_CONF_CHANNEL_MODE) { @@ -1611,6 +1620,8 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, break; } } + if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) + devc->cur_samplerate = samplerates[devc->samplerates_size-1]; sr_dbg("%s: setting channel mode to %d", __func__, devc->ch_mode); } else if (id == SR_CONF_THRESHOLD) { @@ -1897,7 +1908,7 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi, *data = g_variant_new_string(TRIGGER_TYPE); break; case SR_CONF_OPERATION_MODE: - *data = g_variant_new_strv(opmodes, ARRAY_SIZE(opmodes)); + *data = g_variant_new_strv(opmodes, opmodes_show_count); break; case SR_CONF_CHANNEL_MODE: if (devc->stream) @@ -2356,13 +2367,6 @@ static int dev_transfer_start(const struct sr_dev_inst *sdi) else dso_buffer_size = devc->limit_samples * channel_en_cnt + 512; -// if (sdi->mode == DSO) { -// timeout = 500; -// num_transfers = buffer_cnt; -// } else { -// timeout = get_timeout(devc); -// num_transfers = get_number_of_transfers(devc); -// } num_transfers = 1; size = (sdi->mode == ANALOG) ? cons_buffer_size : ((sdi->mode == DSO) ? dso_buffer_size : get_buffer_size(devc)); From d0dcc01318c17bd311f500a72eafe492a9dcda21 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Thu, 8 Oct 2015 19:12:49 +0800 Subject: [PATCH 13/25] Limit trigger position less than hardware depth --- DSView/pv/dock/triggerdock.cpp | 38 +++++++++++------- DSView/pv/dock/triggerdock.h | 4 +- DSView/pv/mainwindow.cpp | 2 + DSView/pv/toolbars/samplingbar.cpp | 58 +++------------------------- DSView/pv/toolbars/samplingbar.h | 1 + DSView/pv/view/viewport.cpp | 2 +- libsigrok4DSL/hardware/DSL/dslogic.c | 5 --- 7 files changed, 35 insertions(+), 75 deletions(-) diff --git a/DSView/pv/dock/triggerdock.cpp b/DSView/pv/dock/triggerdock.cpp index 8b40af7d..4db07de5 100644 --- a/DSView/pv/dock/triggerdock.cpp +++ b/DSView/pv/dock/triggerdock.cpp @@ -487,23 +487,33 @@ void TriggerDock::pos_changed(int pos) void TriggerDock::device_change() { - bool stream = false; - GVariant *gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_STREAM); + uint64_t max_hd_depth; + bool stream; + uint8_t maxRange; + uint64_t sample_limits; + GVariant *gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); if (gvar != NULL) { - stream = g_variant_get_boolean(gvar); + max_hd_depth = g_variant_get_uint64(gvar); g_variant_unref(gvar); - } - if (stream && - strcmp(_session.get_device()->dev_inst()->driver->name, "DSLogic") == 0) { - const int maxRange = SR_MB(11)*100/_session.get_device()->get_sample_limit(); - position_spinBox->setRange(0, maxRange); - position_slider->setRange(0, maxRange); - simple_radioButton->setChecked(true); - simple_trigger(); - } else { - position_spinBox->setRange(0, 99); - position_slider->setRange(0, 99); + if (_session.get_device()->dev_inst()->mode == LOGIC) { + sample_limits = _session.get_device()->get_sample_limit(); + if (max_hd_depth >= sample_limits) + maxRange = 99; + else + maxRange = max_hd_depth*70 / sample_limits; + position_spinBox->setRange(0, maxRange); + position_slider->setRange(0, maxRange); + simple_radioButton->setChecked(true); + + gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_STREAM); + if (gvar != NULL) { + stream = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + if (stream) + simple_trigger(); + } + } } } diff --git a/DSView/pv/dock/triggerdock.h b/DSView/pv/dock/triggerdock.h index 8b76b959..886bf972 100644 --- a/DSView/pv/dock/triggerdock.h +++ b/DSView/pv/dock/triggerdock.h @@ -61,8 +61,6 @@ public: void paintEvent(QPaintEvent *); - void device_change(); - void init(); QJsonObject get_session(); @@ -86,6 +84,8 @@ public slots: void adv_tog(int index); void serial_channel_changed(int index); + void device_change(); + private: private: diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index a8fb8d31..080f4fb5 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -192,6 +192,8 @@ void MainWindow::setup_ui() SLOT(instant_stop())); connect(_sampling_bar, SIGNAL(update_scale()), _view, SLOT(update_scale()), Qt::DirectConnection); + connect(_sampling_bar, SIGNAL(sample_count_changed()), _trigger_widget, + SLOT(device_change())); connect(_dso_trigger_widget, SIGNAL(set_trig_pos(quint64)), _view, SLOT(set_trig_pos(quint64))); diff --git a/DSView/pv/toolbars/samplingbar.cpp b/DSView/pv/toolbars/samplingbar.cpp index 8b06e0cd..e252e555 100644 --- a/DSView/pv/toolbars/samplingbar.cpp +++ b/DSView/pv/toolbars/samplingbar.cpp @@ -493,10 +493,7 @@ void SamplingBar::on_samplecount_sel(int index) { uint64_t sample_count = 0; uint64_t max_sample_count = 0; - //uint64_t last_sample_count = 0; bool stream_mode = false; - //bool buffer2stream = false; - //bool stream2buffer = false; qDebug() << "index: " << index; if (index >= 0) @@ -505,52 +502,25 @@ void SamplingBar::on_samplecount_sel(int index) boost::shared_ptr _devInst = get_selected_device(); assert(_devInst); -qDebug() << "1!\n"; - if (strcmp(_devInst->dev_inst()->driver->name, "DSLogic") == 0 && _devInst->dev_inst()->mode != DSO) { - /*GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); - if (gvar != NULL) { - last_sample_count = g_variant_get_uint64(gvar); - g_variant_unref(gvar); - } - gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); - if (gvar != NULL) { - max_sample_count = g_variant_get_uint64(gvar); - g_variant_unref(gvar); - } - gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); - if (gvar != NULL) { - stream_mode = g_variant_get_boolean(gvar); - g_variant_unref(gvar); - } - if (((!stream_mode || (last_sample_count >= SR_GB(1))) && sample_count > max_sample_count) || - (sample_count >= SR_GB(1) && _devInst->get_sample_rate() <= SR_MHZ(10))) { - stream_mode = sample_count > max_sample_count; - buffer2stream = true; - } else if (stream_mode && sample_count <= max_sample_count) { - stream_mode = sample_count > max_sample_count; - stream2buffer = true; - }*/ -qDebug() << "2!\n"; + if (strcmp(_devInst->dev_inst()->driver->name, "DSLogic") == 0 && _devInst->dev_inst()->mode != DSO) { + // Set the sample count _devInst->set_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES, g_variant_new_uint64(sample_count)); -qDebug() << "21!\n"; + GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); if (gvar != NULL) { stream_mode = g_variant_get_boolean(gvar); g_variant_unref(gvar); } - qDebug() << "22!\n"; gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); - qDebug() << "23!\n"; if (gvar != NULL) { max_sample_count = g_variant_get_uint64(gvar); g_variant_unref(gvar); } - qDebug() << "3!\n"; if (!stream_mode) { if (sample_count > max_sample_count) { _devInst->set_config(NULL, NULL, @@ -562,27 +532,8 @@ qDebug() << "21!\n"; g_variant_new_boolean(false)); } } -qDebug() << "4!\n"; - /*if (buffer2stream) { - pv::dialogs::StreamOptions stream(this, _devInst, sample_count, stream_mode); - stream.setFixedSize(300, 150); - stream.exec(); - update_sample_rate_selector_value(); - update_sample_count_selector_value(); - _devInst->set_config(NULL, NULL, - SR_CONF_STREAM, - g_variant_new_boolean(true)); - } else if (stream2buffer) { - QMessageBox msg(this); - pv::dialogs::StreamOptions stream(this, _devInst, sample_count, stream_mode); - stream.setFixedSize(300, 100); - stream.exec(); - _devInst->set_config(NULL, NULL, - SR_CONF_STREAM, - g_variant_new_boolean(false)); - } - device_updated();*/ + sample_count_changed(); update_scale(); } } @@ -712,6 +663,7 @@ void SamplingBar::update_sample_count_selector_value() _sample_count.setCurrentIndex(i); _updating_sample_count = false; + sample_count_changed(); } void SamplingBar::commit_sample_count() diff --git a/DSView/pv/toolbars/samplingbar.h b/DSView/pv/toolbars/samplingbar.h index 1414ceca..4055a1af 100644 --- a/DSView/pv/toolbars/samplingbar.h +++ b/DSView/pv/toolbars/samplingbar.h @@ -96,6 +96,7 @@ signals: void device_selected(); void device_updated(); void update_scale(); + void sample_count_changed(); private: void update_sample_rate_selector(); diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 43f0145f..9fd60244 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -72,7 +72,7 @@ Viewport::Viewport(View &parent) : { setMouseTracking(true); setAutoFillBackground(true); - setBackgroundRole(QPalette::Base); + setBackgroundRole(QPalette::Base); //setFixedSize(QSize(600, 400)); _mm_width = "#####"; diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index c3bd8198..676e73e0 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -1376,13 +1376,8 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_MAX_LOGIC_SAMPLELIMITS: if (!sdi) return SR_ERR; - sr_spew("dslogic:before"); devc = sdi->priv; - sr_spew("DSLOGIC_MAX_LOGIC_DEPTH: %d", DSLOGIC_MAX_LOGIC_DEPTH); - sr_spew("devc->cur_samplerate: %d", devc->cur_samplerate); - sr_spew("DSLOGIC_MAX_LOGIC_SAMPLERATE: %d", DSLOGIC_MAX_LOGIC_SAMPLERATE); *data = g_variant_new_uint64(DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)); - sr_spew("dslogic:after"); break; case SR_CONF_STATUS: if (!sdi) From 63772095b3803b03dc12c4fa9766d3a1ad0e1441 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Thu, 8 Oct 2015 21:20:38 +0800 Subject: [PATCH 14/25] Add warning message when buffer full @ LA RLE mode --- DSView/pv/mainwindow.cpp | 19 +++++++++++++++++++ libsigrok4DSL/hardware/DSL/dslogic.c | 7 +++++++ libsigrok4DSL/hwdriver.c | 2 ++ libsigrok4DSL/libsigrok.h | 5 +++++ 4 files changed, 33 insertions(+) diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index 080f4fb5..5aebecaa 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -486,6 +486,25 @@ void MainWindow::capture_state_changed(int state) _sampling_bar->enable_toggle(state != SigSession::Running); _trig_bar->enable_toggle(state != SigSession::Running); _measure_dock->widget()->setEnabled(state != SigSession::Running); + if (_session.get_device()->dev_inst()->mode == LOGIC && + state == SigSession::Stopped) { + GVariant *gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_RLE); + if (gvar != NULL) { + bool rle = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + if (rle) { + gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_ACTUAL_SAMPLES); + if (gvar != NULL) { + uint64_t actual_samples = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + if (actual_samples != _session.get_device()->get_sample_limit()) { + show_session_error(tr("RLE Mode Warning"), + tr("Hardware buffer is full!\nActually received samples is less than setted sample depth!")); + } + } + } + } + } #ifdef TEST_MODE if (state == SigSession::Stopped) { test_timer.start(100); diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index 676e73e0..895f7ec5 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -1196,6 +1196,12 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, devc = sdi->priv; *data = g_variant_new_uint64(devc->limit_samples); break; + case SR_CONF_ACTUAL_SAMPLES: + if (!sdi) + return SR_ERR; + devc = sdi->priv; + *data = g_variant_new_uint64(devc->actual_samples); + break; case SR_CONF_SAMPLERATE: if (!sdi) return SR_ERR; @@ -2530,6 +2536,7 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, void *cb_data) devc->status = DSL_INIT; devc->num_transfers = 0; devc->submitted_transfers = 0; + devc->actual_samples = devc->limit_samples; /* Configures devc->trigger_* and devc->sample_wide */ if (configure_probes(sdi) != SR_OK) { diff --git a/libsigrok4DSL/hwdriver.c b/libsigrok4DSL/hwdriver.c index 6bbd0051..4e437dfd 100644 --- a/libsigrok4DSL/hwdriver.c +++ b/libsigrok4DSL/hwdriver.c @@ -59,6 +59,8 @@ static struct sr_config_info sr_config_info_data[] = { "Sample rate", "Sample rate", NULL}, {SR_CONF_LIMIT_SAMPLES, SR_T_UINT64, "samplecount", "Sample count", "Sample count", NULL}, + {SR_CONF_ACTUAL_SAMPLES, SR_T_UINT64, "samplecount", + "Sample count", "Sample count", NULL}, {SR_CONF_CLOCK_TYPE, SR_T_BOOL, "clocktype", "Using External Clock", "Using External Clock", NULL}, {SR_CONF_CLOCK_EDGE, SR_T_BOOL, "clockedge", diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index be9b1d74..b701b191 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -856,6 +856,11 @@ enum { */ SR_CONF_LIMIT_SAMPLES, + /** + * The actual sample count received + */ + SR_CONF_ACTUAL_SAMPLES, + /** * The device supports setting a frame limit (how many * frames should be acquired). From 705819fac3953903f13d2f52ed5b91a3fc96f25f Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Tue, 20 Oct 2015 00:52:07 +0800 Subject: [PATCH 15/25] Fix minor issues of sesion load and/display/drag-and-drop --- DSView/pv/dock/triggerdock.cpp | 4 +- DSView/pv/mainwindow.cpp | 4 +- DSView/pv/view/dsosignal.cpp | 233 +++++++++++++++++---------------- DSView/pv/view/dsosignal.h | 4 +- DSView/pv/view/viewport.cpp | 9 +- 5 files changed, 127 insertions(+), 127 deletions(-) diff --git a/DSView/pv/dock/triggerdock.cpp b/DSView/pv/dock/triggerdock.cpp index 4db07de5..6201c010 100644 --- a/DSView/pv/dock/triggerdock.cpp +++ b/DSView/pv/dock/triggerdock.cpp @@ -116,7 +116,7 @@ TriggerDock::TriggerDock(QWidget *parent, SigSession &session) : _inv1_comboBox->addItem(tr("!=")); _inv1_comboBox_list.push_back(_inv1_comboBox); - QLabel *value_exp_label = new QLabel("1 1 1 1 1 1\n5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0", _widget); + QLabel *value_exp_label = new QLabel("1 1 1 1 1 1\n5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 ", _widget); QLabel *inv_exp_label = new QLabel("Inv", _widget); QLabel *count_exp_label = new QLabel("Counter", _widget); value_exp_label->setFont(font); @@ -256,7 +256,7 @@ TriggerDock::TriggerDock(QWidget *parent, SigSession &session) : _widget->setLayout(layout); this->setWidget(_widget); - _widget->setGeometry(0, 0, sizeHint().width(), 1000); + //_widget->setGeometry(0, 0, sizeHint().width(), 1000); _widget->setObjectName("triggerWidget"); } diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index 5aebecaa..8c9f5ecd 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -683,10 +683,8 @@ bool MainWindow::load_session(QString name) s->set_trig(obj["strigger"].toDouble()); boost::shared_ptr dsoSig; if (dsoSig = dynamic_pointer_cast(s)) { - dsoSig->update_hDial(); - //dsoSig->update_vDial(); + dsoSig->load_settings(); dsoSig->set_zeroRate(obj["zeroPos"].toDouble()); - dsoSig->set_enable(obj["enabled"].toBool()); dsoSig->set_trigRate(obj["trigValue"].toDouble()); } break; diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index 7c231611..342ce09b 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -157,9 +157,7 @@ DsoSignal::DsoSignal(boost::shared_ptr dev_inst, _ms_en[DSO_MS_VMAX] = true; _ms_en[DSO_MS_VMIN] = true; - update_vDial(); - update_hDial(); - update_acCoupling(); + load_settings(); } DsoSignal::~DsoSignal() @@ -425,12 +423,44 @@ bool DsoSignal::go_hDialNext(bool setted) } } -bool DsoSignal::update_vDial() +bool DsoSignal::load_settings() { + GVariant* gvar; + + // -- enable + bool enable; + gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_EN_CH); + if (gvar != NULL) { + enable = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + } else { + qDebug() << "ERROR: config_get SR_CONF_EN_CH failed."; + return false; + } + + // -- hdiv + uint64_t hdiv; + gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_TIMEBASE); + if (gvar != NULL) { + hdiv = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + } else { + qDebug() << "ERROR: config_get SR_CONF_TIMEBASE failed."; + return false; + } + + _hDial->set_value(hdiv); + _dev_inst->set_config(_probe, NULL, SR_CONF_TIMEBASE, + g_variant_new_uint64(_hDial->get_value())); + if (_view) { + const double scale = _hDial->get_value() * std::pow(10.0, -9.0) * DS_CONF_DSO_HDIVS / get_view_rect().width(); + _view->set_scale_offset(scale, _view->offset()); + } + + // -- vdiv uint64_t vdiv; uint64_t vfactor; - //uint64_t pre_vdiv = _vDial->get_value(); - GVariant* gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_VDIV); + gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_VDIV); if (gvar != NULL) { vdiv = g_variant_get_uint64(gvar); g_variant_unref(gvar); @@ -449,33 +479,23 @@ bool DsoSignal::update_vDial() _vDial->set_value(vdiv); _vDial->set_factor(vfactor); + _dev_inst->set_config(_probe, NULL, SR_CONF_VDIV, + g_variant_new_uint64(_vDial->get_value())); - if (_view) { - update_zeroPos(); - _view->set_need_update(true); - _view->update(); - } - return true; -} - -bool DsoSignal::update_hDial() -{ - uint64_t hdiv; - GVariant* gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_TIMEBASE); + // -- coupling + gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_COUPLING); if (gvar != NULL) { - hdiv = g_variant_get_uint64(gvar); + _acCoupling = g_variant_get_byte(gvar); g_variant_unref(gvar); } else { - qDebug() << "ERROR: config_get SR_CONF_TIMEBASE failed."; + qDebug() << "ERROR: config_get SR_CONF_COUPLING failed."; return false; } - _hDial->set_value(hdiv); - _dev_inst->set_config(_probe, NULL, SR_CONF_TIMEBASE, - g_variant_new_uint64(_hDial->get_value())); + _dev_inst->set_config(_probe, NULL, SR_CONF_COUPLING, + g_variant_new_byte(_acCoupling)); + if (_view) { - const double scale = _hDial->get_value() * std::pow(10.0, -9.0) * DS_CONF_DSO_HDIVS / get_view_rect().width(); - _view->set_scale_offset(scale, _view->offset()); _view->set_need_update(true); _view->update(); } @@ -516,22 +536,6 @@ void DsoSignal::set_acCoupling(uint8_t coupling) } } -bool DsoSignal::update_acCoupling() -{ - GVariant* gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_COUPLING); - if (gvar != NULL) { - _acCoupling = g_variant_get_byte(gvar); - g_variant_unref(gvar); - } else { - qDebug() << "ERROR: config_get SR_CONF_COUPLING failed."; - return false; - } - - _dev_inst->set_config(_probe, NULL, SR_CONF_COUPLING, - g_variant_new_byte(_acCoupling)); - return true; -} - int DsoSignal::get_trig_vpos() const { return _trig_vpos * get_view_rect().height() + UpMargin; @@ -797,6 +801,8 @@ void DsoSignal::paint_mid(QPainter &p, int left, int right) assert(scale > 0); const double offset = _view->offset(); + paint_measure(p); + const deque< boost::shared_ptr > &snapshots = _data->get_snapshots(); if (snapshots.empty()) @@ -834,8 +840,6 @@ void DsoSignal::paint_mid(QPainter &p, int left, int right) start_sample, end_sample, pixels_offset, samples_per_pixel, number_channels); } - - paint_measure(p); } } @@ -1112,87 +1116,80 @@ void DsoSignal::paint_measure(QPainter &p) _ms_string[DSO_MS_VMEA] = "Vmean: " + (abs(value_vmean) > 1000 ? QString::number(value_vmean/1000.0, 'f', 2) + "V" : QString::number(value_vmean, 'f', 2) + "mV"); } } + } - QColor measure_colour = _colour; - measure_colour.setAlpha(180); - QColor back_colour = Qt::white; - back_colour.setAlpha(100); - //p.setPen(measure_colour); - //p.drawText(QRectF(0, 100*index + UpMargin, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Max: ")+max_string+" "); - //p.drawText(QRectF(0, 100*index + UpMargin + 20, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Min: ")+min_string+" "); - //p.drawText(QRectF(0, 100*index + UpMargin + 40, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Period: ")+period_string+" "); - //p.drawText(QRectF(0, 100*index + UpMargin + 60, get_view_rect().width()*0.9, 20), Qt::AlignRight | Qt::AlignVCenter, tr("Frequency: ")+freq_string+" "); + QColor measure_colour = _colour; + measure_colour.setAlpha(180); + QColor back_colour = Qt::white; + back_colour.setAlpha(100); - bool antialiasing = p.Antialiasing; - p.setRenderHint(QPainter::Antialiasing, true); + bool antialiasing = p.Antialiasing; + p.setRenderHint(QPainter::Antialiasing, true); - p.setPen(Qt::NoPen); - p.setBrush(measure_colour); - p.drawRoundedRect(_ms_rect[DSO_MS_BEGIN], MS_RectRad, MS_RectRad); - const QPixmap gear_pix(":/icons/settings.png"); - const QPixmap show_pix(_ms_show ? ":/icons/shown.png" : ":/icons/hidden.png"); - if (_ms_gear_hover) { - p.setBrush(back_colour); - p.drawRoundedRect(_ms_gear_rect, MS_RectRad, MS_RectRad); - } else if (_ms_show_hover) { - p.setBrush(back_colour); - p.drawRoundedRect(_ms_show_rect, MS_RectRad, MS_RectRad); - } - p.drawPixmap(_ms_gear_rect, gear_pix); - p.drawPixmap(_ms_show_rect, show_pix); - p.setPen(Qt::white); - p.drawText(_ms_rect[DSO_MS_BEGIN], Qt::AlignCenter | Qt::AlignVCenter, "CH"+QString::number(index)); + p.setPen(Qt::NoPen); + p.setBrush(measure_colour); + p.drawRoundedRect(_ms_rect[DSO_MS_BEGIN], MS_RectRad, MS_RectRad); + const QPixmap gear_pix(":/icons/settings.png"); + const QPixmap show_pix(_ms_show ? ":/icons/shown.png" : ":/icons/hidden.png"); + if (_ms_gear_hover) { + p.setBrush(back_colour); + p.drawRoundedRect(_ms_gear_rect, MS_RectRad, MS_RectRad); + } else if (_ms_show_hover) { + p.setBrush(back_colour); + p.drawRoundedRect(_ms_show_rect, MS_RectRad, MS_RectRad); + } + p.drawPixmap(_ms_gear_rect, gear_pix); + p.drawPixmap(_ms_show_rect, show_pix); + p.setPen(Qt::white); + p.drawText(_ms_rect[DSO_MS_BEGIN], Qt::AlignCenter | Qt::AlignVCenter, "CH"+QString::number(index)); - if (_ms_show) { - p.setBrush(back_colour); - int j = DSO_MS_BEGIN+1; - for (int i=DSO_MS_BEGIN+1; i 0xCC) { - go_vDialNext(); - } else if (vscale > 0x33) { - _autoV = false; - } else { - go_vDialPre(); - } + if (_autoV) { + const uint8_t vscale = abs(_max - _min); + if (_max == 0xff || _min == 0x00 || vscale > 0xCC) { + go_vDialNext(); + } else if (vscale > 0x33) { + _autoV = false; + } else { + go_vDialPre(); } + } - bool setted = false; - if (_autoH) { - const vector< boost::shared_ptr > traces(_view->get_traces()); - const double upPeriod = get_hDialValue() * DS_CONF_DSO_HDIVS * 0.8; - const double dnPeriod = get_hDialValue() * DS_CONF_DSO_HDIVS * 0.2; - if (_period > upPeriod) { - boost::shared_ptr dsoSig; - BOOST_FOREACH(const boost::shared_ptr t, traces) { - if (dsoSig = dynamic_pointer_cast(t)) { - dsoSig->go_hDialNext(setted); - setted = true; - } + bool setted = false; + if (_autoH) { + const vector< boost::shared_ptr > traces(_view->get_traces()); + const double upPeriod = get_hDialValue() * DS_CONF_DSO_HDIVS * 0.8; + const double dnPeriod = get_hDialValue() * DS_CONF_DSO_HDIVS * 0.2; + if (_period > upPeriod) { + boost::shared_ptr dsoSig; + BOOST_FOREACH(const boost::shared_ptr t, traces) { + if (dsoSig = dynamic_pointer_cast(t)) { + dsoSig->go_hDialNext(setted); + setted = true; } - } else if (_period > dnPeriod) { - _autoH = false; - } else { - boost::shared_ptr dsoSig; - BOOST_FOREACH(const boost::shared_ptr t, traces) { - if (dsoSig = dynamic_pointer_cast(t)) { - dsoSig->go_hDialPre(setted); - setted = true; - } + } + } else if (_period > dnPeriod) { + _autoH = false; + } else { + boost::shared_ptr dsoSig; + BOOST_FOREACH(const boost::shared_ptr t, traces) { + if (dsoSig = dynamic_pointer_cast(t)) { + dsoSig->go_hDialPre(setted); + setted = true; } } } @@ -1215,14 +1212,18 @@ bool DsoSignal::measure(const QPointF &p) { if (_ms_gear_rect.contains(QPoint(p.x(), p.y()))) { _ms_gear_hover = true; + _view->set_need_update(true); return false; - } else { + } else if (_ms_gear_hover) { + _view->set_need_update(true); _ms_gear_hover = false; } if (_ms_show_rect.contains(QPoint(p.x(), p.y()))) { _ms_show_hover = true; + _view->set_need_update(true); return false; - } else { + } else if (_ms_show_hover){ + _view->set_need_update(true); _ms_show_hover = false; } diff --git a/DSView/pv/view/dsosignal.h b/DSView/pv/view/dsosignal.h index a18fa811..2e8741e1 100644 --- a/DSView/pv/view/dsosignal.h +++ b/DSView/pv/view/dsosignal.h @@ -121,9 +121,7 @@ public: void set_factor(uint64_t factor); uint64_t get_factor(); - bool update_vDial(); - bool update_hDial(); - bool update_acCoupling(); + bool load_settings(); /** * diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 9fd60244..4af34e18 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -538,11 +538,14 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) if (_view.session().get_device()->dev_inst()->mode == LOGIC && _measure_type != LOGIC_EDGE) { const double strength = _drag_strength*DragTimerInterval*1.0/_time.elapsed(); - if (abs(_drag_strength) < MinorDragOffsetUp && abs(strength) > MinorDragRateUp) { + if (_time.elapsed() < 200 && + abs(_drag_strength) < MinorDragOffsetUp && + abs(strength) > MinorDragRateUp) { _drag_strength = _drag_strength; _drag_timer.start(DragTimerInterval); _measure_type = LOGIC_MOVE; - } else if (abs(strength) > DragTimerInterval) { + } else if (_time.elapsed() < 200 && + abs(strength) > DragTimerInterval) { _drag_strength = strength * 5; _drag_timer.start(DragTimerInterval); _measure_type = LOGIC_MOVE; @@ -623,7 +626,7 @@ void Viewport::leaveEvent(QEvent *) _measure_shown = _dso_xm || _dso_ym; _mouse_point = QPoint(-1, -1); //_view.show_cursors(false); - if (_measure_type == LOGIC_EDGE) { + if (_measure_type == LOGIC_EDGE || _measure_type == LOGIC_MOVE) { _measure_type = NO_MEASURE; _measure_shown = false; } From df05c5c9f9afad1bdc262676ef2b3ea2829aa49d Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Sat, 24 Oct 2015 00:32:41 +0800 Subject: [PATCH 16/25] improve operations of vDial/hDial --- DSView/pv/mainwindow.cpp | 15 ++- DSView/pv/sigsession.cpp | 15 ++- DSView/pv/view/decodetrace.cpp | 20 +++- DSView/pv/view/decodetrace.h | 9 +- DSView/pv/view/dsldial.cpp | 18 ++- DSView/pv/view/dsldial.h | 2 +- DSView/pv/view/dsosignal.cpp | 210 +++++++++++++++++++++++++++++---- DSView/pv/view/dsosignal.h | 25 +++- DSView/pv/view/groupsignal.cpp | 20 +++- DSView/pv/view/groupsignal.h | 9 +- DSView/pv/view/header.cpp | 131 ++------------------ DSView/pv/view/logicsignal.cpp | 131 ++++++++++++++++---- DSView/pv/view/logicsignal.h | 24 +++- DSView/pv/view/trace.cpp | 168 +++++--------------------- DSView/pv/view/trace.h | 38 ++---- 15 files changed, 481 insertions(+), 354 deletions(-) diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index 8c9f5ecd..51472613 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -71,6 +71,7 @@ #include "view/trace.h" #include "view/signal.h" #include "view/dsosignal.h" +#include "view/logicsignal.h" /* __STDC_FORMAT_MACROS is required for PRIu64 and friends (in C++). */ #define __STDC_FORMAT_MACROS @@ -680,7 +681,12 @@ bool MainWindow::load_session(QString name) if ((s->get_index() == obj["index"].toDouble()) && (s->get_type() == obj["type"].toDouble())) { s->set_colour(QColor(obj["colour"].toString())); - s->set_trig(obj["strigger"].toDouble()); + + boost::shared_ptr logicSig; + if (logicSig = dynamic_pointer_cast(s)) { + logicSig->set_trig(obj["strigger"].toDouble()); + } + boost::shared_ptr dsoSig; if (dsoSig = dynamic_pointer_cast(s)) { dsoSig->load_settings(); @@ -755,7 +761,12 @@ bool MainWindow::store_session(QString name) s_obj["enabled"] = s->enabled(); s_obj["name"] = s->get_name(); s_obj["colour"] = QJsonValue::fromVariant(s->get_colour()); - s_obj["strigger"] = s->get_trig(); + + boost::shared_ptr logicSig; + if (logicSig = dynamic_pointer_cast(s)) { + s_obj["strigger"] = logicSig->get_trig(); + } + boost::shared_ptr dsoSig; if (dsoSig = dynamic_pointer_cast(s)) { s_obj["vdiv"] = QJsonValue::fromVariant(static_cast(dsoSig->get_vDialValue())); diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index 459b4fa7..e4b026b2 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -543,9 +543,12 @@ void SigSession::sample_thread_proc(boost::shared_ptr dev_inst, BOOST_FOREACH(const boost::shared_ptr s, _signals) { assert(s); - if (s->get_trig() != 0) { - ds_trigger_set_en(true); - s->set_trig(s->get_trig()); + boost::shared_ptr logicSig; + if (logicSig = dynamic_pointer_cast(s)) { + if (logicSig->get_trig() != 0) { + ds_trigger_set_en(true); + logicSig->set_trig(logicSig->get_trig()); + } } } } else { @@ -799,8 +802,10 @@ void SigSession::reload() std::vector< boost::shared_ptr >::iterator i = _signals.begin(); while (i != _signals.end()) { if ((*i)->get_index() == probe->index) { - signal = boost::shared_ptr( - new view::LogicSignal(**i, _logic_data, probe)); + boost::shared_ptr logicSig; + if (logicSig = dynamic_pointer_cast(*i)) + signal = boost::shared_ptr( + new view::LogicSignal(logicSig, _logic_data, probe)); break; } i++; diff --git a/DSView/pv/view/decodetrace.cpp b/DSView/pv/view/decodetrace.cpp index 25cbac8c..8b870721 100644 --- a/DSView/pv/view/decodetrace.cpp +++ b/DSView/pv/view/decodetrace.cpp @@ -821,13 +821,12 @@ int DecodeTrace::rows_size() return _decoder_stack->cur_rows_size(); } -void DecodeTrace::paint_type_options(QPainter &p, int right, bool hover, int action) +void DecodeTrace::paint_type_options(QPainter &p, int right, const QPoint pt) { - (void)hover; - (void)action; + (void)pt; int y = get_y(); - const QRectF group_index_rect = get_rect("groupIndex", y, right); + const QRectF group_index_rect = get_rect(CHNLREG, y, right); QString index_string; int last_index; p.setPen(Qt::transparent); @@ -849,5 +848,18 @@ void DecodeTrace::paint_type_options(QPainter &p, int right, bool hover, int act p.drawText(group_index_rect, Qt::AlignRight | Qt::AlignVCenter, index_string); } +QRectF DecodeTrace::get_rect(DecodeSetRegions type, int y, int right) +{ + const QSizeF name_size(right - get_leftWidth() - get_rightWidth(), SquareWidth); + + if (type == CHNLREG) + return QRectF( + get_leftWidth() + name_size.width() + Margin, + y - SquareWidth / 2, + SquareWidth * SquareNum, SquareWidth); + else + return QRectF(0, 0, 0, 0); +} + } // namespace view } // namespace pv diff --git a/DSView/pv/view/decodetrace.h b/DSView/pv/view/decodetrace.h index 44c5791f..03cd6910 100644 --- a/DSView/pv/view/decodetrace.h +++ b/DSView/pv/view/decodetrace.h @@ -71,6 +71,11 @@ private: const srd_channel *_pdch; }; + enum DecodeSetRegions{ + NONEREG = -1, + CHNLREG, + }; + private: static const QColor DecodeColours[4]; static const QColor ErrorBgColour; @@ -125,8 +130,10 @@ public: int rows_size(); + QRectF get_rect(DecodeSetRegions type, int y, int right); + protected: - void paint_type_options(QPainter &p, int right, bool hover, int action); + void paint_type_options(QPainter &p, int right, const QPoint pt); private: void create_popup_form(); diff --git a/DSView/pv/view/dsldial.cpp b/DSView/pv/view/dsldial.cpp index f19c7561..454dc620 100644 --- a/DSView/pv/view/dsldial.cpp +++ b/DSView/pv/view/dsldial.cpp @@ -25,7 +25,7 @@ dslDial::~dslDial() { } -void dslDial::paint(QPainter &p, QRectF dialRect, QColor dialColor) +void dslDial::paint(QPainter &p, QRectF dialRect, QColor dialColor, bool hover, bool inc) { p.setRenderHint(QPainter::Antialiasing, true); p.setPen(dialColor); @@ -64,8 +64,22 @@ void dslDial::paint(QPainter &p, QRectF dialRect, QColor dialColor) } QString pText = QString::number(displayValue) + _unit[displayIndex] + "/div"; QFontMetrics fm(p.font()); - p.drawText(QRectF(dialRect.left(), dialRect.bottom()-dialRect.width()*0.3+fm.height()*0.5, dialRect.width(), fm.height()), Qt::AlignCenter, pText); + const QRectF valueRect = QRectF(dialRect.left(), dialRect.bottom()-dialRect.width()*0.3+fm.height()*0.5, dialRect.width(), fm.height()); + p.drawText(valueRect, Qt::AlignCenter, pText); + // draw +/- + if (hover) { + const int arcInc = 15; + const QRectF hoverRect = QRectF(dialRect.left()-arcInc, dialRect.top()-arcInc, dialRect.width()+arcInc*2, dialRect.height()+arcInc*2); + const double arcSpan = hoverRect.width()/(2*sqrt(2)); + p.drawArc(hoverRect, 135 * 16, -90 * 16); + if (inc) + p.drawLine(hoverRect.center().x()+arcSpan, hoverRect.center().y()-arcSpan, + hoverRect.center().x()+arcSpan-4, hoverRect.center().y()-arcSpan-10); + else + p.drawLine(hoverRect.center().x()-arcSpan, hoverRect.center().y()-arcSpan, + hoverRect.center().x()-arcSpan+4, hoverRect.center().y()-arcSpan-10); + } } void dslDial::set_sel(uint64_t sel) diff --git a/DSView/pv/view/dsldial.h b/DSView/pv/view/dsldial.h index 35701959..ddb7ea61 100644 --- a/DSView/pv/view/dsldial.h +++ b/DSView/pv/view/dsldial.h @@ -20,7 +20,7 @@ public: * @param p the QPainter to paint into. * @param dialRect the rectangle to draw the dial at. **/ - void paint(QPainter &p, QRectF dialRect, QColor dialColor); + void paint(QPainter &p, QRectF dialRect, QColor dialColor, bool hover, bool inc); // set/get current select void set_sel(uint64_t sel); diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index 342ce09b..98386468 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -95,10 +95,10 @@ const QString DsoSignal::hDialUnit[DsoSignal::hDialUnitCount] = { }; const QColor DsoSignal::SignalColours[4] = { - QColor(238, 178, 17, 200), // dsYellow - QColor(0, 153, 37, 200), // dsGreen - QColor(213, 15, 37, 200), // dsRed - QColor(17, 133, 209, 200) // dsBlue + QColor(238, 178, 17, 255), // dsYellow + QColor(0, 153, 37, 255), // dsGreen + QColor(213, 15, 37, 255), // dsRed + QColor(17, 133, 209, 255) // dsBlue }; @@ -1011,30 +1011,31 @@ const std::vector< std::pair > DsoSignal::cur_edges() const } -void DsoSignal::paint_type_options(QPainter &p, int right, bool hover, int action) +void DsoSignal::paint_type_options(QPainter &p, int right, const QPoint pt) { int y = get_y(); - const QRectF vDial_rect = get_rect("vDial", y, right); - const QRectF x1_rect = get_rect("x1", y, right); - const QRectF x10_rect = get_rect("x10", y, right); - const QRectF x100_rect = get_rect("x100", y, right); - const QRectF hDial_rect = get_rect("hDial", y, right); - const QRectF acdc_rect = get_rect("acdc", y, right); - const QRectF chEn_rect = get_rect("chEn", y, right); + const QRectF vDial_rect = get_rect(DSO_VDIAL, y, right); + const QRectF vInc_rect = get_rect(DSO_VINC, y, right); + const QRectF hDial_rect = get_rect(DSO_HDIAL, y, right); + const QRectF hInc_rect = get_rect(DSO_HINC, y, right); - QColor vDial_color = _vDialActive ? dsActive : dsDisable; - QColor hDial_color = _hDialActive ? dsActive : dsDisable; - _vDial->paint(p, vDial_rect, vDial_color); - _hDial->paint(p, hDial_rect, hDial_color); + const QRectF x1_rect = get_rect(DSO_X1, y, right); + const QRectF x10_rect = get_rect(DSO_X10, y, right); + const QRectF x100_rect = get_rect(DSO_X100, y, right); + const QRectF acdc_rect = get_rect(DSO_ACDC, y, right); + const QRectF chEn_rect = get_rect(DSO_CHEN, y, right); + + _vDial->paint(p, vDial_rect, _colour, vDial_rect.contains(pt), vInc_rect.contains(pt)); + _hDial->paint(p, hDial_rect, _colour, hDial_rect.contains(pt), hInc_rect.contains(pt)); p.setPen(Qt::transparent); - p.setBrush((hover && action == CHEN) ? _colour.darker() : _colour); + p.setBrush(chEn_rect.contains(pt) ? _colour.darker() : _colour); p.drawRect(chEn_rect); p.setPen(Qt::white); p.drawText(chEn_rect, Qt::AlignCenter | Qt::AlignVCenter, enabled() ? tr("EN") : tr("DIS")); p.setPen(Qt::transparent); - p.setBrush(enabled() ? ((hover && action == ACDC) ? _colour.darker() : _colour) : dsDisable); + p.setBrush(enabled() ? (acdc_rect.contains(pt) ? _colour.darker() : _colour) : dsDisable); p.drawRect(acdc_rect); p.setPen(Qt::white); p.drawText(acdc_rect, Qt::AlignCenter | Qt::AlignVCenter, (_acCoupling == SR_GND_COUPLING) ? tr("GND") : @@ -1053,19 +1054,186 @@ void DsoSignal::paint_type_options(QPainter &p, int right, bool hover, int actio } p.setPen(Qt::white); - p.setBrush((enabled() && (factor == 100)) ? ((hover && action == X100) ? _colour.darker() : _colour) : ((hover && action == X100) ? _colour.darker() : dsDisable)); + p.setBrush((enabled() && (factor == 100)) ? (x100_rect.contains(pt) ? _colour.darker() : _colour) : (x100_rect.contains(pt) ? _colour.darker() : dsDisable)); p.drawRect(x100_rect); p.drawText(x100_rect, Qt::AlignCenter | Qt::AlignVCenter, "x100"); - p.setBrush((enabled() && (factor == 10)) ? ((hover && action == X10) ? _colour.darker() : _colour) : ((hover && action == X10) ? _colour.darker() : dsDisable)); + p.setBrush((enabled() && (factor == 10)) ? (x10_rect.contains(pt) ? _colour.darker() : _colour) : (x10_rect.contains(pt) ? _colour.darker() : dsDisable)); p.drawRect(x10_rect); p.drawText(x10_rect, Qt::AlignCenter | Qt::AlignVCenter, "x10"); - p.setBrush((enabled() && (factor == 1)) ? ((hover && action == X1) ? _colour.darker() : _colour) : ((hover && action == X1) ? _colour.darker() : dsDisable)); + p.setBrush((enabled() && (factor == 1)) ? (x1_rect.contains(pt) ? _colour.darker() : _colour) : (x1_rect.contains(pt) ? _colour.darker() : dsDisable)); p.drawRect(x1_rect); p.drawText(x1_rect, Qt::AlignCenter | Qt::AlignVCenter, "x1"); } +bool DsoSignal::mouse_double_click(int right, const QPoint pt) +{ + int y = get_zeroPos(); + const QRectF label_rect = Trace::get_rect("label", y, right); + if (label_rect.contains(pt)) { + this->auto_set(); + return true; + } + return false; +} + +bool DsoSignal::mouse_press(int right, const QPoint pt) +{ + int y = get_y(); + bool setted = false; + const vector< boost::shared_ptr > traces(_view->get_traces()); + const QRectF vDec_rect = get_rect(DSO_VDEC, y, right); + const QRectF vInc_rect = get_rect(DSO_VINC, y, right); + const QRectF hDec_rect = get_rect(DSO_HDEC, y, right); + const QRectF hInc_rect = get_rect(DSO_HINC, y, right); + const QRectF chEn_rect = get_rect(DSO_CHEN, y, right); + const QRectF acdc_rect = get_rect(DSO_ACDC, y, right); + const QRectF x1_rect = get_rect(DSO_X1, y, right); + const QRectF x10_rect = get_rect(DSO_X10, y, right); + const QRectF x100_rect = get_rect(DSO_X100, y, right); + + if (enabled()) { + if (vDec_rect.contains(pt)) { + go_vDialPre(); + } else if (vInc_rect.contains(pt)) { + go_vDialNext(); + } else if (hDec_rect.contains(pt)) { + boost::shared_ptr dsoSig; + BOOST_FOREACH(const boost::shared_ptr t, traces) { + if (dsoSig = dynamic_pointer_cast(t)) { + dsoSig->go_hDialPre(setted); + setted = true; + } + } + } else if (hInc_rect.contains(pt)) { + boost::shared_ptr dsoSig; + BOOST_FOREACH(const boost::shared_ptr t, traces) { + if (dsoSig = dynamic_pointer_cast(t)) { + dsoSig->go_hDialNext(setted); + setted = true; + } + } + } else if (chEn_rect.contains(pt)) { + if (!_view->session().get_data_lock()) + set_enable(!enabled()); + } else if (acdc_rect.contains(pt)) { + if (strcmp(_view->session().get_device()->dev_inst()->driver->name, "DSLogic") == 0) + set_acCoupling((get_acCoupling()+1)%2); + else + set_acCoupling((get_acCoupling()+1)%3); + } else if (x1_rect.contains(pt)) { + set_factor(1); + } else if (x10_rect.contains(pt)) { + set_factor(10); + } else if (x100_rect.contains(pt)) { + set_factor(100); + } else { + return false; + } + return true; + } + return false; +} + +bool DsoSignal::mouse_wheel(int right, const QPoint pt, const int shift) +{ + int y = get_y(); + const vector< boost::shared_ptr > traces( + _view->get_traces()); + bool setted = false; + const QRectF vDial_rect = get_rect(DSO_VDIAL, y, right); + const QRectF hDial_rect = get_rect(DSO_HDIAL, y, right); + + if (vDial_rect.contains(pt)) { + if (shift > 1.0) + go_vDialNext(); + else if (shift < -1.0) + go_vDialPre(); + return true; + } else if (hDial_rect.contains(pt)) { + boost::shared_ptr dsoSig; + BOOST_FOREACH(const boost::shared_ptr t, traces) { + if (dsoSig = dynamic_pointer_cast(t)) { + if (shift > 1.0) { + dsoSig->go_hDialNext(setted); + setted = true; + } else if (shift < -1.0) { + dsoSig->go_hDialPre(setted); + setted = true; + } + } + } + } else { + return false; + } + + return true; +} + +QRectF DsoSignal::get_rect(DsoSetRegions type, int y, int right) +{ + const QSizeF name_size(right - get_leftWidth() - get_rightWidth(), SquareWidth); + + if (type == DSO_VDIAL) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin, + y - SquareWidth * SquareNum, + SquareWidth * (SquareNum-1), SquareWidth * (SquareNum-1)); + else if (type == DSO_VDEC) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin, + y - SquareWidth * SquareNum, + SquareWidth * (SquareNum-1) / 2, SquareWidth * (SquareNum-1)); + else if (type == DSO_VINC) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin + SquareWidth * (SquareNum-1) / 2, + y - SquareWidth * SquareNum, + SquareWidth * (SquareNum-1) / 2, SquareWidth * (SquareNum-1)); + else if (type == DSO_HDIAL) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin, + y + SquareWidth * 1.5, + SquareWidth * (SquareNum-1), SquareWidth * (SquareNum-1)); + else if (type == DSO_HDEC) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin, + y + SquareWidth * 1.5, + SquareWidth * (SquareNum-1) / 2, SquareWidth * (SquareNum-1)); + else if (type == DSO_HINC) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin + SquareWidth * (SquareNum-1) / 2, + y + SquareWidth * 1.5, + SquareWidth * (SquareNum-1) / 2, SquareWidth * (SquareNum-1)); + else if (type == DSO_X1) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin - 45, + y - SquareWidth - SquareWidth * (SquareNum-1) * 0.85, + SquareWidth * 1.75, SquareWidth); + else if (type == DSO_X10) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin - 45, + y - SquareWidth - SquareWidth * (SquareNum-1) * 0.55, + SquareWidth * 1.75, SquareWidth); + else if (type == DSO_X100) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin - 45, + y - SquareWidth - SquareWidth * (SquareNum-1) * 0.25, + SquareWidth * 1.75, SquareWidth); + else if (type == DSO_CHEN) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*0.75 + Margin, + y - SquareWidth / 2, + SquareWidth * 1.5, SquareWidth); + else if (type == DSO_ACDC) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth*2.75 + Margin, + y - SquareWidth / 2, + SquareWidth * 1.5, SquareWidth); + else + return QRectF(0, 0, 0, 0); +} + void DsoSignal::paint_measure(QPainter &p) { sr_status status; diff --git a/DSView/pv/view/dsosignal.h b/DSView/pv/view/dsosignal.h index 2e8741e1..a2669d8a 100644 --- a/DSView/pv/view/dsosignal.h +++ b/DSView/pv/view/dsosignal.h @@ -75,6 +75,21 @@ public: DSO_MS_END, }; + enum DsoSetRegions { + DSO_NONE = -1, + DSO_VDIAL, + DSO_HDIAL, + DSO_VDEC, + DSO_VINC, + DSO_HDEC, + DSO_HINC, + DSO_CHEN, + DSO_ACDC, + DSO_X1, + DSO_X10, + DSO_X100, + }; + private: static const uint16_t MS_RectRad = 5; static const uint16_t MS_IconSize = 16; @@ -184,8 +199,16 @@ public: bool get_ms_en(int index) const; QString get_ms_string(int index) const; + QRectF get_rect(DsoSetRegions type, int y, int right); + + bool mouse_double_click(int right, const QPoint pt); + + bool mouse_press(int right, const QPoint pt); + + bool mouse_wheel(int right, const QPoint pt, const int shift); + protected: - void paint_type_options(QPainter &p, int right, bool hover, int action); + void paint_type_options(QPainter &p, int right, const QPoint pt); private: void paint_trace(QPainter &p, diff --git a/DSView/pv/view/groupsignal.cpp b/DSView/pv/view/groupsignal.cpp index 1c6ac1d8..d5402acb 100644 --- a/DSView/pv/view/groupsignal.cpp +++ b/DSView/pv/view/groupsignal.cpp @@ -196,13 +196,12 @@ const std::vector< std::pair > GroupSignal::cur_edges() const } -void GroupSignal::paint_type_options(QPainter &p, int right, bool hover, int action) +void GroupSignal::paint_type_options(QPainter &p, int right, const QPoint pt) { - (void)hover; - (void)action; + (void)pt; int y = get_y(); - const QRectF group_index_rect = get_rect("groupIndex", y, right); + const QRectF group_index_rect = get_rect(CHNLREG, y, right); QString index_string; int last_index; p.setPen(Qt::transparent); @@ -224,5 +223,18 @@ void GroupSignal::paint_type_options(QPainter &p, int right, bool hover, int act p.drawText(group_index_rect, Qt::AlignRight | Qt::AlignVCenter, index_string); } +QRectF GroupSignal::get_rect(GroupSetRegions type, int y, int right) +{ + const QSizeF name_size(right - get_leftWidth() - get_rightWidth(), SquareWidth); + + if (type == CHNLREG) + return QRectF( + get_leftWidth() + name_size.width() + Margin, + y - SquareWidth / 2, + SquareWidth * SquareNum, SquareWidth); + else + return QRectF(0, 0, 0, 0); +} + } // namespace view } // namespace pv diff --git a/DSView/pv/view/groupsignal.h b/DSView/pv/view/groupsignal.h index b4fe21f1..0aa18282 100644 --- a/DSView/pv/view/groupsignal.h +++ b/DSView/pv/view/groupsignal.h @@ -48,6 +48,11 @@ private: static const float EnvelopeThreshold; + enum GroupSetRegions{ + NONEREG = -1, + CHNLREG, + }; + public: GroupSignal(QString name, boost::shared_ptr data, @@ -74,8 +79,10 @@ public: const std::vector< std::pair > cur_edges() const; + QRectF get_rect(GroupSetRegions type, int y, int right); + protected: - void paint_type_options(QPainter &p, int right, bool hover, int action); + void paint_type_options(QPainter &p, int right, const QPoint pt); private: void paint_trace(QPainter &p, diff --git a/DSView/pv/view/header.cpp b/DSView/pv/view/header.cpp index d84f3f03..2a83f6c0 100644 --- a/DSView/pv/view/header.cpp +++ b/DSView/pv/view/header.cpp @@ -118,7 +118,6 @@ void Header::paintEvent(QPaintEvent*) style()->drawPrimitive(QStyle::PE_Widget, &o, &painter, this); const int w = width(); - int action = 0; const vector< boost::shared_ptr > traces( _view.get_traces()); @@ -129,11 +128,7 @@ void Header::paintEvent(QPaintEvent*) BOOST_FOREACH(const boost::shared_ptr t, traces) { assert(t); - - const int y = t->get_y(); - const bool highlight = !dragging && - (action = t->pt_in_rect(y, w, _mouse_point)); - t->paint_label(painter, w, highlight, action); + t->paint_label(painter, w, dragging ? QPoint(-1, -1) : _mouse_point); } painter.end(); @@ -157,14 +152,9 @@ void Header::mouseDoubleClickEvent(QMouseEvent *event) make_pair(t, t->get_v_offset())); // Select the Trace if it has been clicked - const boost::shared_ptr mTrace = - get_mTrace(action, event->pos()); - if (action == Trace::LABEL && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - dsoSig->auto_set(); - } - } + BOOST_FOREACH(const boost::shared_ptr t, traces) + if (t->mouse_double_click(width(), event->pos())) + break; } } @@ -213,93 +203,12 @@ void Header::mousePressEvent(QMouseEvent *event) } } mTrace->set_old_v_offset(mTrace->get_v_offset()); - } else if (action == Trace::POSTRIG && mTrace) { - if (mTrace->get_trig() == Trace::POSTRIG) - mTrace->set_trig(0); - else - mTrace->set_trig(Trace::POSTRIG); - } else if (action == Trace::HIGTRIG && mTrace) { - if (mTrace->get_trig() == Trace::HIGTRIG) - mTrace->set_trig(0); - else - mTrace->set_trig(Trace::HIGTRIG); - } else if (action == Trace::NEGTRIG && mTrace) { - if (mTrace->get_trig() == Trace::NEGTRIG) - mTrace->set_trig(0); - else - mTrace->set_trig(Trace::NEGTRIG); - } else if (action == Trace::LOWTRIG && mTrace) { - if (mTrace->get_trig() == Trace::LOWTRIG) - mTrace->set_trig(0); - else - mTrace->set_trig(Trace::LOWTRIG); - } else if (action == Trace::EDGETRIG && mTrace) { - if (mTrace->get_trig() == Trace::EDGETRIG) - mTrace->set_trig(0); - else - mTrace->set_trig(Trace::EDGETRIG); - } else if (action == Trace::VDIAL && mTrace) { - boost::shared_ptr dsoSig; - BOOST_FOREACH(const boost::shared_ptr t, traces) { - if (dsoSig = dynamic_pointer_cast(t)) { - dsoSig->set_hDialActive(false); - if (t != mTrace) { - dsoSig->set_vDialActive(false); - } - } - } - if (dsoSig = dynamic_pointer_cast(mTrace)) - dsoSig->set_vDialActive(!dsoSig->get_vDialActive()); - } else if (action == Trace::HDIAL && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - if (dsoSig->get_hDialActive()) { - BOOST_FOREACH(const boost::shared_ptr t, traces) { - if(dsoSig = dynamic_pointer_cast(t)) { - dsoSig->set_vDialActive(false); - dsoSig->set_hDialActive(false); - } - } - } else { - BOOST_FOREACH(const boost::shared_ptr t, traces) { - if(dsoSig = dynamic_pointer_cast(t)) { - dsoSig->set_vDialActive(false); - dsoSig->set_hDialActive(true); - } - } - } - } - } else if (action == Trace::CHEN && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - if (!_view.session().get_data_lock()) - dsoSig->set_enable(!dsoSig->enabled()); - } - } else if (action == Trace::ACDC && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - if (strcmp(_view.session().get_device()->dev_inst()->driver->name, "DSLogic") == 0) - dsoSig->set_acCoupling((dsoSig->get_acCoupling()+1)%2); - else - dsoSig->set_acCoupling((dsoSig->get_acCoupling()+1)%3); - } - } else if (action == Trace::X1 && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - dsoSig->set_factor(1); - } - } else if (action == Trace::X10 && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - dsoSig->set_factor(10); - } - } else if (action == Trace::X100 && mTrace) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(mTrace)) { - dsoSig->set_factor(100); - } } + BOOST_FOREACH(const boost::shared_ptr t, traces) + if (t->mouse_press(width(), event->pos())) + break; + if (~QApplication::keyboardModifiers() & Qt::ControlModifier) { // Unselect all other Traces because the Ctrl is not // pressed @@ -350,27 +259,9 @@ void Header::wheelEvent(QWheelEvent *event) _view.get_traces()); // Vertical scrolling double shift = event->delta() / 20.0; - bool setted = false; - BOOST_FOREACH(const boost::shared_ptr t, traces) { - boost::shared_ptr dsoSig; - if (dsoSig = dynamic_pointer_cast(t)) { - if (dsoSig->get_vDialActive()) { - if (shift > 1.0) - dsoSig->go_vDialNext(); - else if (shift < -1.0) - dsoSig->go_vDialPre(); - break; - } else if (dsoSig->get_hDialActive()){ - if (shift > 1.0) - dsoSig->go_hDialNext(setted); - else if (shift < -1.0) - dsoSig->go_hDialPre(setted); - else - break; - setted = true; - } - } - } + BOOST_FOREACH(const boost::shared_ptr t, traces) + if (t->mouse_wheel(width(), event->pos(), shift)) + break; update(); } } diff --git a/DSView/pv/view/logicsignal.cpp b/DSView/pv/view/logicsignal.cpp index f52282ce..ecd534c6 100644 --- a/DSView/pv/view/logicsignal.cpp +++ b/DSView/pv/view/logicsignal.cpp @@ -70,16 +70,18 @@ LogicSignal::LogicSignal(boost::shared_ptr dev_inst, boost::shared_ptr data, const sr_channel * const probe) : Signal(dev_inst, probe, SR_CHANNEL_LOGIC), - _data(data) + _data(data), + _trig(NONTRIG) { _colour = SignalColours[probe->index % countof(SignalColours)]; } -LogicSignal::LogicSignal(const Signal &s, +LogicSignal::LogicSignal(boost::shared_ptr s, boost::shared_ptr data, const sr_channel * const probe) : - Signal(s, probe), - _data(data) + Signal(*s.get(), probe), + _data(data), + _trig(s->get_trig()) { } @@ -103,6 +105,32 @@ boost::shared_ptr LogicSignal::logic_data() const return _data; } +LogicSignal::LogicSetRegions LogicSignal::get_trig() const +{ + return _trig; +} + +void LogicSignal::set_trig(int trig) +{ + if (trig > NONTRIG && trig <= EDGTRIG) + _trig = (LogicSetRegions)trig; + else + _trig = NONTRIG; + + if (trig == NONTRIG) + ds_trigger_probe_set(_index_list.front(), 'X', 'X'); + else if (trig == POSTRIG) + ds_trigger_probe_set(_index_list.front(), 'R', 'X'); + else if (trig == HIGTRIG) + ds_trigger_probe_set(_index_list.front(), '1', 'X'); + else if (trig == NEGTRIG) + ds_trigger_probe_set(_index_list.front(), 'F', 'X'); + else if (trig == LOWTRIG) + ds_trigger_probe_set(_index_list.front(), '0', 'X'); + else if (trig == EDGTRIG) + ds_trigger_probe_set(_index_list.front(), 'C', 'X'); +} + void LogicSignal::paint_mid(QPainter &p, int left, int right) { using pv::view::View; @@ -205,35 +233,30 @@ const std::vector< std::pair > LogicSignal::cur_edges() const return _cur_edges; } -void LogicSignal::paint_type_options(QPainter &p, int right, bool hover, int action) +void LogicSignal::paint_type_options(QPainter &p, int right, const QPoint pt) { int y = get_y(); - const QRectF posTrig_rect = get_rect("posTrig", y, right); - const QRectF higTrig_rect = get_rect("higTrig", y, right); - const QRectF negTrig_rect = get_rect("negTrig", y, right); - const QRectF lowTrig_rect = get_rect("lowTrig", y, right); - const QRectF edgeTrig_rect = get_rect("edgeTrig", y, right); + const QRectF posTrig_rect = get_rect(POSTRIG, y, right); + const QRectF higTrig_rect = get_rect(HIGTRIG, y, right); + const QRectF negTrig_rect = get_rect(NEGTRIG, y, right); + const QRectF lowTrig_rect = get_rect(LOWTRIG, y, right); + const QRectF edgeTrig_rect = get_rect(EDGTRIG, y, right); p.setPen(Qt::transparent); - p.setBrush(((hover && action == POSTRIG) || (_trig == POSTRIG)) ? - dsYellow : - dsBlue); + p.setBrush(posTrig_rect.contains(pt) ? dsYellow.darker() : + (_trig == POSTRIG) ? dsYellow : dsBlue); p.drawRect(posTrig_rect); - p.setBrush(((hover && action == HIGTRIG) || (_trig == HIGTRIG)) ? - dsYellow : - dsBlue); + p.setBrush(higTrig_rect.contains(pt) ? dsYellow.darker() : + (_trig == HIGTRIG) ? dsYellow : dsBlue); p.drawRect(higTrig_rect); - p.setBrush(((hover && action == NEGTRIG) || (_trig == NEGTRIG)) ? - dsYellow : - dsBlue); + p.setBrush(negTrig_rect.contains(pt) ? dsYellow.darker() : + (_trig == NEGTRIG) ? dsYellow : dsBlue); p.drawRect(negTrig_rect); - p.setBrush(((hover && action == LOWTRIG) || (_trig == LOWTRIG)) ? - dsYellow : - dsBlue); + p.setBrush(lowTrig_rect.contains(pt) ? dsYellow.darker() : + (_trig == LOWTRIG) ? dsYellow : dsBlue); p.drawRect(lowTrig_rect); - p.setBrush(((hover && action == EDGETRIG) || (_trig == EDGETRIG)) ? - dsYellow : - dsBlue); + p.setBrush(edgeTrig_rect.contains(pt) ? dsYellow.darker() : + (_trig == EDGTRIG) ? dsYellow : dsBlue); p.drawRect(edgeTrig_rect); p.setPen(QPen(Qt::blue, 1, Qt::DotLine)); @@ -368,5 +391,63 @@ bool LogicSignal::edges(const QPointF &p, uint64_t start, uint64_t &rising, uint return false; } +bool LogicSignal::mouse_press(int right, const QPoint pt) +{ + int y = get_y(); + const QRectF posTrig = get_rect(POSTRIG, y, right); + const QRectF higTrig = get_rect(HIGTRIG, y, right); + const QRectF negTrig = get_rect(NEGTRIG, y, right); + const QRectF lowTrig = get_rect(LOWTRIG, y, right); + const QRectF edgeTrig = get_rect(EDGTRIG, y, right); + + if (posTrig.contains(pt)) + set_trig((_trig == POSTRIG) ? NONTRIG : POSTRIG); + else if (higTrig.contains(pt)) + set_trig((_trig == HIGTRIG) ? NONTRIG : HIGTRIG); + else if (negTrig.contains(pt)) + set_trig((_trig == NEGTRIG) ? NONTRIG : NEGTRIG); + else if (lowTrig.contains(pt)) + set_trig((_trig == LOWTRIG) ? NONTRIG : LOWTRIG); + else if (edgeTrig.contains(pt)) + set_trig((_trig == EDGTRIG) ? NONTRIG : EDGTRIG); + else + return false; + + return true; +} + +QRectF LogicSignal::get_rect(LogicSetRegions type, int y, int right) +{ + const QSizeF name_size(right - get_leftWidth() - get_rightWidth(), SquareWidth); + + if (type == POSTRIG) + return QRectF( + get_leftWidth() + name_size.width() + Margin, + y - SquareWidth / 2, + SquareWidth, SquareWidth); + else if (type == HIGTRIG) + return QRectF( + get_leftWidth() + name_size.width() + SquareWidth + Margin, + y - SquareWidth / 2, + SquareWidth, SquareWidth); + else if (type == NEGTRIG) + return QRectF( + get_leftWidth() + name_size.width() + 2 * SquareWidth + Margin, + y - SquareWidth / 2, + SquareWidth, SquareWidth); + else if (type == LOWTRIG) + return QRectF( + get_leftWidth() + name_size.width() + 3 * SquareWidth + Margin, + y - SquareWidth / 2, + SquareWidth, SquareWidth); + else if (type == EDGTRIG) + return QRectF( + get_leftWidth() + name_size.width() + 4 * SquareWidth + Margin, + y - SquareWidth / 2, + SquareWidth, SquareWidth); + else + return QRectF(0, 0, 0, 0); +} + } // namespace view } // namespace pv diff --git a/DSView/pv/view/logicsignal.h b/DSView/pv/view/logicsignal.h index 5a3a444e..9ccc40d0 100644 --- a/DSView/pv/view/logicsignal.h +++ b/DSView/pv/view/logicsignal.h @@ -53,12 +53,21 @@ private: static const int StateHeight; static const int StateRound; + enum LogicSetRegions{ + NONTRIG = -1, + POSTRIG, + HIGTRIG, + NEGTRIG, + LOWTRIG, + EDGTRIG, + }; + public: LogicSignal(boost::shared_ptr dev_inst, boost::shared_ptr data, const sr_channel * const probe); - LogicSignal(const Signal &s, + LogicSignal(boost::shared_ptr s, boost::shared_ptr data, const sr_channel * const probe); @@ -70,6 +79,12 @@ public: boost::shared_ptr logic_data() const; + /** + * + */ + LogicSetRegions get_trig() const; + void set_trig(int trig); + /** * Paints the signal with a QPainter * @param p the QPainter to paint into. @@ -84,8 +99,12 @@ public: bool edges(const QPointF &p, uint64_t start, uint64_t &rising, uint64_t &falling) const; + bool mouse_press(int right, const QPoint pt); + + QRectF get_rect(LogicSetRegions type, int y, int right); + protected: - void paint_type_options(QPainter &p, int right, bool hover, int action); + void paint_type_options(QPainter &p, int right, const QPoint pt); private: @@ -97,6 +116,7 @@ private: private: boost::shared_ptr _data; std::vector< std::pair > _cur_edges; + LogicSetRegions _trig; }; } // namespace view diff --git a/DSView/pv/view/trace.cpp b/DSView/pv/view/trace.cpp index 62f38511..f6304741 100644 --- a/DSView/pv/view/trace.cpp +++ b/DSView/pv/view/trace.cpp @@ -59,8 +59,7 @@ Trace::Trace(QString name, uint16_t index, int type) : _v_offset(INT_MAX), _type(type), _sec_index(0), - _signalHeight(30), - _trig(0) + _signalHeight(30) { _index_list.push_back(index); } @@ -72,8 +71,7 @@ Trace::Trace(QString name, std::list index_list, int type, int sec_index) : _type(type), _index_list(index_list), _sec_index(sec_index), - _signalHeight(30), - _trig(0) + _signalHeight(30) { } @@ -87,7 +85,6 @@ Trace::Trace(const Trace &t) : _sec_index(t._sec_index), _old_v_offset(t._old_v_offset), _signalHeight(t._signalHeight), - _trig(t._trig), _text_size(t._text_size) { } @@ -180,28 +177,6 @@ void Trace::set_signalHeight(int height) _signalHeight = height; } -int Trace::get_trig() const -{ - return _trig; -} - -void Trace::set_trig(int trig) -{ - _trig = trig; - if (trig == 0) - ds_trigger_probe_set(_index_list.front(), 'X', 'X'); - else if (trig == POSTRIG) - ds_trigger_probe_set(_index_list.front(), 'R', 'X'); - else if (trig == HIGTRIG) - ds_trigger_probe_set(_index_list.front(), '1', 'X'); - else if (trig == NEGTRIG) - ds_trigger_probe_set(_index_list.front(), 'F', 'X'); - else if (trig == LOWTRIG) - ds_trigger_probe_set(_index_list.front(), '0', 'X'); - else if (trig == EDGETRIG) - ds_trigger_probe_set(_index_list.front(), 'C', 'X'); -} - void Trace::set_view(pv::view::View *view) { assert(view); @@ -231,7 +206,7 @@ void Trace::paint_fore(QPainter &p, int left, int right) (void)right; } -void Trace::paint_label(QPainter &p, int right, bool hover, int action) +void Trace::paint_label(QPainter &p, int right, const QPoint pt) { compute_text_size(p); const int y = get_y(); @@ -251,7 +226,7 @@ void Trace::paint_label(QPainter &p, int right, bool hover, int action) p.drawText(name_rect, Qt::AlignLeft | Qt::AlignVCenter, _name); // Paint the trigButton - paint_type_options(p, right, hover, action); + paint_type_options(p, right, pt); // Paint the label if (enabled()) { @@ -265,9 +240,9 @@ void Trace::paint_label(QPainter &p, int right, bool hover, int action) p.setPen(Qt::transparent); if (_type == SR_CHANNEL_DSO) - p.setBrush(((hover && action == LABEL) || selected()) ? _colour.darker() : _colour); + p.setBrush((label_rect.contains(pt) || selected()) ? _colour.darker() : _colour); else - p.setBrush(((hover && action == LABEL) || selected()) ? dsYellow : dsBlue); + p.setBrush((label_rect.contains(pt) || selected()) ? dsYellow : dsBlue); p.drawPolygon(points, countof(points)); p.setPen(QPen(Qt::blue, 1, Qt::DotLine)); @@ -288,65 +263,47 @@ void Trace::paint_label(QPainter &p, int right, bool hover, int action) } } -void Trace::paint_type_options(QPainter &p, int right, bool hover, int action) +void Trace::paint_type_options(QPainter &p, int right, const QPoint pt) { (void)p; (void)right; - (void)hover; - (void)action; + (void)pt; +} + +bool Trace::mouse_double_click(int right, const QPoint pt) +{ + (void)right; + (void)pt; + return false; +} + +bool Trace::mouse_press(int right, const QPoint pt) +{ + (void)right; + (void)pt; + return false; +} + +bool Trace::mouse_wheel(int right, const QPoint pt, const int shift) +{ + (void)right; + (void)pt; + (void)shift; + return false; } int Trace::pt_in_rect(int y, int right, const QPoint &point) { const QRectF color = get_rect("color", y, right); const QRectF name = get_rect("name", y, right); - const QRectF posTrig = get_rect("posTrig", y, right); - const QRectF higTrig = get_rect("higTrig", y, right); - const QRectF negTrig = get_rect("negTrig", y, right); - const QRectF lowTrig = get_rect("lowTrig", y, right); - const QRectF edgeTrig = get_rect("edgeTrig", y, right); const QRectF label = get_rect("label", get_zeroPos(), right); - const QRectF vDial = get_rect("vDial", y, right); - const QRectF x1 = get_rect("x1", y, right); - const QRectF x10 = get_rect("x10", y, right); - const QRectF x100 = get_rect("x100", y, right); - const QRectF hDial = get_rect("hDial", y, right); - const QRectF chEn = get_rect("chEn", y, right); - const QRectF acdc = get_rect("acdc", y, right); - const QRectF dsoTrig = get_rect("dsoTrig", 0, right); if (color.contains(point) && enabled()) return COLOR; else if (name.contains(point) && enabled()) return NAME; - else if (posTrig.contains(point) && _type == SR_CHANNEL_LOGIC) - return POSTRIG; - else if (higTrig.contains(point) && _type == SR_CHANNEL_LOGIC) - return HIGTRIG; - else if (negTrig.contains(point) && _type == SR_CHANNEL_LOGIC) - return NEGTRIG; - else if (lowTrig.contains(point) && _type == SR_CHANNEL_LOGIC) - return LOWTRIG; - else if (edgeTrig.contains(point) && _type == SR_CHANNEL_LOGIC) - return EDGETRIG; else if (label.contains(point) && enabled()) return LABEL; - else if (vDial.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return VDIAL; - else if (x1.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return X1; - else if (x10.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return X10; - else if (x100.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return X100; - else if (hDial.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return HDIAL; - else if (chEn.contains(point) && _type == SR_CHANNEL_DSO) - return CHEN; - else if (acdc.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return ACDC; - else if (dsoTrig.contains(point) && _type == SR_CHANNEL_DSO && enabled()) - return DSOTRIG; else return 0; } @@ -381,71 +338,6 @@ QRectF Trace::get_rect(const char *s, int y, int right) right - 1.5f * label_size.width(), y - SquareWidth / 2, label_size.width(), label_size.height()); - else if (!strcmp(s, "posTrig")) - return QRectF( - get_leftWidth() + name_size.width() + Margin, - y - SquareWidth / 2, - SquareWidth, SquareWidth); - else if (!strcmp(s, "higTrig")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth + Margin, - y - SquareWidth / 2, - SquareWidth, SquareWidth); - else if (!strcmp(s, "negTrig")) - return QRectF( - get_leftWidth() + name_size.width() + 2 * SquareWidth + Margin, - y - SquareWidth / 2, - SquareWidth, SquareWidth); - else if (!strcmp(s, "lowTrig")) - return QRectF( - get_leftWidth() + name_size.width() + 3 * SquareWidth + Margin, - y - SquareWidth / 2, - SquareWidth, SquareWidth); - else if (!strcmp(s, "edgeTrig")) - return QRectF( - get_leftWidth() + name_size.width() + 4 * SquareWidth + Margin, - y - SquareWidth / 2, - SquareWidth, SquareWidth); - else if (!strcmp(s, "groupIndex")) - return QRectF( - get_leftWidth() + name_size.width() + Margin, - y - SquareWidth / 2, - SquareWidth * SquareNum, SquareWidth); - else if (!strcmp(s, "vDial")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin, - y - SquareWidth * SquareNum, - SquareWidth * (SquareNum-1), SquareWidth * (SquareNum-1)); - else if (!strcmp(s, "x1")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin - 45, - y - SquareWidth - SquareWidth * (SquareNum-1) * 0.85, - SquareWidth * 1.75, SquareWidth); - else if (!strcmp(s, "x10")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin - 45, - y - SquareWidth - SquareWidth * (SquareNum-1) * 0.55, - SquareWidth * 1.75, SquareWidth); - else if (!strcmp(s, "x100")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin - 45, - y - SquareWidth - SquareWidth * (SquareNum-1) * 0.25, - SquareWidth * 1.75, SquareWidth); - else if (!strcmp(s, "hDial")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin, - y + SquareWidth * 1.5, - SquareWidth * (SquareNum-1), SquareWidth * (SquareNum-1)); - else if (!strcmp(s, "chEn")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*0.75 + Margin, - y - SquareWidth / 2, - SquareWidth * 1.5, SquareWidth); - else if (!strcmp(s, "acdc")) - return QRectF( - get_leftWidth() + name_size.width() + SquareWidth*2.75 + Margin, - y - SquareWidth / 2, - SquareWidth * 1.5, SquareWidth); else return QRectF( 2, diff --git a/DSView/pv/view/trace.h b/DSView/pv/view/trace.h index 05dc10ab..ef3d31f3 100644 --- a/DSView/pv/view/trace.h +++ b/DSView/pv/view/trace.h @@ -45,7 +45,7 @@ class Trace : public SelectableItem { Q_OBJECT -private: +protected: static const int Margin = 3; static const int SquareNum = 5; static const QPen AxisPen; @@ -55,20 +55,7 @@ public: static const int SquareWidth = 20; static const int COLOR = 1; static const int NAME = 2; - static const int POSTRIG = 3; - static const int HIGTRIG = 4; - static const int NEGTRIG = 5; - static const int LOWTRIG = 6; - static const int EDGETRIG = 7; static const int LABEL = 8; - static const int VDIAL = 9; - static const int HDIAL = 10; - static const int CHEN = 11; - static const int ACDC = 12; - static const int DSOTRIG = 13; - static const int X1 = 14; - static const int X10 = 15; - static const int X100 = 16; static const QColor dsBlue; static const QColor dsYellow; @@ -166,12 +153,6 @@ public: virtual int get_zeroPos(); - /** - * - */ - int get_trig() const; - void set_trig(int trig); - /** * Returns true if the trace is visible and enabled. */ @@ -208,10 +189,9 @@ public: * @param p the QPainter to paint into. * @param right the x-coordinate of the right edge of the header * area. - * @param hover true if the label is being hovered over by the mouse. - * @param action mouse position for hover + * @param point the mouse point. */ - virtual void paint_label(QPainter &p, int right, bool hover, int action); + virtual void paint_label(QPainter &p, int right, const QPoint pt); /** * Gets the y-offset of the axis. @@ -250,6 +230,12 @@ public: virtual QRectF get_view_rect() const; + virtual bool mouse_double_click(int right, const QPoint pt); + + virtual bool mouse_press(int right, const QPoint pt); + + virtual bool mouse_wheel(int right, const QPoint pt, const int shift); + protected: /** @@ -274,10 +260,9 @@ protected: * @param p the QPainter to paint into. * @param right the x-coordinate of the right edge of the header * area. - * @param hover true if the label is being hovered over by the mouse. - * @param action mouse position for hover + * @param point the mouse point. */ - virtual void paint_type_options(QPainter &p, int right, bool hover, int action); + virtual void paint_type_options(QPainter &p, int right, const QPoint pt); private: @@ -307,7 +292,6 @@ protected: int _sec_index; int _old_v_offset; int _signalHeight; - int _trig; QSizeF _text_size; }; From 800f4c615eb34f3ebe832b1fdbeeac2e8a5a967f Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Wed, 4 Nov 2015 00:27:42 +0800 Subject: [PATCH 17/25] Add file save support @ OSC & DAQ mode --- DSView/pv/data/analogsnapshot.cpp | 4 +- DSView/pv/device/file.cpp | 5 +- DSView/pv/devicemanager.cpp | 2 +- DSView/pv/mainwindow.cpp | 6 +- DSView/pv/sigsession.cpp | 82 +++-- DSView/pv/sigsession.h | 2 +- DSView/pv/toolbars/filebar.cpp | 16 +- DSView/pv/view/analogsignal.cpp | 4 +- DSView/pv/view/dsosignal.cpp | 37 ++- DSView/pv/view/logicsignal.cpp | 5 + DSView/pv/view/logicsignal.h | 3 +- DSView/pv/view/view.cpp | 7 +- libsigrok4DSL/hardware/DSL/dscope.c | 4 +- libsigrok4DSL/hardware/DSL/dslogic.c | 180 ++++++----- libsigrok4DSL/hardware/demo/demo.c | 450 ++++++++++++++++----------- libsigrok4DSL/libsigrok.h | 6 + libsigrok4DSL/session_driver.c | 156 +++++++++- libsigrok4DSL/session_file.c | 152 +++++++-- 18 files changed, 768 insertions(+), 353 deletions(-) diff --git a/DSView/pv/data/analogsnapshot.cpp b/DSView/pv/data/analogsnapshot.cpp index 981dc0f9..085cf20c 100644 --- a/DSView/pv/data/analogsnapshot.cpp +++ b/DSView/pv/data/analogsnapshot.cpp @@ -47,7 +47,7 @@ const float AnalogSnapshot::LogEnvelopeScaleFactor = const uint64_t AnalogSnapshot::EnvelopeDataUnit = 64*1024; // bytes AnalogSnapshot::AnalogSnapshot(const sr_datafeed_analog &analog, uint64_t _total_sample_len, unsigned int channel_num) : - Snapshot(sizeof(uint16_t), _total_sample_len, channel_num) + Snapshot(sizeof(uint16_t)*channel_num, _total_sample_len, channel_num) { boost::lock_guard lock(_mutex); memset(_envelope_levels, 0, sizeof(_envelope_levels)); @@ -66,7 +66,7 @@ void AnalogSnapshot::append_payload( const sr_datafeed_analog &analog) { boost::lock_guard lock(_mutex); - append_data(analog.data, analog.num_samples); + append_data(analog.data, analog.num_samples); // Generate the first mip-map from the data append_payload_to_envelope_levels(); diff --git a/DSView/pv/device/file.cpp b/DSView/pv/device/file.cpp index 18c9f6fb..fdc1bd15 100644 --- a/DSView/pv/device/file.cpp +++ b/DSView/pv/device/file.cpp @@ -23,6 +23,8 @@ #include "inputfile.h" #include "sessionfile.h" +#include + #include #include @@ -39,7 +41,8 @@ File::File(QString path) : QString File::format_device_title() const { - return _path; + QFileInfo fi(_path); + return fi.fileName(); } File* File::create(QString name) diff --git a/DSView/pv/devicemanager.cpp b/DSView/pv/devicemanager.cpp index a3d6d212..066af640 100644 --- a/DSView/pv/devicemanager.cpp +++ b/DSView/pv/devicemanager.cpp @@ -102,7 +102,7 @@ std::list > DeviceManager::driver_scan( //release_driver(driver); // Check If DSL hardware driver - if (strcmp(driver->name, "demo") != 0) { + if (strncmp(driver->name, "virtual", 7)) { QDir dir(QCoreApplication::applicationDirPath()); if (!dir.cd("res")) return driver_devices; diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index 51472613..482f0361 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -319,8 +319,7 @@ void MainWindow::update_device_list() errorMessage, infoMessage)); } - if (strcmp(selected_device->dev_inst()->driver->name, "demo") != 0 && - strcmp(selected_device->dev_inst()->driver->name, "virtual-session") != 0) { + if (strncmp(selected_device->dev_inst()->driver->name, "virtual", 7)) { _logo_bar->dsl_connected(true); QString ses_name = config_path + QString::fromUtf8(selected_device->dev_inst()->driver->name) + @@ -521,7 +520,8 @@ void MainWindow::closeEvent(QCloseEvent *event) QString driver_name = _session.get_device()->dev_inst()->driver->name; QString mode_name = QString::number(_session.get_device()->dev_inst()->mode); QString file_name = dir.absolutePath() + "/" + driver_name + mode_name + ".dsc"; - if (!file_name.isEmpty()) + if (strncmp(driver_name.toLocal8Bit(), "virtual", 7) && + !file_name.isEmpty()) store_session(file_name); } event->accept(); diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index e4b026b2..deff6746 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -177,19 +177,45 @@ void SigSession::set_file(QString name) throw(QString) } } -void SigSession::save_file(const QString name){ - const deque< boost::shared_ptr > &snapshots = - _logic_data->get_snapshots(); - if (snapshots.empty()) - return; - - const boost::shared_ptr &snapshot = - snapshots.front(); +void SigSession::save_file(const QString name, int type){ + unsigned char* data; + int unit_size; + uint64_t sample_count; + if (type == ANALOG) { + const deque< boost::shared_ptr > &snapshots = + _analog_data->get_snapshots(); + if (snapshots.empty()) + return; + const boost::shared_ptr &snapshot = + snapshots.front(); + data = (unsigned char*)snapshot->get_data(); + unit_size = snapshot->unit_size(); + sample_count = snapshot->get_sample_count(); + } else if (type == DSO) { + const deque< boost::shared_ptr > &snapshots = + _dso_data->get_snapshots(); + if (snapshots.empty()) + return; + const boost::shared_ptr &snapshot = + snapshots.front(); + data = (unsigned char*)snapshot->get_data(); + // snapshot->unit_size() is not valid for dso, replaced by enabled channel number + unit_size = get_ch_num(SR_CHANNEL_DSO); + sample_count = snapshot->get_sample_count(); + } else { + const deque< boost::shared_ptr > &snapshots = + _logic_data->get_snapshots(); + if (snapshots.empty()) + return; + const boost::shared_ptr &snapshot = + snapshots.front(); + data = (unsigned char*)snapshot->get_data(); + unit_size = snapshot->unit_size(); + sample_count = snapshot->get_sample_count(); + } sr_session_save(name.toLocal8Bit().data(), _dev_inst->dev_inst(), - (unsigned char*)snapshot->get_data(), - snapshot->unit_size(), - snapshot->get_sample_count()); + data, unit_size, sample_count); } QList SigSession::getSuportedExportFormats(){ @@ -365,8 +391,8 @@ void SigSession::set_default_device(boost::function error_ // Try and find the DreamSourceLab device and select that by default BOOST_FOREACH (boost::shared_ptr dev, devices) if (dev->dev_inst() && - strcmp(dev->dev_inst()->driver->name, - "demo") != 0) { + strncmp(dev->dev_inst()->driver->name, + "virtual", 7) != 0) { default_device = dev; break; } @@ -423,7 +449,10 @@ void SigSession::start_capture(bool instant, } // update setting - _instant = instant; + if (strcmp(_dev_inst->dev_inst()->driver->name, "virtual-session")) + _instant = instant; + else + _instant = true; if (~_instant) _view_timer.blockSignals(false); @@ -545,7 +574,7 @@ void SigSession::sample_thread_proc(boost::shared_ptr dev_inst, assert(s); boost::shared_ptr logicSig; if (logicSig = dynamic_pointer_cast(s)) { - if (logicSig->get_trig() != 0) { + if (logicSig->has_trig()) { ds_trigger_set_en(true); logicSig->set_trig(logicSig->get_trig()); } @@ -628,12 +657,14 @@ void SigSession::add_group() _group_traces.push_back(signal); _group_cnt++; - if (_capture_state == Stopped) { + const deque< boost::shared_ptr > &snapshots = + _logic_data->get_snapshots(); + if (!snapshots.empty()) { //if (!_cur_group_snapshot) //{ // Create a new data snapshot _cur_group_snapshot = boost::shared_ptr( - new data::GroupSnapshot(_logic_data->get_snapshots().front(), signal->get_index_list())); + new data::GroupSnapshot(snapshots.front(), signal->get_index_list())); //_cur_group_snapshot->append_payload(); _group_data->push_snapshot(_cur_group_snapshot); _cur_group_snapshot.reset(); @@ -724,10 +755,6 @@ void SigSession::init_signals() if (logic_probe_count != 0) { _logic_data.reset(new data::Logic()); assert(_logic_data); - - _group_data.reset(new data::Group()); - assert(_group_data); - _group_cnt = 0; } if (dso_probe_count != 0) { @@ -739,10 +766,17 @@ void SigSession::init_signals() _analog_data.reset(new data::Analog()); assert(_analog_data); } + + _group_data.reset(new data::Group()); + assert(_group_data); + _group_cnt = 0; } // Make the logic probe list { + _group_traces.clear(); + vector< boost::shared_ptr >().swap(_group_traces); + for (const GSList *l = _dev_inst->dev_inst()->channels; l; l = l->next) { const sr_channel *const probe = (const sr_channel *)l->data; @@ -853,8 +887,10 @@ void SigSession::refresh(int holdtime) _analog_data->clear(); _cur_analog_snapshot.reset(); } - _data_lock = true; - _refresh_timer.start(holdtime); + if (strncmp(_dev_inst->dev_inst()->driver->name, "virtual", 7)) { + _data_lock = true; + _refresh_timer.start(holdtime); + } data_updated(); } diff --git a/DSView/pv/sigsession.h b/DSView/pv/sigsession.h index fbee995c..ed64f491 100644 --- a/DSView/pv/sigsession.h +++ b/DSView/pv/sigsession.h @@ -117,7 +117,7 @@ public: void set_file(QString name) throw(QString); - void save_file(const QString name); + void save_file(const QString name, int type); void set_default_device(boost::function error_handler); void export_file(const QString name, QWidget* parent, const QString ext); diff --git a/DSView/pv/toolbars/filebar.cpp b/DSView/pv/toolbars/filebar.cpp index 4f557505..5562db7a 100644 --- a/DSView/pv/toolbars/filebar.cpp +++ b/DSView/pv/toolbars/filebar.cpp @@ -200,22 +200,16 @@ void FileBar::on_actionSave_triggered() msg.setStandardButtons(QMessageBox::Ok); msg.setIcon(QMessageBox::Warning); msg.exec(); - } else if (_session.get_device()->dev_inst()->mode != LOGIC) { - QMessageBox msg(this); - msg.setText(tr("File Save")); - msg.setInformativeText(tr("DSView currently only support saving logic data to file!")); - msg.setStandardButtons(QMessageBox::Ok); - msg.setIcon(QMessageBox::Warning); - msg.exec(); - }else { + } else { QString file_name = QFileDialog::getSaveFileName( - this, tr("Save File"), "", - tr("DSView Data (*.dsl)")); + this, tr("Save File"), "", + tr("DSView Data (*.dsl)")); + if (!file_name.isEmpty()) { QFileInfo f(file_name); if(f.suffix().compare("dsl")) file_name.append(tr(".dsl")); - _session.save_file(file_name); + _session.save_file(file_name, _session.get_device()->dev_inst()->mode); } } } diff --git a/DSView/pv/view/analogsignal.cpp b/DSView/pv/view/analogsignal.cpp index ceeca037..dbef9c00 100644 --- a/DSView/pv/view/analogsignal.cpp +++ b/DSView/pv/view/analogsignal.cpp @@ -137,8 +137,7 @@ void AnalogSignal::paint_trace(QPainter &p, //p.setPen(QPen(_colour, 2, Qt::SolidLine)); QPointF *points = new QPointF[sample_count]; - QPointF *point = points; - + QPointF *point = points; for (int64_t sample = start; sample != end; sample++) { const float x = (sample / samples_per_pixel - pixels_offset) + left; @@ -147,7 +146,6 @@ void AnalogSignal::paint_trace(QPainter &p, } p.drawPolyline(points, point - points); - //delete[] samples; delete[] points; } diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index 98386468..b6118c64 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -120,8 +120,6 @@ DsoSignal::DsoSignal(boost::shared_ptr dev_inst, //_trig_vpos(probe->index * 0.5 + 0.25), //_zeroPos(probe->index * 0.5 + 0.25) _trig_vpos(0.5), - _zeroPos(0.5), - _zero_off(255/2.0), _autoV(false), _autoH(false), _hover_en(false), @@ -495,6 +493,19 @@ bool DsoSignal::load_settings() _dev_inst->set_config(_probe, NULL, SR_CONF_COUPLING, g_variant_new_byte(_acCoupling)); + // -- vpos + double vpos; + gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_VPOS); + if (gvar != NULL) { + vpos = g_variant_get_double(gvar); + g_variant_unref(gvar); + } else { + qDebug() << "ERROR: config_get SR_CONF_COUPLING failed."; + return false; + } + _zeroPos = min(max((0.5 - vpos / (_vDial->get_value() * DS_CONF_DSO_VDIVS)), 0.0), 1.0); + _zero_off = _zeroPos * 255; + if (_view) { _view->set_need_update(true); _view->update(); @@ -657,6 +668,7 @@ uint64_t DsoSignal::get_factor() void DsoSignal::set_ms_show(bool show) { _ms_show = show; + _view->set_need_update(true); } bool DsoSignal::get_ms_show() const @@ -1093,7 +1105,12 @@ bool DsoSignal::mouse_press(int right, const QPoint pt) const QRectF x10_rect = get_rect(DSO_X10, y, right); const QRectF x100_rect = get_rect(DSO_X100, y, right); - if (enabled()) { + if (chEn_rect.contains(pt)) { + if (strcmp(_dev_inst->dev_inst()->driver->name, "virtual-session") && + !_view->session().get_data_lock()) + set_enable(!enabled()); + return true; + } else if (enabled()) { if (vDec_rect.contains(pt)) { go_vDialPre(); } else if (vInc_rect.contains(pt)) { @@ -1114,10 +1131,8 @@ bool DsoSignal::mouse_press(int right, const QPoint pt) setted = true; } } - } else if (chEn_rect.contains(pt)) { - if (!_view->session().get_data_lock()) - set_enable(!enabled()); - } else if (acdc_rect.contains(pt)) { + } else if (strcmp(_dev_inst->dev_inst()->driver->name, "virtual-session") && + acdc_rect.contains(pt)) { if (strcmp(_view->session().get_device()->dev_inst()->driver->name, "DSLogic") == 0) set_acCoupling((get_acCoupling()+1)%2); else @@ -1284,6 +1299,14 @@ void DsoSignal::paint_measure(QPainter &p) _ms_string[DSO_MS_VMEA] = "Vmean: " + (abs(value_vmean) > 1000 ? QString::number(value_vmean/1000.0, 'f', 2) + "V" : QString::number(value_vmean, 'f', 2) + "mV"); } } + } else { + _ms_string[DSO_MS_VMAX] = "Vmax: #####"; + _ms_string[DSO_MS_VMIN] = "Vmin: #####"; + _ms_string[DSO_MS_PERD] = "Perd: #####"; + _ms_string[DSO_MS_FREQ] = "Freq: #####"; + _ms_string[DSO_MS_VP2P] = "Vp-p: #####"; + _ms_string[DSO_MS_VRMS] = "Vrms: #####"; + _ms_string[DSO_MS_VMEA] = "Vmean: #####"; } QColor measure_colour = _colour; diff --git a/DSView/pv/view/logicsignal.cpp b/DSView/pv/view/logicsignal.cpp index ecd534c6..3391317c 100644 --- a/DSView/pv/view/logicsignal.cpp +++ b/DSView/pv/view/logicsignal.cpp @@ -105,6 +105,11 @@ boost::shared_ptr LogicSignal::logic_data() const return _data; } +bool LogicSignal::has_trig() const +{ + return (_trig != NONTRIG); +} + LogicSignal::LogicSetRegions LogicSignal::get_trig() const { return _trig; diff --git a/DSView/pv/view/logicsignal.h b/DSView/pv/view/logicsignal.h index 9ccc40d0..542ba232 100644 --- a/DSView/pv/view/logicsignal.h +++ b/DSView/pv/view/logicsignal.h @@ -54,7 +54,7 @@ private: static const int StateRound; enum LogicSetRegions{ - NONTRIG = -1, + NONTRIG = 0, POSTRIG, HIGTRIG, NEGTRIG, @@ -82,6 +82,7 @@ public: /** * */ + bool has_trig() const; LogicSetRegions get_trig() const; void set_trig(int trig); diff --git a/DSView/pv/view/view.cpp b/DSView/pv/view/view.cpp index 77e9d199..be191e93 100644 --- a/DSView/pv/view/view.cpp +++ b/DSView/pv/view/view.cpp @@ -226,8 +226,11 @@ void View::zoom(double steps, int offset) } } } - _offset = cursor_offset - _scale * offset; - _offset = max(min(_offset, get_max_offset()), get_min_offset()); + + if (_session.get_device()->dev_inst()->mode != DSO) { + _offset = cursor_offset - _scale * offset; + _offset = max(min(_offset, get_max_offset()), get_min_offset()); + } if (_scale != _preScale || _offset != _preOffset) { _header->update(); diff --git a/libsigrok4DSL/hardware/DSL/dscope.c b/libsigrok4DSL/hardware/DSL/dscope.c index 8e1a9cf5..7d3fa6e8 100644 --- a/libsigrok4DSL/hardware/DSL/dscope.c +++ b/libsigrok4DSL/hardware/DSL/dscope.c @@ -1485,10 +1485,10 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, ret = command_dso_ctrl(usb->devhdl, dso_cmd_gen(sdi, ch, SR_CONF_VPOS)); } if (ret == SR_OK) - sr_dbg("%s: setting VPOS of channel %d to %d mv", + sr_dbg("%s: setting VPOS of channel %d to %lf mv", __func__, ch->index, ch->vpos); else - sr_dbg("%s: setting VPOS of channel %d to %d mv failed", + sr_dbg("%s: setting VPOS of channel %d to %lf mv failed", __func__, ch->index, ch->vpos); } else if (id == SR_CONF_TIMEBASE) { devc->timebase = g_variant_get_uint64(data); diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index 895f7ec5..d87e870e 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -722,6 +722,7 @@ static int set_probes(struct sr_dev_inst *sdi, int num_probes) if (sdi->mode == DSO) { probe->vdiv = 1000; probe->vfactor = 1; + probe->vpos = 0; probe->coupling = SR_DC_COUPLING; probe->trig_value = 0x80; } @@ -1294,6 +1295,11 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, return SR_ERR; *data = g_variant_new_uint64(ch->vfactor); break; + case SR_CONF_VPOS: + if (!ch) + return SR_ERR; + *data = g_variant_new_double(ch->vpos); + break; case SR_CONF_TIMEBASE: if (!sdi) return SR_ERR; @@ -1558,71 +1564,75 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else if (id == SR_CONF_OPERATION_MODE) { stropt = g_variant_get_string(data, NULL); ret = SR_OK; - if (!strcmp(stropt, opmodes[SR_OP_BUFFER]) && (devc->op_mode != SR_OP_BUFFER)) { - devc->op_mode = SR_OP_BUFFER; - devc->stream = FALSE; - devc->ch_mode = 0; - devc->samplerates_size = 14; - adjust_probes(sdi, buffer_ch_num[0]); - } else if (!strcmp(stropt, opmodes[SR_OP_STREAM]) && (devc->op_mode != SR_OP_STREAM)) { - devc->op_mode = SR_OP_STREAM; - devc->stream = TRUE; - devc->ch_mode = 0; - devc->samplerates_size = 10; - adjust_probes(sdi, stream_ch_num[0]); - } else if (!strcmp(stropt, opmodes[SR_OP_INTERNAL_TEST]) && (devc->op_mode != SR_OP_INTERNAL_TEST)) { - devc->op_mode = SR_OP_INTERNAL_TEST; - devc->stream = FALSE; - devc->ch_mode = 0; - devc->samplerates_size = 14; - adjust_probes(sdi, buffer_ch_num[0]); - devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; - devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; - } else if (!strcmp(stropt, opmodes[SR_OP_EXTERNAL_TEST]) && (devc->op_mode != SR_OP_EXTERNAL_TEST)) { - devc->op_mode = SR_OP_EXTERNAL_TEST; - devc->stream = FALSE; - devc->ch_mode = 0; - devc->samplerates_size = 14; - adjust_probes(sdi, buffer_ch_num[0]); - devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; - devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; - } else if (!strcmp(stropt, opmodes[SR_OP_LOOPBACK_TEST]) && (devc->op_mode != SR_OP_LOOPBACK_TEST)) { - devc->op_mode = SR_OP_LOOPBACK_TEST; - devc->stream = FALSE; - devc->ch_mode = 0; - devc->samplerates_size = 14; - adjust_probes(sdi, buffer_ch_num[0]); - devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; - devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; - } else { - ret = SR_ERR; + if (sdi->mode == LOGIC) { + if (!strcmp(stropt, opmodes[SR_OP_BUFFER]) && (devc->op_mode != SR_OP_BUFFER)) { + devc->op_mode = SR_OP_BUFFER; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); + } else if (!strcmp(stropt, opmodes[SR_OP_STREAM]) && (devc->op_mode != SR_OP_STREAM)) { + devc->op_mode = SR_OP_STREAM; + devc->stream = TRUE; + devc->ch_mode = 0; + devc->samplerates_size = 10; + adjust_probes(sdi, stream_ch_num[0]); + } else if (!strcmp(stropt, opmodes[SR_OP_INTERNAL_TEST]) && (devc->op_mode != SR_OP_INTERNAL_TEST)) { + devc->op_mode = SR_OP_INTERNAL_TEST; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); + devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; + devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; + } else if (!strcmp(stropt, opmodes[SR_OP_EXTERNAL_TEST]) && (devc->op_mode != SR_OP_EXTERNAL_TEST)) { + devc->op_mode = SR_OP_EXTERNAL_TEST; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); + devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; + devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; + } else if (!strcmp(stropt, opmodes[SR_OP_LOOPBACK_TEST]) && (devc->op_mode != SR_OP_LOOPBACK_TEST)) { + devc->op_mode = SR_OP_LOOPBACK_TEST; + devc->stream = FALSE; + devc->ch_mode = 0; + devc->samplerates_size = 14; + adjust_probes(sdi, buffer_ch_num[0]); + devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; + devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; + } else { + ret = SR_ERR; + } + if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) + devc->cur_samplerate = samplerates[devc->samplerates_size-1]; } - if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) - devc->cur_samplerate = samplerates[devc->samplerates_size-1]; sr_dbg("%s: setting pattern to %d", __func__, devc->op_mode); } else if (id == SR_CONF_CHANNEL_MODE) { stropt = g_variant_get_string(data, NULL); ret = SR_OK; - if (devc->stream) { - for (i = 0; i < ARRAY_SIZE(stream_ch_modes); i++) - if (!strcmp(stropt, stream_ch_modes[i])) { - devc->ch_mode = i; - devc->samplerates_size = 10 + i * 2; - adjust_probes(sdi, stream_ch_num[i]); - break; - } - } else { - for (i = 0; i < ARRAY_SIZE(buffer_ch_modes); i++) - if (!strcmp(stropt, buffer_ch_modes[i])) { - devc->ch_mode = i; - devc->samplerates_size = 14 + i; - adjust_probes(sdi, buffer_ch_num[i]); - break; - } + if (sdi->mode == LOGIC) { + if (devc->stream) { + for (i = 0; i < ARRAY_SIZE(stream_ch_modes); i++) + if (!strcmp(stropt, stream_ch_modes[i])) { + devc->ch_mode = i; + devc->samplerates_size = 10 + i * 2; + adjust_probes(sdi, stream_ch_num[i]); + break; + } + } else { + for (i = 0; i < ARRAY_SIZE(buffer_ch_modes); i++) + if (!strcmp(stropt, buffer_ch_modes[i])) { + devc->ch_mode = i; + devc->samplerates_size = 14 + i; + adjust_probes(sdi, buffer_ch_num[i]); + break; + } + } + if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) + devc->cur_samplerate = samplerates[devc->samplerates_size-1]; } - if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) - devc->cur_samplerate = samplerates[devc->samplerates_size-1]; sr_dbg("%s: setting channel mode to %d", __func__, devc->ch_mode); } else if (id == SR_CONF_THRESHOLD) { @@ -1635,32 +1645,34 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else { ret = SR_ERR; } - if ((ret = command_fpga_config(usb->devhdl)) != SR_OK) { - sr_err("Send FPGA configure command failed!"); - } else { - /* Takes >= 10ms for the FX2 to be ready for FPGA configure. */ - g_usleep(10 * 1000); - char *fpga_bit; - if (!(fpga_bit = g_try_malloc(strlen(config_path)+strlen(devc->profile->fpga_bit33)+1))) { - sr_err("fpag_bit path malloc error!"); - return SR_ERR_MALLOC; + if (sdi->mode == LOGIC) { + if ((ret = command_fpga_config(usb->devhdl)) != SR_OK) { + sr_err("Send FPGA configure command failed!"); + } else { + /* Takes >= 10ms for the FX2 to be ready for FPGA configure. */ + g_usleep(10 * 1000); + char *fpga_bit; + if (!(fpga_bit = g_try_malloc(strlen(config_path)+strlen(devc->profile->fpga_bit33)+1))) { + sr_err("fpag_bit path malloc error!"); + return SR_ERR_MALLOC; + } + strcpy(fpga_bit, config_path); + switch(devc->th_level) { + case SR_TH_3V3: + strcat(fpga_bit, devc->profile->fpga_bit33);; + break; + case SR_TH_5V0: + strcat(fpga_bit, devc->profile->fpga_bit50);; + break; + default: + return SR_ERR; + } + ret = fpga_config(usb->devhdl, fpga_bit); + if (ret != SR_OK) { + sr_err("Configure FPGA failed!"); + } + g_free(fpga_bit); } - strcpy(fpga_bit, config_path); - switch(devc->th_level) { - case SR_TH_3V3: - strcat(fpga_bit, devc->profile->fpga_bit33);; - break; - case SR_TH_5V0: - strcat(fpga_bit, devc->profile->fpga_bit50);; - break; - default: - return SR_ERR; - } - ret = fpga_config(usb->devhdl, fpga_bit); - if (ret != SR_OK) { - sr_err("Configure FPGA failed!"); - } - g_free(fpga_bit); } sr_dbg("%s: setting threshold to %d", __func__, devc->th_level); @@ -2225,7 +2237,7 @@ static void receive_transfer(struct libusb_transfer *transfer) packet.type = SR_DF_ANALOG; packet.payload = &analog; analog.probes = (*(struct sr_dev_inst *)(devc->cb_data)).channels; - analog.num_samples = transfer->actual_length / sample_width; + analog.num_samples = (transfer->actual_length / sample_width)/g_slist_length(analog.probes); analog.mq = SR_MQ_VOLTAGE; analog.unit = SR_UNIT_VOLT; analog.mqflags = SR_MQFLAG_AC; diff --git a/libsigrok4DSL/hardware/demo/demo.c b/libsigrok4DSL/hardware/demo/demo.c index df4414b7..cc38258b 100644 --- a/libsigrok4DSL/hardware/demo/demo.c +++ b/libsigrok4DSL/hardware/demo/demo.c @@ -56,9 +56,9 @@ #define CONST_LEN 50 -#define DEMO_MAX_LOGIC_DEPTH SR_MB(1) -#define DEMO_MAX_LOGIC_SAMPLERATE SR_MHZ(100) -#define DEMO_MAX_DSO_DEPTH SR_KB(32) +#define DEMO_MAX_LOGIC_DEPTH SR_MB(100) +#define DEMO_MAX_LOGIC_SAMPLERATE SR_MHZ(400) +#define DEMO_MAX_DSO_DEPTH SR_KB(20) #define DEMO_MAX_DSO_SAMPLERATE SR_MHZ(200) #define DEMO_MAX_DSO_PROBES_NUM 2 @@ -110,6 +110,10 @@ struct dev_context { gboolean data_lock; uint8_t max_height; + uint16_t *buf; + uint64_t pre_index; + struct sr_status mstatus; + int trigger_stage; uint16_t trigger_mask; uint16_t trigger_value; @@ -137,8 +141,79 @@ static const int32_t sessions[] = { SR_CONF_PATTERN_MODE, }; +static const int const_dc = 50; +static const int sinx[] = { + 0, 2, 3, 5, 6, 8, 9, 11, 12, 14, 16, 17, 18, 20, 21, 23, 24, 26, 27, 28, + 30, 31, 32, 33, 34, 35, 37, 38, 39, 40, 41, 41, 42, 43, 44, 45, 45, 46, 47, 47, + 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 50, 50, 50, 50, 50, 49, 49, 49, 48, 48, + 47, 47, 46, 46, 45, 44, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 31, 30, + 29, 28, 26, 25, 24, 22, 21, 19, 18, 16, 15, 13, 12, 10, 9, 7, 6, 4, 2, 1, + -1, -2, -4, -6, -7, -9, -10, -12, -13, -15, -16, -18, -19, -21, -22, -24, -25, -26, -28, -29, +-30, -31, -33, -34, -35, -36, -37, -38, -39, -40, -41, -42, -43, -44, -44, -45, -46, -46, -47, -47, +-48, -48, -49, -49, -49, -50, -50, -50, -50, -50, -50, -50, -50, -50, -49, -49, -49, -49, -48, -48, +-47, -47, -46, -45, -45, -44, -43, -42, -41, -41, -40, -39, -38, -37, -35, -34, -33, -32, -31, -30, +-28, -27, -26, -24, -23, -21, -20, -18, -17, -16, -14, -12, -11, -9, -8, -6, -5, -3, -2, 0, +}; + +static const int sqrx[] = { + 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, +-50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, +-50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, +-50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, +-50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, +-50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, +}; + +static const int trix[] = { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, + 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, + 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, + 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14, -15, -16, -17, -18, -19, +-20, -21, -22, -23, -24, -25, -26, -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38, -39, +-40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50, -49, -48, -47, -46, -45, -44, -43, -42, -41, +-40, -39, -38, -37, -36, -35, -34, -33, -32, -31, -30, -29, -28, -27, -26, -25, -24, -23, -22, -21, +-20, -19, -18, -17, -16, -15, -14, -13, -12, -11, -10, -9, -8, -7, -6, -5, -4, -3, -2, -1, +}; + +static const int sawx[] = { + 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, + 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, 18, 19, 19, + 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, + 30, 30, 31, 31, 32, 32, 33, 33, 34, 34, 35, 35, 36, 36, 37, 37, 38, 38, 39, 39, + 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 45, 45, 46, 46, 47, 47, 48, 48, 49, 50, +-50, -49, -48, -48, -47, -47, -46, -46, -45, -45, -44, -44, -43, -43, -42, -42, -41, -41, -40, -40, +-39, -39, -38, -38, -37, -37, -36, -36, -35, -35, -34, -34, -33, -33, -32, -32, -31, -31, -30, -30, +-29, -29, -28, -28, -27, -27, -26, -26, -25, -25, -24, -24, -23, -23, -22, -22, -21, -21, -20, -20, +-19, -19, -18, -18, -17, -17, -16, -16, -15, -15, -14, -14, -13, -13, -12, -12, -11, -11, -10, -10, + -9, -9, -8, -8, -7, -7, -6, -6, -5, -5, -4, -4, -3, -3, -2, -2, -1, -1, 0, 0, +}; + +static const int ranx[] = { + -4, 47, -49, -1, -3, 6, -29, 26, 1, 14, -39, -38, 36, 17, 26, -37, -2, 27, -20, -15, +-49, -46, 36, 16, 29, 23, -30, -3, 28, -2, -6, 46, 43, 50, -42, 30, 48, -50, -38, -30, + 7, -36, -20, -24, -10, -34, -24, 3, -48, 46, -11, 22, 19, 28, 39, -49, -31, 34, 2, -29, + 9, 35, 8, 10, 38, 30, 17, 48, -3, -6, -28, 46, -19, 18, -43, -9, -31, -32, -41, 16, +-10, 46, -4, 4, -32, -43, -45, -39, -33, 28, 24, -17, -43, 42, -7, 36, -44, -5, 9, 39, + 17, -40, 12, 16, -42, -1, 2, -9, 50, -8, 27, 27, 14, 8, -18, 12, -8, 26, -8, 12, +-35, 49, 35, 2, -26, -24, -31, 33, 15, -47, 34, 46, -1, -12, 14, 32, -25, -31, -35, -18, +-48, -21, -5, 1, -27, -14, 12, 49, -11, 33, 31, 35, -36, 19, 20, 44, 29, -48, 14, -43, + 1, 30, -12, 44, 20, 49, 29, -43, 42, 30, -34, 24, 20, -40, 33, -12, 13, -45, 45, -24, +-41, 36, -8, 46, 47, -34, 28, -39, 7, -32, 38, -27, 28, -3, -8, 43, -37, -24, 6, 3, +}; static const uint64_t samplerates[] = { + SR_HZ(100), + SR_HZ(200), + SR_HZ(500), + SR_KHZ(1), + SR_KHZ(2), + SR_KHZ(5), SR_KHZ(10), SR_KHZ(20), SR_KHZ(50), @@ -156,25 +231,43 @@ static const uint64_t samplerates[] = { SR_MHZ(400), }; +//static const uint64_t samplecounts[] = { +// SR_KB(1), +// SR_KB(2), +// SR_KB(4), +// SR_KB(8), +// SR_KB(16), +// SR_KB(32), +// SR_KB(64), +// SR_KB(128), +// SR_KB(256), +// SR_KB(512), +// SR_MB(1), +// SR_MB(2), +// SR_MB(4), +// SR_MB(8), +// SR_MB(16), +//}; + static const uint64_t samplecounts[] = { SR_KB(1), SR_KB(2), - SR_KB(4), - SR_KB(8), - SR_KB(16), - SR_KB(32), - SR_KB(64), - SR_KB(128), - SR_KB(256), - SR_KB(512), + SR_KB(5), + SR_KB(10), + SR_KB(20), + SR_KB(50), + SR_KB(100), + SR_KB(200), + SR_KB(500), SR_MB(1), SR_MB(2), - SR_MB(4), - SR_MB(8), - SR_MB(16), + SR_MB(5), + SR_MB(10), + SR_MB(20), + SR_MB(50), + SR_MB(100), }; - /* We name the probes 0-7 on our demo driver. */ static const char *probe_names[NUM_PROBES + 1] = { "Channel 0", "Channel 1", "Channel 2", "Channel 3", @@ -238,11 +331,11 @@ static GSList *hw_scan(GSList *options) } devc->sdi = sdi; - devc->cur_samplerate = DEMO_MAX_LOGIC_SAMPLERATE; - devc->limit_samples = DEMO_MAX_LOGIC_DEPTH; + devc->cur_samplerate = SR_MHZ(1); + devc->limit_samples = SR_MB(1); devc->limit_msec = 0; devc->sample_generator = PATTERN_SINE; - devc->timebase = 10000; + devc->timebase = 200; devc->data_lock = FALSE; devc->max_height = 1; @@ -372,6 +465,9 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_MAX_HEIGHT_VALUE: *data = g_variant_new_byte(devc->max_height); break; + case SR_CONF_VPOS: + *data = g_variant_new_double(ch->vpos); + break; case SR_CONF_VDIV: *data = g_variant_new_uint64(ch->vdiv); break; @@ -417,6 +513,7 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, int ret; const char *stropt; struct sr_channel *probe; + uint64_t tmp_u64; (void) cg; @@ -427,6 +524,8 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, if (id == SR_CONF_SAMPLERATE) { devc->cur_samplerate = g_variant_get_uint64(data); + devc->samples_counter = 0; + devc->pre_index = 0; sr_dbg("%s: setting samplerate to %" PRIu64, __func__, devc->cur_samplerate); ret = SR_OK; @@ -463,8 +562,9 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, else { probe->vdiv = 1000; probe->vfactor = 1; - probe->coupling = SR_DC_COUPLING; + probe->coupling = SR_AC_COUPLING; probe->trig_value = 0x80; + probe->vpos = (probe->index == 0 ? 0.5 : -0.5)*probe->vdiv; sdi->channels = g_slist_append(sdi->channels, probe); } } @@ -479,6 +579,8 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, else sdi->channels = g_slist_append(sdi->channels, probe); } + devc->cur_samplerate = SR_HZ(100); + devc->limit_samples = SR_KB(1); } else { ret = SR_ERR; } @@ -532,7 +634,9 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, devc->data_lock); ret = SR_OK; } else if (id == SR_CONF_VDIV) { - ch->vdiv = g_variant_get_uint64(data); + tmp_u64 = g_variant_get_uint64(data); + ch->vpos = (tmp_u64 * 1.0 / ch->vdiv) * ch->vpos; + ch->vdiv = tmp_u64; sr_dbg("%s: setting VDIV of channel %d to %" PRIu64, __func__, ch->index, ch->vdiv); ret = SR_OK; @@ -541,6 +645,11 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, sr_dbg("%s: setting FACTOR of channel %d to %" PRIu64, __func__, ch->index, ch->vfactor); ret = SR_OK; + } else if (id == SR_CONF_VPOS) { + ch->vpos = g_variant_get_double(data); + sr_dbg("%s: setting VPOS of channel %d to %lf", __func__, + ch->index, ch->vpos); + ret = SR_OK; } else if (id == SR_CONF_TIMEBASE) { devc->timebase = g_variant_get_uint64(data); sr_dbg("%s: setting TIMEBASE to %" PRIu64, __func__, @@ -617,144 +726,106 @@ static void samples_generator(uint16_t *buf, uint64_t size, const struct sr_dev_inst *sdi, struct dev_context *devc) { - static uint16_t p = 0; - uint64_t i; - uint16_t demo_data; + uint64_t i, pre0_i, pre1_i, index; + GSList *l; + struct sr_channel *probe; + int offset; + int start_rand; + const uint64_t span = DEMO_MAX_DSO_SAMPLERATE / devc->cur_samplerate; + const uint64_t len = ARRAY_SIZE(sinx) - 1; + int *pre_buf; - switch (devc->sample_generator) { + switch (devc->sample_generator) { case PATTERN_SINE: /* Sine */ - for (i = 0; i < size; i++) { - if (i%CONST_LEN == 0) { - //demo_data = 0x8000 * sin(2 * PI * p / 0xffff) + 0x8000; - demo_data = 0x20 * (sin(2 * PI * p / 0xff) + 1); - p++; - } - GSList *l; - struct sr_channel *probe; - for (l = sdi->channels; l; l = l->next) { - probe = (struct sr_channel *)l->data; - if (probe->coupling == SR_DC_COUPLING) - *(buf + i) += ((0x40 + demo_data) << (probe->index * 8)); - else if (probe->coupling == SR_AC_COUPLING) - *(buf + i) += ((0x60 + demo_data) << (probe->index * 8)); - else - if (probe->index == 0) { - *(buf + i) &= 0xff00; - *(buf + i) += 0x0080; - }else { - *(buf + i) &= 0x00ff; - *(buf + i) += 0x8000; - } - } - } - break; + pre_buf = sinx; + break; case PATTERN_SQUARE: - for (i = 0; i < size; i++) { - if (i%CONST_LEN == 0) { - demo_data = p > 0x7fff ? 0x4040 : 0x0000; - p += CONST_LEN * 10; - } - *(buf + i) = demo_data; - GSList *l; - struct sr_channel *probe; - for (l = sdi->channels; l; l = l->next) { - probe = (struct sr_channel *)l->data; - if (probe->coupling == SR_DC_COUPLING) - *(buf + i) += (0x40 << (probe->index * 8)); - else if (probe->coupling == SR_AC_COUPLING) - *(buf + i) += (0x60 << (probe->index * 8)); - else - if (probe->index == 0) { - *(buf + i) &= 0xff00; - *(buf + i) += 0x0080; - }else { - *(buf + i) &= 0x00ff; - *(buf + i) += 0x8000; - } - } - } + pre_buf = sqrx; break; case PATTERN_TRIANGLE: - for (i = 0; i < size; i++) { - if (i%CONST_LEN == 0) { - demo_data = p > 0x7fff ? 0x40 * (1 + (0x8000 - p * 1.0) / 0x8000) : - 0x40 * (p * 1.0 / 0x8000); - p += CONST_LEN * 10; - } - *(buf + i) = demo_data + (demo_data << 8); - GSList *l; - struct sr_channel *probe; - for (l = sdi->channels; l; l = l->next) { - probe = (struct sr_channel *)l->data; - if (probe->coupling == SR_DC_COUPLING) - *(buf + i) += (0x40 << (probe->index * 8)); - else if (probe->coupling == SR_AC_COUPLING) - *(buf + i) += (0x60 << (probe->index * 8)); - else - if (probe->index == 0) { - *(buf + i) &= 0xff00; - *(buf + i) += 0x0080; - }else { - *(buf + i) &= 0x00ff; - *(buf + i) += 0x8000; - } - } - } + pre_buf = trix; break; case PATTERN_SAWTOOTH: - for (i = 0; i < size; i++) { - if (i%CONST_LEN == 0) { - demo_data = p & 0x003f; - p ++; - } - *(buf + i) = demo_data + (demo_data << 8); - GSList *l; - struct sr_channel *probe; - for (l = sdi->channels; l; l = l->next) { - probe = (struct sr_channel *)l->data; - if (probe->coupling == SR_DC_COUPLING) - *(buf + i) += (0x40 << (probe->index * 8)); - else if (probe->coupling == SR_AC_COUPLING) - *(buf + i) += (0x60 << (probe->index * 8)); - else - if (probe->index == 0) { - *(buf + i) &= 0xff00; - *(buf + i) += 0x0080; - }else { - *(buf + i) &= 0x00ff; - *(buf + i) += 0x8000; - } - } - } + pre_buf = sawx; break; - case PATTERN_RANDOM: /* Random */ + case PATTERN_RANDOM: + pre_buf = ranx; + break; + default: + pre_buf = sinx; + break; + } + + if (devc->samples_counter == devc->limit_samples && + size != devc->limit_samples) { + for (i = 0; i < devc->limit_samples; i++) + *(buf + i) = *(buf + ((i + size)%devc->limit_samples)); + } else if (sdi->mode != DSO) { + start_rand = rand()%len; for (i = 0; i < size; i++) { - if (i%CONST_LEN == 0) - demo_data = (uint16_t)(rand() * (0x40 * 1.0 / RAND_MAX)); - *(buf + i) = demo_data + (demo_data << 8); - GSList *l; - struct sr_channel *probe; - for (l = sdi->channels; l; l = l->next) { - probe = (struct sr_channel *)l->data; - if (probe->coupling == SR_DC_COUPLING) - *(buf + i) += (0x40 << (probe->index * 8)); - else if (probe->coupling == SR_AC_COUPLING) - *(buf + i) += (0x60 << (probe->index * 8)); - else - if (probe->index == 0) { - *(buf + i) &= 0xff00; - *(buf + i) += 0x0080; - }else { - *(buf + i) &= 0x00ff; - *(buf + i) += 0x8000; + index = (i/g_slist_length(sdi->channels)+start_rand)%len; + *(buf + i) = (uint16_t)(((const_dc+pre_buf[index]) << 8) + (const_dc+pre_buf[index])); + } + } else { + if (devc->pre_index == 0) { + devc->mstatus.ch0_max = 0; + devc->mstatus.ch0_min = 255; + devc->mstatus.ch1_max = 0; + devc->mstatus.ch1_min = 255; + devc->mstatus.ch0_period = 0; + devc->mstatus.ch0_pcnt = 1; + devc->mstatus.ch1_period = 0; + devc->mstatus.ch1_pcnt = 1; + } + memset(buf+devc->pre_index, 0, size*sizeof(uint16_t)); + for (l = sdi->channels; l; l = l->next) { + start_rand = devc->pre_index == 0 ? rand()%len : 0; + probe = (struct sr_channel *)l->data; + offset = ceil((0.5 - (probe->vpos/probe->vdiv/10.0)) * 255); + pre0_i = devc->pre_index; + pre1_i = devc->pre_index; + for (i = devc->pre_index; i < devc->pre_index + size; i++) { + if (probe->coupling == SR_DC_COUPLING) { + *(buf + i) += (uint8_t)(offset + (1000.0/probe->vdiv) * (pre_buf[(i*span+start_rand)%len] - const_dc)) << (probe->index * 8); + } else if (probe->coupling == SR_AC_COUPLING) { + *(buf + i) += (uint8_t)(offset + (1000.0/probe->vdiv) * pre_buf[(i*span+start_rand)%len]) << (probe->index * 8); + } else { + *(buf + i) += offset << (probe->index * 8); + } + + if (probe->index == 0) { + devc->mstatus.ch0_max = MAX(devc->mstatus.ch0_max, (*(buf + i) & 0x00ff)); + devc->mstatus.ch0_min = MIN(devc->mstatus.ch0_min, (*(buf + i) & 0x00ff)); + if (i > devc->pre_index && + pre_buf[(i*span+start_rand)%len] < 0 && + pre_buf[((i-1)*span+start_rand)%len] > 0) { + devc->mstatus.ch0_period = 2*(i - pre0_i)*pow(10, 8)/DEMO_MAX_DSO_SAMPLERATE; + pre0_i = i; } + } else { + devc->mstatus.ch1_max = MAX(devc->mstatus.ch1_max, ((*(buf + i) & 0xff00) >> 8)); + devc->mstatus.ch1_min = MIN(devc->mstatus.ch1_min, ((*(buf + i) & 0xff00) >> 8)); + if (i > devc->pre_index && + pre_buf[(i*span+start_rand)%len] < 0 && + pre_buf[((i-1)*span+start_rand)%len] > 0) { + devc->mstatus.ch1_period = 2*(i - pre1_i)*pow(10, 8)/DEMO_MAX_DSO_SAMPLERATE; + pre1_i = i; + } + } } } - break; - default: - sr_err("Unknown pattern: %d.", devc->sample_generator); - break; - } + + for (l = sdi->channels; l; l = l->next) { + probe = (struct sr_channel *)l->data; + if (!probe->enabled) { + devc->mstatus.ch1_max = MAX(devc->mstatus.ch0_max, devc->mstatus.ch1_max); + devc->mstatus.ch1_min = MIN(devc->mstatus.ch0_min, devc->mstatus.ch1_min); + devc->mstatus.ch0_max = MAX(devc->mstatus.ch0_max, devc->mstatus.ch1_max); + devc->mstatus.ch0_min = MIN(devc->mstatus.ch0_min, devc->mstatus.ch1_min); + break; + } + } + } } /* Callback handling data */ @@ -765,8 +836,6 @@ static int receive_data(int fd, int revents, const struct sr_dev_inst *sdi) struct sr_datafeed_logic logic; struct sr_datafeed_dso dso; struct sr_datafeed_analog analog; - //uint16_t buf[BUFSIZE]; - uint16_t *buf; static uint64_t samples_to_send, expected_samplenum, sending_now; int64_t time, elapsed; static uint16_t last_sample = 0; @@ -776,43 +845,39 @@ static int receive_data(int fd, int revents, const struct sr_dev_inst *sdi) (void)fd; (void)revents; - if (!(buf = g_try_malloc(BUFSIZE*sizeof(uint16_t)))) { - sr_err("buf for receive_data malloc failed."); - return FALSE; - } - /* How many "virtual" samples should we have collected by now? */ time = g_get_monotonic_time(); elapsed = time - devc->starttime; devc->starttime = time; - expected_samplenum = elapsed * devc->cur_samplerate / 1000000; + //expected_samplenum = ceil(elapsed / 1000000.0 * devc->cur_samplerate); /* Of those, how many do we still have to send? */ //samples_to_send = (expected_samplenum - devc->samples_counter) / CONST_LEN * CONST_LEN; - samples_to_send = expected_samplenum / CONST_LEN * CONST_LEN; + //samples_to_send = expected_samplenum / CONST_LEN * CONST_LEN; + samples_to_send = ceil(elapsed / 1000000.0 * devc->cur_samplerate); if (devc->limit_samples) { - if (sdi->mode == LOGIC || devc->instant) + if ((sdi->mode == DSO && !devc->instant) || sdi->mode == ANALOG) samples_to_send = MIN(samples_to_send, - devc->limit_samples - devc->samples_counter); + devc->limit_samples - devc->pre_index); else samples_to_send = MIN(samples_to_send, - devc->limit_samples); + devc->limit_samples - devc->samples_counter); } while (samples_to_send > 0) { sending_now = MIN(samples_to_send, BUFSIZE); - samples_generator(buf, sending_now, sdi, devc); + samples_generator(devc->buf, sending_now, sdi, devc); if (devc->trigger_stage != 0) { for (i = 0; i < sending_now; i++) { if (devc->trigger_edge == 0) { - if ((*(buf + i) | devc->trigger_mask) == + if ((*(devc->buf + i) | devc->trigger_mask) == (devc->trigger_value | devc->trigger_mask)) { devc->trigger_stage = 0; break; } } else { - cur_sample = *(buf + i); + cur_sample = *(devc->buf + i); if (((last_sample & devc->trigger_edge) == (~devc->trigger_value & devc->trigger_edge)) && ((cur_sample | devc->trigger_mask) == @@ -834,6 +899,14 @@ static int receive_data(int fd, int revents, const struct sr_dev_inst *sdi) } } + if (sdi->mode == ANALOG) + devc->samples_counter += sending_now/g_slist_length(sdi->channels); + else + devc->samples_counter += sending_now; + if (sdi->mode == DSO && !devc->instant && + devc->samples_counter > devc->limit_samples) + devc->samples_counter = devc->limit_samples; + if (devc->trigger_stage == 0){ samples_to_send -= sending_now; if (sdi->mode == LOGIC) { @@ -841,47 +914,56 @@ static int receive_data(int fd, int revents, const struct sr_dev_inst *sdi) packet.payload = &logic; logic.length = sending_now * (NUM_PROBES >> 3); logic.unitsize = (NUM_PROBES >> 3); - logic.data = buf; + logic.data = devc->buf; } else if (sdi->mode == DSO) { packet.type = SR_DF_DSO; packet.payload = &dso; dso.probes = sdi->channels; - dso.num_samples = sending_now; + if (devc->instant) + dso.num_samples = sending_now; + else + dso.num_samples = devc->samples_counter; dso.mq = SR_MQ_VOLTAGE; dso.unit = SR_UNIT_VOLT; dso.mqflags = SR_MQFLAG_AC; - dso.data = buf; + dso.data = devc->buf; }else { packet.type = SR_DF_ANALOG; packet.payload = &analog; analog.probes = sdi->channels; - analog.num_samples = sending_now; + analog.num_samples = sending_now / g_slist_length(sdi->channels); analog.mq = SR_MQ_VOLTAGE; analog.unit = SR_UNIT_VOLT; analog.mqflags = SR_MQFLAG_AC; - analog.data = buf; + analog.data = devc->buf; + } + + if (sdi->mode == DSO && !devc->instant) { + devc->pre_index += sending_now; + if (sdi->mode == DSO && !devc->instant && + devc->pre_index >= devc->limit_samples) + devc->pre_index = 0; } sr_session_send(sdi, &packet); - if (sdi->mode == LOGIC || devc->instant) - devc->samples_counter += sending_now; - else - devc->samples_counter = (devc->samples_counter + sending_now) % devc->limit_samples; + + devc->mstatus.trig_hit = (devc->trigger_stage == 0); + devc->mstatus.captured_cnt0 = devc->samples_counter; + devc->mstatus.captured_cnt1 = devc->samples_counter >> 8; + devc->mstatus.captured_cnt2 = devc->samples_counter >> 16; + devc->mstatus.captured_cnt3 = devc->samples_counter >> 32; } else { break; } } - if (devc->limit_samples && + if ((sdi->mode == LOGIC || devc->instant) && devc->limit_samples && devc->samples_counter >= devc->limit_samples) { sr_info("Requested number of samples reached."); hw_dev_acquisition_stop(sdi, NULL); - g_free(buf); return TRUE; } - g_free(buf); - return TRUE; } @@ -897,6 +979,11 @@ static int hw_dev_acquisition_start(const struct sr_dev_inst *sdi, //devc->cb_data = cb_data; devc->samples_counter = 0; + devc->pre_index = 0; + devc->mstatus.captured_cnt0 = 0; + devc->mstatus.captured_cnt1 = 0; + devc->mstatus.captured_cnt2 = 0; + devc->mstatus.captured_cnt3 = 0; devc->stop = FALSE; /* @@ -944,6 +1031,11 @@ static int hw_dev_acquisition_start(const struct sr_dev_inst *sdi, //std_session_send_df_header(cb_data, LOG_PREFIX); std_session_send_df_header(sdi, LOG_PREFIX); + if (!(devc->buf = g_try_malloc(BUFSIZE*sizeof(uint16_t)))) { + sr_err("buf for receive_data malloc failed."); + return FALSE; + } + /* We use this timestamp to decide how many more samples to send. */ devc->starttime = g_get_monotonic_time(); @@ -965,6 +1057,8 @@ static int hw_dev_acquisition_stop(struct sr_dev_inst *sdi, void *cb_data) g_io_channel_unref(devc->channel); devc->channel = NULL; + g_free(devc->buf); + /* Send last packet. */ packet.type = SR_DF_END; sr_session_send(sdi, &packet); @@ -986,11 +1080,7 @@ static int hw_dev_status_get(struct sr_dev_inst *sdi, struct sr_status *status, (void)end; if (sdi) { struct dev_context *const devc = sdi->priv; - status->trig_hit = (devc->trigger_stage == 0); - status->captured_cnt0 = devc->samples_counter; - status->captured_cnt1 = devc->samples_counter >> 8; - status->captured_cnt2 = devc->samples_counter >> 16; - status->captured_cnt3 = devc->samples_counter >> 32; + *status = devc->mstatus; return SR_OK; } else { return SR_ERR; @@ -998,7 +1088,7 @@ static int hw_dev_status_get(struct sr_dev_inst *sdi, struct sr_status *status, } SR_PRIV struct sr_dev_driver demo_driver_info = { - .name = "demo", + .name = "virtual-demo", .longname = "Demo driver and pattern generator", .api_version = 1, .init = hw_init, diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index b701b191..477d3646 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -753,6 +753,12 @@ enum { SR_CONF_ZERO, SR_CONF_ZERO_OVER, + /** status for dso channel */ + SR_CONF_STATUS_PERIOD, + SR_CONF_STATUS_PCNT, + SR_CONF_STATUS_MAX, + SR_CONF_STATUS_MIN, + /** Stream */ SR_CONF_STREAM, diff --git a/libsigrok4DSL/session_driver.c b/libsigrok4DSL/session_driver.c index 81b475de..fa1d0c0f 100644 --- a/libsigrok4DSL/session_driver.c +++ b/libsigrok4DSL/session_driver.c @@ -54,6 +54,8 @@ struct session_vdev { uint64_t total_samples; int unitsize; int num_probes; + uint64_t timebase; + struct sr_status mstatus; }; static GSList *dev_insts = NULL; @@ -69,6 +71,8 @@ static int receive_data(int fd, int revents, const struct sr_dev_inst *cb_sdi) struct session_vdev *vdev; struct sr_datafeed_packet packet; struct sr_datafeed_logic logic; + struct sr_datafeed_dso dso; + struct sr_datafeed_analog analog; GSList *l; int ret, got_data; (void)fd; @@ -87,11 +91,31 @@ static int receive_data(int fd, int revents, const struct sr_dev_inst *cb_sdi) ret = zip_fread(vdev->capfile, vdev->buf, CHUNKSIZE); if (ret > 0) { got_data = TRUE; - packet.type = SR_DF_LOGIC; - packet.payload = &logic; - logic.length = ret; - logic.unitsize = vdev->unitsize; - logic.data = vdev->buf; + if (sdi->mode == DSO) { + packet.type = SR_DF_DSO; + packet.payload = &dso; + dso.num_samples = ret / vdev->unitsize; + dso.data = vdev->buf; + dso.probes = sdi->channels; + dso.mq = SR_MQ_VOLTAGE; + dso.unit = SR_UNIT_VOLT; + dso.mqflags = SR_MQFLAG_AC; + } else if (sdi->mode == ANALOG){ + packet.type = SR_DF_ANALOG; + packet.payload = &analog; + analog.probes = sdi->channels; + analog.num_samples = ret / vdev->unitsize; + analog.mq = SR_MQ_VOLTAGE; + analog.unit = SR_UNIT_VOLT; + analog.mqflags = SR_MQFLAG_AC; + analog.data = vdev->buf; + } else { + packet.type = SR_DF_LOGIC; + packet.payload = &logic; + logic.length = ret; + logic.unitsize = vdev->unitsize; + logic.data = vdev->buf; + } vdev->bytes_read += ret; sr_session_send(cb_sdi, &packet); } else { @@ -166,7 +190,9 @@ static int dev_close(struct sr_dev_inst *sdi) return SR_OK; } -static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi) +static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, + const struct sr_channel *ch, + const struct sr_channel_group *cg) { struct session_vdev *vdev; @@ -185,14 +211,63 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi) } else return SR_ERR; break; - default: + case SR_CONF_TIMEBASE: + if (sdi) { + vdev = sdi->priv; + *data = g_variant_new_uint64(vdev->timebase); + } else + return SR_ERR; + break; + case SR_CONF_EN_CH: + if (sdi && ch) { + *data = g_variant_new_boolean(ch->enabled); + } else + return SR_ERR; + break; + case SR_CONF_COUPLING: + if (sdi && ch) { + *data = g_variant_new_byte(ch->coupling); + } else + return SR_ERR; + break; + case SR_CONF_VDIV: + if (sdi && ch) { + *data = g_variant_new_uint64(ch->vdiv); + } else + return SR_ERR; + break; + case SR_CONF_FACTOR: + if (sdi && ch) { + *data = g_variant_new_uint64(ch->vfactor); + } else + return SR_ERR; + break; + case SR_CONF_VPOS: + if (sdi && ch) { + *data = g_variant_new_double(ch->vpos); + } else + return SR_ERR; + break; + case SR_CONF_MAX_DSO_SAMPLERATE: + if (!sdi) + return SR_ERR; + *data = g_variant_new_uint64(vdev->samplerate); + break; + case SR_CONF_MAX_DSO_SAMPLELIMITS: + if (!sdi) + return SR_ERR; + *data = g_variant_new_uint64(vdev->total_samples); + break; + default: return SR_ERR_ARG; } return SR_OK; } -static int config_set(int id, GVariant *data, const struct sr_dev_inst *sdi) +static int config_set(int id, GVariant *data, const struct sr_dev_inst *sdi, + struct sr_channel *ch, + const struct sr_channel_group *cg) { struct session_vdev *vdev; @@ -204,7 +279,11 @@ static int config_set(int id, GVariant *data, const struct sr_dev_inst *sdi) samplerates[0] = vdev->samplerate; sr_info("Setting samplerate to %" PRIu64 ".", vdev->samplerate); break; - case SR_CONF_SESSIONFILE: + case SR_CONF_TIMEBASE: + vdev->timebase = g_variant_get_uint64(data); + sr_info("Setting timebase to %" PRIu64 ".", vdev->timebase); + break; + case SR_CONF_SESSIONFILE: vdev->sessionfile = g_strdup(g_variant_get_bytestring(data)); sr_info("Setting sessionfile to '%s'.", vdev->sessionfile); break; @@ -223,7 +302,46 @@ static int config_set(int id, GVariant *data, const struct sr_dev_inst *sdi) case SR_CONF_CAPTURE_NUM_PROBES: vdev->num_probes = g_variant_get_uint64(data); break; - default: + case SR_CONF_EN_CH: + ch->enabled = g_variant_get_boolean(data); + break; + case SR_CONF_COUPLING: + ch->coupling = g_variant_get_byte(data); + break; + case SR_CONF_VDIV: + ch->vdiv = g_variant_get_uint64(data); + break; + case SR_CONF_FACTOR: + ch->vfactor = g_variant_get_uint64(data); + break; + case SR_CONF_VPOS: + ch->vpos = g_variant_get_double(data); + break; + case SR_CONF_STATUS_PERIOD: + if (ch->index == 0) + vdev->mstatus.ch0_period = g_variant_get_uint64(data); + else + vdev->mstatus.ch1_period = g_variant_get_uint64(data); + break; + case SR_CONF_STATUS_PCNT: + if (ch->index == 0) + vdev->mstatus.ch0_pcnt = g_variant_get_uint64(data); + else + vdev->mstatus.ch1_pcnt = g_variant_get_uint64(data); + break; + case SR_CONF_STATUS_MAX: + if (ch->index == 0) + vdev->mstatus.ch0_max = g_variant_get_uint64(data); + else + vdev->mstatus.ch1_max = g_variant_get_uint64(data); + break; + case SR_CONF_STATUS_MIN: + if (ch->index == 0) + vdev->mstatus.ch0_min = g_variant_get_uint64(data); + else + vdev->mstatus.ch1_min = g_variant_get_uint64(data); + break; + default: sr_err("Unknown capability: %d.", id); return SR_ERR; } @@ -268,6 +386,22 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi) return SR_OK; } +static int dev_status_get(struct sr_dev_inst *sdi, struct sr_status *status, int begin, int end) +{ + (void)begin; + (void)end; + + struct session_vdev *vdev; + + if (sdi) { + vdev = sdi->priv; + *status = vdev->mstatus; + return SR_OK; + } else { + return SR_ERR; + } +} + static int dev_acquisition_start(const struct sr_dev_inst *sdi, void *cb_data) { @@ -324,7 +458,7 @@ SR_PRIV struct sr_dev_driver session_driver = { .dev_open = dev_open, .dev_close = dev_close, .dev_test = NULL, - .dev_status_get = NULL, + .dev_status_get = dev_status_get, .dev_acquisition_start = dev_acquisition_start, .dev_acquisition_stop = NULL, .priv = NULL, diff --git a/libsigrok4DSL/session_file.c b/libsigrok4DSL/session_file.c index 5e84ee66..aa77128d 100644 --- a/libsigrok4DSL/session_file.c +++ b/libsigrok4DSL/session_file.c @@ -121,12 +121,15 @@ SR_API int sr_session_load(const char *filename) struct zip_stat zs; struct sr_dev_inst *sdi; struct sr_channel *probe; - int ret, devcnt, i, j; + int ret, devcnt, i, j, k; uint16_t probenum; uint64_t tmp_u64, total_probes, enabled_probes; uint16_t p; char **sections, **keys, *metafile, *val, s[11]; char probename[SR_MAX_PROBENAME_LEN + 1]; + int mode = LOGIC; + int channel_type = SR_CHANNEL_LOGIC; + double tmp_double; if (!filename) { sr_err("%s: filename was NULL", __func__); @@ -140,7 +143,7 @@ SR_API int sr_session_load(const char *filename) /* read "metadata" */ if (zip_stat(archive, "header", 0, &zs) == -1) { - sr_dbg("Not a valid DSLogic session file."); + sr_dbg("Not a valid DSView data file."); return SR_ERR; } @@ -175,8 +178,10 @@ SR_API int sr_session_load(const char *filename) keys = g_key_file_get_keys(kf, sections[i], NULL, NULL); for (j = 0; keys[j]; j++) { val = g_key_file_get_string(kf, sections[i], keys[j], NULL); - if (!strcmp(keys[j], "capturefile")) { - sdi = sr_dev_inst_new(LOGIC, devcnt, SR_ST_ACTIVE, NULL, NULL, NULL); + if (!strcmp(keys[j], "device mode")) { + mode = strtoull(val, NULL, 10); + } else if (!strcmp(keys[j], "capturefile")) { + sdi = sr_dev_inst_new(mode, devcnt, SR_ST_ACTIVE, NULL, NULL, NULL); sdi->driver = &session_driver; if (devcnt == 0) /* first device, init the driver */ @@ -200,13 +205,19 @@ SR_API int sr_session_load(const char *filename) tmp_u64 = strtoull(val, NULL, 10); sdi->driver->config_set(SR_CONF_LIMIT_SAMPLES, g_variant_new_uint64(tmp_u64), sdi, NULL, NULL); - } else if (!strcmp(keys[j], "total probes")) { + } else if (!strcmp(keys[j], "hDiv")) { + tmp_u64 = strtoull(val, NULL, 10); + sdi->driver->config_set(SR_CONF_TIMEBASE, + g_variant_new_uint64(tmp_u64), sdi, NULL, NULL); + } else if (!strcmp(keys[j], "total probes")) { total_probes = strtoull(val, NULL, 10); sdi->driver->config_set(SR_CONF_CAPTURE_NUM_PROBES, g_variant_new_uint64(total_probes), sdi, NULL, NULL); + channel_type = (mode == DSO) ? SR_CHANNEL_DSO : + (mode == ANALOG) ? SR_CHANNEL_ANALOG : SR_CHANNEL_LOGIC; for (p = 0; p < total_probes; p++) { snprintf(probename, SR_MAX_PROBENAME_LEN, "%" PRIu64, p); - if (!(probe = sr_channel_new(p, SR_CHANNEL_LOGIC, FALSE, + if (!(probe = sr_channel_new(p, channel_type, FALSE, probename))) return SR_ERR; sdi->channels = g_slist_append(sdi->channels, probe); @@ -222,7 +233,79 @@ SR_API int sr_session_load(const char *filename) } else if (!strncmp(keys[j], "trigger", 7)) { probenum = strtoul(keys[j]+7, NULL, 10); sr_dev_trigger_set(sdi, probenum, val); - } + } else if (!strncmp(keys[j], "enable", 6)) { + probenum = strtoul(keys[j]+6, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_EN_CH, + g_variant_new_boolean(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "coupling", 8)) { + probenum = strtoul(keys[j]+8, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_COUPLING, + g_variant_new_byte(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "vDiv", 4)) { + probenum = strtoul(keys[j]+4, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_VDIV, + g_variant_new_uint64(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "vFactor", 7)) { + probenum = strtoul(keys[j]+7, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_FACTOR, + g_variant_new_uint64(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "vPos", 4)) { + probenum = strtoul(keys[j]+4, NULL, 10); + tmp_double = strtod(val, NULL); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_VPOS, + g_variant_new_double(tmp_double), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "period", 6)) { + probenum = strtoul(keys[j]+6, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_STATUS_PERIOD, + g_variant_new_uint64(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "pcnt", 4)) { + probenum = strtoul(keys[j]+4, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_STATUS_PCNT, + g_variant_new_uint64(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "max", 3)) { + probenum = strtoul(keys[j]+3, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_STATUS_MAX, + g_variant_new_uint64(tmp_u64), sdi, probe, NULL); + } + } else if (!strncmp(keys[j], "min", 3)) { + probenum = strtoul(keys[j]+3, NULL, 10); + tmp_u64 = strtoull(val, NULL, 10); + if (probenum < g_slist_length(sdi->channels)) { + probe = g_slist_nth(sdi->channels, probenum)->data; + sdi->driver->config_set(SR_CONF_STATUS_MIN, + g_variant_new_uint64(tmp_u64), sdi, probe, NULL); + } + } } g_strfreev(keys); } @@ -257,8 +340,9 @@ SR_API int sr_session_save(const char *filename, const struct sr_dev_inst *sdi, struct zip *zipfile; struct zip_source *versrc, *metasrc, *logicsrc; int tmpfile, ret, probecnt; - uint64_t samplerate; + uint64_t samplerate, timeBase, tmp_u64; char rawname[16], metafile[32], *s; + struct sr_status status; if (!filename) { sr_err("%s: filename was NULL", __func__); @@ -271,42 +355,68 @@ SR_API int sr_session_save(const char *filename, const struct sr_dev_inst *sdi, return SR_ERR; /* init "metadata" */ - strcpy(metafile, "DSLogic-meta-XXXXXX"); + strcpy(metafile, "DSView-meta-XXXXXX"); if ((tmpfile = g_mkstemp(metafile)) == -1) return SR_ERR; close(tmpfile); meta = g_fopen(metafile, "wb"); fprintf(meta, "[version]\n"); - fprintf(meta, "DSLogic version = %s\n", PACKAGE_VERSION); + fprintf(meta, "DSView version = %s\n", PACKAGE_VERSION); /* metadata */ fprintf(meta, "[header]\n"); - if (sdi->driver) + if (sdi->driver) { fprintf(meta, "driver = %s\n", sdi->driver->name); + fprintf(meta, "device mode = %d\n", sdi->mode); + } /* metadata */ fprintf(meta, "capturefile = data\n"); fprintf(meta, "unitsize = %d\n", unitsize); fprintf(meta, "total samples = %d\n", units); fprintf(meta, "total probes = %d\n", g_slist_length(sdi->channels)); - if (sr_dev_has_option(sdi, SR_CONF_SAMPLERATE)) { - if (sr_config_get(sdi->driver, sdi, NULL, NULL, SR_CONF_SAMPLERATE, - &gvar) == SR_OK) { - samplerate = g_variant_get_uint64(gvar); - s = sr_samplerate_string(samplerate); - fprintf(meta, "samplerate = %s\n", s); - g_free(s); - g_variant_unref(gvar); - } + if (sr_config_get(sdi->driver, sdi, NULL, NULL, SR_CONF_SAMPLERATE, + &gvar) == SR_OK) { + samplerate = g_variant_get_uint64(gvar); + s = sr_samplerate_string(samplerate); + fprintf(meta, "samplerate = %s\n", s); + g_free(s); + g_variant_unref(gvar); + } + if (sdi->mode == DSO && + sr_config_get(sdi->driver, sdi, NULL, NULL, SR_CONF_TIMEBASE, &gvar) == SR_OK) { + timeBase = g_variant_get_uint64(gvar); + fprintf(meta, "hDiv = %d\n", timeBase); + g_variant_unref(gvar); } probecnt = 1; for (l = sdi->channels; l; l = l->next) { probe = l->data; - if (probe->enabled) { + if (probe->enabled || sdi->mode == DSO) { if (probe->name) fprintf(meta, "probe%d = %s\n", probe->index, probe->name); if (probe->trigger) fprintf(meta, " trigger%d = %s\n", probe->index, probe->trigger); + if (sdi->mode == DSO) { + fprintf(meta, " enable%d = %d\n", probe->index, probe->enabled); + fprintf(meta, " coupling%d = %d\n", probe->index, probe->coupling); + fprintf(meta, " vDiv%d = %d\n", probe->index, probe->vdiv); + fprintf(meta, " vFactor%d = %d\n", probe->index, probe->vfactor); + fprintf(meta, " vPos%d = %lf\n", probe->index, probe->vpos); + if (sr_status_get(sdi, &status, 0, 0) == SR_OK) { + if (probe->index == 0) { + fprintf(meta, " period%d = %d\n", probe->index, status.ch0_period); + fprintf(meta, " pcnt%d = %d\n", probe->index, status.ch0_pcnt); + fprintf(meta, " max%d = %d\n", probe->index, status.ch0_max); + fprintf(meta, " min%d = %d\n", probe->index, status.ch0_min); + } else { + fprintf(meta, " period%d = %d\n", probe->index, status.ch1_period); + fprintf(meta, " pcnt%d = %d\n", probe->index, status.ch1_pcnt); + fprintf(meta, " max%d = %d\n", probe->index, status.ch1_max); + fprintf(meta, " min%d = %d\n", probe->index, status.ch1_min); + } + } + } probecnt++; } } From cc6c663a969c1598838e1fbbc18898ec9e1f9c3f Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Wed, 11 Nov 2015 21:22:03 +0800 Subject: [PATCH 18/25] Fix trigger time delay @ osc mode --- DSView/pv/data/dsosnapshot.cpp | 11 +++++++---- DSView/pv/data/dsosnapshot.h | 2 +- DSView/pv/view/dsosignal.cpp | 15 ++++++++++----- DSView/pv/view/trace.cpp | 2 +- libsigrok4DSL/hardware/DSL/dscope.c | 8 ++++++-- libsigrok4DSL/hardware/DSL/dslogic.c | 4 +++- libsigrok4DSL/libsigrok.h | 4 ++++ 7 files changed, 32 insertions(+), 14 deletions(-) diff --git a/DSView/pv/data/dsosnapshot.cpp b/DSView/pv/data/dsosnapshot.cpp index 8cb95f6e..4e0e1b26 100644 --- a/DSView/pv/data/dsosnapshot.cpp +++ b/DSView/pv/data/dsosnapshot.cpp @@ -75,14 +75,14 @@ void DsoSnapshot::append_payload(const sr_datafeed_dso &dso) // Generate the first mip-map from the data if (_envelope_en) - append_payload_to_envelope_levels(); + append_payload_to_envelope_levels(dso.samplerate_tog); } } void DsoSnapshot::enable_envelope(bool enable) { if (!_envelope_done && enable) - append_payload_to_envelope_levels(); + append_payload_to_envelope_levels(true); _envelope_en = enable; } @@ -146,14 +146,17 @@ void DsoSnapshot::reallocate_envelope(Envelope &e) } } -void DsoSnapshot::append_payload_to_envelope_levels() +void DsoSnapshot::append_payload_to_envelope_levels(bool header) { for (unsigned int i = 0; i < _channel_num; i++) { Envelope &e0 = _envelope_levels[i][0]; uint64_t prev_length; EnvelopeSample *dest_ptr; - prev_length = e0.length; + if (header) + prev_length = 0; + else + prev_length = e0.length; e0.length = _sample_count / EnvelopeScaleFactor; if (e0.length == 0) diff --git a/DSView/pv/data/dsosnapshot.h b/DSView/pv/data/dsosnapshot.h index 06474564..eb3788bc 100644 --- a/DSView/pv/data/dsosnapshot.h +++ b/DSView/pv/data/dsosnapshot.h @@ -90,7 +90,7 @@ public: private: void reallocate_envelope(Envelope &l); - void append_payload_to_envelope_levels(); + void append_payload_to_envelope_levels(bool header); private: struct Envelope _envelope_levels[2*DS_MAX_DSO_PROBES_NUM][ScaleStepCount]; diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index b6118c64..11dff4d3 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -409,10 +409,10 @@ bool DsoSignal::go_hDialNext(bool setted) return true; } if (!setted) { - const double scale = _hDial->get_value() * std::pow(10.0, -9.0) * DS_CONF_DSO_HDIVS / get_view_rect().width(); - _view->set_scale_offset(scale, _view->offset()); - _dev_inst->set_config(_probe, NULL, SR_CONF_TIMEBASE, - g_variant_new_uint64(_hDial->get_value())); + const double scale = _hDial->get_value() * std::pow(10.0, -9.0) * DS_CONF_DSO_HDIVS / get_view_rect().width(); + _view->set_scale_offset(scale, _view->offset()); + _dev_inst->set_config(_probe, NULL, SR_CONF_TIMEBASE, + g_variant_new_uint64(_hDial->get_value())); } return true; } else { @@ -927,7 +927,6 @@ void DsoSignal::paint_trace(QPainter &p, QColor trace_colour = _colour; trace_colour.setAlpha(150); p.setPen(trace_colour); - //p.setPen(QPen(_colour, 3, Qt::SolidLine)); QPointF *points = new QPointF[sample_count]; QPointF *point = points; @@ -955,6 +954,8 @@ void DsoSignal::paint_trace(QPainter &p, } p.drawPolyline(points, point - points); + p.eraseRect(get_view_rect().right(), get_view_rect().top(), + _view->viewport()->width() - get_view_rect().width(), get_view_rect().height()); //delete[] samples; delete[] points; @@ -1422,6 +1423,10 @@ bool DsoSignal::measure(const QPointF &p) if (!enabled()) return false; + const QRectF window = get_view_rect(); + if (!window.contains(p)) + return false; + const deque< boost::shared_ptr > &snapshots = _data->get_snapshots(); if (snapshots.empty()) diff --git a/DSView/pv/view/trace.cpp b/DSView/pv/view/trace.cpp index f6304741..92b4f210 100644 --- a/DSView/pv/view/trace.cpp +++ b/DSView/pv/view/trace.cpp @@ -42,7 +42,7 @@ const QColor Trace::dsYellow = QColor(238, 178, 17, 255); const QColor Trace::dsRed = QColor(213, 15, 37, 255); const QColor Trace::dsGreen = QColor(0, 153, 37, 200); const QColor Trace::dsGray = QColor(0x88, 0x8A, 0x85, 60); -const QColor Trace::dsFore = QColor(0xff, 0xff, 0xff, 100); +const QColor Trace::dsFore = QColor(0xff, 0xff, 0xff, 60); const QColor Trace::dsBack = QColor(0x16, 0x18, 0x23, 180); const QColor Trace::dsDisable = QColor(0x88, 0x8A, 0x85, 200); const QColor Trace::dsActive = QColor(17, 133, 209, 255); diff --git a/libsigrok4DSL/hardware/DSL/dscope.c b/libsigrok4DSL/hardware/DSL/dscope.c index 7d3fa6e8..3d7971d0 100644 --- a/libsigrok4DSL/hardware/DSL/dscope.c +++ b/libsigrok4DSL/hardware/DSL/dscope.c @@ -1938,7 +1938,8 @@ static void receive_transfer(struct libusb_transfer *transfer) mstatus.ch1_pcnt = *((const uint32_t*)cur_buf + mstatus_offset/2 + 14/2); mstatus.vlen = *((const uint32_t*)cur_buf + mstatus_offset/2 + 16/2) & 0x7fffffff; mstatus.stream_mode = *((const uint32_t*)cur_buf + mstatus_offset/2 + 16/2) & 0x80000000; - mstatus.sample_divider = *((const uint32_t*)cur_buf + mstatus_offset/2 + 18/2); + mstatus.sample_divider = *((const uint32_t*)cur_buf + mstatus_offset/2 + 18/2) & 0x7fffffff; + mstatus.sample_divider_tog = *((const uint32_t*)cur_buf + mstatus_offset/2 + 18/2) & 0x80000000; mstatus.zeroing = (*((const uint16_t*)cur_buf + mstatus_offset + 128) & 0x8000) != 0; mstatus.ch0_vpos_mid = *((const uint16_t*)cur_buf + mstatus_offset + 128) & 0x7fff; mstatus.ch0_voff_mid = *((const uint16_t*)cur_buf + mstatus_offset + 129); @@ -1972,8 +1973,10 @@ static void receive_transfer(struct libusb_transfer *transfer) dso.mq = SR_MQ_VOLTAGE; dso.unit = SR_UNIT_VOLT; dso.mqflags = SR_MQFLAG_AC; + dso.samplerate_tog = mstatus.sample_divider_tog; dso.data = cur_buf + trigger_offset_bytes; } else { + packet.type = SR_DF_ABANDON; mstatus_valid = FALSE; } } else { @@ -2028,7 +2031,8 @@ static void receive_transfer(struct libusb_transfer *transfer) } /* send data to session bus */ - sr_session_send(devc->cb_data, &packet); + if (packet.type != SR_DF_ABANDON) + sr_session_send(devc->cb_data, &packet); } devc->num_samples += cur_sample_count; diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index d87e870e..1b2b6ccb 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -2202,7 +2202,8 @@ static void receive_transfer(struct libusb_transfer *transfer) mstatus.ch1_pcnt = *((const uint32_t*)cur_buf + mstatus_offset/2 + 14/2); mstatus.vlen = *((const uint32_t*)cur_buf + mstatus_offset/2 + 16/2) & 0x7fffffff; mstatus.stream_mode = *((const uint32_t*)cur_buf + mstatus_offset/2 + 16/2) & 0x80000000; - mstatus.sample_divider = *((const uint32_t*)cur_buf + mstatus_offset/2 + 18/2); + mstatus.sample_divider = *((const uint32_t*)cur_buf + mstatus_offset/2 + 18/2) & 0x7fffffff; + mstatus.sample_divider_tog = *((const uint32_t*)cur_buf + mstatus_offset/2 + 18/2) & 0x80000000; mstatus.zeroing = (*((const uint16_t*)cur_buf + mstatus_offset + 128) & 0x8000) != 0; mstatus.ch0_adc_off = *((const uint8_t*)cur_buf + mstatus_offset*2 + 131*2); mstatus.ch0_adc_sign = *((const uint8_t*)cur_buf + mstatus_offset*2 + 131*2+1); @@ -2229,6 +2230,7 @@ static void receive_transfer(struct libusb_transfer *transfer) dso.mq = SR_MQ_VOLTAGE; dso.unit = SR_UNIT_VOLT; dso.mqflags = SR_MQFLAG_AC; + dso.samplerate_tog = mstatus.sample_divider_tog; dso.data = cur_buf + trigger_offset_bytes; } else { devc->mstatus_valid = FALSE; diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index 477d3646..4062a61a 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -176,6 +176,7 @@ enum { SR_DF_ANALOG, SR_DF_FRAME_BEGIN, SR_DF_FRAME_END, + SR_DF_ABANDON, }; /** Values for sr_datafeed_analog.mq. */ @@ -322,6 +323,8 @@ struct sr_datafeed_dso { int unit; /** Bitmap with extra information about the MQ. */ uint64_t mqflags; + /** samplerate different from last packet */ + gboolean samplerate_tog; /** The analog value(s). The data is interleaved according to * the probes list. */ void *data; @@ -624,6 +627,7 @@ struct sr_status { uint32_t vlen; gboolean stream_mode; uint32_t sample_divider; + gboolean sample_divider_tog; gboolean zeroing; uint16_t ch0_vpos_mid; From c4a6870be6c999ac105c16a3546c9fb7b6b617e2 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Wed, 2 Dec 2015 20:31:38 +0800 Subject: [PATCH 19/25] Fix RLE trigger issue @LA mode --- DSView/pv/toolbars/samplingbar.cpp | 102 ++++++++++++++------------- DSView/res/DSCope.bin | Bin 340884 -> 340884 bytes DSView/res/DSLogic33.bin | Bin 340884 -> 340884 bytes DSView/res/DSLogic50.bin | Bin 340884 -> 340884 bytes DSView/res/DSLogicPro.bin | Bin 340884 -> 340884 bytes libsigrok4DSL/hardware/DSL/dslogic.c | 31 ++++++-- 6 files changed, 79 insertions(+), 54 deletions(-) diff --git a/DSView/pv/toolbars/samplingbar.cpp b/DSView/pv/toolbars/samplingbar.cpp index e252e555..fe05e001 100644 --- a/DSView/pv/toolbars/samplingbar.cpp +++ b/DSView/pv/toolbars/samplingbar.cpp @@ -225,6 +225,7 @@ void SamplingBar::on_configure() if (ret == QDialog::Accepted) { device_updated(); update_sample_rate_selector(); + commit_sample_rate(); } GVariant* gvar = dev_inst->get_config(NULL, NULL, SR_CONF_ZERO); @@ -294,7 +295,7 @@ void SamplingBar::update_record_length() disconnect(&_sample_count, SIGNAL(currentIndexChanged(int)), this, SLOT(on_samplecount_sel(int))); - update_sample_count_selector_value(); + update_sample_count_selector(); connect(&_sample_count, SIGNAL(currentIndexChanged(int)), this, SLOT(on_samplecount_sel(int))); @@ -305,7 +306,7 @@ void SamplingBar::update_sample_rate() disconnect(&_sample_rate, SIGNAL(currentIndexChanged(int)), this, SLOT(on_samplerate_sel(int))); - update_sample_rate_selector_value(); + update_sample_rate_selector(); connect(&_sample_rate, SIGNAL(currentIndexChanged(int)), this, SLOT(on_samplerate_sel(int))); @@ -452,7 +453,7 @@ void SamplingBar::update_sample_rate_selector_value() break; } } - + update_scale(); _updating_sample_rate = false; } @@ -511,27 +512,27 @@ void SamplingBar::on_samplecount_sel(int index) g_variant_new_uint64(sample_count)); - GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); - if (gvar != NULL) { - stream_mode = g_variant_get_boolean(gvar); - g_variant_unref(gvar); - } - gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); - if (gvar != NULL) { - max_sample_count = g_variant_get_uint64(gvar); - g_variant_unref(gvar); - } - if (!stream_mode) { - if (sample_count > max_sample_count) { - _devInst->set_config(NULL, NULL, - SR_CONF_RLE, - g_variant_new_boolean(true)); - } else { - _devInst->set_config(NULL, NULL, - SR_CONF_RLE, - g_variant_new_boolean(false)); - } - } +// GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); +// if (gvar != NULL) { +// stream_mode = g_variant_get_boolean(gvar); +// g_variant_unref(gvar); +// } +// gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); +// if (gvar != NULL) { +// max_sample_count = g_variant_get_uint64(gvar); +// g_variant_unref(gvar); +// } +// if (!stream_mode) { +// if (sample_count > max_sample_count) { +// _devInst->set_config(NULL, NULL, +// SR_CONF_RLE, +// g_variant_new_boolean(true)); +// } else { +// _devInst->set_config(NULL, NULL, +// SR_CONF_RLE, +// g_variant_new_boolean(false)); +// } +// } sample_count_changed(); update_scale(); @@ -562,32 +563,32 @@ void SamplingBar::on_samplerate_sel(int index) SR_CONF_SAMPLERATE, g_variant_new_uint64(sample_rate)); - GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); - if (gvar != NULL) { - stream_mode = g_variant_get_boolean(gvar); - g_variant_unref(gvar); - } - gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); - if (gvar != NULL) { - sample_count = g_variant_get_uint64(gvar); - g_variant_unref(gvar); - } - gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); - if (gvar != NULL) { - max_sample_count = g_variant_get_uint64(gvar); - g_variant_unref(gvar); - } - if (!stream_mode) { - if (sample_count > max_sample_count) { - _devInst->set_config(NULL, NULL, - SR_CONF_RLE, - g_variant_new_boolean(true)); - } else { - _devInst->set_config(NULL, NULL, - SR_CONF_RLE, - g_variant_new_boolean(false)); - } - } +// GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); +// if (gvar != NULL) { +// stream_mode = g_variant_get_boolean(gvar); +// g_variant_unref(gvar); +// } +// gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); +// if (gvar != NULL) { +// sample_count = g_variant_get_uint64(gvar); +// g_variant_unref(gvar); +// } +// gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); +// if (gvar != NULL) { +// max_sample_count = g_variant_get_uint64(gvar); +// g_variant_unref(gvar); +// } +// if (!stream_mode) { +// if (sample_count > max_sample_count) { +// _devInst->set_config(NULL, NULL, +// SR_CONF_RLE, +// g_variant_new_boolean(true)); +// } else { +// _devInst->set_config(NULL, NULL, +// SR_CONF_RLE, +// g_variant_new_boolean(false)); +// } +// } update_scale(); } @@ -664,6 +665,7 @@ void SamplingBar::update_sample_count_selector_value() _updating_sample_count = false; sample_count_changed(); + update_scale(); } void SamplingBar::commit_sample_count() diff --git a/DSView/res/DSCope.bin b/DSView/res/DSCope.bin index 6b7e21248a877696379281d55b9bd9c82ded63d1..3ee9ab04c8c3b38189979375dbe11080314841ce 100644 GIT binary patch literal 340884 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 nHy&poHq5W15=8G@k~Bg|kp z^RRlB$JS3}nz-GthAwXI?HGCg3WlfO>KjJ zX*klaVfhmFPEAPxZ9Q{PfNR<h&lrqxiAVjG>=#RvQVUJ3E^d zB`VE%%$FhdNz8;3vm~RoY4V&ims&J(V=6Xjx*4keytI5hN>Lfkr0va0?klx9ixFRu z;{@R{$?M7$Q=Yx&V!uoVW(W@kw&9hN!3zEgWY;uidz`dF^eN z-u4s}{LGh^%fA){Xk&ipLs0P7Jq4R+f+~%#el<;%mp~L;ym)IP>8KfgP_TRL(%atm zfwR}%b?M@th=O-rde05iK4pJ8yS2e_8z=t1OD{Kn1qJ`}&*b^v+<#*8FD|?Wx}o}g zm)@o{o)6Uegp`eYKDgf+&T{z+zpz~X6@33!6nEp7mdimx3d@aKPbJ%zcCT&ku?Tnu zUaa7K@7sEc+Pi2>M;*N7Ett11SK`!rmyejeuRiq3Zu$N@ zmM{6Pi(mbPSMI&<#@n{f-1wB%QI{XstuB4;!e42%WV!r}6V$=?KmqGrH=*FGd|CRd|L^zpYnsU!t^EOeZ+a8wr!JSDSk^!B!Ji20Qa`@p z#PVy)rLr~n;L%g?PoI9LJeZ7}tSeCuT{^Z;5D_1`AN3F*lfNEukC zEoGLZfjvA?6oeAleZ^FLKtuqB0LeG_t}x3GQsENCgrrl7(65%*G_f$<*;FyY2|vt7 zD25c#kg^4sO|e!3K_sDyQ0J?-1*waj(UN3dS<++hM?78tJgv%ROa8P8i{T1+LQupH z3{q$+s81sa_R6oswT7IHlmn5A86nrS_34Vp*Mcw`n}X)x27xQnpTF6NDcE;uwv zSoE?aq91_)XjmWtgE4}C*4A}AjsqzWG6j_<2MubWEdz^DbYQJwz%0I@kl!-Tgp7ga zXzC4l(Euu9E`%g3p4Ako6=4RDbm~EnH*21$vIqe*Xw#q>Y?&UgD3LivRnA4m8K-cG z(j_LK4-|!T9llYZOJ#E-8C2}bE5^fC4JJTFJ8}jUP`wyzGM#pr<~@828~BNd)PHArH?%m4 zS8VIly0RVC!>QgA_@h-g)0&BegP2p!t7R-7PZDPv@dAMPSrpeb6J4W*`+1CYaKV{0 z?u>98lQa%Gr7CKRxt;N4 zQ6YciRsfzgfdv`9{I zcZh&ai3w~p$&xCac9rWUGS7WB4vISEL(;cQBXqF`v zplNFOP)z-xE0NXEi14E_Ny<5CyTK^+WZ{g?C-u&l5w!^2o*S->=|-g85H%TF(wOU{9PibUApfe9^@e|MTQq2C7$qAjV`n=iTau2D zYC&j4Cv`M;B8ixiW@X#Bg{m2*P~Xq6+qG<^WHb|Y<* zH+j9tcB(66Gup3pcDD^dPX~L~VB%&8P@tji}%e4kI3Bh>6 zn68+!IX&~t;P{=So$N?iCV_WOgCJ5MrID*F=W+X_ZkxpjqVChFwrH{SMg6L6IAPyN(nvb7}Ro849*0DGVyX!xdSASuv z+co!^Zu#orpLgxK%}4HME=4+qlJ*W$AWcl|ncUtbkwAeGRH{7%qVaIvy&VcpFD-va zPAdwcZFUvb)n)xo)s?xvkv!Fj1W|A@qw(GUg*s@){z}k{-HRIIKKxr{;hOxud#;ub zxQ`b1quY9ojsQS;_K>Jmv_+CxF6g}#B3D5n?oXNTNQ-eM8=#Lt9 zmtKsfy}5E5z6t1^x4NAE4n8F50h+DZ}L9m`7-2u?%YZ; z-Vc#wxwLv3&T{={(jgWn*4ms37w9`f#j*kEGODrs=>TFHOMd;QgKYir?N9tLgJ4!% zo;VXCWE+739~|^KD+l+` z^*2S4hC{~m6fCKl0}4)`{)QBs<9)hyy>kzktsvF&UMi(myy7SY?g96}*Ho%y{&i#i z$Nx2V58R*rPjsI@`PrXL9)IrHKWol3fAMGc=G;OfKE5Q-=3kWHO3@WxIH?ICh2OB@lWhu&Oc;O8^Z;``9s zpUTnhr??J}f=|14hHoB=OG>Gu)DF4QbnTRh{jML?Dnws%$?>fs`#!D%TUnTN-g~T` zv>U#G;1zBscv+6SH<2$*>WerM(Vip$@ye8|7MU6=Cxb{*j1fsuBV`mbr@h)pqg4rp z&M>fJ*pLY|_4tnPDd3jU3Ze%lF_05=IR@k7wjw??Wwb6awG24zH0F`KWBqg(V@IiA3omXg)R!&@;GX>K#SE*@HSEfoT+PYxM z*2Fw|E>NLQ-tr`e89SL~ zmeZG_xFWtHBZG48P=~$chm?+IG$bVvM5juM6|1(RX3lt!HbD`Q-lvvyB~Ln%(DBHz z33;fLND6SJ#tVxie{9xzsG){fMIWY~L=fez8c&8muaaad?qsx@tia#MMsWzGYagR` zLCKp@)wd!;2Bg7avGV9-H6dM7(CX8Xu>(uKv?=CnsB;m<*3zEO6BcF2KXWNNh#|!h z+lhBzbU>Wi8m?^WX| zyEV2|xl?ha5sM9rk0wp2X{o=k$mJ-+z%)**w5s8BO6?+CJ69LpRxR~iQFqxCI-O;c zwI`hgl>2Dz5>-4+C04N<^9Y#MIZHk!%d?5GtP^)~X7ZwBKH+lE&mP8~ZC#WQ24ti19jCAuKS?RYeq{1m1Q zEmcjUG+Ajz*5DO$^3;M@;pGq9H=Y^-94c{=W5}E{#0@#N;pYU=e~7w@abZ?-b)oX%tvqu7S$Ec zBx)+og*N>05|A`4JF+v_IY@LSmE&+RnisXwA+a+LolfDam<=OIS21*Q8Q)h-t+jK2 z8SjD;BD1S$72qYXbGSeQg4zuwUjv6RH47)`o_UL z3hFJO5FRE&Q*48sikuQ>nNlU9C%%9#i=Uu^%Q4N>kBb=f2<8Dek1gdT4n?6Qq|7Z9 z#i%Q1V~@Ytm)5UvmekpMg8S^*wf|abU%P8~bHxnrlUti)17PdTU}-{-G0iGvE&tK!tn_h1CAxKlM+XU=b%Yp?$ubM5EG0*u_m*oH4N-7IDtH(z_YOWb~ zoC347_OJh16a}iNhd{wI>zMl#a8?kj_Zv{KYp(sopPFmG@JivNfda|QqC_SXTs0Tf zdt_Hne#UTvEat`J8t={3^fSyGc+DHUhiuwOf?P8G~` z+SrivRsW)3dz;zHCgc|og*hjze+`gl? z@X8**2lr#I-s)(RE$)Kw%{V~Zw^7}J+wu@M&j7K7rCM+bUKr{Z1YJNOKz}Q)o3wSt z8c(p*pS65}HRcQM!kWxl5>6R@Na9nxKCBcPc#a<%>B1l1mf#nXGplF7`^JxmU{T+f zGR%I52y!b-KYf?hDRy$Nz(Rq*hG$11E%*alqL5g&c<$w|LkP*5May z@GLT^wPwy(v}aGUN;WVgR&2myiWojpy-yhki-Ons(UMoS`dQ2|rPAO_BPSbvQ3e)JgZ+Z|#lnAG0d{1|(&w`@}F4nnd%}81FS_vAWEN(h&@`JF3JH>Ee z1zWS25UgxUNq&&XNrV!9A@69?OkKz)j_1QFU!fCRwb*8C6I&s*ujrj4tNXd1*QKj! zt0e|2`Kh_cPX`g>4)Nt!qic?Ak)U!aR;*Ycm8>Szf2`wGXoHxGB6{thnX!T9s2uke z%Fw}&R_V@315m}g`P@_ils;57MQaJ0(KE!CS=b5d8(<~LV8H&~YUzB>DPz+sjdBAG z*vi%>Zd5pxy9)~FcE?qx!@LD0U4l0`Lvw(6ORmz zyx+pxxgi;LHfh6=?4!0oh#M`(J<2Y#qqdnJdF@@sA(^Deo>ao@AZHo>0k}(!q)rzX@GeTxZ8{ek_ z;@s)QXJ{f*a(OVUj1)9N+*8}5j`=cIueAkyTXE$R4eadJNEXy22Z@gWQyJUq%o`q4?BKO5av)VKO zHWMLPR_;jYNghxRmh&7J8F;G>-KBoKhGF^4i8mf=>k$P5@pIamv5horFHCzD&3Rg9 zjW0Bq(plwQ>8zxA22seEx%;G;GW zsMFk|+eM=@+M&D^P`POF5D;6Zr@%a1yrUSzll*AOE0rOboy@M(v#euV=a>W3t*C|-sjI@vK6xWBr(g)nNSUfY*PN02 zd@*$z5nALl5-N$o+|_ip$;gDtW-y>@C&wJu(<^}`*Tiv1be}EqIm;td3=*W^v+-yAg1Ha^_(xs4v?LPT(=M5K9!SU9tmmve7r!1Klp z*ez2xh{tSX!CxTv5FUN-zoLL$IDR{u%tsWWq^=GaH(Gln#vAaMhL`&^-u9y(HRjSa zJGs4RxA)MMzy0#1OG@Vx02}e_SI^wC^0Tir<(J;L5dFW}buv?5yZOZB%U7RBvvu-) zAgEW4^0mSwvrBLL+O@|XlMHR=D6ot4*42T(_{uB79VjpkMZK2-g#z0OuGjaCt)@N?Lu?z3b-njbQb86rMk)MFxEU>j-{nedEG&FNB3&(GM8X|6U zxGv}RivLis?P3CwieG*8+>S)pFTQ+RY(R(v2Y`ZD8_@v;Oz-ai3VK;fTApBQfBml~ z8ze&HgD5~IX0((=MZb}KA!?g9S+MdWzI*!WLHDd3JtV_1D$LIVYBIzJavv zr_1Zb-?JlpPC9zl_O$&hF+UyMq=5T>%uX0$j=NLQ6VC15*$3im|IcR3=6|i+Uii`d zpNZT}RMR4_?IYFxTlW;TC#?_Zug5UlCnq02vB~!N&wcLT;4T|O?@GA6xWh>9*j>VU zXsJ!_uy%&V9`u?Zp^GQmua&RaBl~~(lmh8r7!;T#3Z%~f1u3qy1T^|XeZP9}>cN=| z2qpJWFy#34C=iY)xOMA`U%dF-Sz34RzH;es`{O^ZaEiQr<(0d=^w$UXS5QGXeDC4U zZ|`pJ$}d5D%MFfb?xQ-{_xE_6a}3hHM!sITL>Uj?6~|bF()YCc+lhjwpy1M_yM5GO zC+sPCP*zF6_fl{!@np@F(lV`zE?$s1B)TB8o^%1cX#>6>-HjNPXl3(P9EA8!@U2S<_jD zf5TOW3F~re*u*2?@Zj^q)tHxEpc6r&vS@Oi-bsPAjD2KaN5XtvOHZ1}$Vyq# zF4mC442;ynHSeR3rdJ}ZeEwJXEXd4Y!&rSM+|2&E23unJJ)B*s&iT!ZJVoogs>)ee zG7~cKo1>L=ZtjkpkKb4NYosD7x@g0ZbHQFl9x&TVl7n)Q8}WruXAnzYjouwSGi`pX zG_3Zy$Cz_Pw^tl>-^5KiDp??Ao#l>jTxC{~YQs;k=2w$wOzVimuvOd@H@+JQlePeY zNn?3{h{BP(gCpPwTM#npN1gNeq>Jv(9472hqda1+l%6*tS@adcq*PD>l_?}E$tb3N zuo#y@C`eWyfrbVwDXOfLavgDmRpP<&)>xnri{9WzBo|SAOmbyNqY$8S!3kHfSQGV% z-p?rlY_3YedNVhf)<)wh#lEE{)}&-EJCfvb?`md{)h}XYH)PawzASUA7|b9E&$1&u z>dN;qU2T!-EZ_*!rlg&#quW_r8_^;5|_jQZ}Wi7^cwM~;#20VS=Y4Qx|~>;n`dOlD-Jcr7i|P9EOX^5 zb0fwdfEm=+bJ^tV8FXSagqkF-Q5l&h#bQReAf9X`y&PF=4T>Ws`qE*BEX)x+${q*9 zDhwu#+p(LKogGhEFbbXvE9B{wcL->H;ZRbkea0DLi+VnGk(oYMN<9>)imh?#p|{R; z$8+A1o8XG0K<0uD%7X>B@u6Il$8Cq~%rl{a@UjpfVIz`24zJO+%+19bV)ikPl`+~8 z^u+h{;O9nY(39Vac9pK7^UX=TaG)~F9kO4=OU{+-QCE6!yfJ2-moBY@=<1;Kd+YG0 z>kPjNv=!LXz47evICVtMk}`h zA$k!un^^&+lkQk+knuEga8VCIptdz07dT{u$A@OO5trJ{%;T^cnM+kvQ#Ge<;;-@V zsJDU{Y}W_&^hR?&P-Jc-GhqpIHC`b!vzmbk)gG~XHXl!F-%-$DrSG}(V-b02b0Ufa zWMM0N&r`T)7#~?g#v`W92u67vIze2sU^>RcpN-KcO;v7quc1bs@pUqqJEf@kxy;eJ z8HebYx}Gq*y_mI*@wRGJ8wxk9bZH^XXOl(0XxkO~?<-_r_`Q~R3iF)#H5v0L@Qs80 z*%X<)ME_!1&PYMyvNO^HnYH275nu3{y%bcZdVDj1BRT$XHSc)0AG2RGua^a^k2SzO z5C}G}1e695-1B+g&eoad)e+0>$=QR)-rPs6=QTpJmYZGAk6KA8s-d>t`(Qcrb8e-@r6OOm0%IEzs$2 zlEUuA2ofe9c8LPXj^Fovf9nbqydy^7#@g0GmncyBx3`bl_{%3la5NJIG4nT3 z0DT}2-Ve)N{@*J6AAB!)S^d*{F;a@&PZ~_KQf8(p$zx@9_`Q*W?@c+>? z%iZ5C;?pf0$$pOmsV;_D{}}sVYtAt;@hGnAlrl+l4`%}!#nklSrNe)Gc=+VW83p#$ zzxBQUhIwh$APlqIeSbDmaxVqvX-_o{1+fmkF$IH$Jg?B85_C^r{dr_>$=uiVoZm0i z4>RQb)BVqC{@Qqb^e2p<6vUi#yiEK5n~;tf@88A$*`H&^yZ`yebn?>+ngNgI&mT;p z`H2JkmFwh7c5?aPjW_nUhu7pjxO)(#(j+A!Co)AHHLz3hgc4!Ts%UCNMgrwij{EcH z`EgpS1UN!LFBL_rLhxeQ#2atO{j*=a`r74#sOf$W1y6yZa8YodCVnRW^rT6Wy>{&~ zs1Z3!njQ*QNHVDqRR^Oz2`W~F;PtiJ)^(cQXG`{&!*D9n?|#QikvA7Feh()=CAb9} zI0Gp@|A$PQ5B{p{v_=5k3dgJ9!|6HH+lxGaGfdg8U32DQ$j+Y;lth8XO0;rD{vXcL zh=o?E@9^x_p|Msxh2KX3>I}c}Z!BT*3|qD(`1*DK(iTB0kYG zT07WhfX5CtbZ;^~6V2dpk12vR6s`ElJ_IWthocU}53&i%f^KWwA}DQPh!Cd)T=eE1 zIw1#hJCo0@>!+b5e8L5!Qjj?Df;^P$Ocp?aN}Qy3Pz71!&YV8wLkNAPz;AAji3pTn z>50=@2sXuCJHE>x>g&w(1q%RO8Rb>RzWEU%Q*+3Ui!VK0BhB*(cgMtSBN>vN>h zioVcmO4HJ9~ zk)YSc>mqaJP*^0HITwSkm6a=ng|6uxX5^I%b6N9lgWe%|X5}=vWnH_C^RDb#NOZiHo3eHizW&#+#=(YNilU;Ry+Atb-i|Mw2;|GX)jZDNvej%(qR= z6T(qrAvYJOF9v;_TFZDfc7{_=Rc?X2I913QLj%kYA4yF}9WBt!yvra|QVivd5V$jJ zp~w@eo{Bm1mn}qRd_o8riLsPD-U(YM+(ndFZfp~H6YYVJIaUXbegl-F*<72-ZFuig z2xPS%2N9qqM7uXT_G8pg7@iE)RUy9nme`M0E+qAF8_mqEi^8#j6|X8RX0xTMs-vzM zjjI(+D3D!fY&i~-ij#TT(5V%&E;h9Nbi5qRj+dF zWg4zHvQmuW?ipA@*fJuREoO_+v}Jr_vC1AY^ETWq)6^A-~~Isg|=zJu~o~NYeG}3r+U{fh>a!%O>7ydw3*Rxz_YeqAz zDHdzSAb31S&aF{raIWv%qF{2`ka;!PyD8_4Q}NKyD)^C?(-7I$Z!xDKqOZSU zW<92+6gsM3DFe`uSvhMoq_Av*l*pWg*>oI^>UDsZftnt#s}M@CDMDEkbz`|0>8uMI zRXx9tI=;SD;DBs6e^u~W`x&I>;YH;}c# z(M{&n7E_iR)?+fUnPl(9joqsAgc^~BC)9NRkX={IE5<*jaN(+trotmyO6fy`n-Ku{ ze@L>nX14cUdi4Mq{k9U++Hc8nS_^&cZ`j`9;ojZH06N*~f=4ZC(DYsacAm1*Tc$s4 zOlsRl_pe@k=4WCD8vml`d*t!`OA(tnGy2NUJhMHdS5QVdLsPo9Up?3b-%G(Y<3yMT zQecUKr?!C<1NmrHR}{Pm1-GD}yZ*2L_4j>W4B&S4jbHqPW{@cKdt2 z=Zih%1|zLnkMb;&(+7tqhp*ai$2H+e#=VV9L3GX&x@4ccr6jd#Hws@-Ke&5l-`@A} zt5-kwbD#S;jUfp1eY#~|`$^=Dt8&NuXWIF|!sW|76zoL`G$$|0G_N{PAR2z#`gH$HKi)(FK_KLzXApCyL$EKJ|_xJ<+l4N_!Aa@4KX~j5EZz8|{lE4(7k*=&{k8A>2P2<9ojLn8B0im8|CLqw-6)H{U|%rK zDn{CV=Yf4lGV?nR0@%k#vod{E_*i~-yS?MKcJbogOEP)D-qm%_bn&qu{P6JZAVpiE-~bA`PWUI= z!(09jKL5HFtZToAnBZ^OoqxH#{Vz|p)icq}?H0R1+}>Wk{O0-Q?Hm98-wSJd2Tp7! z&&z~>{Z{~qRHOjiglq45S4}iVPx%POygO_wY{_NiB>Iko zbqdld9>RB?1;sxD*@qas+4CV}@RJ)E3*e(0&2Q?KX!)j4??(~|-Tj_#cDJWqyYfZ1 zK28Gh<>4?t4LU9Fsn7kE^Qp%$m&%qTUrE0baKt%%&m>RFOrd(_T*T0aPF;Fo3zX_$ zms?+W9(VO-B1U5W8Ln^!NWKY=Pki+5xeuipD4q|NDD)t<-d}%OavmYZOv@OfTe9f= zfP8%}V`gYUD0<$!sLmov&M8hGGw5Q>R{boMLYGQ)2K8KV6a91(XjYPfn5KZ7aTkNE z?xr1Ew{@gDS03jeF3+urXXfeEzZrUZQV#?Fuz;9QH-yru-ElS^3M3aSQTZXA{*%W> zodL1IIm=y4fD))3K$$s(nsxCSss=|+Nl60C1oVUxR!S>(ICTN8pzDYN0-H}occ=TV z5~E#i5p^%b_9(WGd<<~9ry3=4i=&s%IcRsS=$zLO;{h$xGu% zLl)~n2jb`%<5e>Qo7zJx!)iwp%DPNO6RxrmLZ{f1Lfzppmwt){`5;hkT|`SnvE3TW zb%#uPwS`y-!V&m*=awE&RTa~X9x{Eby7Qb9$q~FuW^4gocI~4Lc-<@pCu?+bTj?Tg z@A90!ZN94^gm>{}A+%UtS=5>n@m@|Hf}p!e)bO-+Qlc%%kMwLMB7D!4BMqfCvr0UO z4N+Kc!CM@7ivw?Q;4Kck#eqMs94I?c7KSf%>>!nV2~!tJU1a^}?uc+a`h2?+dvHr`W_x}9DA=b>kGU=q$}-H}-rQDO%p zA%|(mz&gcaz*Pa+t^*_*+^$QePRImJy-AC&QwIrkFZ@v6!XB`xrxw@odD%6ykUBrf zB_E|1du-U$kIB)ln~%yem8GWcnjOEqCrNayS`V7%x9bFnipU8}frC~dr0_YW@=2y6 zJ;t_O?&2&*KO;r7$y8!~AOo;X3Z*7`xDCB&)qYl)=EFR)G;5_fob14R3;! z=p>}sU$GcGs~jm}_b&d3RrU}bVmiAtTF8%pFC*jpl8`80mpR=bl@bxs#QBA!fQZ?Ak>Y;jap%<7Un z)-r4+haI!EbxFG@H|wr!VSnRw1cmt(+b=H_wQ*xLn~77EQ$3y%*1qK7$Q|+Z!#h~B znXDROhB?!?SP;!dn+-b2xtVL3O)`Ep2(d1y2ABDBcYvS-dGhC7-x&@<&hSsTT2s&0>k1}|a9AYpDz z@C7&%j&`DAwZ9Ez2`;iYP@On?j-eT|y$=V1kqU`0tHIlVF$#H%yhjT4RZ;lqbXj-D zqmGHeG4oiIP6`iD3mt+i(+wFcYi)*AOZpb*Ll%)W>?*akd3Kc5>yoX3n3z*;E{n19 zvY)6?0C-zI>()4&JbEzNOeF*s$Gu}y=ZZ)zsVcmae*_dkdAaKazv^rB3)ohQdBl9g zd$}j)E`zGd9WBT6+F>IgH#Z)y;|lL=HZI+U=~woK0-a2c3{BFxcN^zxs;(WCVDcDF zR6bzMa$1oFk3>k-Q1g>uo1!Xa*jcC=f~Q92EmJW$R)ltrwrj$qFPg|`}S$!reS0?)38t! zoU^0Z5&T<|mHBo$4c3K_7qll&Y(JS6Ow6s(Vb>frTSB9Yu&}CLm1^Qt{c7W2ooN7R zm3PL%(0uM$c%jOGsLLJY2 z$A(#}W@K$_Ayh*)Ml*a`7b7>{lvP)*q=+!pL3E5`tk;}7g%&_Z+m4tt%sM!jHT|fxz9;S+#5{8q)5M;p=<*sh4tA?LUQKyPF0CQFVKVv1){wzm zCp5(8swRMEBoxP{j|}A|Vb!DSf`a(b66b8Vn?oDD5gwzXaty;GBE{=zI@noLOvJEh zI1a>EN)Y<0>u2?%WZkZ-dC11p9ID*~`d%J<&4M!97T*xiW~SM_8yH-2KEkTiMa}Jo zyJGDXnbdUhzY2=bqT#XCS1;^hMz0t$VAu_`dz<#EQf?b&`5w7$?F}55P1N>eM4tJz zt=)Vw%?fFnPkNu4Z(NO!w)-$8SIR(VL%q z@x@y&qEgE0L;rjt#_ZRB{l*RUfX)WD%!~Xrr}ZETr01wv0^v#HbGYOd{wF_r^U1qx zR!xDv{N+dX_kTQMY6UIlKHU@r5T^+r(HP+een7e3OF^qI=bt*)mo~}x4_TL}=3bTZ1X7T3ZPk#F5laGJ; zCw}5HpJ4{`i=;x-1f&0H{4+LIy651dho2Bf)9j)$R65(OD3F;*P%et5dPo%fwI~1D zlaJqe{MO-%w;#KY0-YGfPcxS)712&}Ocb2UJz5VBwF}iK?LzhQ+J&kg<{Q~d;{7~{ zXx{$(`?c2;vxx5xKZiyxbvcjoj;zepm~Z~8St$Pb72mPawn!mfA_4-+nK{i%ej$_lY5RBCKTZ^>y~|d-RJG#D{=g3mVcV~;n$(_;JjkAJVu|Lv|oM^^IFgL zWO0TuI=^dIHrxIUbc45Vu!qzsF+r7u-1NBlEM_qr z=MJifC2YWFA?nGbu!)SEi@uPs9M%D1SaOtu-=EZsB;1q8d7tz4p>RUJ*WaJUr-u)S z&id3QzdROc@a208yM-m2i(zSwF~v$gi46{n0g~A0h^gv(Gbk5@3fi5y!wTvn2x8T- zs4u~s9z;i4E3=S%)-)xJG4xy+Rf;H0Rvm#I_90%28}D7INICR@?#)qV^!vC5U`1%` zgb-2nDYCSb7Z#C;eo^POA~Gd+sq~bAwUS5=J)-19GKtT?)XuI-4e^0Hp*5OcQ#AP+ zTm{E2n=2h4r`{J>x&(^D%W5Z&JM0?Ba8}5A z2HDO!m|*3~Meayqd=es3LeZTz9m7&%av;YrkyLq<&UR7tL{12aL=UksLrgB-;GWyL zG_R)^QN#kvRq%rG9a!H8#VZitKwDN|SLMbL)y>^J&m56dIz6Nk@y51^<(_MG8{U9N zc)+T6hPA|V_cXsbuL}!Y0xbg!HkY=v@l=N_`qCp^B#YH(PPlTv}Xg#+Kra(yF?^?vUo?JHFy#qu+r18oqcB66)Z zAoMhd8Ip04tvrqdO*vROiL<^N0j$f;b^@cd0c80sLfk}G&ZZ)8O(PKoCMT#n}D{o zIp0s6vIBw`p9ibMOnTMOQ*d&zbbe4wrluH`i+HhNfwxA7chZLA<+>M%p&oj+pX{B)h-nXu3Ai+5A>4?yIex%1)i8>`X^`SXe$WSW-vZCF~#A$vrtM%%wj#GmP z0ndO|GPPQ)j*s)@tn6rrJt<}c!8|@GRQMV$${p`|xR(qjXLFhZj42VJ_5LVFRaceT zojQR+mI$Z_b<5du3D#WxopM)OP_)IEQ<;n%8ofCM5=0hR zTORj*lzD4C8xO`^=h|cT?BH!9EWpneY%_0V9#`<<0r>^DoOG0MOh<^B^td^bb~c;m z4()&lo=1oip0qQxjoDF8jKZsea}4nm&bbg&Hu`lTFjzfRFg{DGWJ@p$^As&4qS&3f zsfbCaK5VB@baU(>y#2}#-MG!+bukk+r;6*P2{n9gS0H?X$U2>#@*n@85KtG)GacB+;dwb<^z zTF}X7l^+uAb0-(I8gPH#L47js_Rl>hIZf$sBGXxNnXIDleD;!@zIQtM?37cXBI>U1 zc^>Z;(A&R>!4ObzuC}7FOAdv=%g9?u#vXv)&^eWAa;ThIDa?|-%_9(loj%ECvGnaeMjVt`ky!21_{cz^#_ zi&rjfuid?S^$Df5-Cq6eU7Bb&e|BhhgO?DtpLpNLFUf<^iCr7HwLLk!wSC|F1~i3K z@B4*k2DeOhSvolHR!T2ldij!g@yaFC!uJvdXZf@D_BW(}n&2ogBywYo^0o669NPU9 zJontgDR`~p>|?u}^pww$`P{|VUc2_%6R|So4be!c?BaGQ?r0tT_kR5E@JzhcJ@?%H zHtkaV1Zu;=y7+7Fk~a4#yom>d{L&$~t82Gj>n>foyoajreem4HuCwmKX-kU~1X0j2 zLy%Tp4-{OyxUXH!frnA>CLVzMONWjZ{n>fYvC^5>8GyBDICwknpfeY3>7G2#+w0`D z!`eCSGd$m=0nfnH&+l-$WKOc3`_0A~ZEp^HkdJ$i=bwe&!;5rAjS80vIKd_nL+0=y zucJM_B4U+DLpQk;Fv!vgE27?a^XDpZNcnu_-fQ1Q-hE=a=sb(%cuh$ZZH>x4TAMd)+4IXOVsV$y9 z1z1dO%1Fc$oj26G}d* z0X{5LbAAtlH;1IUd$a%jDeM|?{-DNuKklE7d-vW9XYbEHoqXO(^&4|w^^H*;hT$I; z@E_d&{EPZq%{)r7%z)px{&ix${X_Q1L&6^tg0%gx7+)u!Ka(K7GMB<7-s}H!b}2lZ zg3$**lRfwid+8w|507zQE_wg<4;9`%)F$)3&{Jm$m-4{<@UW1F`QIOZ;;rPHr|<1x z-j6c434aJYEaYMS4@u@fX>a!dj-3YT4}5(#eAh#R9~Sa3{|6`ZjXEDOJUl4w!$KbB z|K>Ete?9tz8$VUPIq=M9wd&p^)CHjqRfCJIc-3knd^OgDt}p|GlASk7b(wzBlx2h+F;-#<)Mm zUl@1)A5lrpNzxCbx_O}QH}Cn4(*NdD8pbHTl^FlA;Ko6WKN+#=wrN=6+X$)ds(VxH z?sb0KTV)*5XSj(W3jGfP?mtK_ zUoVr`b^Uq>f4ngNjiT-HWuz)X|Bdj!{o#I>q)TSlIo~qAogDDr&cyx#r}g$Lsc?h& z7r3YoDVjd_{RZ>TEunvkgpGG|dV~3ZtiDm- zoMn6l3%?;055#agUx%E19^5yT=2?tg597?^o3;%x2XlzHn_at?tTY;+AkafX>3E$z zsFyh;^i7zd3`1|XH*X~=>orNpSdb*>pU50Wl z46>Bpn)SoA)3Vq)V=5b(R;1wxR$69Vyr12)Vj&F`X$5A&?oER)!vKuJ&wAtJ1Vq0e zTdUg+QViDb22V=fAmEP$$|LN4UpE2D{2&N$g9`v5WG1EL`)EmPZG;kZ69Zw;ge&kn zlBO(hzU71A3Rk({6er-~+JS7LBo8*0bNI{MDbK9wO7jlRI)3*6K}{#+khI}9YutJw zsFft91l*aJ>gD?m9zs| zNP<-~Jolai7bEYma+LjX&dZw9|hA-p-I^Z3br=5wFBr)>Q$@vP(_!Nqd_ozFb5073R5 zk=lh0ePN!iAQd4M%xQsy+KQk$QkD3WMe; z;;b(2*_Z|6x!ya=Sy1JkJ`j6pi@Wpiv8gQq!TB{Yt7p9HK^3;+Vd*l8Kr0Sw8Pk zjX%yTO!{TPky|Sc zBU{5>7#z2FXP=MdhO^_QRNt}j4rIq4y@_Dx@r(*s@=j{kFlLdhhKJeI4rrJx*JpKt z7F<&OfJY^*S3B4Nhq6aIRWcn-*zTUQA*riL*6~j`Mc1#`s(iu;XKXrx)$^iE4N*tb z(FkINjS3fxWhdNrklKM-6MKSMXxOHRJ>P>i689rV6$)?4h7(>72%P6}4y3?CNF@+M z>=&@|Nd9;V$s7chWjzYi#HeJW5LO^nC7Ik{V}L6$M!J!KX85n~%(IYIOBx;oH&P6H zm`QRst|$|3H%J`Y4RE6;OCK8PZF3IPLt*=s{qI!Z_i>Wf-u|QPPcWRqGsGKGIB!aA zT5jpu4=^6%dejcT(@5~0?|f&mpN&5VDE#YD@THS7Ch>3z&ZjV>6cx7#I8T9g6@T>6 z!^7_c1`6zh{QlG-sFl}q|L}~Sd{X>+5NuDj|1SD(KmKtuu0x$Cu6-hgRsAWZN`Af$ z6e_HHQ+~(jaL=B!N8b5Pd#C+AD?y}Z{yX;hg!d2{PHacP;o--Dv^&9h3KHD|?+5cd z1!pNo3fQn>N5Sv!9YO;X{PGJQ`NeGB_>>m+r|CL|Q#0UZT|{($OlJNY+4XoH_zTIz z=Y=d}^LP^YU|!FDad4CJ({u_`iXYRL4EM*fU5YXf_b!$P=g!MMIr%)hv>$%p4mtrc ziDCN}_v2cCi+eA#THp+_KlrY%vaZBffB(`;FMaWg_Qm~S6~Kk<6DNmPFILrSuYKM= z|M^PW@d(})OGCC6pAybgCzFd858UCUAziJK!85J}7|eanSy%YQi!Yy^nk9GjTJ@UF z3nLvUOBBc-zT{6m6)CXSsOZmset%!*Wl)y4ov8HpP;kfYuukVH>tqrrSFIpAJbWj+ z_+R@;`Er6-q-cj?w?4~`=B#7D&7*pyDp7>lC>hp24QH4QIP4q$Bd2!jZ<`%J;R7kK z0WneV%&li41(V5lfA<*$DXkEVbWiV~=#gqKTF=~P;qfCu06l;+oO^5o?qJ3*9kNPX z!WUx>=n3N#Z}4`5WoP>P+&ia|{3b!9s*9VS#Rzx>Pd6rZ#N1hc{N=|_AH`FU-9`VJ zdxTRC(D_Y154n3{3KEuLZebMzP-Hn5bvk}(&wj8>rd{DL?(=icEjopOh5PXD5_7Q6C8 zCJjEujuF9=^y27DvI7%dT48-e3J!Z7T#V;}a+u?z3vjJ&lsLE@8?jgT)#VXq-B#rh zb}f~a_zb`-l`nELXG4NKtmq1N`1*u^$bv;bda9)5vD5}&dPDqnY5A^Fk_=lCltHIT zBfAU2rk}64T*{C2s#+?WJ5?G9IYgLFL2h9rY0wz6ke9$kUe1%_++9fX)^qoyKsrR$ z5BsDn=|MT!L*8+BrOz;S5DCE^;+5jWAmNl?N5|PMoLTR&b?ib2GgW;6={R<~bC&mV za)#BstBY*usl%z~V4b`$U;2=FqeOjx2h>$Y_l|OVE>8Cm_I|O8i7YIot**a(404-t8Xmyv2c?-%ds`&>_j9y0n4j9onzw?xXROv+LCre7#tx* z$1hVY>!hOi!XcPa2vVzzR{S{GDO%Gln0`P)#p2{r!Qo@FhGd+(?|d>B{gO-RI3o`6 zw0wQ6u74l2T#ME@s>;S!dRCxz#BPB{q4nO6$cV>W5_{Fb9b2*m$&%BQ%)4My&Lw6? zwDGi=Op##5<7QHhj>CA8`=!KAlHx>h@xT`|4dVC;_i-`Jn^{9E%P7Ef)GpZR!7Z}h z#Fq$I8nQ2ZYWYuABpV>ERZzg6Q(Lf$c}=C!-6XTOaZ#aU%zH*Hvc zA1LK?I`)o(s5=DOlCcg)11(lP`|bIo!W(C%`%zU**vv1V9N``>A);a{09u)KVab_- z5{03oU=RFFweUsHI`t7_G*l?ZXwTRXV^q#<=CpYLuWZ~?gg0_vIK{^OOf9wRLlL}{ z91Vs%Iqlh%kjiD8YBX_3(F^BBEuXNSF#sQyoHaNe!T7wJ=Ht+fOZLSp=HY1U85TG` z-t>zwolQq;hB4Xk&p6c$vr^-p9v9xvW<{8;**}#Uo^y`)tQ#*@>uyp{YS=j%9d9Jr zj@$aUUmPFvIxd!M_0YhXNq_8pUrk1BM{#?qc502yDN2ug&lp2XJ7X8ZWy_nT;bG0z zTs`8whEq6yjO|F^=yJARl)TXTB`<$%gTy%qlVzW+94;U$8;-T-O!m>HY1SSYyj<`a z%e>G125ujZddOXAixNGIAdo}{4H?aHO~p_-xi6P}=4y}h&xAG#4uFn4bJZK_ElspPM$(&xogGtE}i#JSM~;5jE!E865{s4YckcVXQYC)$5*eW zT?N=+rhL@w(VT6ve%S1XWxsaoqn|vy{o-T$_TpoPX^*}5*fsm~`eaWBbG}?6M6~SIB(^cWwmdIabdWvRhoJ z|JaMR&vnT47}vGOKP?L6zJ*4sHtiE!GG}+T6T2gk4L@D7pPW2?a%Xa9^2}AvFP6Ez zin+DdM~e8t4~|CKxle_8lq^;5@8zp~omc$#Qtxb`N6BA&ka>`Qyv ze-DW`?!$-79L>RvdBsD$WZ{$2>^H{Od3@y_%#Z~>X6z04S8k4eh}Q2*|KwQncItCAn7@3+12#&5ns72SDnlIp%g{$^iM zH2^yKE1DN!7I5*}%h!I{y?Su>?oUR^^YHMiN%9=Fjo7!tecG7W-~QXWnOHi;B~nz2e-^!H4r0-28x>~`0i`}DpFu}N&#|y3{Esd!S=R1(vBLk zy-qEY=zC??DS0w&`}*r!_7gahV7GVE_`(Nid1q3-FeAQhREOES58r+G$}9E?r=VSw z`^SDPA<)3}vF7kHWnP%BI2Qur>#Z5h*pf{zFf|GgpS&nF6okucs3LrO9k zabVvEyEN<-c!7;e1Vrkhh0#pO{1^7m(~v^+d_N3Q$9Nao-2)9SMy&Z3 zMBrt?zP_ryoyR@MI3ASx84l3_9@%d%^nZfn-2HLSQFl)nBahCIQ&AGz?_uy6%Ga@p ztpm4*43jyb4rCjAo5*Q(&=NK3t+T}(?g&hK4mH0T5=o=( zG3g=40W*f}ZhbQ8PM`O^&+cROxBisU8Y;(m)$!%`oHorb_s#^GY|>*V`Gc*~M$^u6 zS2lURn&t>|UcV`lsOue=`6yrHP%Yk^f%*~+&iu^lKAX2U(c8=;4!n8*bn-i6133;L z26fS`PEmwPKKSctKaI0ng02b6;SDFVi@y}jVLyfX)P`k#>gopXSTQ{=S>~sV9fDI@ z!)QhF_0jlx^)$pjHB*#RXSDS3K0hm33RbWB9AA=Wyidlx*ezkRp5&g_5!0iEreYWggB^xEoNnrQ-1Ff3=mm8v1@98q zZuQ-$!@aOp-au-CeYB?mC~(M3@fJh4V-SH$0RGSpYBlKjq;&AoX(O{3o{VUJ>-H80 z-r~Sp9C(WZZ*kzy7YEX}Qs3h#U%T?$7dM53_>tpVx8QT;_^bTtNn@!@hp z1H^(ZtC_XrLtu^tb^|1eL4WV?XLPlxi(+F`{y^ z#d`K6qNxX@R8oyJV#a!f9}x-XQN;*;QNlB3=>PtQc);v#mfy5F+E4#bv6&45Q7_Y>%iz?RU2S>AX5B62RxdO zi5OGRn{}=@a=B>nYHv1i>?G|pB?v~P7AX24gyxe?jwWT*GL?`f@>LYI$&O=c^s zk1eFHNwk4CMLF&!X!7;8oCgYV)U!1>CqIoBwGrM%rfDi4ppr{Jt#jnXanmo#I?!%> z6{g4as4ix{VQ1|X=D0(rk|_p`Cd#dv#j%Tqt*x17kQ7$?an2mf#P@K2QMhG+J1-jV znMdTLu%e#kO~oF^xTlV~CzN?0JzhY1>r)%q(QKpr#2J?FZAM7Jp5oQo`t|H+UU{D1 z%w?(!o5eGo7TF92jkPf47z+tx_#gqZY4qS`G8q?VHAx{-D7lVjUK{>0MBPyY{oDITja$e3>D2J}xsz5cAmOWV$ z!^0-16~TViV8Vil&(^f=V}1iHZPSRMvmBoQ52+bGPUBfWa*lV2a>it9aRLL|cRQxg zn*}qDM1lg(;dS2HX6l#V<(n48T3^o^=7W^urox{}*tiidQF5q#;k1Xjh7PUDahMSc6v|OZ}p2d-#{z zrV}4qY$Ik!7o&32z;ftD&WDYy(Xcn1%2tio+R^2lD96ZM)}kQGZ#gy zqj41k&Dv$ghtw}u?08-;nCD!Ybd7Uj6hwydj8+v(k3$cq4;9~xqpqC$JQyvI=EVm8 zC^GZ71*SqBGpuOd`m&jz2<`pU(MHCcz9)5cv%D{vp`V2D*cH>-P1-fn?qd!on@#F= zMJt$9`b$( zn(J#wWXcI(R}5?PX=RcUn9*!^;e&r`$v;LVamL{})aUT_r=L9eLwoYkN2O)SNl@=# za2|MMY)?LNef+7a%Rl_Xi-V8-@DDrpq8;3=x<6tvbRQ+sE5Aeg{S>olOb)E) zJcKL2#rFEguCE^X8D6RT0|kr4-~5}#+>|KzqY=>}1;6yEz3uqR<1er5@4tHGcdqdn}s!k6eG@g-e$n`O)UmleW6P-P`VMHh-|85SMkn*gM|w z75g9T%fI&yyM1Njf9z*exW6*KF}`tg`}=l7J4ioo|0T1R%u*LO|GxOAQlIRd+||^s z@?>I?naw9TgDp|ezgq15;14!UzkSSPsy^}@6AJ$D`uGvfm%I7G3$MRGOS-v#bGv_H zU$L){8x;J`=KuPg?P|5PFOPqH{OdPA^$T|6Q=eL`p10?3-dT=DH~;<_1*n+bjkAS% zzbm`WuXP$Y+-u5KoBy!j6|)N^h?gbNpb@CUaiZ|pdd z{B+;7u{WEx{V|2_y|(w7%rt{73Zg6C&@s1b7d1nu$<;^z6sQJnao!hmqN=ac)6_0J z@q%9X*$ zEaP%^4)7JwzYct_u`#_9?z+oLxgA3!vLF!uN&Mbk`G!s1$>!O>krBd<{y_Q$U zB`*XD2&su}A}Dr3C)`m2zQ1a4QbW z&4Z^0#Lvw+d(3${yjBs7RLxw72F#x?Ox?&x!IUFaE$5m{q;G`ZWRlhN!@Og;mes`L zpdMs)f@)k@UL4JEWk*>Rf6@=d-x_*Q1(>ZyC%~&Si7%~fjU% z1GTToEf_-gS)}39I~e86k(m0=knbfT4=pgY`i7Q2-K5$lc^BqExa5erwvMDA6}RUK zoR4EADIs+b;B-qDYy&soBBGNaycm(_K`z{ZT8p&=cLae#=%PO?Ed9VSPX3C?#{vsa zjjRv8^h@=DdvaQY9>3aFwN=zd!vnKIkuzj5-#Kxp*MQ(Qfd@#e&`%jjhx4k`S-=+40yCCc$DYYQYn^(+f+YP2-TA+NbZR$o(DPz^|Ze zf?f?k;W;eVYcwZk1zy>qp-VDV+uC>@@`_$LO%lHdoEO%p2@7Z8di>_QQ%ophwaEK% zN6GPSJq?A-%g$NThdHIAn6@ej&wCJfC96p$$Z0HPTDGw;v?E+jUxhe^YSL8=$px5+@HQFq z=5h@fy%k5J$|0g^!zYK4}={^I@F(stRLgw0km< za3%UQjKil%LQ#ZBudQc2M{_|4oJv7G*qOPk78bbc%6gw=y|+#Q3?-QA+Ie08MB%?g zjZ=+4YMvVer!M0)iKxXu6ecJoGW9ZRm$vR%U+Ism>?$HVVy(b&9M8>)P-+@nnxaEI zMYkQIc;(QvGK(6%{V~$Ar1Q!)%f8q+UhPL6lxNPPbJ-AeG;3;3V&-t}UW-Mi`J!xH zg+gtp>c#Omw05MCj8Rar3;H z;DZh)GUzxk9MX9FVR}>0ikpyc@`W=C0lH_5w*;(6!8G^E^VVDOL0mC5z^QIURnJH| zRMdI12}i`3HPUab79C2Stavr&yyYAf4GBo;1z(f3E9B$R;}4u#Rq=kny>yHR@vJY8 zYTp#NR}KwQh7wlgbnW}NK)6Fyn&HC?Sw1UQrDY7R*?38{_t|K{@NzpsOMGb>YF;c_ zsDFEAGx$h)HCJY?9re?4;T_c-Vdkr@Vrv7M8E>tOh8J^oe1~}}QA(Eh^2Md<7{lHW zZb$2~cb0ExYMpuTEZg8c!o8u{X^k%B%vSL%aMXDi*x(#;+Uk@ZS_A8ga6D4G3tYf# z2D_;yqxNIht>AeEk3o~7a1Q^Xb<=iD$0Dp&dEsq2o-JuHlYCYlk7+Msp4_TptY=w{ ziiu-r$WieqcjUp%AnZmHZrmVyZg0O*N|e_>YM3IuBf7Ve&3EB2D&pA{^lT-)3)s~h zX}#Ua^LPv)1Pi0RYE#Mi$-H2XM0aZ~$r9c?8Wl^G5~u!bKY`??-tn$ij~{*Fed#$~ z++O5Jr6g~tx6b)gm$u)3_Y%G7gFpJ-9T@`(fbIXejS_+S-q3Ps%TeM` z@ai9ZWqa$Io%Ek;xBD+6d0e{mN^@eb*cW@rlXvdetvmh;{uTSZ?u`p?T)=(%)#h_5 zn~4JDZ1ztNo_p?V&q=m>P0K7c3N1I|3}x;?--f zp_;kPpUR)&K(LpJ?=LQw&pU$48 z5{j1mh)oX{_bc)q>`{72I9{^;YhyAzhU(l&|=wm;QHgJ^Y&?dcL zm+X{+w|!U=C0&%!?cY+|i^#q*p@3%~jh?8bVBJv=u=ZN3yQ5&=5(Nj&If5+c1_a&S zW*2xl#8+IQ37TH=NhSoj=)RVu`hf!U<}3N{?_Z{N1`2o?@A|>=6TAzE7W9{QJdkoOFqA#S z;IrF6!G$L-MA~2f<=0sS09;F4l{J#OyUQJc%p>shy(t_&b1B%&V~ZGW=eIZuOE^h5 ziUq`jufPC99)tUvGanwSH2=*dA*?*1E_N|iJM&!0PJIT8A1s(|cb$1fy6PA*9(bY9 zPTj#%P(JsRU`IznaJ?Ah<~wv;1MXn@dweENbs?7K+-qgzQyhn%T93l@W#$WHv28`0 zR^X6N#DL_;jD+cM3A%Xa)^L$5RjmHBKt5zT5Z>aTufa9=DA?;}J%WK}-aa~XL-AG| z7z!xT2YX63_qm^pM3eekqj}S_7%S4RT}Kkor;Cz#R`DtaT|Sm)7ldQ1M%nfsK4V!Q=! zao{Zuyv2dHIPew+&U3(>cf85YH#7Ba2#Mbv7QgU~yyt@w{o_YZUsx`N5ZQWwX&lG5 zEawx1qFGsbSGkf4l(NK@IlhG0Dk6Prpf6lFjZzP`a|!k4HO^^)Sq0qw|rA6 z)EZ9veL=X65Jz0u96mV|NRDWkBhd~cJz>nTk)|h4DPgwOB`!pQ;*B&Cj0VeK#^3-? z9|-xGZ%9_yAz@YEGt~+n0<@o0$)Z4MHI!`?%8j~N(Ady+LwDS5y3i?dL%BoObaN{^ z?A#gr?K}9-mY@y>5l}{MGC_uz^u+H-el%$Vii^^Nj$@tR z=T#X-M_sU@ue<5Aa)m>)$+3q4gjO|u`MzPVF_@KE>9UeLw#+OLxrlj^5wOusP*#)w zpS|~wvFy0+JL~=$-ZyHw?-Rzb01IMWn+p$O8EQp8pcPu0x{>j2brn4?>_2vyxP4TYmLymSlt(dfidQWbf7=^b244}o5 zN(fU3|4>WAq4=Z8x1Vp__quzALrbCs$yl?x->qM#PM!LB>(n__cbeAG%&N7@s5Duh z5p4OZsPxR179NF=yvT^H(w>%~2I#34nJD8Zz*-e)#iyZrutQj+#`fOE@)&>yUdjVI3?ZY&QokR_)&y~ z+w_Ni+fp+Ko---mCB|_fCV&>DLU!;SF>cJQ9nhWY!j>d~d{5!@C9B(Q==I&Uqc7C5!A{y7(^2mFJ+G?w{BdGTnViRJ5U(Ok(10VI2Z(^0Gub2 zzW&fjguxs|L9oH?G)w`pqS5|jR$eR8B8ZnlETb$MLqNslHNcDs=u8@Q*vuV-L^KM? zq7fW-uPW>y3TYkPy`Z`P>!m=z?N5YL4njsfa=kcI&p?o)#EXD9A0v<1jgWLiI}Nwu z^wmz%P?t0o5-VSE4R#{MQv)l_@WYSov8iALzJ>}wjwW_F_6=QGjmxcLGy!^)G&eV_*oxOdvS8~P8J`ejTnjS;rHw~4B8Y1? z9;E%;@2HI#?>iu;$t5REtTJ>3=_ta`O6<)TXD2zj@YdxME?cp{V8?X2f}4gBpv5k+ zs@BxWUzxU|A}ceGsnV}%U^fY!9&zUvG#iZSZgdM7H*G;*) zV-g$gt2IXFQz(Ynr0j7^)^VY@|JjQ!Vpd!NsFKn#XY~tps+#9J7O%AowL6xZ|QRZ+^4()FrP#+_JLe-`*N- zKGo*D{2!kEFVV)&V+w1Z*U1Qgt2tqEg}b z(JJ29*fMC%UN9#veEF?eXUx-Q-+ITdpD>?#zQEVE7uI*0PzS09BsHJ=+;aK%&@TQn zKS*s_G-Z2g=JUku?NR5)DIlXjfpQfE^3xW9GErc*&m_IHW}mw_Y6l7~(u+@=_>>U^ z`!9@6T-?97uK~DRUQ3qC-zK*&o>(rwy)*pOCSN4%swfbV5A!_ z8~n)f*7lvriLb+D_>V|qcCdr)tXb*Mnnyk^dEk@Lzu<-Ohy8`E0ppXw{y%yb?7iL| zw{`F8YxRbWjeoWwS>856xficcA4t?BdzB3OE8SPRAYoH2>0%v(Rg!w0N9p+BV119x znKJ|KB@!_7S9`&{c<#RY-v2?}6}&tzDc^nfoj(2A6i7NvBIHcX8<#y)GAgA5l76qX#q2ToCfr2aMO}D@4_Wk`UR~~=-j~^HOt&Ga7Itb%-bNkF! zz7i;qcT3@~PV>ySPJe6b%upxm*n{&2=O6B*-91P)5gb1e;)>-H+Yoz-TYA>8H`^++ z>VOOx12s7ZlE0E5-L5Xf;Hd_cN&%qf=!_VlR6%Dg+DgNci`2+vF9l&5$Ow;S(b(14#7f3x?CZYLv9q6Y)?2#DI0l68;CEm8eP0BfT+qsjS1X_X6_Y4 zSk?j(sG5Kf?uHVnT^*8H+I2@zTu8{1k_NGzRZwUJ)zDzZki}4Au%)gdRN*7jr8c!~ zfM~T`4|1)P{Tdc~GB7Hp%4%_xMMq_)s1r}fUAZ-M_hGH;tooh{#d1~SH4W%1655SX zpMf8tv+8Qt*wUv=l=h%@l-b&@KvmV^D;t1n@Ya-{eVw#+sz0=*%b};Md@`Wm>G>Tq z5mnTQW^a50i+YMw<`%UW1+*!4yZ@d-6s6d-|Xb&|rXJviY#h$BH z^PVlS##hZ0=*V*aCp0uPO-~-Gy`fIE%h7f`RJP9NiIr?J>3pk32E0pXAi7uNfDzq} zk_HPNi)!VkP>l){oM$AmqjFJXVo~(jjWizHhJCtS3V_I&`6f`3bxO&`CFC;-eL%`3 zqbSUy@#tXiEIc+dgEHi)Jgl>ji37vY%7hzjS6xxDgR$I=skw)LPgAQ1mf~W(FjYTnGO@v21=*YY-O|+?#g78 zH5mBXm8&B+xPN8V$8hM->0m^qJB!xt&a7EbpwUJ0{1)SB9aJ8rR6a&tlJ)Bn=wjR=Q zPTDe)HX__kyFZ1?m|ZD z+H{qmDeKIvRg=8Ru(7$IEw$}9H{GnZ^3U6(-!U`BBNYt>?cvzjv>ngpYXr4T8<94% zFz``jfSVFm^XvK1S~MwUR>kn-(9XUA?WzuPlR8ixUs`2mxsr43*;TuNOE|oFTrNauj$*|#*bK;dy z8jZak%1bv8!pWp7t?}%s`J84sP9#SN%+D|?HGe3i#WANX1U-t0k z$HYCJS*^0y>91`aCVR!^;2Z%{X-mcNKCM|VZ`)p4`2Iu8$1^-~ug-4% zo&L%GDA1V4A3yc@p>FW;h(ov9S)PsaS3_6%+kaa-2WPg1%a9oXu-gWW;9vb!&RqnP z+rhr^xjx%_GX-oLJRWk8ZtyM5t0^GYGjQGEI%bA4#+=+fdG1%4v%imF`o#FJ8UJ(H z-!Q-Z^B;Dm_^)z0*zf+s$8IzK`PQqG|NMC7|A}uu<^IdrfAR^#6n*;VIHNF*9MiNl z=I^dMuVvCdZiuIYhbO5@`e>>UjOW+TwT}!dzupt?nX!*dW;`=FZ&|n{Qj7l@jO1+! z4u7e%E(ag)7`uW1dl|_sNf2g8I=BfW~_|~RHoC)lfqb5Kt$d|18^Z^O^V*Jw=yh@JZ%DQ zLH0zc>dK*Ei>YC7)cut!+jACe;(PWGnM5nDAL*rElWJqyMr57bq!6; zidpf8M!3m=Vp*UC;~>NW4Sz_eYv4wpxo#RuyzKzXfq~aDZ8HVV1pl01=B*@)WNAux_flhcrKrnIcCX~t>9GK(cLxzC5Jl^)}OHdZcLjZTPLdn{y> zbq2cB6tgrHjjA^eVihsSbTMyVI>4!;lF0A``esA35me|gblBi9>RAm=%TICEL_7m~ z-#3ojp^TzpQFgWpyn)V+4r9HA^++u|fX;0$C~Le3aqDA1o#M5XXS$m z0UHp#aCj>npX023*~MJ}U9n5! zuxMmii+ml@YZv!q>ncm1aj=06#ndTiI@geU>|&?d71Iczb&%5bNv!HsLF1kpc1Ff7 zZ10&hNEm8ERgIw1Ax#ePyuKqZILC4sy4AxxvL%(7RGei~?9f-#>Vt-X4{(B&N#p~6 z7?P0-VLbSjVuwxztWDCHs&rXfbS6!D;F`9mlCp!dZ=I!l{6UWR`<{fuTt|7iyO)AY z@F#J}xlTG+h(pX6Y(3N12ltQ)t`(7KXdlLj%3RYH+TLm#`hmtWr7|AWaodTDTa`Zx zEy$K)N{Gf`C=qv4sgT+Vkbg!2sB*~d6*BC|5EFx+t!E(uN_Uz*Y4hC-X})Wni0NbJIEE4L@;TVu>8{P# zb>T*#a<{c}vSiBhy_tiG4x6~Khv{#fnM`+~X(#Oy*B2Fh9CggsfEHY(Frxu1UlYn0 z#+i-NEH8_RH8#nrA}hJKyj+w?-m8*X8=;0pgJkSqrL(q3W}dU#u14d6Dq$aw&M?i> zW}%ri_g=4%lI@4-m@3SQs@j!6xIlG5ifmm{Eb7TTE4e{wHgQ~`Rm|BzH4rrKnyf72 zg73O?zULdDimV^dm;`K*$9 z11b*@lL|OST*yUb5w|E|NKF^b=kv_W`Yf_Kzulp0)=heP#i)+@WR{PoJG(Ro`)ZaI zf8BRY+)krnCyht_!j>aM_w2AV+?lr9ci3!=O4NawRn&hksRyjP2A>-j;|l!_vR}lp ziw^Wni>iQKq{6EqtqnyX3v3#9KF)16N+1I~nelDisG0e$rfC@!XeJT)ZNV zjNsM~ObsE$5DT7Q0wzGJY5-mPLnN7&X8A|UKQeDs#lr2ul8C(J`+v z;xByhIg|vxc;Ung@3epXglu7aV)>0j3f4LN(iSOh(D+J??gZKiqLH=4+2_AVV8jd@(Ec*+H+X`+4ABg zcVUpxhG5bxzhUUG#=LN1$)|lb_g_li^z1Kx<4boK^ZDQW{BOSWJV$Hu+n)c%&))IW z7ccB>fAN34@Lyluf`a8|%{T7Y+~>-xgO}qsfA@R0<cR(^-8#=LSgN ztoZ_q9(F3g?6ECF_NQSbKX4key?sg5u&lECuD|#vpFOw#>~eYi`qr8IFxNS0tGH)Q z|Ke$AGNv1LvbrnRhbAIu)rJCFzP!}ef?is_^vv>m%j-(;Z(ja4FE1ay_Z>Qty1%?a zs;y5S9DJ+i!m;H;4?V;g*N$74?&Hw;{(e>6ci)TWUOe|amxg88Kmix6LBUs{;F&7rG_4&Y09pG zqhQ+@n>hW3Np$dvxlsVnq>Th&j8_F>^avpq2WE)X`)g%7dO6N`)vk4(jOCAYGlgs;liGBg7LhG2 zA!u*wDAd%BT`#+-!<_g`vR9bEx{br<|D9J4z^NcaUTX&aV4~3zWc)f!`@t zetN2)!UP`=2Z)eCF4j4!8+HsqdwR4V7m=?K>K`dU1mCT4mEV{C>qa2P) zuy`2OZL`#L0Qt@)d6##TxSNqnIrGYtD4Bt_7~4SrK2|lVpWGoW62}zR+C(YF(=O?_ zMh8h%omLZLSskZUofLIj!xSM7>tUX&tV~;08_Do(OBpStR~slK>EZCPDXa03ak+qieO&9j#7pV@}`nx)nkaZd%YgF&ly@ci+( zD90|(CO%a8P6|a3056bIBSy-KAl~4xtY*Ob7bDP6tFyWm-Nf$sX8Ttg>c| zh9|W`i_+X_Gp6HncTVH2C&t6z8LRTOl(MhjaA*W;+eKRSE>C6_W&viyy@d^x2Wp z&T`bXJvsS_<;ok%KSBE)>d={H14cIFSOy%sYBXw$PBoWK;dcxQJ|Ju1KU;1_s!|ho zF+IB)>sD&39lD;cztW}0XzkJ}lL;FFR2z8|&CGao_cPNOw4Bj#r<2>Avg}LRo)4PN z=r1whG+ED`Qi=y+Mo}md@=;6(2`;#K_#*|-zetzB505tPB7{$JcefEax!Z9cq|h-EMDcOJJ=q-Pez^b#7m<-^K;l3t;;vKT&ZYh&aO=6iW zM)=u+@lMM6KF-FY9$>)Rm87H|Nv+=-7w6dyZGe7*D~vWX;%W*JaD^%-`$4_;{Hxzh zjO&c;XfBz?CEYH~m)E0c3?n?HX45EbnKkmVf z*upUFLaGxzTRpnhDkcWVS!)~ioMtmuH#6Ec&nIZw&-$^k4E_Z>D4ZY2%bAXqb<6|o z$k9?0CLl)B$m#`ud5AwJr_}D%__*Nr2XpeS!LDTyPHgys zY-vuQB7H%52ES5nvECi-XJuu4ihu)@b6L1c*Y&tx;X#*M>tt5K=M>LRH~)|ViRBr7 z=k8X>n%&&r|K9gryn0f1J|hR*+uPjVWQ$;vtC(~zEFU@LZ=fKozV~m;QOI9Kf!5&q z0UId5xuSqfx8M&33eXo1>v<@6c0~b_zJUU$g#vv)cc4J%xW}1$bOYLeehd5xzu6XZ za2gIvaS!wBfD6jy;ohVVNqQ_n@tGG@LUSGABR-_P2ff#u2^NAp(XB?dPK@efb5nA5 zNyY~Xgju93=Udr#a-cyh5LS3;Wf2?Vo-ZdhNyp3|n_{WAnxZ1{mD75!c-z#Sh#!(t4{g@rUZ#~&CTS@!{iACKd&_6(w{x`BzAg!o1Fqta59dKC^$G+ zZm%WfTFj8_&=_-__6pK!$fSRSrykeet0zND7G`sO4>oD#UoP*xZ?JVnqVMSdd#2ug z^iIr@Z@UWTXI}oy%iH&w;zkOTmJNtYRAA6Oc`XXEfdc>96u2r-Ky}hfubjh}dh4GL zR9`pm`QUp#Sp2QxZ{52rC}YVaIv7WP36o^83gA2w#;tsYRUA`W$6RWAPby~V!#F_^ z33Pbf%Y|V{DXY`tRi;&3YF`!3{QjCIZ1a}%v?%-{ANfOAxr97y zsnfKM{A%{K_t6cb|;46vqGKTx8%O7`Q2Dkz!{yo=kha%c+P4W%QmZP0K~pu%>BB zPqwVhW*pT-Vo~%-Z~9S;8|FNY9IQKwRd6bK2@NcIa9iA}p6~~|jJM`EB$bX~nrP#^ z*o~2HNEivUgM}k+cut2mGIj5oc^7q-I)Jh&0?K4b6)IUp=!^w&>RPHgi)?Hxq2S_Q zuq?E~(+H=vMQX@8aZJ@klfl+cb1D+PhQ^?7sD)yuU%;JAkyA~Li_#jt7SUWR?NFK&M6?8m9NA_dO<{UXisVf4KYFVb zP@L6b`Y3CIzeVGl?=}@_m=uy((bGzBGR!o_P$$-*B$rNOR<+#0U~2D-`bp$cpQda( z^p?6v<3$Z}*P^f8`HoIPVSJZ$hLv*-=>;;tIq>zAQO0;szd|hBq)?ltiL<2F;h|&qPrjC!|p!LsI z9Sh`z?MDmSmubs!=VZ+bd+bV|Dk?x&&D*}{Z3q5jN-60DX@hV* z&1k5UuQD+gc=60|UpSMh+sP->S(?=*sV37TAN$VbQ)}Sp>1fF=bDSyt1XZApR#ZA> zY2FRHh-4RO-%NJexMx!!VPKy3QskjoG$iUwRIO!u{4G`Wlrq z88Lmti5<@}ZexbNGKZK)pQfQ+pxEIGw-=czsK+n$^)`aZ2G8Ak>DaTYljH*Hx(`6#caZOSZx zB)poVv)=VhUeQ-NnAZi&DDNDUBf#5r6IawxtoyTzF5+H-$c-Y?m^50z|Ly?m*xaHN z5myeRvu4_*DVqbcw&SD~FZ(WqKzQR+9i>U>PpthluVUiesxP^;V3EV_HxPsNf@NCC z$2$y>hL-j<`<`*sXVbbL)l-|!XXqi&RJ;MF3s8`2!_!f8dQ9%Rxy0}NOaqoMhE7T) zGPrhil+2i}88vyb>mAAsyuhrj)3!8vpPI~99tv`b%|b+biPR$=PXS6cLma9&kd(A+ zbaD=5;>RWRZ|uY}q%4UNoTVqSPiGqVQ1v0MK>eqVkzIv^wA8ELXLsguh4Eq;cfA7Ka zdCn#;zoKySzAc?uemS^*?bi;ahwI|gerJ|vmKQD{KZmF5`(OA4olWoi`q6KG^Ru5l zdp1axkyJnS*n^*V@Duw~g4`D`a!)pOq1GW2u&8wh3i=){3eE5yL3^O!ea9(S!-fV> z{E7mzwY;|Zrp-+#c*-oVZS;L|1_Hi$GX>f&xS4{$dk<&B;o<`i{$%uJaNoc2Wc0|& z{xZYn{&P>wA2APp?GMB0^gF-y^~JOA`qG_u3L*|%Iw=me9=R*&pWtEwVfyiR1h5Z<5uR;aX> zm&*mxXgJ$_jw4)R)L_I#3xkZH>B_;@o!*>aSZ-c5S9SLLJs;v*Mx5mqPrdblEhvZr za-Gcn)pNgkw~2!nb&~6!;gtT>>yKX-1;(WOdea|LusEcE9N&}>3%?KR&oTeyxAi3> zJnSrJm*&btd{PZ$`&S=54F&Ic&xepJcR}(k0PRv>^yM__ZMB|7i7~4J^ig@Gr3Lh%jHG}@P0Tcj(;ejG5>n`ub1Eb?sxCm z2&d9do*Y*AN-ym25BMQgHRc}vNL(S-W8Zs z^tj;U#WP+P7knX%R24w{)<&{cCy($CP0RX0L8Xo;8%*Fu108(Y z7w5|OVDqM2(XtL-XE4Nv&_>T={t!qxWxRvZIJgRGA*>8|)*L5YK@cAiADYiwlUezq z07*Klq=J+~<+DEJDH9oOPh-*R#~ibhenH(;7#eg*&BQ%f^j- zoY%BkEnZ!$BUudj_F96gJ)PLx-s2i*a{@3Grwm&J%Ej1nsS*1CvBO2r<~*Vh<{3LR z2L6mNN|7nfD3%kU##+|hWE8vDffjy)GS+<4#F0w{Jiw!-PEBekSDlVn8)sP&5i=pg zR%(E`&vdPIpqHb#(S$XtF<$ipC8AZSZQ1GxEh%yQkoS;vwa7ml^Y1Pk@k8@d`bLNlljsOC1`)U?x>eR(#Txe5Uwdmw8fKRYn-NfoZxf5tGbQ65s*u|IQ)23sXOc&hTH8O6>=kMB#ZdE0f zW7}(*kFBZc=h?iS=!3s;-gIObC6?@aS_sB$4zeze=C-R0+b8VtxgM1QH(6*GH`$#s zO>jfTc#@cIVVt8eF`}kOb`ldxGb3BHj2Q*7sPz zj!Mm|jwYc#chJ>g+kFvpaYb&Eo+j!z?L=X?Y;7_fRU9I+lbso#O-|EEPp2yvCbm$C zz&&Q%!rITc=zy+U#*2h%pO~&(z?r+o?Utj?CP_A$q#3(l99%ZuFOt?I-K^M6veX*m zV!p~%O{$oi`LZINWeYPcJ!CGZu^sw38rG;+BxC1mbR;G;zAnCC{`T1-GgP*l?b|=%48Hb^7<6U@QS9BA;&qe+< z`wAR8=xJTHfNWgYC{596w^HoF^qHQsj&Efp=s@7+OHdlMqZ$!>%YAfXdWD@VO1g3y zvyYHE)2e$2*4Wxtv{GBKz2BRK_no(FcKMcx)lHk+(X4K#WCD_Kzwur>X&fgI>`s{c zIU0tJLh0G@u<>-R=|yjH`c{`TNoSJYbv2t>6ZBPTG~NBw?0T)VJT#=nTpqafbE3x3 ztq1=JHUo9Q+%%VignJ#n_S1`kzWa$fB!3I@&456I6GO^?4Eq9qAOZDE_5c^+&jz?E zNzR70Y)ES>M&4e9y*X*_2K2+cZYR!e@-IYCx+EKi(|128@dfn>*CX!%d5+) zTiaXj+1q<2tgeB;Jh9w3*x-!%w|>U#J+@g@zxh#f<(EDu;`Wy>UX}e4yoD$b^rOp1 zw_oG~Onl4sVZ}YP!55Is=a%Qr4J-NYLjk-96tE-k%u7lQ-%ok|l>5rA(K$rH{=2K{ z4?b_M{K;pB_%#J&jja0MU}NJ7(&|BXKT4>QOM?5}^4c}RQScUx%eN_>;#11RSOEk^ z7JiJ7$UM2<@0(Nb9)we#y(M4gd9*rpYX8CW=9_OnfBx70)AQyx{`p==hjbcA^0y?teRXZ}&)- z-F^G!?Yi;{eoZBD{G#RgGv}$>{)1l~&W4{_-oAY0*@J`kF5f%UMo%dZ9$mhIq0Lcg zW>klkI=}p-Ujl=9?EiY~K$2bY)33bp-S2iUN>_Y)|Gn>3J)>{2(s;hMd{KScY(|@J z9@I)QfT4R zgirjRKJiTTOm$z#)d^G_cCdM@`c>#JLs$fJ`qS}}iA?5sj^1y6-~;FG9=@K;eRaAJ zVU=8+><|;Xc%p#&A2=&_@AkdS3WM?fi6@rkTJp(2!4P&V-5~`}Jh4t8{`imrYaZD* zqF~impBsD5uIMW>( zOwFbohGrB;tCY%-rD|wpy}9}!nrl}(*s7XDl28Y7s?{40Ppu4&nH5!PQ5w?Z7WvL< zvmrH3fFz>#^yJgai)mwG)_79xOEP&^%@Cz@Dp{OYT>3qxUUU^v(v?k#WYX4gue5CQ z%R;4BPiejiai+p4C*s-Mm&Yhf%HZ0G$b=!(mUbsfvUff5P(t9QO*L+S?2JRqt#(e; zvMEbPJCsiHTMVUuUylh>NrMU53VKZBEzD5YilDb3mIv}iQ*d?%Kfy4>!HK(-A4Z1n z5vj@43$Vb+nNQ$2UdgjVcH3af%(71H2IW0aR5d@9W+?f(uNvb*cpsjxDrE>2-nCh$ zmcI{yj4Q|K>^^QBS+iS#vLtPZ+CH+Q&b8qZBetFpyfr1s-K^{@h-Gt!DQet@k_1dF zuMzMV1c^{b*;LTXIk815RB9EQG9DVKc@(f{h;Yrg;b{j1JW&V0gI;&93b8#ckAY`u zv1Zh37m7TyGeT4^P_iD3YdeGzE?aaA&4EQ%2Zs;~8>?twR&}OkVt%F9&a&E?q-PmU zD`$dpngd3ZM&d0XoE1hjBNi*y88#VBku?7$^_=qK&bH-QR1rj?}G~sp38#?hJh#gni zQ8)OEU)flZ<)I%CPLE(B+*-}BV$-r{Y{OeTDCYFxEuGo`r$-z+Kp-RTW3K>=)(2jW z$gWU2`Pe`V?`{$WZ+PfkYbb<_4^OSo+@X6FG*}jEz!>=0tQfEEuNaxoS9U+2{*dgyCe{!ygfE95=Pq0v+ z?N1b5eQdSJVo46^5n+^2z?3BB=h>Hqug;wIn~ovkJjOq>zZx zwdqVo^;=egmT>HdA9yosR4^kW;=mOR_)FFAT0%dFA zBQx|?O~!x)gxi8s$`?Bq_@a;@%wSnqp|d+t0_m3Hr!Dogp?c0WMI?YK28cK1=>n+j93>_fYzu?4%)fL zhx86!41ptK&63wVGO00^8dCC z6;PT$ZrZxf_#-=!(|B-WdW1wn%HGDvWO7a-_7l$DW_i=h{H!ynH?@>Ap%$%M3P`^} z1DCW^)u_aBldQKh;)BW5tHbO#7lz8?#a%$8jW03 z_w+cEa=@}L&@r`(rmL)ryK;9YLXyT*%{T=jilYd8Mt4ui8s(O3E4isk08G_Y6s|Mc zv#?_M2D3Y9#Cx(g5T$Vy&C=5LW=^{^F_4OGmpYqp{Ffrwmdl|^E8!ME4H$b!bY@oX zklik5cOwL1*ySRNO4FB!PCWV091M%dBIPdGDd-?!G9eu#GDk$assbdUSJOzxm-d-8jMG1 z$MEoG&WTturHDxPj5Z1mUvBSIZWRzK7dZe1@B5;`8&Bpz- z&70Yj;h6c|Y#vW4Um~6h`3$*;!IlqKLP zCuKh|aWyXKx&^8}9po_%xaW&%;s9zhw^VLnCVA9DOR>|Wi)e=4f437y2-b{6$)qnmU~!RppfUc5AA;YrE2xYLu9M!$7QPkj~b1+s$?-9Wkn%sGK#nNh`Wn zPg!>36ahWw&XKB3x=6=cC%cwzQ&UT9`=q0Fo+o7P$0uh zR!+4I=D1W_wzW(qV+i2fD!SfuyZ}dsZW23I4$MhK6d{vqHHRY)?K~scw>v(yZoKOk zvkb~Q3T&a$a(7w2Fo*-zcGms-v!`l%FQJI_ zlv*-5#jb6Ip^~}zJD);x4xP{kF^^#e8N?mtfd^F14YS-jqG0q}ob%_fYH}wh@ZR=A zP@s$tbAB}iIs>^hpTN8uBUlya0q)qkLBgPj*KbPyy3-~rK}q|<(@%fwW8eNZh@kJ4 zP^$hA>$(ww<}KBzo4Wh0f8URPZVj@A2n{h*G*SEepLkF|ZX&w!JHPWO+JidSS~60o zfh{CnTYGzFkX{K(`@-3?aeUit7cUCOSGH5adVY62{nXQ|+9Ldjf(?^w{NNNwPgE2j zg?lU%F|>isIPdKtPh80vPhK#OkmdawPep@WuKZ7q9?5mm_QLxIonGupUy1_$<0LTm z%QZj*9o_$|zp&L+NsuRg>GWN1LGjV0`CaJdK54#m*7g5yzqQpOe|)09=iS|JB$s~r zlj+u(doDe5`di-$mokC!XQ;)iSEbTCn2&9`;5a~(iVp13Y@XVD=%I%nzPkLC6$}ZU zsQX6`5R)yD9llB6l7=&!&hsUxD+dQz(3s`0Df+UfpO=nqK)HS(^5h1pX95L<MwYH&Jk&Q|-qn*gT!Db#y%_ zmYkC&r)Q6_;c^;V+h17*jatR1R{*Q>%Rtzx4cfiIC}!)-aA&*%wwG7-&z#Aw@8jYN zR>&Fmt{`+B5D1_a%W}`l!<=LZ_iGB?wwDYi>yJ^Ou@We7!7-!?PPChajv6u+3bIV0 zYL#ts1+C#D3VPFDsW2fG3A}a6v!w1YR(!lkohdDNY+)&_k8Ezc2B=;3@B!jYVjQ;2 zQEj;3Up;^b`0%dnbumzbNnu1&-k!rBT$Jiqub?V`TYTPhYXD|!CwB!@$_r(cMX=kI zCs>|znBj@T$%k>_sfQn2k&O(BlG1$~{)XVAr)XZ&t*noHf?3B5t|4CGH<}xv6n7Nz zT98AyC zi26`$Wf~yoD|mtCO`s(zt+Axw35?=HC&+M^g=LAiYN-Vs1Z_2{2dY__SJ@!@&=QAQT82SzmzYQfmZQuWZ{L)|)%1ZItB8JY+5iCN)P zVALrhK(l%cZi3gj;)fv8&_f0k0b>2I#0WKZ1(bZ^k=Ys0?Mu$iHPE)Izz>eT?7is+H}R$NUcn538MBub zviUlN7QHf!#udeArVSL}*6hHAF$@jWuA`W#?+EQp<6&;$Pdc`f3~}O_Q3wVJn=ZI& zV|Ef!WeyY7%W&-4pAU@=KZB$ust zIJttcEBlxgg3@*A+f@t!w{VdIM!g_9%)!s9Qv5X?y5@4G1f2u;3@ajrCd1B1l_$Q8 zt1K}Sl>4V_H6*vO(ZNmH zMstc9@l*HJLZgwz>_#bx&&Wj^2W{UKP#9%9ZP~WXXjXGSR$Lm(AIhCsOcS8no)mP( z%DK4bOTVK?oP4Z}Hlv;xfmlC1BYJSwxnkEQ5LLxhL|^DdF$%yY>NO(uHyKfmP-1%4 z4$V;Xc~(p&NXWffeaCo^!;S5DYA@JRosnQzpc|=6rM>a3uXaG9%B2ayE}$UuctNH* zlFZd+<4KWwdMAxqc+YN-v1T-}o~xV~{?r5d;5207cYzW?m2Z>S>ds?fra30EGVHvp zESFwd2NmAa$d)47xmP?!kRBWEokQ9UnIt1i#j|x$+Ojk39q45RT4&g4=!C|ywHtfR zM@&(G&MlE{0h`J(Wp=c?9&FCQ5L1IS+PGPyD(NeJY2#3qB^H*~rND_6&S5jQU~*$_ ztBRdz_}(+`6gnD3i(+G8xmSh@Di>WH*L~#8NXss~MWfEll1fBz3qLae z+dy$0aYk2L(@kh|sfz30@gzhh<3LDf*sg1$rh*J&Wg=$xS#Y(DlRe3%95PM?8cf#J z^t2dt`QFXy&a-vr86oTgDVoYY^5oQ3;@)y_E%VrSzH{P)AVVHJbm&(8)SOCRM!|82 zyM9SFimp<1l|%N;6j&(O2+`-cZuXWGY_iqE=42uYwhbKG@-gFFyPB@a{ul*sJGK3` z>-*O^iMzdhyFO)XjFZl;DCPg~CzfcFV|%KuXD}xpuIuII_ihv1040ug@W7Lu+Iz;k z^Jc5xJo9d|apuAW@4Y)0%B`!p0tIYsDD8cxxVab#U@BJSCJ zFyt*Ms4G;=qwD835;jQQy|FPGefPWg!*S=EDL8fNzEjf0jUHij(`-C7f5c3?aK3fm zgmnv5|8+QFcxCfXH=azMr?Hg`tr+$B*X_0a~`l0P@74UBK$5qaJ$y5-AOt{6&Y~FqQ-B-+~KmG8@ z;SMr!z=FH}-hn$*t^MyWt1q9t`@V29les-8QyUb31IBf|%6ElJp102rn1n?XEH4e| zpkPx$?_8R9%4R2OGaejVvG(atZ<>e0mY8wjv@sM6+@bKxd>aZ*pQhEl`Pmi!OlUyR z$sU|sWCjHTg)8JHP2a%<%V8_*I||!JyEw$Hvd=%MTcMTDJ44-^zx%#RAwJx%%whOz z!MA$oeD+$$o~^TkqqyO_PxqbXPOuek9pY%(^d0FtG#(6k-wK0*p#Q#3n}1UMle$?= zW_;u6Lm@8o;9F9#D*IzsZ$-hmb8FsOSRepiSbuT{n{_F6$n7v3>6#e2Lq9Hhqn@kZ zVN8(2aXO5cBcr7%2syB|ZdJvV>k=IS9=iHNmmKZ}-|O*2<^&l@6c@*F{s z&kZ;We-r574FwzK9&NQtN5C{%*=SkE%fIFaBp0Ksk{?kn*V?BurNO9p{oowbEb(#K zRw#8|Hmr1D2KfLBOV@yR1&U>@J@Vih7=;^xR-PNmMc69qRT^zXtRUJOQ;Ue9d2bB= zOXVAgJS6F;Y==REV_ow%1`nY}y&%M{QF?r^o~tk|dDn*KpxF>Ql|60U3JV&!^aSy` zM>!FqFhVV|UFl>CwGajl0b3BXGDfLLi#w$1vHK*&%|6UP0z5M~OwDC%N&wbU%Qn$y zjdgMb(-?;hBG#HcYyN_>y0Z`yhnRKof+vJ)m^u=*!yGw;@gyh|CPgJ%r;e2s1hD2F z3@i1O3rkVM<0$M$;fmHs?Aq}ow%regZ?Xbg+do*UA0^Z}=e7N##Qg@YH)?q$SG!x_ ze64t*{z{r?DD~`zE_}aA(XTM9?e2%gc#FpW0f|}nJ-32iV_Jv*fN0(T`-{|o`->$0 zOPBU7XJ0Q#>y)o$zh1mQ?sOVF{&i)#PWf8)>q7dINtCA6zP_B-DPPNeeOUjBrlJj2 zZ<8Ok0@f*C%l={U{p8>|%=9|VI^}EGKNQ;3xBxF|2E7Wm3Kv!&2ALG`@hxPN2 z{?-t$9f~&RVdUUG9&)^=+!%hCXyrJt0zm0I>n|8@ zDT3uMf@j?cwn){V60Y5YUj>SeWp(IGZG7lHUTOt$h!ovJsIqw0x)v3=p;oJqv^6$f zFuz+ErxYo$@*Vy>p=-D7mNc@zpK+`54P`te%}XcLdKZ!hv2|dbbe2J8s1xBI(mBF< zeuJ^3j(iWS&Sd<#=Cuigl)3SCl^P|FA?KC99c*uWa15RJh;#F#wr+rV)svGpGElC% z_95O&*Fr5;qGd`Le-;#lMOPF(j7UH}N+hjEL)EYNrjit#g-|*m=BBi$pj)0CgAIRH z_&jNEG~6RjM+6PpCF(pqe{t25p^5uu7@?>b_+y>O3PUIo7>&g{)O>0zmwXQ`RHmk* z&W!K*&336X{WT_Y1FTSB9DgY#375n5X`k4%NmIhm(l>=o9oW!oiAOVTnrmoceeTUj zZ3e~TfT46Kj2AJNCB#I7D;R8OF&$be7CnW=svsz}rzW=58fXQ(>iIqz{Mexieeimt zze5Aek?$}?h+aXiuz+KLT-$3DH~WXm8-_;-rRYW%wDZE`^JJZYP|f(Jn>QA4tG+Ck zrC}L&1?p&&m8K&-N|&Aj@xwW5WT9%r@qgQN#!?RzsweHSLIemN5yu0<$OcJ-zqZD^ zK21YB7x3j3!``O!ES;dKLkhkWC0Gx&p6q-VfK5yr$2Pc! zI&L|Cuoxv7XM{}3<>|hSEuT&1lS6hi=61iC&vigNUBAfq4);{~&>bw6$9BO6+i2uD z9RXDaHSodCC*02m7=G^vztM0F%Z`~BGmZ!FKPPerP5qpE_Q&I1dRtsg!Z{Z@M>>fX zL&-YM?^E|wSskg?_*ht^nAyTLCN<5@sBL#pJm2B)0d^XV`Lem;yWUBf&ssBdVd_~M&JJD}qo zDFT|Pi?}C2AM=w>QGzXanQalb0pzoBEo_j&OA5CUi zQkm&^!m*&!xj=x>L@-^P6=N)+z~-|0H+DT6G0x~=1D@HL+(GFeyTd|rHqTL!T6oh;|$1QC~_ zcd=`$c4yt64{4ZiGGtEwo4by0L+qI8Xq+`%bU)$b0Oh9>j_5~v_H`F-^oaBsb@h#% zs0WQGlx-NpOrW$lAJgP(b6f$>1@=+vvL+cYJ zq=PNZaw$}=e>!y_w=|#w6dum9hZM3Ef81}vWI_VjUU5tF-1dp>w^9j#0)=3p>*9$M zCpJWZNch1h05%xqD07^GwVy%`&4+ERLVwccVnQXT)y-S)Fy_M_)(QCi{VzPb%$MA$ zy|Fd?e(vX>b6xGhr8+qbQKjM4DT$lwd<`di-4=izGZ)Q8bln+<;Un&|*+2ofasvfP zKm7Ro>rsA#OE?axcr^uzUbjVnJMPytJu-pk;vicS`TydA`MP;B@*g+({qYx=;EU{j z^Wn(fb%7b@$*B0a>Ho0*%DcLcF!cJb_XqDD?j^W)YdCXp@Gj0={Nq3T_^IxneB^KZ zk$=dXSwvGMGtCqBiBN#w<tZHdzVsa^_}J}Gz_Ew7pFGJ4ih+WsZlYlLrkrsDCJ4CwG)CVE+ul9} z1)Ce&+Z)`!z5xXX2MpAE1<7^n*^uJs`NR?muAHa*7(TMMe@|y1%Bo+zW8>RbMS*4j zu6bW>esnlx5@28TSib-L?>F0bU+TL3{r7LbfBVTN&6C^j*nS5e{H{+@mwc73=LE}7 z-JCGg=J{h3?01HH-?z9zU_agX`Y{T0AIF*kzd{oqL$~Cwz?dg7+wb7! zixmau_FWGJj~+`BoJY;FUc(LS#TsrMKU|aSL-6nn9cc|_)?upvD?2=h@n(%hp*Nf8 zFd(ecgYU?77-_oT95Ai%9i z)RK*Ga)*R1ZDGee=h%*4VP!&=fCxzU6Sznr!yiF^j)}~a>KH0Pq{Lp|bRzF`phVO} zY2jTU)IpN<1(9%dt5jB?-YSjhNykqnb-}vn!K&6MV!ecR@X${9gr(HyN66M%;zJoY z`56#UQO*UbbfLJ1Wr7@68S$8=&0^nI*2ER$bDnHr`209idt{hhF>yd~(JD8$$d^e7}LqS`qc`%{k3FU*2s znQU&T$)UN)>Lyc>RSDxyXW~$mtT?sn`;b*hKmn9B6tI&`4#Qta7apCSsuez{BUEw9#n?Ww8E%kq!T5|mKW;dG zUN@Y!2Ua~*M3pQSNz(J62aF0bcf}5$qE0!h&T$ynzGh@?Kbe7>?}RP?YeZz2?;yTti_dzxG6J4%NynA)p2qDHq5P)cE_)ElX4cJYcT8g-Q* zK%CGijoMU*=~{$4Qq6&ux6x)B)dv*{;1O9mrwY5^#~lw2_?t~;6;kmVI3iIBm&@Nm zt&LA4$pF)1X@~K+30nkOrrY5#3Mo8$0s^5D@L_tY(ilq&e>a)gl*7#>O!vf9`h+}t z5`1KBw3AL^$8Bk%k!^o7~ zyZ?{9_Yb)wJMa8X{hGPAx9zv?(88OIkWLvvCPud2LGt2VUaL>Ft&K$Dbt~)FB1U35 zK}=Bou@Xig$jr{^x^;)TCb0K{5Ieiermm6=Qd@W?pg*!^J*w-DJ&*`m5HAxjL<1Js zL?L?Znbz2&*4%u)r>gGzqkCqwS;8)4p7*_Ven00q&pD^+Jm)z-5I&bKEsb}HvD9GC z@iSB`Y3ImflWG}p+dT(tu93tz=5MlGwD}sr9GK8m%o6db)4>8YoDL<6GQy0Bq8Zay zcukun4KL2|jTK=!p)+zdd&I?YYu+f4jU3(~Z7&Uq4$73LOU)8Q$ac&5s^PkTc0OO~ zcBYh#;Z3AH;`53ZRRJhS?VL?Uo2Kbji*>?5Aj{UrlNq0)xu#wGzYe&Qs@rdEJ~|wn^5Nh$@w+c-et@KL|v86+R|9+Jlhl@{LEwK zmK3I&%-4Z}W;uy!4zpwqVAFKWD?kkl+A=-GSrCTzzw2DbS39-yriAc(LMsTb%H?vK zClL*n2bwV!i0S?WATGRBF{iuAK7CsM$~ z<-*4$opok;(Y2nm$nh)3jB}mx7J&UeH4b-D)n-#riR(1#FGAhhc&9`On<#-68C(U1MZPImbqI=J{bpn8yd^=Mzq@feJFbIRhDANReo}7 zW4Qd3ZLn8;IL>qMqpu#DkpkuNe2^bSfw^`2e>1s?e;LX|-6;vGf>DkX1!I*cXHg*L zC|9`^Z=^u(i;z7l*%=x6m-wRjW1Y+QWOTx}{Mk$R^WJ&Ld?SPl>FSd_qG!!VKHPp> z=M+5om=EU_yf(reUdv!cNKyvfpM_+i6Lj`VS$9Ex`vmLm9>Q;5DI=XTy8}Deb?C-z2 z`-NR@xT{X_fRvx59J0%Frxe(Ju1FaW_{JMhKxaql?J3|o?1xQ8$Wzy!ddmEy`AIhJ z-%==EoLc$#fk>>E5ALW5Xog{jn0#bj=1;KW0x%?5VfjlyM>EKKf3Ald z1Msmmq9EWLWN1-PF%UU=>gbz_rWwDUg8nQB?$>*DLaSBT`?LN;0hEh^Z_6Lht9#wq+tJd;@1GP-LKy;fibis!FR6|JOja=nbwB|5 z0A3FXsnoY!$q_!u`tmI-#8_wQ+NF*-t63ft^H3WqY@!;{PlS)q2RfXN22|;23>A}1 zk(x>}cl=rTRAk;IIp6&b9tlyKI|3k#>;iJm;erB6GSL933xPb82gGw^6@pz~3UdDxh~ksC zAO6JO(=J1*$UzK*F#_%P;2XE(T7$uMWUvd!S1=mB+tL_7EGlNyBWP8AmCLuOzl1C1Np%PR9Ta6FD!Z2>_ zl3LwR@^V%cZld9D^+a zgd0EK4&f{2btryPdd=;WJ%MLplu4I(q@@@PKA|rTGz3E4;=z2A>E_(@5LFfG?I`Bd zFcU@XBx+;w)qE7;(kT+Y;h@bjgjXxt<~$P8J_cvM5o4Wfvvkve09|O*I$?MRpyhIA zJZN;*WYtxZc{Mi_d1a;+JShJsLpU=(gy-`Lw*)jyBs0?ygA~F*E0}lHhMy_7I%p1e z)V%`%3Pz04v+{^azMC^WG2bE~Qv<4uv*BC9W5?QqEiZiM!-R_?;PXpaxmt7U+jhm?!S3>upP#OC3)W$ z-zof^F$}og(V$xe@Pj!RPD3?oVy7RUL`U1_1IeMzy!Z1kIJHtd;FIdrO3M%97-vW^ z4{1}LexgDV4G8n!rWkBx@H_jkyc9=j~^(5E8 z&5E8L-JjKI#9-5)K)*>SgQzX|Pz<0x9jSc1j}KXLMA^h!ik-0*Gcwq?A*%+MJr$4>nw4j~te&$Rat}%XzhDMCk8bbU zTN+;VDK2lk^%SbFTS^a46rHK^R_$4FQiD~wn%r)g&!$zvcj}+;E&f$xO&hJIkO!Gr zX9-DCxojXvm099<9&}ioJdsHj9Qxh2%gmtv6M#C8ISQKmC9xFN!WT=GG4~&$a>EZ* z229|dhU1pijX0-7&GfUr!x>w8v|1+-!gF}2Tzq$(o(SkJ2!Jsv4;yRhA@a6pVFmZz zSdefov5uk(;E-{hD~yFcmj89An_FnLc@gU(EJo4!j3(HWp|OUxl;<4@x-IwuF!|gR zVCS~y!nY1>$c*lkY!)=S6`i!_}E$*oPkpIDTk|(qs?;e zC2KoVcb%`YNou#Y?b4LG zuiHFXdt4RbG(j+*8LljzG85t$#LswtP=T}z!tMi99Q>_U^JU8=VN~%NN@yiZmPw*c zYFH|X4A9J{^RAwn4ZUXQ>QOXRi8)3)v4{&34mgh(`9r-6nUrV=x8RErGFS>si?w63 zI7fsEwO-E2m9>z~yjw;V0v20dcHE1=u$Wb(v$8;ln$EWK8Lin-{QmTF7PB^6@Gd4S zD~(sv&U9@zF)jJgDvL>%S0%lCRdfYX^s+-h({j@b;32sd1ue1=T0NI|xHX@1wzo&F zq)K@WO`T?Bx@cMP9J|TZZzN+)Ym#4pd|j>PoArDZN36Jr<`MNlMHdl$ zuASveGvV6u#j>EQ+oYxos$`U{s^E7Qr6}X{?cGMx${Nefi`K3US0BLA4pQT78W&L; zWlU1=wJ<5ME&zI)oTg?ed=tU6dEO#Jwq(jh;V^b)w+W|@qrUF+!J_aHjSV{WOKC;j zd}60)ZR51AO{%pjEUi@_4Kb%29bY$#n_fb&I_d*J%LV84#IxAeBxw0M;v{vwT)Gws zDX*56BON!0NJ(ZiOR&gNDl3`B9F0y(sAp+9YbNUQ0X#e)9~S=eHpz@#yE=*EzAL6= zaS?(<5);@Y4()CywoAt#P}p-%Jom&HXEe`J5F(O$Pr*NYZlplEHYoVx z8#it|rF6d;v>FM%*HpR(02C0X&lP;n@VlyL52D}!$=}*5O5Oc|zpwZ3tocvx5Bc$Y zcDvvEJ<+<`{ncMl4`KjZxOwx&?gqX;{nPzA-p`ru?7CM*jMCq&ZqN;=2d%N~;c%x_ zzdfXBikk3G|I`Agk@o&4C%U)mJoFS0eNO=ipup|iZHmVGD&+CGzy9~lz6M3X^dWi! znx2PljQGw{fM3wlDr}%YO#*$<{S(#+WIh{x{y*BU?#-UP?d(?(~hGW1Fd#s`$5FqCzJx1C`Q+^|e zx))#6(fj0$T^hm5AdgFs@|Q znu!D7f7bet5X;nr%hvybpEo}B@__&oV>6;+AT-!U*WMwEH4en({!caREi;(an5OhlHC^gt)Q>=AE**hD^fQ}Rd_ zkL=)OOFhMu58%Rc|M1w#!DWZezYiQN-c1v0{CwW|VpgWr!Zrx%lSPuus#%$BmJ7Gx zx@KO_$bH#{REZDm1t!b%ms>l{u)S)@t=#r(9vNmjYWMZdo)=rCN9n3DO$h0PRWz8-|`uw`?n0JCv@Qa_M z`zfZWn4;3lA+QWgRV8;%{gAngc@%f6<#wByMIJ{HC2&o=&MK?ejnsNY(=N9gCS=mC zDO>3qOOtjQJx=)s={~R&JP9G>m6NqzKpi`Lqmt|jE=kN*9d`EZGMH=1GnohLB=01w zBR)2Mk+MIwrD?C`+ty^BRl>~OuxP)TuX#oI!uP$IOQ6i$tEmRo2RtE!dY}qeD4kAh zn=#p0G403ejMB0Dcj8iJae5RXP5;o_lNXQYX0g?}Y33sV$`3*M1t|O4yuT0#(84N(wc%k!Q2TENLOaOT(>jt4E(tO(ZsoqnX#yj zw`)yhuwiz=8fb8^X4cZmxDBmMim2(fCZkel0%npg;3f+8mTFMVrgS=Fe?v7c$s;pW z9*a1=RPl@G5ZvSyr<<5cyZ|#Mj8>*}88c;Y)t08Q`V>Ya1Uj-rw9e8+u}U2?wQ4yn z%L=-xmgUdIT7WS03Kv@tRY4rAO6FmH-ohP z$Tb>=Qe2nRu9S+!p52e%ylMC+zYD<1M#&k#FaI*hvfa_~L6+$rrt%7d{p{$?qkFqI zwBJ)pWwnk}vIhg};in<~_|y79)|6iUjMm?!!YO#zJpAzSm1D38#&Le{((~4DjTESc z+Dirs(uZGrouWR9`?}UBf|pz&AiUt;iGqX6kDprs$cX;n_{#O+O>{p6!Y&E<#tky~ zFs1wE!Ta0ml(q{_dyr!d-}}6~9`y`RJ`jC40ev zfshc|KP1!y37L)q0p{cdlV8gEd6VFQpXN}gLQ_^D%>yV4&3jXz6~9-G z(#w-eJq1r4QMe0`jcaxPpx@7m`vYdh+Fka&CfxgFp8c ziTp-*b@!E9#|WaMdo(49fAaV zSGXfP{>AJUnO8IUmC&O?X`dl81X`_>6)%pDf9j{kRHL~&Vx#J}xd$8&2cK`*a{JYL z_r~ziq{QsVeV?Rat9bJ7^Z;IYB~V~S3f^-?mAFG%HqY?Ke%Rv!m)+asd#hbN<`|!CiE4L4KW5gfBY{l@mE1^P57^QeUyW|7Z7f7#9KNo$3;n`;( zhh^whVDec-o5iUkY_w8cyHLMQ;o-+ilJQ614(w3(Vh2Kz#lRFKj2wDU3kLcjWpBUm z4C^%=?FiwUpd?mCu|*7EDj*H6UabYnR`~H!c^Ikeo7%+YwzGk-5qqJiB;lV{1~60} ziITJDS4}<3m(^kXS<-<0472)JxyAGT_F!$SQK9~nswTCgGk1y$bm2K>-w$mEuLl~U z!}cMrHxOn+-S)2GsjO@uQ8xVo1dE#4*&eHqDg^6swy*9z{}nAgL-x6nx(FD0AGM4g zoD3VD;?Ew=RzdKzp-+P(Rc&T)G^=sNg_(j=!k`Ld5oH;?+6i_*HR||Ru1vmUR+VFk zmFgHJ3AI$lu&%->%aAP@l-P^jh3!6|KZF8`lwfrjy+a(D-a$mR7I%JviCRmBII2 zc$Wk3a^PJKyvu=iIq-HIh&0}?+IAkmM{L$M%p)70#;bX@Lm}%rX473p?oE>6s^d7akj zGHOlHW=4FSR9TyKX}ZlcOg!ZlffPshjb*;KsBxx-b2}uYBnD?%IM19n}5?ZK;9V{!XN!zqGu{R!Ni6;PV*2OANNnfzm8{Q1T zUty-8dEm+xC<8Kf^RAeqaU7K!r!jm}?|}_0g>&!@b%9D%lPN%(q@|=Np9oPiL;=Lx zl8sL^IakOBToRHqI6>0_ECTW(F4|Q6_B_luzSC<}EGyN0KAWvM{w2w~E}kz}oN7Fw zezd3_wF1iQz7CVcvEBq28wG# z04a3j)A$;d0y?sI7Ew(^5?%y){1QzT38%#ry{f5~*>uj^j}?wdG;KI*YZ}e?Ud|mS zoS?%AYiE-ra#3w&(VC8n`X`!i$QvYN)p7_+Qc#Z~2=^*M$1#o24zizM*|+(#RM57l zhe8n17QgHq)bs=QTmI;GNNDM zK}^+&S_YOiN>|ihSyf&jz*K0!P|r5oS-Y$aMP%g9*H_Fk-Y=F!~ctJI4zyB zH-__uR*+%m%gFKSu+j~~X zHeOvT;hd=1no4t)!+p(i=7o^1R@2ppih{OQO`t2M;_#WbwI_xu$kQ3aL|o@qq)@od zaNw;#yPPj+YmQ7V0D2Q?#_F48gju2wllx{fyCL(^;ARDE_z#Ig3YZzphond&5G~AT zHiM3>QV{-Og{&zr1+ygK{c!N%C;kh3pV+dJ@9&}NVU660`33AOu=~LeSOv+9$oG!c<#B|e=4uf{mRji z>O`CkIm_%5V+%RUl+PGL6r6Sc=HNbK-cJC%_)8IAgRj2tlmC7BrAOT(|A^1)Hzw|p ze_DL^m%j0zx$Y0UCx^3Z!?`;~r`kR_oV4?6!Tf{0`^gU|C|FURm4Pvm)>dbn&}-R&x^8h!D_6Vs|{IE07ORauFNW)FpwN`8Fh)|L0L+v=-d zeeuOheVkp&p|U+f&c%K8Cin64zGi=_EuR~J9O>u3`@$_$lx@&Y zec|v6Jp}}uQXn0hD2VAh$4_5>YNX(RHP?rS52m1PO?&+G%iuW=`xANazQwUnS}%X_ zym@q}ar4{BZzsb0>Z^x`m+yo&sFovA5w)&zu90bP{|PJ8_hpj?6kRv^##4YJA?MG0 z=6+q93XQTZ=%tSX>Tt@=o`MAU2`JE8>Xd?y&;muphXMtr4efHsuruBM#Ga9ck%G(j zF5jnbjQc&AV^m(XF<%GIkd(DWdGDQu0V)&c0m8_TUTY%nyk)@!9z68%2?M&6&m!Mr zT(oJxGnf=clTxuf2C$=rp$?eqFnLZYHl=YmJMkEp<*|#khfng0a%8L_F;P}Qn#Rl2 zrvW*|mH<4$K&!It^F&u^de<1`)O679joW)zTwbo+i>?R3NP;0*VQh#JIADSUaVE0q zkWl`%xBETqL)d5#u5ykL6}C^}`$BbnK-n7%#Cix+I1%ZChlLi{9`T4OswDV=*WnTD z;sv22cku4PjTTHx97wPD;Lp2iGMhxR4bsR0(EzyxY-8$hY@v`_>++NU%TUDelen6K zhf!8UaE()mrl#^O8O-@Ry5SR3)( z^9Pb1$S#iQA?hRCc>;)=owAlH);oC#O33Y#!9O##UZkfgh$Dc3oko)eHo%$GSrubO z*BwEW0j;+n7k`|PX!EdTYKf_XSzDRHkvNZhLCzg<0>Kn5&(vj=p*4{=KJv&Z$gL)| zQzJL8f~e-xRN9zLk7^%fZA`sN+2|PXoOy(IhbJ^6%ElBdC@jn-Em-neGg^TdOE4Kopve3He2yTH~$_$W_}Kzz?Q1mb!uqS_h7R z3tm^kAhrlqEW}RnQ}YI?sa>Z;oYZ&<6;_nbJROzn*wYp}qEde?Bu-4LS-~_fJG0E@ z^@@#<3Jf5HE@j}zP(}#QMZ%a(al(XMj5R>(+YHWZ($F6I5~2QkVW%mj8 z77q=&CdDKRFHgy50zVJkz>uc@n-97A{%g_4+CLGB7B$jMS5k$VmWzt0NQ=m>k%G+H zYzw-&y!R>g7JZ94xwKvuSkK9j|0d};soK~UKLR2(GHYtOsXiVR1?UF?vwLVQV9O9R{!FR!c*fO)QuxF*fH2Qv__@ zWpv@Lv`rPUKp={n3Wm^|fPpi-TNWh~S$4&;^bOK_oaIa=ae^zC60xFT+44Q)j9C{F zU3|ouXJusqdy(b5+J#S6zG0uKPukWL)5$_RU{p@;Oy;fep5Ag6oN1ZLUvB2Bf?iN= zKp3+SJ$HV+Hg?*%Z439N^Ro@^Z2EZX=Y{v1%KJI~WZos2FER%ydSOw1ybU&_j}~nVv+L#?tMu&g7dC$nWJkh zI00e9x5z`%+Ao{bvJQZ*ShArc9;2TzJ@$-W!hBjriKzxmZxY-4+r*ZZ9-3S09qafhErJ2Q1G>{eeGYLg7#KV!84El%%yYLa?jU;py2fBE3xH%^j!w~v1Pn3GNK1Mx+Ll*FN*;*53) z6UW){v2FojJ@NxmpQ0n`n>ylEt6{Y=_CNVtPl4pJz-J^R1eyon7%3QWor?q7GAhd# zcO3ls4ivQi!}S~C)LK@?>PDEa{^bAs-4FXo(#72e9J$L`Oixb2jWE0D z%~yGY1)jDn`aS7SvOWHn=cT|t8FK?C* z(Wlw@Dhy}g&c}Xhq@ed!=CL=s16G^fJ-#c?aNq901A%oy?8uOaBxI>Hedg`$^-?56}|B4-!>>{ z4g$wt$Ja^Fw^SNL8l2%_^|UeX^)jRgZh7(bvq9A*d0Xx=1P5W^T;522o^Zy@4}hrm zRZ z0n;A*kcp0%Zz8=}8OUP-#99Q49tAC27%cLCp>JZVDR++zy7F_B4Qa}Aw51!z0M#nY zE6o6j=;B`w^0Q7QDiEk(ZK1C%0b)9kauj34z*!O;P}&g46X^LAtf!AC1h|kK{iy;{ zDE3Gwl#O?Wd;l9VvDhTnIGRHbinB`V!KJp4`zWMk3}6F)2+Ltg00wdw!QtV;c%cYE zIwldkf=wWhmK#l$@d?l2fjtW!Ll7=!(EfWLi-l*%`(spd4m5$NX@ z?T*ONe?&xxW~nutbfn&-%gUP>(pzc^3lI7jA(~OCu`#+wN7j}ucC`H3SY8Wh(z?2G zQ!ZEF)Yd$+nbpQ=5IDHeG30bTbCGXD4Np@nZP3w2q({1UwZvqaDJgPc!bE;#&zj5t zUVVZ|TLbO&w0)7r{W!<_Ir@DTL^V zJNUsiJy3z2D?9c*3^XJ3b;HzwnOd9LxurQ6%bY}RYmn2VyfdxI1;t5D(SZSeVixgvx-OvoEL{ou@OIl22 zjqlQK&w}Cg!RBhlXw76&vTJ+`lF6jbn7+a) zY-*YJ$aKO9RLc&%wJ+&-(xi)gHkoF5)%%F?8$wW*o5HhG)LwdnKkufFeXq@YvsmQ$)-Ee5fjZDG*21i*k9DYYs$sJ>RpiW)wCLemT~Lh5JfbZ# z^|DxTQnPWqCl(0QxmmkkEg3HX#ZV0dWI zwc`lx-XuQ!05hK>`J-?js8%6|<1>}Pwez2*ack2Ej5aI!My&fj$ts@vl+m=Y;opX^w; zae)Fbot1k|DS(u>rCg{m%VeXq^ z+hyo{=teNv=V+vlM--J*dIrN)WL4r26W#|EHz`j@85pk`!Y!F-AO4$!3j_Y#pTjMo zCVEqG&I9?-t~=hStKNi9!O!Tdq_?I(n5gwY0cOa3Fare&7X=tYYZ3+j`9H*el-gI) z@R%&@gY9?LYW~1Hi!R<1P@C5@3&$B$UT08se~9Ls`(x=@|3UZKA-CJ0z<6!YwLke- zcTUItWC$O0?cGb=M;?3Oml81dr&bwb2dSNGBB!|$mG$=SWhD3S?+CT@u*0gdHP30KG!nkzQtZdEI^b(?_2^n?`gi z2ekaEc|qTD0^PxR*q;%1=U49B3E^Rek1L~oUOVc~!+8q!7-<1s_+EeGjqBGx4V+KK zjKnz#cIM8ZVu;BCmQ7rhdFNL~ZGVsX?$2kLr;uKOfaTXP^hdd7JJJaLkak$8C(`Pi3i%r|DzC zbb%hc1uH$Ys=WtFwxVhPhmP4PDIod<9-f>9D{Pd85lQcDQ^ZC$e0TaZVzFq}n49QC zbc4^3xl)p?$;HcoDe$D|3&0D-_Fj6*FP*GX z!=gEjPykyS(^d`(4w9#V4Omc^*hvjdR_fwG>VUDQG7t&)7#pu5)N)|Awq+5%g?5Mf zg~5Wu7is`-4p4;5tYsZ%T4}t4)JJ}vb_aeW4MXaJ7U%ecL$ltb0E1I-S<_MT8 zHMmOKtsqF)$z-yjUY2eyw|=4eJeIhLsgpf~&T1KGr|EoF!f+%`<5kPzTNL8eB#v!Y zB4rfD!w06746GF-TWcZ9cD13LacXD07$R42P;)(=9me(=Te=XxQJUQ8Nu%MBcCwl_ zJmD6m^VXzswC${k2k$&eh*6|dS5R2+#?q<^;E=;wMxH`Z<7wh(@FrcStwVhALV?JH z>T!~+m<%wCLRIgpKDnN_&VX%kh(V~mCXvgs+O3R(BBx$tX;YcC9983-BT@iYBds_J zWWCxp^~L(}ig%>lwqbEa?OP8WE^1pFxejg;>gztSA!QHNV%FTi8I^5Wm0XD$!`6fb zkx~p~;MLS66|*|IaWjkNQVfJG!_U*2w=QwSro@4z*)~OmFP#VL=ocx%rVB6M7Fun{ zSS9Ttg%iao}R-Tx|_b;em3+g|l^UQ^q{hIn@JuPi;Pnuv(r;SCXL#jt* z!mP@4Qd1u_>kJTYyFdZayLr4sp6Wo)A@08f~K1M1-;$h6GG*M2=L5cuNC3RgyXvS?Q~+;1qY*-R0XY%Ka-SxGP5jVDB%h9kZgTowjAQU z_0}WP%`F)l!;?UMNa-wQ-%@W#?^H8WSTsBknmKPTr#N8UhN?&$^8v(Dm9~U=cE%}7 zBI)ewIXy!4Ol=!v#%}IuaB*;Za&U9}^*$h~Y4|}rH9M@SFSPqYQhYqM#AuM>tpjsX z;g-ovrDuwQw}JI@LyzoIj+%#$5oaH_tF+5oq<^Gs{tB81J#)>BCZ~9_8YFgImrue` z%Pg^{rI=3LOhH$V}O35R+1(-V*J)lU{-;&Z-|Gli)c5@>9J=jts9zEMo}}Ez;#Nxe>kJ&_5N@Bv9Q|2$94HVc ze;f)FZx7_z!`o4Cc-T{*m=Y+)`)_;yW{mxy!6SZ+HasSFF*ND+B9g+uLMnc`N=PBdiR$G&3ZkUpWS@v6CX2% zlut%q`j}R9shG~=5s8|Rk?5-Nf zqmNRYA0=oS`!SUlg1;V13BL%99 zo`TR!O!V*fcsRxB==RoZce_s!|51zY=R@g8{(P&mrr4>_CFaWeUVPu-VcQ-b4=eE} z=F#0>n9tj1dO7scGbTv!Jyt#67(~_VB@QS9!YNxa2kHGX%f#jXyiVT&?gW`zHh~h0 zg2O}l|fLzaQh=;#L)1z2`o7nJC#m^M-(5oFxb+88sTeg<(tkKW& zdmtzf)Ts;`e&k|oaLX?Mkt`O=7t#kCjzFa7^ZfP@h1@FKS&!31*!2q;?c?%>tp?6nz0qb&B`lRy zD8njw)=S@5V;gHTEoWEWDRfl4Thm#jqNFKjHH7i7;;Vl22Nys>3fe+EGo5KxTK4Ty z+lFP8T!F-jQD@PTaM^FELsi`WL}L@cTi1vt5i34%~(_yr)l05l#FAzs?XK%}zlArzmHzl~>!B?DU%lqOF6nTfiJnx=kA2$wu2LMw6`4< znY0VI9Ye{Ia=IYVhP2JhZCOd-MC3M#sO-)}gm5@;-z0FfxYaBOMd`=|Z@60(#S3w4*zA;-)>8%jL@@88yF=E&W4{TA}&Lc;7 zX*SWsrc_=+uG$vAUc@mI1}zr|B@;A`%lm1VEz8m*8y|0tM_;XPFf3;+OK*Bt;zklC zoKmYM5`4UDKJg1<)%7-tLC{7iv9JQ3mwIV(c13%uXlTTfxewvQI}0RO7sk^^yxA;e z(xup=j#IC6>JpG!FuK|IkF2cPD!b0p5~iC@^8)kf%3&6?i!RZc7u-}o7k1Hqld6Oa z-(w8u`p2Au4`$i~V0cw*nu2#w!>W1BI89ta1=9s8xjQOn5!0ej;Wlp5Okq7jAt(Q@ zsp57?qtK!wCNkLi5Unz1Q%%jZ$r=o>K3H3(bY>+^&jMgR)#o5lrGG2{~j zVNw>o?CkIyWavx1Y#m-`(tP(CaCGS*33*+BUaQ%k3#_64#os6|j^=3$WB%^nzukTR z{~9&Y_ed?>c-W1O8FrszN;(dja>C#H-V52|6a~^OO2W99yWC^Wqj?&ur{GUsc_#`a zPzDO1=0OzPPt(5@9^nTFqJJ|X|Z9^(^)Gv^U>(LB!p z$Pk_W-%xP!+7Djq5uKxeas&!wJ~U7OwSfXv>u;XPJXkl+{>QIuD)XN1?{saD#s8qQ zkL5uYH^E(Y{;_`VxP9z}U!gyBFX7`$G})KG8+ntF^2s5_lhTb7K1%BsHQ>SjA_d_~ zjHde;AH-m|agZDwJgxhgZvEDGe(O7razHk6ERyFDH#T+f@z%+$Kcl9o2=VVVahCRe z`?kyve(&V>w!h=`9D~fbv0TQb?PaaX22{OUcK$nr1A`1ZH+ zZ_C_qfVE8KPrlik=bjNRQSc@M3Y{(AYu)dVgst{G_7rfsG@*Czwk;C{Jq7z&xwoJo zXTlUvp=6TL`+M{BY5A}Pmj<@H^etl=;$?kYnz zgGGi&u24u-^cf&CHnNz24NpFuMX)^J5txO)8^a>T1B?xT$frYSN(Lj?-r{9Ilow$x zxUl4wM-P4Zu%Gg940^EHvz;(E(nJmTA+8^aBIn>|2Yc!v*AKZ+l_6&M>??vQiGk=j z=x{lH9=#8ve}a`-N(NXc&9&t(adla+(%1UJ6KbqV>g~Q*e0y6BSb>oD#A+zff+Ng| zut&05MM1=JahD=DSBYy03;>oAi<|VVRpO$C$tI-++dfKJTP!TbrDe6U66zttY^@o9 zt%*!KojK;LIJV2%rf99R&>kmnWNXtZkYb5c(9V%$<8*AN0bzuEj`$MS8%H8b z?AFyHk$vY4{B*Fo&L?)JZs{vRlIZHy^A-C0;Oa!>FjKlCz)T&<}-^nv)oLk8_!u{>vR!QL=OW&z!Gi* zHY#!%Pm#oeoZ;l=*BL_W#Ln93VvY8CW}Ri(zGEwU!bQJ}ndOUf9vl;0c||{r*7Gev z(`_2Z^kC$?bj##lx}qB{yGfIFU5l9BDS0H;(CQJLW>HJg)Ih1}+H5ep4NUJiydknB z{UIt?W(=rVvXcPO>^yM8jzfVx@AyF3Wr>8|aAQ}b+exx~Idd&%1Wvfv7}SV9Dy=J-#QWiHi73I;>&jK zi^Q=sASqnEr47#KQ!2eF3tlN}&n6S56FmGDWhBaxflJE^)rI{733Y>7nQOT7%ofyp zV;2hb8Ta}4^~BBM3`w4CB373*pMz3KTX4>&GtcVpX3lG%^BvQGITB^QE*#SRe2!%7 z{hE0mPjbXZCTo2R(q*??psQ{OrHwEnIi&%{OWU?gT(F)YUTw9Wdy;I|E%VLE!cEBS zEJQe5>L%xY)w~ zCM_~kMIFtWSsYCVuUhV8<90YI%Lq%yPaIA05v=C44BDq*m~;U;P8U0bWWnXPux#|59_YRbfg;^N`KJ}LC_3A2uNN=;LC z^b@p5RsuMrcgN&|Eer3NCA4MBWOcPHiZ$YUHM2#mOh-W6M&=I6?dqmva;-N-DT@zVD=%`N2#5#5V73r%0sfcPyA4CoOvFb+Z`Uw-}NgTsTX zukK#mp-1GVTE@v}y5zom=Tu^G@GbI6JyIY?zdlw6bCu@lBb0GI@s~VU8(UsS(m_rjNxVbxsKR18}@Zmq~lx1x1M>=XVUyT`FE63D~^@&`48=0 zy!HIi)!i+Y1^~Bj-!i)^yPvuX>?U0ABf0E8fPx6m;YYGJzxmDI`JJ8ubL3z7iytb< z{S@quAJ2a6Q@{2ph2FZQIgs7%9~^v-rN>8C5iZUDaz}OhVxWM#YG2*`ev+P- zneonI$x%byK1e$QUMVZt59!35_B~=rQ|NMpBo!y-e z0U;h5W|;%=^r zfTE}1c3Azt+ugnU{DHVnM>;%1fijQ1dHwF|=={0Pm@B;=4<)b`q7ojougB5mlPSEv zbNl=MYjziHe-9_!tK2qxbzEo*R{yvl!7eOiX$zXFLuAgxGqp|+*9!K?q5Q| z8hG+kn2E*~en07%r3GQ-;;Y>H!E*d`uZ5NZg zvwJ{VpN&b4{uq!FN2z6=hjYlz2L+cn*bM&6(w~bFT<)CL{f_RU*V)lApWY!jHZiu* zbvBKaBUI9b@J?F=wR01=zhL^-3dR~N-nvS<5Yg&%U*&{hWjn`O$((0^K`)(we(KJ6 z-e*l`Ed<1QYnmd>+a4h!iclUJ(dv8(i!-J~PQ!$DW-=rqGzpCO`5U4#JJyTBX`!)$ zadlF0U~!|gXJIU@4W2E}iD})yMqKAggWK^_?lI49FoV~$f{$D~io+@}?w~Lq`E7+a zo+<@aL4BGBNF6>Yw5PdN;zP3~zT=4o3C%A9sFfwkY^XnFyG!`ebMFSGoWX@*9FmnRamW#@sY@1A;&Jhz!!xmC%)xWLY@ zogGrDkC;Z%q%C2ie{Y7TQpghVZSPaN9*3TeAkSwqQDow3Y<;bc`@#h278 zB#QWU21{>f+>ttKI%`rPI)wsjN%GQIY@VOx!z}xND%f~1(MQI_#8fyRaOe`qFA~m{ zX{>GdY>z<-ekW){MtttifE(-@g}yU%Axayb*nP14n2)lLw`WN|gE)?uhR_SR0!{7c zDc6|15O-X`_=nLmBftw#!7*l0jaV#x5=SRBRTdvxTa!CB*0!nJSTtLX(Io4v634`& z@wshcW;vO{251Q!lM> zLk*MiA%vQw@kTE8G+6#Z1eU(W3=vs@HAOq5MRUXz2op2@))>nVtH;lZ8xhKzRD-<0 zD{-YWJyaNO@JD2T+#Y-|;0fTvGd%i?PTgm0iklhBQybD4xw`_p`iM9bvalF?7zeou z-=jrU(Ln@1rE$havFxD+O`5t`#MTNFO36Xg?@+U>4ofwiAjBY@=kU8Ap0p+8z*ch0 zRw>5A_d(>1H_T?2-n8hb$~MHHd88G#YAbhP9k^WLn5kt0Xs12UvDsKl9@ZFJqR?Po zmJ}(iO$92%aRiaFMC>y0w&hwN6LYSvrzu>3)PjT>w%Reg56gm$@>ncs4N}^0>Tz^| zud=0)hat4X$ZPUAx*tFa z2zOByaa_& z*evUD?rHD9vM(V9A;Fp z7Ml8>Mi%bSKBCOD^5}w{iN#_xaLe*L~jboo=s`G&swQIW$UOB`0)vSEzY>NUbt+`)`Go(drgdhQT>RAu19|lZW}JCbv|x{YHZ8KOV6{WZ;@<@3&K!G! zz3-M}Z)T-m>m|z~-5D!Goj2>W;vGYXUOcE3X9?#ldDHkfPW7#bc~MAVwM;WR%aSsS zn{;94gq#Cv+nL%%9PexkM~lt6reQ@bwM5m?=xo!qR6}EVc2q;h*;942SX!!$T7l ziwG4VN0ig4>;|%Eh0gduTf|2Z=ro>$F6de_Qx?7Iw8L+*@_JvgWZQ;3 zy|0X~2`H0-i7`4GO9#q%yluL~6&aifYC0KG*PZI@c!38uOhW5tOs~7E%%z|JEb3V> zPgC@I!J8DDo1cOnklUm%tB>EjDQ)02bJOUbeXp1|%|kbOf3fL2T)xcNH|QyLe|7M= zpJ$!hmkItBzZ=HxBTCOAJ=1OeqzOop-qvgRLI|OX9<+Xnj$-ip=v6p#Ht1j!_Jbe% z;BQ{zg--pL$cv%9sdax!ED9jt$c!Z5_fX0M(8)EY6dWFQ-P=*1*rMPSYb_K!*W=Kd z(I5QH-acyiMstku|CRZU=Ul-uvwPx+qfd*E*FFFpALhk(XdG1uNY5qs7SL<4ej51P zm!Eq=y4NS3ces*TLZ+B+-=XZ^dv+phMeW1YFm1lXt zMj-jY=Ue1WKWDte-fmA{4-VV`t2!>@L}6r;}xMQi$SvSL*1q-79O;>SkO&A2YT#Bh{LAT_b&(1=ej- zyq3M@9FW?azUvNq4^oW2R2y)@f?wZ!CidYq_iWcJxP7~R4(VnVd^zPr6hmXW+iT*S z+Aa9)T83KinYQ|TKiCT{XQAY)nSU%g%;}*0)+}RwBjhf3@s4?&n)P!IWDH4$Cf1T@@ zL(5xU=_kxp+GZTEk}qtVhZIP*!$QAsKJ0_Oa^0$G`7*dcP7%&TT(&zd#MwR;sAP4^ z8K~%KM!bEN#I>uwcf&B^GRf~d-sfq>`DrqSVQ0d+sj@@&TTTg!c{p0L%Y9&1Q>^Gku7ghN&gLvJUmwnNd`4uO}3 z^)b&Uxt(qUEsV|Gz#m`$3?})2bS8b`mgX5- zb}(}2W_FjP*R_#WF*lb7yVP~Ly;~_BQHZ_t zhIrJPZfaaD@T{3&Z_`Co{88FEZxiA-K?(61!7wnJ(3Kp&%hV^myqps!e>W%2bWiS^ z5$C_H`$U#5kQ2QLmN<4Ck!D^3(-_(0%K{C|qoxpt&!LK;ii{y|WJP-zMkoSr&~>fQ z*%>*zOH}a0nfQ2@7dkNwHydVqdv@+2D~}cOfgA1NERDS#I8y?KsH^ToHh!_0&#I|m zPMoic#A6)QaK^&R9(YDCev{kZx8Hr*+ZhgX8^x`DpLx0NZWxUm>63tmRb{Q<12s6k zc&guJhU_}OwM9z-?R$RA5FA&**=xD%Emr2-dCxq6-rY_y+HVdQ<188w0lB@B1*oB9 z;IY!S4>5Z~G~c}@&0XtTI=jOm!4mM}$+7H#`z&g6pf5oe6Sy8OBAly<+$QvccOHm*j=a5tYxp^Zn+SK6AptT2}>wQ z7;s;kE}MDoywbnyE>}i!h-J*qz%IDi83RIyS1$jV>@qD^>a#b;My&EMGvfWsaC(_r`$uI7~$&k_L*dK z!`*hjmTq7&bFW-wrtKXH70n#oK_l7sSP~tLeEL>?$4WXrOy0Ru$JYn7Bs1pM>8#vc z2(>qW!^Ot(zk`E1y_R)#bB@hxGl#zYM*EGmwffz$=DkNJpLF-IJ>9&v`Hp+1;Ma|| zw&E||&`3@%^(Dv}`6MiOFndgIs@c*oR z=^N%tzloQ9n7M9~-o4a%;D5+Cd2{VSamdxgg7+SGC=!|kP7cKcm3aL(os02$&MrTe zG-XEUR_9tqHsP76hyACMZxSq?b!y7*zyI0$7QgaSbXj2XX_WEEna;PqPdqepbZcoy zqXn^K{FuA%;J+Q>U8eYMD1Q6P&IJUjOgA=;EcizA?x#H8&n^GY4=lDAP-dO`D0qI8YSv?az4;e@tI8<1@%oR^nUyt_-*pG=RLg%|C52yAfyCVzQa~AY1V=m-#+qT&p@P*X*Xg0Bvb99tU z^0mhIIv2bqZPlS^s6DSJ$F;`u^-}GE!BdWJp4jE;&kI)kUoF;JFx*hvxBgk7zBW0# z%#!-ea9fhIEUBDNtmYz|C+%vW(KhHzEU!4rgviPtIc}3dEF_b?CZNo5yA6 z8m`f4*qSb4P8{EC^@yJt@+LRQGYiK|Ymie*Y&boLj!Cl*9FZN1)Z=58{KPhV)bxbM z!sM8FC&3@fCUU&|Q7*SM;x*w>O6(Q$(Pq0oMnvf9_BbXUaXx9gLKt9VonuG4ziqy= z1uJV7Mh#7G=nyOT$88MUm0EWn&DIBa42d*Nr=F5>)XhRQ+iEsy*D}0R>{}pP6dX9j5 zrm2(U3MwAIC?`U1TFN8&=t?iYylUOhl`O?DG?9>5fA|p z5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo z0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p z5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo z0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p z5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo z0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z5fA|p5CIVo0TB=Z z5fA|p5CIVo0TEbEAe5wEckiWKZ}HdM&ywsn@#`ijm*Pp18pC4wMZKxqc{1rq^1Skk z`Kex#i}{Zm@0VzR&vlbac%=L!DRnF)F4s$vsh{jzl*cOl7bD5e)8wj6pQb0Jud2^m z1?!Ke$W`?%mOoAJx#=aEuxnA@dGSTPsr+L4dGWqge1!H>dl!|ytlLTbHnp2%qo)<^ zJzHtZ_nc4ll3dh#wu+OvNzap#X@8SE+2YwLsa}$4|4x%DADm^^FMn}X?#1%n{;of> p;PfjG?k9iv4n%J8S0$QFe6sc%H(eXLJ8QWc|NJ(o_fm;v@;{D(1}y*p literal 340884 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 QXYPG^3+c;kjMMo42hY(TlK=n! diff --git a/DSView/res/DSLogic33.bin b/DSView/res/DSLogic33.bin index 61d0846d9913ccaf092498bc079bb3bbc592438b..849cd1df837a65270ed4b5788cd6ca4c42a83b9c 100644 GIT binary patch literal 340884 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
Y`SXvw{gLV2%O47>FLv)t4lEjmahmY>-ksI8 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 IA?~ODKcra>Q2+n{ literal 340884 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 K!hms+`TqhG*P)aE diff --git a/DSView/res/DSLogic50.bin b/DSView/res/DSLogic50.bin index cb68b89c1fefa4c05f6e3b18641e82df50a867d1..afb8b0aefc3ec68eced690ba33a252faa96c1f4b 100644 GIT binary patch literal 340884 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 literal 340884 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,rvn9dF<7xw^ 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 z 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, dso_cmd_gen(sdi, 0, SR_CONF_SAMPLERATE)); } else { devc->sample_wide = (devc->cur_samplerate <= DSLOGIC_MAX_LOGIC_SAMPLERATE); + if (!devc->stream) { + if (devc->limit_samples > DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)) + devc->rle_mode = TRUE; + else + devc->rle_mode = FALSE; + } ret = SR_OK; } } else if (id == SR_CONF_CLOCK_TYPE) { @@ -1459,6 +1465,14 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, ret = SR_OK; } else if (id == SR_CONF_LIMIT_SAMPLES) { devc->limit_samples = g_variant_get_uint64(data); + if(sdi->mode == LOGIC) { + if (!devc->stream) { + if (devc->limit_samples > DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)) + devc->rle_mode = TRUE; + else + devc->rle_mode = FALSE; + } + } ret = SR_OK; } else if (id == SR_CONF_DEVICE_MODE) { sdi->mode = g_variant_get_int16(data); @@ -1574,6 +1588,7 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else if (!strcmp(stropt, opmodes[SR_OP_STREAM]) && (devc->op_mode != SR_OP_STREAM)) { devc->op_mode = SR_OP_STREAM; devc->stream = TRUE; + devc->rle_mode = FALSE; devc->ch_mode = 0; devc->samplerates_size = 10; adjust_probes(sdi, stream_ch_num[0]); @@ -1585,6 +1600,7 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, adjust_probes(sdi, buffer_ch_num[0]); devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; + devc->sample_wide = TRUE; } else if (!strcmp(stropt, opmodes[SR_OP_EXTERNAL_TEST]) && (devc->op_mode != SR_OP_EXTERNAL_TEST)) { devc->op_mode = SR_OP_EXTERNAL_TEST; devc->stream = FALSE; @@ -1593,6 +1609,7 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, adjust_probes(sdi, buffer_ch_num[0]); devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; + devc->sample_wide = TRUE; } else if (!strcmp(stropt, opmodes[SR_OP_LOOPBACK_TEST]) && (devc->op_mode != SR_OP_LOOPBACK_TEST)) { devc->op_mode = SR_OP_LOOPBACK_TEST; devc->stream = FALSE; @@ -1601,11 +1618,14 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, adjust_probes(sdi, buffer_ch_num[0]); devc->limit_samples = DSLOGIC_MAX_LOGIC_DEPTH; devc->cur_samplerate = DSLOGIC_MAX_LOGIC_SAMPLERATE; + devc->sample_wide = TRUE; } else { ret = SR_ERR; } - if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) + if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) { devc->cur_samplerate = samplerates[devc->samplerates_size-1]; + devc->sample_wide = (devc->cur_samplerate <= DSLOGIC_MAX_DSO_SAMPLERATE); + } } sr_dbg("%s: setting pattern to %d", __func__, devc->op_mode); @@ -1630,8 +1650,10 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, break; } } - if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) + if (devc->cur_samplerate > samplerates[devc->samplerates_size-1]) { devc->cur_samplerate = samplerates[devc->samplerates_size-1]; + devc->sample_wide = (devc->cur_samplerate <= DSLOGIC_MAX_DSO_SAMPLERATE); + } } sr_dbg("%s: setting channel mode to %d", __func__, devc->ch_mode); @@ -2468,8 +2490,9 @@ static void receive_trigger_pos(struct libusb_transfer *transfer) switch (transfer->status) { case LIBUSB_TRANSFER_COMPLETED: if (transfer->actual_length == sizeof(struct ds_trigger_pos)) { - if (trigger_pos->remain_cnt < devc->limit_samples) { - devc->actual_samples = (devc->limit_samples - ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE) * (trigger_pos->remain_cnt + devc->rle_mode)); + if (devc->stream || trigger_pos->remain_cnt < devc->limit_samples) { + if (!devc->stream) + devc->actual_samples = (devc->limit_samples - ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE) * (trigger_pos->remain_cnt)); packet.type = SR_DF_TRIGGER; packet.payload = trigger_pos; From 5dccc91970b3b1f4c40e5d019e616bbf550b43c9 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Thu, 3 Dec 2015 10:55:59 +0800 Subject: [PATCH 20/25] Fix minor issues of display --- DSView/pv/view/decodetrace.cpp | 6 ++++-- DSView/pv/view/viewport.cpp | 15 ++++++++++----- DSView/pv/view/viewport.h | 1 + libsigrok4DSL/hardware/DSL/dsl.h | 4 ++-- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/DSView/pv/view/decodetrace.cpp b/DSView/pv/view/decodetrace.cpp index 8b870721..d08627ea 100644 --- a/DSView/pv/view/decodetrace.cpp +++ b/DSView/pv/view/decodetrace.cpp @@ -710,8 +710,10 @@ QComboBox* DecodeTrace::create_probe_selector( { selector->addItem(s->get_name(), qVariantFromValue((void*)s.get())); - if ((*probe_iter).second == s) - selector->setCurrentIndex(i + 1); + if (probe_iter != dec->channels().end()) { + if ((*probe_iter).second->get_index() == s->get_index()) + selector->setCurrentIndex(i + 1); + } } } diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 4af34e18..16e7dcf8 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -381,10 +381,11 @@ void Viewport::mousePressEvent(QMouseEvent *event) const double samples_per_pixel = _view.session().get_device()->get_sample_rate() * _view.scale(); while (i != _view.get_cursorList().end()) { cursorX = (*i)->index()/samples_per_pixel - (_view.offset() / _view.scale()); - if ((*i)->grabbed()) + if ((*i)->grabbed()) { _view.get_ruler()->rel_grabbed_cursor(); - else if (qAbs(cursorX - event->pos().x()) <= HitCursorMargin) { + } else if (qAbs(cursorX - event->pos().x()) <= HitCursorMargin) { _view.get_ruler()->set_grabbed_cursor(*i); + _measure_type = LOGIC_CURS; break; } i++; @@ -521,7 +522,8 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) if(_drag_sig) _drag_sig.reset(); - if (_view.session().get_device()->dev_inst()->mode == LOGIC && + if ((_measure_type != LOGIC_MOVE && _measure_type != LOGIC_CURS) && + _view.session().get_device()->dev_inst()->mode == LOGIC && _mouse_down_point.x() == event->pos().x() && event->button() & Qt::LeftButton) { if (_measure_type == LOGIC_EDGE) { @@ -529,14 +531,14 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) _measure_shown = false; _edge_rising = 0; _edge_falling = 0; - } else if (_measure_type != LOGIC_MOVE) { + } else { _measure_type = LOGIC_EDGE; _edge_start = (_view.offset() + (event->pos().x() + 0.5) * _view.scale()) * _view.session().get_device()->get_sample_rate(); } } if (_view.session().get_device()->dev_inst()->mode == LOGIC && - _measure_type != LOGIC_EDGE) { + (_measure_type == NO_MEASURE || _measure_type == LOGIC_MOVE)) { const double strength = _drag_strength*DragTimerInterval*1.0/_time.elapsed(); if (_time.elapsed() < 200 && abs(_drag_strength) < MinorDragOffsetUp && @@ -556,6 +558,9 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event) } } + if (!_view.get_ruler()->get_grabbed_cursor() && _measure_type == LOGIC_CURS) + _measure_type = NO_MEASURE; + update(); } diff --git a/DSView/pv/view/viewport.h b/DSView/pv/view/viewport.h index 9c0da6be..f74a3b17 100644 --- a/DSView/pv/view/viewport.h +++ b/DSView/pv/view/viewport.h @@ -59,6 +59,7 @@ public: LOGIC_FREQ, LOGIC_EDGE, LOGIC_MOVE, + LOGIC_CURS, DSO_FREQ }; diff --git a/libsigrok4DSL/hardware/DSL/dsl.h b/libsigrok4DSL/hardware/DSL/dsl.h index 9f1bbf73..2a693e70 100644 --- a/libsigrok4DSL/hardware/DSL/dsl.h +++ b/libsigrok4DSL/hardware/DSL/dsl.h @@ -61,8 +61,8 @@ #define MAX_ANALOG_PROBES_NUM 9 #define MAX_DSO_PROBES_NUM 2 -#define DEFAULT_SAMPLERATE SR_MHZ(100) -#define DEFAULT_SAMPLELIMIT SR_MB(16) +#define DEFAULT_SAMPLERATE SR_MHZ(1) +#define DEFAULT_SAMPLELIMIT SR_MB(1) #define VPOS_MINISTEP 0.083 #define VPOS_STEP 26.0 From b9e8c02c09614f539ac0e65ca99a316b7d957dd3 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Mon, 7 Dec 2015 23:07:11 +0800 Subject: [PATCH 21/25] Add "RLE" flag into sample count combobox --- DSView/pv/sigsession.cpp | 16 ++++--- DSView/pv/toolbars/samplingbar.cpp | 72 ++++++++-------------------- DSView/pv/view/view.cpp | 1 + DSView/pv/view/viewport.cpp | 11 ++++- DSView/pv/view/viewport.h | 2 + libsigrok4DSL/hardware/DSL/dscope.c | 5 ++ libsigrok4DSL/hardware/DSL/dslogic.c | 6 +++ libsigrok4DSL/hardware/demo/demo.c | 5 +- libsigrok4DSL/libsigrok.h | 1 + 9 files changed, 58 insertions(+), 61 deletions(-) diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index deff6746..5b038474 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -1107,14 +1107,16 @@ void SigSession::data_feed_in(const struct sr_dev_inst *sdi, { { boost::lock_guard lock(_data_mutex); - BOOST_FOREACH(const boost::shared_ptr g, _group_traces) - { - assert(g); + if (_cur_logic_snapshot) { + BOOST_FOREACH(const boost::shared_ptr g, _group_traces) + { + assert(g); - _cur_group_snapshot = boost::shared_ptr( - new data::GroupSnapshot(_logic_data->get_snapshots().front(), g->get_index_list())); - _group_data->push_snapshot(_cur_group_snapshot); - _cur_group_snapshot.reset(); + _cur_group_snapshot = boost::shared_ptr( + new data::GroupSnapshot(_logic_data->get_snapshots().front(), g->get_index_list())); + _group_data->push_snapshot(_cur_group_snapshot); + _cur_group_snapshot.reset(); + } } _cur_logic_snapshot.reset(); _cur_dso_snapshot.reset(); diff --git a/DSView/pv/toolbars/samplingbar.cpp b/DSView/pv/toolbars/samplingbar.cpp index fe05e001..a9c34f1e 100644 --- a/DSView/pv/toolbars/samplingbar.cpp +++ b/DSView/pv/toolbars/samplingbar.cpp @@ -224,6 +224,7 @@ void SamplingBar::on_configure() ret = dlg.exec(); if (ret == QDialog::Accepted) { device_updated(); + update_sample_count_selector(); update_sample_rate_selector(); commit_sample_rate(); } @@ -511,29 +512,6 @@ void SamplingBar::on_samplecount_sel(int index) SR_CONF_LIMIT_SAMPLES, g_variant_new_uint64(sample_count)); - -// GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); -// if (gvar != NULL) { -// stream_mode = g_variant_get_boolean(gvar); -// g_variant_unref(gvar); -// } -// gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); -// if (gvar != NULL) { -// max_sample_count = g_variant_get_uint64(gvar); -// g_variant_unref(gvar); -// } -// if (!stream_mode) { -// if (sample_count > max_sample_count) { -// _devInst->set_config(NULL, NULL, -// SR_CONF_RLE, -// g_variant_new_boolean(true)); -// } else { -// _devInst->set_config(NULL, NULL, -// SR_CONF_RLE, -// g_variant_new_boolean(false)); -// } -// } - sample_count_changed(); update_scale(); } @@ -563,33 +541,6 @@ void SamplingBar::on_samplerate_sel(int index) SR_CONF_SAMPLERATE, g_variant_new_uint64(sample_rate)); -// GVariant* gvar = _devInst->get_config(NULL, NULL, SR_CONF_STREAM); -// if (gvar != NULL) { -// stream_mode = g_variant_get_boolean(gvar); -// g_variant_unref(gvar); -// } -// gvar = _devInst->get_config(NULL, NULL, SR_CONF_LIMIT_SAMPLES); -// if (gvar != NULL) { -// sample_count = g_variant_get_uint64(gvar); -// g_variant_unref(gvar); -// } -// gvar = _devInst->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); -// if (gvar != NULL) { -// max_sample_count = g_variant_get_uint64(gvar); -// g_variant_unref(gvar); -// } -// if (!stream_mode) { -// if (sample_count > max_sample_count) { -// _devInst->set_config(NULL, NULL, -// SR_CONF_RLE, -// g_variant_new_boolean(true)); -// } else { -// _devInst->set_config(NULL, NULL, -// SR_CONF_RLE, -// g_variant_new_boolean(false)); -// } -// } - update_scale(); } } @@ -599,6 +550,8 @@ void SamplingBar::update_sample_count_selector() GVariant *gvar_dict, *gvar_list; const uint64_t *elements = NULL; gsize num_elements; + bool stream_mode = false; + uint64_t max_sample_count = 0; if (_updating_sample_count) return; @@ -621,6 +574,17 @@ void SamplingBar::update_sample_count_selector() return; } + GVariant* gvar = dev_inst->get_config(NULL, NULL, SR_CONF_STREAM); + if (gvar != NULL) { + stream_mode = g_variant_get_boolean(gvar); + g_variant_unref(gvar); + } + gvar = dev_inst->get_config(NULL, NULL, SR_CONF_RLE_SAMPLELIMITS); + if (gvar != NULL) { + max_sample_count = g_variant_get_uint64(gvar); + g_variant_unref(gvar); + } + if ((gvar_list = g_variant_lookup_value(gvar_dict, "samplecounts", G_VARIANT_TYPE("at")))) { @@ -631,8 +595,12 @@ void SamplingBar::update_sample_count_selector() for (unsigned int i = 0; i < num_elements; i++) { char *const s = sr_samplecount_string(elements[i]); - _sample_count.addItem(QString(s), - qVariantFromValue(elements[i])); + if (!stream_mode && (elements[i] > max_sample_count)) + _sample_count.addItem(QString(s)+"(RLE)", + qVariantFromValue(elements[i])); + else + _sample_count.addItem(QString(s), + qVariantFromValue(elements[i])); g_free(s); } diff --git a/DSView/pv/view/view.cpp b/DSView/pv/view/view.cpp index be191e93..911a89e4 100644 --- a/DSView/pv/view/view.cpp +++ b/DSView/pv/view/view.cpp @@ -508,6 +508,7 @@ void View::signals_changed() next_v_offset += traceHeight + 2 * SignalMargin; } + _viewport->clear_measure(); header_updated(); normalize_layout(); } diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 16e7dcf8..dfa94970 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -414,6 +414,9 @@ void Viewport::mousePressEvent(QMouseEvent *event) } } + if (_measure_type == LOGIC_FREQ) + _measure_type = NO_MEASURE; + update(); } @@ -481,7 +484,7 @@ void Viewport::mouseMoveEvent(QMouseEvent *event) (_mouse_down_point - event->pos()).x() * _view.scale()); _drag_strength = (_mouse_down_point - event->pos()).x(); - measure(); + //measure(); } } @@ -658,6 +661,12 @@ void Viewport::set_receive_len(quint64 length) update(); } +void Viewport::clear_measure() +{ + _measure_type = NO_MEASURE; + update(); +} + void Viewport::measure() { if ((_view.session().get_device()->dev_inst()->mode == LOGIC && diff --git a/DSView/pv/view/viewport.h b/DSView/pv/view/viewport.h index f74a3b17..40a15bbc 100644 --- a/DSView/pv/view/viewport.h +++ b/DSView/pv/view/viewport.h @@ -77,6 +77,8 @@ public: void start_trigger_timer(int msec); void stop_trigger_timer(); + void clear_measure(); + protected: void paintEvent(QPaintEvent *event); diff --git a/libsigrok4DSL/hardware/DSL/dscope.c b/libsigrok4DSL/hardware/DSL/dscope.c index 3d7971d0..26191168 100644 --- a/libsigrok4DSL/hardware/DSL/dscope.c +++ b/libsigrok4DSL/hardware/DSL/dscope.c @@ -1300,6 +1300,11 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, return SR_ERR; *data = g_variant_new_uint64(DSCOPE_MAX_DEPTH); break; + case SR_CONF_RLE_SAMPLELIMITS: + if (!sdi) + return SR_ERR; + *data = g_variant_new_uint64(DSCOPE_MAX_DEPTH); + break; default: return SR_ERR_NA; } diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index f9992288..587cab68 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -1391,6 +1391,12 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, devc = sdi->priv; *data = g_variant_new_uint64(DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)); break; + case SR_CONF_RLE_SAMPLELIMITS: + if (!sdi) + return SR_ERR; + devc = sdi->priv; + *data = g_variant_new_uint64(DSLOGIC_MAX_LOGIC_DEPTH*ceil(samplerates[devc->samplerates_size-1] * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)); + break; case SR_CONF_STATUS: if (!sdi) return SR_ERR; diff --git a/libsigrok4DSL/hardware/demo/demo.c b/libsigrok4DSL/hardware/demo/demo.c index cc38258b..a31467a5 100644 --- a/libsigrok4DSL/hardware/demo/demo.c +++ b/libsigrok4DSL/hardware/demo/demo.c @@ -498,7 +498,10 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi, case SR_CONF_MAX_LOGIC_SAMPLELIMITS: *data = g_variant_new_uint64(DEMO_MAX_LOGIC_DEPTH); break; - default: + case SR_CONF_RLE_SAMPLELIMITS: + *data = g_variant_new_uint64(DEMO_MAX_LOGIC_DEPTH); + break; + default: return SR_ERR_NA; } diff --git a/libsigrok4DSL/libsigrok.h b/libsigrok4DSL/libsigrok.h index 4062a61a..e55adbb0 100644 --- a/libsigrok4DSL/libsigrok.h +++ b/libsigrok4DSL/libsigrok.h @@ -827,6 +827,7 @@ enum { SR_CONF_MAX_DSO_SAMPLELIMITS, SR_CONF_MAX_LOGIC_SAMPLERATE, SR_CONF_MAX_LOGIC_SAMPLELIMITS, + SR_CONF_RLE_SAMPLELIMITS, /*--- Special stuff -------------------------------------------------*/ From 6c7101c2cc90286c0805b737086d1b0ff5cdd3bb Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Thu, 10 Dec 2015 21:46:08 +0800 Subject: [PATCH 22/25] Improve trigger commit strategy @ LA mode --- DSView/pv/dock/triggerdock.cpp | 277 +++++++++++---------------------- DSView/pv/dock/triggerdock.h | 18 +-- DSView/pv/mainwindow.cpp | 22 +++ DSView/pv/mainwindow.h | 2 + DSView/pv/sigsession.cpp | 33 ---- DSView/pv/sigsession.h | 4 - DSView/pv/view/logicsignal.cpp | 34 ++-- DSView/pv/view/logicsignal.h | 2 +- libsigrok4DSL/trigger.c | 8 +- 9 files changed, 148 insertions(+), 252 deletions(-) diff --git a/DSView/pv/dock/triggerdock.cpp b/DSView/pv/dock/triggerdock.cpp index 6201c010..b997386c 100644 --- a/DSView/pv/dock/triggerdock.cpp +++ b/DSView/pv/dock/triggerdock.cpp @@ -147,11 +147,6 @@ TriggerDock::TriggerDock(QWidget *parent, SigSession &session) : connect(_value0_lineEdit, SIGNAL(editingFinished()), this, SLOT(value_changed())); connect(_value1_lineEdit, SIGNAL(editingFinished()), this, SLOT(value_changed())); - connect(_logic_comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(logic_changed(int))); - connect(_inv0_comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(inv_changed(int))); - connect(_inv1_comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(inv_changed(int))); - connect(_count0_spinBox, SIGNAL(editingFinished()), this, SLOT(count_changed())); - connect(_count1_spinBox, SIGNAL(editingFinished()), this, SLOT(count_changed())); } _serial_start_label = new QLabel(tr("Start Flag: "), _widget); @@ -221,7 +216,6 @@ TriggerDock::TriggerDock(QWidget *parent, SigSession &session) : connect(_serial_start_lineEdit, SIGNAL(editingFinished()), this, SLOT(value_changed())); connect(_serial_stop_lineEdit, SIGNAL(editingFinished()), this, SLOT(value_changed())); connect(_serial_edge_lineEdit, SIGNAL(editingFinished()), this, SLOT(value_changed())); - connect(_serial_data_comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(serial_channel_changed(int))); connect(_serial_value_lineEdit, SIGNAL(editingFinished()), this, SLOT(value_changed())); @@ -233,9 +227,8 @@ TriggerDock::TriggerDock(QWidget *parent, SigSession &session) : connect(simple_radioButton, SIGNAL(clicked()), this, SLOT(simple_trigger())); connect(adv_radioButton, SIGNAL(clicked()), this, SLOT(adv_trigger())); - connect(stages_comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(trigger_stages_changed(int))); - connect(position_slider, SIGNAL(valueChanged(int)), this, SLOT(pos_changed(int))); - connect(_adv_tabWidget, SIGNAL(currentChanged(int)), this, SLOT(adv_tog(int))); + connect(stages_comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(widget_enable(int))); + QVBoxLayout *layout = new QVBoxLayout(_widget); QGridLayout *gLayout = new QGridLayout(); @@ -278,21 +271,6 @@ void TriggerDock::simple_trigger() stages_label->setDisabled(true); stages_comboBox->setDisabled(true); _adv_tabWidget->setDisabled(true); - for (i = 0; i < TriggerStages; i++) { - stage_tabWidget->setTabEnabled(i, true); -// _mu_label_list.at(i)->setDisabled(true); -// _logic_comboBox_list.at(i)->setDisabled(true); - -// _value0_lineEdit_list.at(i)->setDisabled(true); -// _count0_spinBox_list.at(i)->setDisabled(true); -// _inv0_comboBox_list.at(i)->setDisabled(true); - -// _value1_lineEdit_list.at(i)->setDisabled(true); -// _count1_spinBox_list.at(i)->setDisabled(true); -// _inv1_comboBox_list.at(i)->setDisabled(true); - } - ds_trigger_set_mode(SIMPLE_TRIGGER); - _session.set_adv_trigger(false); } void TriggerDock::adv_trigger() @@ -313,12 +291,7 @@ void TriggerDock::adv_trigger() msg.exec(); simple_radioButton->setChecked(true); } else { - widget_enable(); - if (_adv_tabWidget->currentIndex() == 0) - ds_trigger_set_mode(ADV_TRIGGER); - else if (_adv_tabWidget->currentIndex() == 1) - ds_trigger_set_mode(SERIAL_TRIGGER); - _session.set_adv_trigger(true); + widget_enable(0); } } else { QMessageBox msg(this); @@ -331,18 +304,10 @@ void TriggerDock::adv_trigger() } } -void TriggerDock::trigger_stages_changed(int index) +void TriggerDock::widget_enable(int index) { - widget_enable(); - ds_trigger_set_stage(index); - value_changed(); - logic_changed(0); - inv_changed(0); - count_changed(); -} + (void) index; -void TriggerDock::widget_enable() -{ int i; int enable_stages; stages_label->setDisabled(false); @@ -352,143 +317,23 @@ void TriggerDock::widget_enable() enable_stages = stages_comboBox->currentText().toInt(); for (i = 0; i < enable_stages; i++) { stage_tabWidget->setTabEnabled(i, true); -// _mu_label_list.at(i)->setVisible(true); -// _mu_label_list.at(i)->setDisabled(false); -// _logic_comboBox_list.at(i)->setVisible(true); -// _logic_comboBox_list.at(i)->setDisabled(false); - -// _value0_lineEdit_list.at(i)->setVisible(true); -// _value0_lineEdit_list.at(i)->setDisabled(false); -// _count0_spinBox_list.at(i)->setVisible(true); -// _count0_spinBox_list.at(i)->setDisabled(false); -// _inv0_comboBox_list.at(i)->setVisible(true); -// _inv0_comboBox_list.at(i)->setDisabled(false); - -// _value1_lineEdit_list.at(i)->setVisible(true); -// _value1_lineEdit_list.at(i)->setDisabled(false); -// _count1_spinBox_list.at(i)->setVisible(true); -// _count1_spinBox_list.at(i)->setDisabled(false); -// _inv1_comboBox_list.at(i)->setVisible(true); -// _inv1_comboBox_list.at(i)->setDisabled(false); } for (i = enable_stages; i < TriggerStages; i++) { stage_tabWidget->setTabEnabled(i, false); -// _mu_label_list.at(i)->setVisible(false); -// _logic_comboBox_list.at(i)->setVisible(false); - -// _value0_lineEdit_list.at(i)->setVisible(false); -// _count0_spinBox_list.at(i)->setVisible(false); -// _inv0_comboBox_list.at(i)->setVisible(false); - -// _value1_lineEdit_list.at(i)->setVisible(false); -// _count1_spinBox_list.at(i)->setVisible(false); -// _inv1_comboBox_list.at(i)->setVisible(false); } } void TriggerDock::value_changed() { - int i; - - if (_adv_tabWidget->currentIndex() == 0) { - for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { - _value0_lineEdit_list.at(i)->setText(_value0_lineEdit_list.at(i)->text().toUpper()); - while(_value0_lineEdit_list.at(i)->text().length() < TriggerProbes) - _value0_lineEdit_list.at(i)->setText("X" + _value0_lineEdit_list.at(i)->text()); - - _value1_lineEdit_list.at(i)->setText(_value1_lineEdit_list.at(i)->text().toUpper()); - while(_value1_lineEdit_list.at(i)->text().length() < TriggerProbes) - _value1_lineEdit_list.at(i)->setText("X" + _value1_lineEdit_list.at(i)->text()); - - ds_trigger_stage_set_value(i, TriggerProbes, - _value0_lineEdit_list.at(i)->text().toLocal8Bit().data(), - _value1_lineEdit_list.at(i)->text().toLocal8Bit().data()); - } - } else if(_adv_tabWidget->currentIndex() == 1){ - _serial_start_lineEdit->setText(_serial_start_lineEdit->text().toUpper()); - ds_trigger_stage_set_value(0, TriggerProbes, - _serial_start_lineEdit->text().toLocal8Bit().data(), - _value1_lineEdit_list.at(0)->text().toLocal8Bit().data()); - _serial_stop_lineEdit->setText(_serial_stop_lineEdit->text().toUpper()); - ds_trigger_stage_set_value(1, TriggerProbes, - _serial_stop_lineEdit->text().toLocal8Bit().data(), - _value1_lineEdit_list.at(1)->text().toLocal8Bit().data()); - _serial_edge_lineEdit->setText(_serial_edge_lineEdit->text().toUpper()); - ds_trigger_stage_set_value(2, TriggerProbes, - _serial_edge_lineEdit->text().toLocal8Bit().data(), - _value1_lineEdit_list.at(2)->text().toLocal8Bit().data()); - //_serial_data_comboBox - const int data_channel = _serial_data_comboBox->currentText().toInt(); - char channel[31]; - for(i = 0; i < 31; i++){ - if (i == (30 - 2*data_channel)) - channel[i] = '1'; - else if (i%2 == 0) - channel[i] = '0'; - else - channel[i] = ' '; - } - ds_trigger_stage_set_value(3, TriggerProbes, - channel, - _value1_lineEdit_list.at(3)->text().toLocal8Bit().data()); - _serial_value_lineEdit->setText(_serial_value_lineEdit->text().toUpper()); - ds_trigger_stage_set_value(4, TriggerProbes, - _serial_value_lineEdit->text().toLocal8Bit().data(), - _value1_lineEdit_list.at(4)->text().toLocal8Bit().data()); - } -} - -void TriggerDock::serial_channel_changed(int index) -{ - (void)index; - value_changed(); -} - -void TriggerDock::logic_changed(int index) -{ - (void)index; - - int i; - - for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { - ds_trigger_stage_set_logic(i, TriggerProbes, - _logic_comboBox_list.at(i)->currentIndex()); - } -} - -void TriggerDock::inv_changed(int index) -{ - (void)index; - - int i; - - for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { - ds_trigger_stage_set_inv(i, TriggerProbes, - _inv0_comboBox_list.at(i)->currentIndex(), - _inv1_comboBox_list.at(i)->currentIndex()); - } -} - -void TriggerDock::count_changed() -{ - int i; - - for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { - ds_trigger_stage_set_count(i, TriggerProbes, - _count0_spinBox_list.at(i)->value() - 1, - _count1_spinBox_list.at(i)->value() - 1); - } -} - -void TriggerDock::pos_changed(int pos) -{ - ds_trigger_set_pos(pos); + QLineEdit* sc=dynamic_cast(sender()); + if(sc != NULL) + sc->setText(sc->text().toUpper()); } void TriggerDock::device_change() { uint64_t max_hd_depth; - bool stream; + bool stream = false; uint8_t maxRange; uint64_t sample_limits; GVariant *gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_MAX_LOGIC_SAMPLELIMITS); @@ -504,34 +349,101 @@ void TriggerDock::device_change() maxRange = max_hd_depth*70 / sample_limits; position_spinBox->setRange(0, maxRange); position_slider->setRange(0, maxRange); - simple_radioButton->setChecked(true); + + gvar = _session.get_device()->get_config(NULL, NULL, SR_CONF_STREAM); if (gvar != NULL) { stream = g_variant_get_boolean(gvar); g_variant_unref(gvar); - if (stream) - simple_trigger(); + } + + if (!strncmp(_session.get_device()->dev_inst()->driver->name, "virtual", 7) || + stream) { + simple_radioButton->setChecked(true); + simple_trigger(); } } } } -void TriggerDock::adv_tog(int index) +bool TriggerDock::commit_trigger() { - if(index == 0) { - stages_label->setDisabled(false); - stages_comboBox->setDisabled(false); - ds_trigger_set_mode(ADV_TRIGGER); - } else if (index == 1) { - stages_label->setDisabled(true); - stages_comboBox->setDisabled(true); - ds_trigger_set_mode(SERIAL_TRIGGER); + // trigger position update + ds_trigger_set_pos(position_slider->value()); + + // trigger mode update + if (simple_radioButton->isChecked()) { + ds_trigger_set_mode(SIMPLE_TRIGGER); + return 0; + } else { + ds_trigger_set_en(true); + if (_adv_tabWidget->currentIndex() == 0) + ds_trigger_set_mode(ADV_TRIGGER); + else if (_adv_tabWidget->currentIndex() == 1) + ds_trigger_set_mode(SERIAL_TRIGGER); + + // trigger stage update + ds_trigger_set_stage(stages_comboBox->currentText().toInt()); + + int i; + // trigger value update + if (_adv_tabWidget->currentIndex() == 0) { + for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { + ds_trigger_stage_set_value(i, TriggerProbes, + _value0_lineEdit_list.at(i)->text().toLocal8Bit().data(), + _value1_lineEdit_list.at(i)->text().toLocal8Bit().data()); + } + } else if(_adv_tabWidget->currentIndex() == 1){ + ds_trigger_stage_set_value(0, TriggerProbes, + _serial_start_lineEdit->text().toLocal8Bit().data(), + _value1_lineEdit_list.at(0)->text().toLocal8Bit().data()); + ds_trigger_stage_set_value(1, TriggerProbes, + _serial_stop_lineEdit->text().toLocal8Bit().data(), + _value1_lineEdit_list.at(1)->text().toLocal8Bit().data()); + ds_trigger_stage_set_value(2, TriggerProbes, + _serial_edge_lineEdit->text().toLocal8Bit().data(), + _value1_lineEdit_list.at(2)->text().toLocal8Bit().data()); + //_serial_data_comboBox + const int data_channel = _serial_data_comboBox->currentText().toInt(); + char channel[31]; + for(i = 0; i < 31; i++){ + if (i == (30 - 2*data_channel)) + channel[i] = '1'; + else if (i%2 == 0) + channel[i] = '0'; + else + channel[i] = ' '; + } + ds_trigger_stage_set_value(3, TriggerProbes, + channel, + _value1_lineEdit_list.at(3)->text().toLocal8Bit().data()); + ds_trigger_stage_set_value(4, TriggerProbes, + _serial_value_lineEdit->text().toLocal8Bit().data(), + _value1_lineEdit_list.at(4)->text().toLocal8Bit().data()); + } + + // trigger logic update + for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { + ds_trigger_stage_set_logic(i, TriggerProbes, + _logic_comboBox_list.at(i)->currentIndex()); + } + + // trigger inv update + for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { + ds_trigger_stage_set_inv(i, TriggerProbes, + _inv0_comboBox_list.at(i)->currentIndex(), + _inv1_comboBox_list.at(i)->currentIndex()); + } + + // trigger count update + for (i = 0; i < stages_comboBox->currentText().toInt(); i++) { + ds_trigger_stage_set_count(i, TriggerProbes, + _count0_spinBox_list.at(i)->value() - 1, + _count1_spinBox_list.at(i)->value() - 1); + } + return 1; } - value_changed(); - logic_changed(0); - inv_changed(0); - count_changed(); } void TriggerDock::init() @@ -607,11 +519,6 @@ void TriggerDock::set_session(QJsonObject ses) _serial_edge_lineEdit->setText(ses["triggerClock"].toString()); _serial_data_comboBox->setCurrentIndex(ses["triggerChannel"].toDouble()); _serial_value_lineEdit->setText(ses["triggerData"].toString()); - - value_changed(); - logic_changed(0); - inv_changed(0); - count_changed(); } } // namespace dock diff --git a/DSView/pv/dock/triggerdock.h b/DSView/pv/dock/triggerdock.h index 886bf972..4d9fd4ec 100644 --- a/DSView/pv/dock/triggerdock.h +++ b/DSView/pv/dock/triggerdock.h @@ -66,23 +66,21 @@ public: QJsonObject get_session(); void set_session(QJsonObject ses); + /* + * commit trigger setting + * return 0: simple trigger + * 1: advanced trigger + */ + bool commit_trigger(); + signals: public slots: void simple_trigger(); void adv_trigger(); - void trigger_stages_changed(int index); - void widget_enable(); + void widget_enable(int index); void value_changed(); - void logic_changed(int index); - void count_changed(); - void inv_changed(int index); - - void pos_changed(int pos); - - void adv_tog(int index); - void serial_channel_changed(int index); void device_change(); diff --git a/DSView/pv/mainwindow.cpp b/DSView/pv/mainwindow.cpp index 482f0361..2b708075 100644 --- a/DSView/pv/mainwindow.cpp +++ b/DSView/pv/mainwindow.cpp @@ -414,6 +414,7 @@ void MainWindow::run_stop() case SigSession::Stopped: _view->show_trig_cursor(false); _view->update_sample(false); + commit_trigger(false); _session.start_capture(false, boost::bind(&MainWindow::session_error, this, QString("Capture failed"), _1)); @@ -437,6 +438,7 @@ void MainWindow::instant_stop() case SigSession::Stopped: _view->show_trig_cursor(false); _view->update_sample(true); + commit_trigger(true); _session.start_capture(true, boost::bind(&MainWindow::session_error, this, QString("Capture failed"), _1)); @@ -548,6 +550,26 @@ void MainWindow::on_trigger(bool visible) } } +void MainWindow::commit_trigger(bool instant) +{ + ds_trigger_init(); + + if (_session.get_device()->dev_inst()->mode != LOGIC || + instant) + return; + + if (!_trigger_widget->commit_trigger()) { + /* simple trigger check trigger_enable */ + BOOST_FOREACH(const boost::shared_ptr s, _session.get_signals()) + { + assert(s); + boost::shared_ptr logicSig; + if (logicSig = dynamic_pointer_cast(s)) + logicSig->commit_trig(); + } + } +} + void MainWindow::on_measure(bool visible) { _measure_dock->setVisible(visible); diff --git a/DSView/pv/mainwindow.h b/DSView/pv/mainwindow.h index 4fd0b7c5..0ae69138 100644 --- a/DSView/pv/mainwindow.h +++ b/DSView/pv/mainwindow.h @@ -112,6 +112,8 @@ private slots: void on_trigger(bool visible); + void commit_trigger(bool instant); + void on_measure(bool visible); void on_search(bool visible); diff --git a/DSView/pv/sigsession.cpp b/DSView/pv/sigsession.cpp index 5b038474..fb547f52 100644 --- a/DSView/pv/sigsession.cpp +++ b/DSView/pv/sigsession.cpp @@ -92,9 +92,7 @@ SigSession::SigSession(DeviceManager &device_manager) : _session = this; _hot_attach = false; _hot_detach = false; - _adv_trigger = false; _group_cnt = 0; - ds_trigger_init(); register_hotplug_callback(); _view_timer.stop(); _view_timer.setSingleShot(true); @@ -563,28 +561,6 @@ void SigSession::sample_thread_proc(boost::shared_ptr dev_inst, assert(dev_inst->dev_inst()); assert(error_handler); - if (_instant) { - /* disable trigger under instant mode */ - ds_trigger_set_en(false); - } else if (!_adv_trigger) { - /* simple trigger check trigger_enable */ - ds_trigger_set_en(false); - BOOST_FOREACH(const boost::shared_ptr s, _signals) - { - assert(s); - boost::shared_ptr logicSig; - if (logicSig = dynamic_pointer_cast(s)) { - if (logicSig->has_trig()) { - ds_trigger_set_en(true); - logicSig->set_trig(logicSig->get_trig()); - } - } - } - } else { - /* advanced trigger check trigger_enable */ - ds_trigger_set_en(true); - } - try { dev_inst->start(); } catch(const QString e) { @@ -1240,15 +1216,6 @@ void SigSession::stop_hotplug_proc() _hotplug.reset(); } -/* - * Tigger - */ -void SigSession::set_adv_trigger(bool adv_trigger) -{ - _adv_trigger = adv_trigger; -} - - uint16_t SigSession::get_ch_num(int type) { uint16_t num_channels = 0; diff --git a/DSView/pv/sigsession.h b/DSView/pv/sigsession.h index ed64f491..23ad6a90 100644 --- a/DSView/pv/sigsession.h +++ b/DSView/pv/sigsession.h @@ -169,8 +169,6 @@ public: void register_hotplug_callback(); void deregister_hotplug_callback(); - void set_adv_trigger(bool adv_trigger); - uint16_t get_ch_num(int type); bool get_instant(); @@ -256,8 +254,6 @@ private: bool _hot_attach; bool _hot_detach; - bool _adv_trigger; - QTimer _view_timer; QTimer _refresh_timer; bool _data_lock; diff --git a/DSView/pv/view/logicsignal.cpp b/DSView/pv/view/logicsignal.cpp index 3391317c..3ae1c9dd 100644 --- a/DSView/pv/view/logicsignal.cpp +++ b/DSView/pv/view/logicsignal.cpp @@ -105,11 +105,6 @@ boost::shared_ptr LogicSignal::logic_data() const return _data; } -bool LogicSignal::has_trig() const -{ - return (_trig != NONTRIG); -} - LogicSignal::LogicSetRegions LogicSignal::get_trig() const { return _trig; @@ -121,19 +116,26 @@ void LogicSignal::set_trig(int trig) _trig = (LogicSetRegions)trig; else _trig = NONTRIG; +} - if (trig == NONTRIG) +void LogicSignal::commit_trig() +{ + + if (_trig == NONTRIG) ds_trigger_probe_set(_index_list.front(), 'X', 'X'); - else if (trig == POSTRIG) - ds_trigger_probe_set(_index_list.front(), 'R', 'X'); - else if (trig == HIGTRIG) - ds_trigger_probe_set(_index_list.front(), '1', 'X'); - else if (trig == NEGTRIG) - ds_trigger_probe_set(_index_list.front(), 'F', 'X'); - else if (trig == LOWTRIG) - ds_trigger_probe_set(_index_list.front(), '0', 'X'); - else if (trig == EDGTRIG) - ds_trigger_probe_set(_index_list.front(), 'C', 'X'); + else { + ds_trigger_set_en(true); + if (_trig == POSTRIG) + ds_trigger_probe_set(_index_list.front(), 'R', 'X'); + else if (_trig == HIGTRIG) + ds_trigger_probe_set(_index_list.front(), '1', 'X'); + else if (_trig == NEGTRIG) + ds_trigger_probe_set(_index_list.front(), 'F', 'X'); + else if (_trig == LOWTRIG) + ds_trigger_probe_set(_index_list.front(), '0', 'X'); + else if (_trig == EDGTRIG) + ds_trigger_probe_set(_index_list.front(), 'C', 'X'); + } } void LogicSignal::paint_mid(QPainter &p, int left, int right) diff --git a/DSView/pv/view/logicsignal.h b/DSView/pv/view/logicsignal.h index 542ba232..5f4ba7d1 100644 --- a/DSView/pv/view/logicsignal.h +++ b/DSView/pv/view/logicsignal.h @@ -82,9 +82,9 @@ public: /** * */ - bool has_trig() const; LogicSetRegions get_trig() const; void set_trig(int trig); + void commit_trig(); /** * Paints the signal with a QPainter diff --git a/libsigrok4DSL/trigger.c b/libsigrok4DSL/trigger.c index 17e0740d..c3350c95 100644 --- a/libsigrok4DSL/trigger.c +++ b/libsigrok4DSL/trigger.c @@ -45,9 +45,11 @@ SR_API int ds_trigger_init(void) { int i, j; - if (!(trigger = g_try_malloc0(sizeof(struct ds_trigger)))) { - sr_err("Trigger malloc failed."); - return SR_ERR_MALLOC; + if (!trigger) { + if (!(trigger = g_try_malloc0(sizeof(struct ds_trigger)))) { + sr_err("Trigger malloc failed."); + return SR_ERR_MALLOC; + } } trigger->trigger_en = 0; From ceda90aec531abfb3f4617fa94bdc12600e7f852 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Mon, 14 Dec 2015 21:21:16 +0800 Subject: [PATCH 23/25] Fix language support issue --- DSView/pv/dialogs/deviceoptions.cpp | 12 ++++++------ DSView/pv/prop/string.cpp | 2 +- DSView/pv/view/view.cpp | 6 ++---- DSView/res/DSCope.bin | Bin 340884 -> 340884 bytes libsigrok4DSL/hardware/DSL/dslogic.c | 21 ++++++--------------- 5 files changed, 15 insertions(+), 26 deletions(-) diff --git a/DSView/pv/dialogs/deviceoptions.cpp b/DSView/pv/dialogs/deviceoptions.cpp index 29c5920b..f6a7874e 100644 --- a/DSView/pv/dialogs/deviceoptions.cpp +++ b/DSView/pv/dialogs/deviceoptions.cpp @@ -72,7 +72,7 @@ DeviceOptions::DeviceOptions(QWidget *parent, boost::shared_ptrget_config(NULL, NULL, SR_CONF_OPERATION_MODE); if (gvar != NULL) { - _mode = g_variant_get_string(gvar, NULL); + _mode = QString::fromUtf8(g_variant_get_string(gvar, NULL)); g_variant_unref(gvar); } connect(&_mode_check, SIGNAL(timeout()), this, SLOT(mode_check())); @@ -124,7 +124,7 @@ QWidget* DeviceOptions::get_property_form() { assert(p); const QString label = p->labeled_widget() ? QString() : p->name(); - if (label == "Operation Mode") + if (label == tr("Operation Mode")) layout->addRow(label, p->get_widget(form, true)); else layout->addRow(label, p->get_widget(form)); @@ -159,7 +159,7 @@ void DeviceOptions::setup_probes() const char **const options = g_variant_get_strv(gvar_opts, &num_opts); GVariant* gvar = _dev_inst->get_config(NULL, NULL, SR_CONF_CHANNEL_MODE); if (gvar != NULL) { - ch_mode = g_variant_get_string(gvar, NULL); + ch_mode = QString::fromUtf8(g_variant_get_string(gvar, NULL)); g_variant_unref(gvar); for (unsigned int i=0; isetChecked(true); } } @@ -247,7 +247,7 @@ void DeviceOptions::mode_check() QString mode; GVariant* gvar = _dev_inst->get_config(NULL, NULL, SR_CONF_OPERATION_MODE); if (gvar != NULL) { - mode = g_variant_get_string(gvar, NULL); + mode = QString::fromUtf8(g_variant_get_string(gvar, NULL)); g_variant_unref(gvar); if (mode != _mode) { @@ -276,7 +276,7 @@ void DeviceOptions::channel_check() { QRadioButton* sc=dynamic_cast(sender()); if(sc != NULL) - _dev_inst->set_config(NULL, NULL, SR_CONF_CHANNEL_MODE, g_variant_new_string(sc->text().toLocal8Bit())); + _dev_inst->set_config(NULL, NULL, SR_CONF_CHANNEL_MODE, g_variant_new_string(sc->text().toUtf8().data())); setup_probes(); } diff --git a/DSView/pv/prop/string.cpp b/DSView/pv/prop/string.cpp index 7542faef..e03064ef 100644 --- a/DSView/pv/prop/string.cpp +++ b/DSView/pv/prop/string.cpp @@ -64,7 +64,7 @@ void String::commit() if (!_line_edit) return; - QByteArray ba = _line_edit->text().toLocal8Bit(); + QByteArray ba = _line_edit->text().toUtf8(); _setter(g_variant_new_string(ba.data())); } diff --git a/DSView/pv/view/view.cpp b/DSView/pv/view/view.cpp index 911a89e4..3965524b 100644 --- a/DSView/pv/view/view.cpp +++ b/DSView/pv/view/view.cpp @@ -227,10 +227,8 @@ void View::zoom(double steps, int offset) } } - if (_session.get_device()->dev_inst()->mode != DSO) { - _offset = cursor_offset - _scale * offset; - _offset = max(min(_offset, get_max_offset()), get_min_offset()); - } + _offset = cursor_offset - _scale * offset; + _offset = max(min(_offset, get_max_offset()), get_min_offset()); if (_scale != _preScale || _offset != _preOffset) { _header->update(); diff --git a/DSView/res/DSCope.bin b/DSView/res/DSCope.bin index 3ee9ab04c8c3b38189979375dbe11080314841ce..505dbb74bba85c0d0223dc7b7ba13afc34def2b1 100644 GIT binary patch literal 340884 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 z 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 Q?pNRV7EJ!=1?38Q3IG5A literal 340884 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 nHy&poHq5W15=8G@k~Bg|kp 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 diff --git a/libsigrok4DSL/hardware/DSL/dslogic.c b/libsigrok4DSL/hardware/DSL/dslogic.c index 587cab68..2250da53 100644 --- a/libsigrok4DSL/hardware/DSL/dslogic.c +++ b/libsigrok4DSL/hardware/DSL/dslogic.c @@ -347,6 +347,12 @@ static int fpga_setting(const struct sr_dev_inst *sdi) if (channel_en_cnt == 0) channel_en_cnt = 1; + devc->rle_mode = FALSE; + if (sdi->mode == LOGIC && + !devc->stream && + devc->limit_samples > DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)) + devc->rle_mode = TRUE; + //setting.mode = (test_mode ? 0x8000 : 0x0000) + trigger->trigger_en + (sdi->mode << 4); setting.mode = ((devc->op_mode == SR_OP_INTERNAL_TEST) << 15) + ((devc->op_mode == SR_OP_EXTERNAL_TEST) << 14) + @@ -1435,12 +1441,6 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, ret = command_dso_ctrl(usb->devhdl, dso_cmd_gen(sdi, 0, SR_CONF_SAMPLERATE)); } else { devc->sample_wide = (devc->cur_samplerate <= DSLOGIC_MAX_LOGIC_SAMPLERATE); - if (!devc->stream) { - if (devc->limit_samples > DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)) - devc->rle_mode = TRUE; - else - devc->rle_mode = FALSE; - } ret = SR_OK; } } else if (id == SR_CONF_CLOCK_TYPE) { @@ -1471,14 +1471,6 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, ret = SR_OK; } else if (id == SR_CONF_LIMIT_SAMPLES) { devc->limit_samples = g_variant_get_uint64(data); - if(sdi->mode == LOGIC) { - if (!devc->stream) { - if (devc->limit_samples > DSLOGIC_MAX_LOGIC_DEPTH*ceil(devc->cur_samplerate * 1.0 / DSLOGIC_MAX_LOGIC_SAMPLERATE)) - devc->rle_mode = TRUE; - else - devc->rle_mode = FALSE; - } - } ret = SR_OK; } else if (id == SR_CONF_DEVICE_MODE) { sdi->mode = g_variant_get_int16(data); @@ -1594,7 +1586,6 @@ static int config_set(int id, GVariant *data, struct sr_dev_inst *sdi, } else if (!strcmp(stropt, opmodes[SR_OP_STREAM]) && (devc->op_mode != SR_OP_STREAM)) { devc->op_mode = SR_OP_STREAM; devc->stream = TRUE; - devc->rle_mode = FALSE; devc->ch_mode = 0; devc->samplerates_size = 10; adjust_probes(sdi, stream_ch_num[0]); From 6c6766641b653d71b20c4c75a5da424449deb40c Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Mon, 14 Dec 2015 21:57:22 +0800 Subject: [PATCH 24/25] bumped version number to 0.95 --- DSView/CMakeLists.txt | 2 +- NEWS | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/DSView/CMakeLists.txt b/DSView/CMakeLists.txt index d26d1c5f..c5703c64 100644 --- a/DSView/CMakeLists.txt +++ b/DSView/CMakeLists.txt @@ -103,7 +103,7 @@ set(DS_DESCRIPTION "A GUI for instruments of DreamSourceLab") set(DS_VERSION_MAJOR 0) set(DS_VERSION_MINOR 9) -set(DS_VERSION_MICRO 4) +set(DS_VERSION_MICRO 5) set(DS_VERSION_STRING ${DS_VERSION_MAJOR}.${DS_VERSION_MINOR}.${DS_VERSION_MICRO} ) diff --git a/NEWS b/NEWS index f1978f01..9e0f9982 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,26 @@ +0.95 (2015-12-14) +----------------- + --for logic analyzer + *add RLE compress mode + *improve mode setting strategy, fix channel number + *add edge count function + *fix memory leakage when run protocol decoder + *add signal height setting, improve display issue + *fix crash issue when add group signal + *fix channel enable/disable issue + *fix channel display issue when load file input + *add cursor by mouse double-click + *fix other issues + + --for oscilloscope + *add file export/load function + *fix wait time issue when trigger setted + *improve display of signal measure + *add Vrms/Vmean/Vp-p measure + *fix setting issue when load session + *imporve add/del of measure ruler + *fix other issues + 0.94 (2015-06-29) ----------------- * add session load/store function From dc3263c04c3c538d38033fc750d2a5a06bb334a5 Mon Sep 17 00:00:00 2001 From: DreamSourceLab Date: Tue, 15 Dec 2015 00:34:13 +0800 Subject: [PATCH 25/25] Fix compile warnings --- DSView/pv/dock/triggerdock.cpp | 1 - DSView/pv/toolbars/samplingbar.cpp | 6 ------ DSView/pv/view/dsosignal.cpp | 18 +++++++++--------- DSView/pv/view/header.cpp | 1 - INSTALL | 2 +- 5 files changed, 10 insertions(+), 18 deletions(-) diff --git a/DSView/pv/dock/triggerdock.cpp b/DSView/pv/dock/triggerdock.cpp index b997386c..aea64b19 100644 --- a/DSView/pv/dock/triggerdock.cpp +++ b/DSView/pv/dock/triggerdock.cpp @@ -267,7 +267,6 @@ void TriggerDock::paintEvent(QPaintEvent *) void TriggerDock::simple_trigger() { - int i; stages_label->setDisabled(true); stages_comboBox->setDisabled(true); _adv_tabWidget->setDisabled(true); diff --git a/DSView/pv/toolbars/samplingbar.cpp b/DSView/pv/toolbars/samplingbar.cpp index a9c34f1e..85b45603 100644 --- a/DSView/pv/toolbars/samplingbar.cpp +++ b/DSView/pv/toolbars/samplingbar.cpp @@ -494,8 +494,6 @@ void SamplingBar::commit_sample_rate() void SamplingBar::on_samplecount_sel(int index) { uint64_t sample_count = 0; - uint64_t max_sample_count = 0; - bool stream_mode = false; qDebug() << "index: " << index; if (index >= 0) @@ -520,10 +518,6 @@ void SamplingBar::on_samplecount_sel(int index) void SamplingBar::on_samplerate_sel(int index) { uint64_t sample_rate = 0; - //uint64_t last_sample_rate = 0; - uint64_t max_sample_count = 0; - uint64_t sample_count = 0; - bool stream_mode = false; if (index >= 0) sample_rate = _sample_rate.itemData( diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index 11dff4d3..de5e0bbf 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -426,15 +426,15 @@ bool DsoSignal::load_settings() GVariant* gvar; // -- enable - bool enable; - gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_EN_CH); - if (gvar != NULL) { - enable = g_variant_get_boolean(gvar); - g_variant_unref(gvar); - } else { - qDebug() << "ERROR: config_get SR_CONF_EN_CH failed."; - return false; - } + //bool enable; + //gvar = _dev_inst->get_config(_probe, NULL, SR_CONF_EN_CH); + //if (gvar != NULL) { + // enable = g_variant_get_boolean(gvar); + // g_variant_unref(gvar); + //} else { + // qDebug() << "ERROR: config_get SR_CONF_EN_CH failed."; + // return false; + //} // -- hdiv uint64_t hdiv; diff --git a/DSView/pv/view/header.cpp b/DSView/pv/view/header.cpp index 2a83f6c0..e6d20c37 100644 --- a/DSView/pv/view/header.cpp +++ b/DSView/pv/view/header.cpp @@ -140,7 +140,6 @@ void Header::mouseDoubleClickEvent(QMouseEvent *event) const vector< boost::shared_ptr > traces( _view.get_traces()); - int action; if (event->button() & Qt::LeftButton) { _mouse_down_point = event->pos(); diff --git a/INSTALL b/INSTALL index a75cb551..1ac01f09 100644 --- a/INSTALL +++ b/INSTALL @@ -49,7 +49,7 @@ Arch: Step2: Get the DSView source code - $ clone git://github.com/DreamSourceLab/DSView + $ git clone git://github.com/DreamSourceLab/DSView Step3: Building

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 MaD8^*crEk)0>k*}a{vGU literal 340884 zcmeFaf2bwdec1V}s#C41R@<+xc0^>NwNIH@(g-d~ci`Rtt;jDp3&6!P5jUC|Y?`*Nr0*4UCo`W*5Us!C@1u z1wVN-{?TsD-Ou+_)qVH<=o!h1cQ<6d@74MFJ>T;^-*ZmY`JV5oy4&qpIQsPQN3PA} zn?^o0>!MH9Uy@JVUH<(~z1vFmudn@*ym)OYcZ|H+-*a~k|Eo{kDek4Hk8-v|2rtC`XBu#sQ$nC9%fgw^T$KL?tJrcYX>l-NQjG$^m51YPE|<(Bc>u0 zlall!(ZaQU5 zUHaI=nm0m_lSdAe;LjtNZY&KB>BQAl@ZnPT6#Qv$FVsq0iI0-jgt0s8QVQ$*v_aqW zl13@$-bqwQ6E(5P%?c?rG#d6CdFms|QYLj|G7|t6Egeio-uF!8l_|x%2%g%EW;*h; zUK2=8B}p4GQd^S6dC4NF;)##y88jnl=_veCWU3gR+1R87lH_mZ$@9!GGVm2FJ*ec* z!6fOdpH!jybIEhEx$=CHER0NYi7S`Jb+Vc!X+9zBr%58PmL)#Vvz%^NB^Bc}bIgf+ zHK{1cKvjyFQd;CmnWYjZjKwfAw1zVfMVqLIBAQ}wH6R*^7SSw7B-Q95$|}tvoGqd# zTYwN{ici1S!Hc4n+L)*T0-=zeN2!)1bsiFx%2`NZbyKVvK+(L5W)Zy!Y86e=iJNX# z)UljK(^)>36)a9RTERm5C~Bga17BA2XicI_Hmk*aI$e;l*sL}}XU-+$MAL|tM|6SI z0~;D1V1lS7lF+Y}mvWlRO7Q80d_(6DJ6A;?qJ*0t-?&Kbb9Np2lRwDiN_#fHsXK%i@HaS7LQIpNCF) zg+qzy_5^t{3!_S8qeG%~(Yl?RNxf;aS|$vbNfD{g=Zp26DcCh@@daHKEx3~}$X~S6 zT1WL}MREOaCC3xyGmmse2D#_J#2MXGWMQiFgyfdboXaxO78{j9GuK+K!X`=Z;*}xM*DNFnFEjKcPvt znu=V(D4)1;o5EHqDhHzyeA0WVYso8+yCqehpapkuaPYYgZMQ%D(}#z$-O3;T@s%sG zmF<<=hliTJL%R^z%9Z>hA306l0NcZ@JoeaDo__k2(kX_>$-&9Ne!LGW2O@_66)O|! zO1@MME@GdiY~}WHpM(1Vt&qCj%11wXO6j!3qd3^dxEOYsVXri^zZv}b?cXe7k+S)l zrV9Ns^?A7sBhI0)%`sAq!PYc~!L_c}qo z@QyFM!x(F2M{%Gu6jRCyXQ*f-;D6|IBL|@)wD-3s0O^l{ZPH!jAj^v4l;TAWw6D(- z{QO<>@1uVqMRwPGJo+qi_O84=@>VomNGEQiZ_*QY<+l7wY16w`ee|!T{rueze0=>` zc_Z``V<9b*^4~`{Y)Z+;x$$Vpk4N|HSfOw4%HN9a_0ecd#lLZ_OJFN-#_c0}8c=zq z@~v;_h`a&tgn7^7z>gjr9=>q>h3nc&?X9aRi*|}U2WW}g`F4AF_yFl`g&}{kSIPOH z-A_;s=$goDR82{FE|d&|d8F~`{v$b{ zyAA;5NvWji>t3g%Ux|aBfpA-S^@{f}CJdYa`$J@xU+zL@Wj7}48otN5Jb%Rdo_xCu zXoh}LYW4S2=m$e$o&mU__47d#=V^NJ;psXD%Z9(9R6xuq^@xH!p;E;4p^L6Qw*g$M z{!WS`!H_CNSZA~5O7(fKe<8mwtL3EH3x|ZB9zn%yDP^UH(I28AzX=gs?=<9>(t2f@ zSk~uhvW9D=1%^JmMO1yY_-bR*6>bl`N=eu&9uxT-gc*D`tt&%m?k|RnWpE8^sxF{) zT3OLl9hC&IJBgRXJ(mrC385a8450QwvH2+v;1xEM=n)1tV{xdhm3k8Cz^e(a z42w_GnWeS11EZy;JTNF)IpBhe<5{eQupLDKE*#7Yk5}xsI}UiKj;5{f+5?* zb>YNiPFs{jzAjh>OB6R!_^u*UCZ(2^bwl5wg#=EBvveoJ%hZHyS!kZXg@WY@BC0gD zgT|^Nkh+Myhe#L`bX75NQ{c$hp%PjcDpd zN=qA{0A#jt(DjAr2&Y?O>q-kr`w~n!}G@9TT`zUO>_@`BFA@Qt^R)njW z*8v;G2~l{REa_?8w{S9_gw}gUg*pZ{UPoD_Jshq~N;*pVFh1kLlZNkuPfReR;|$ z*d~-f;o^pdhKv>u<20vJ?Fv8b<8v@KBr5Oh1EHT}#3e?R2lP<5RhQrr8uL1; zTeK$4VKZQ{sFyMN)foX&(5&31E2>r0u`xweC9K3z2@j}lkt+RE-OY0{=^zUmkSt<@ zD&CSFS}`x8snngaO=)%Kq7;_g50-W0V0Jm5E#_da=e4pMAYhVLcqfZFBFAU1grQh@ zYm=N_5a*HwIx_-a;7nu&X^9u;aK;8Aj2=y&Gj;2B*9+jQ{$CVm_fn@?9tw*hT?#$1 zSs~2Fbqi%}YEE{U2FQkhT z8b7Z)c&b}dR zE*wzv_JiB)AI975x6p_Fi0Hq8gAk|bfrEg4?V+56_+=dQyp8UTg~LN#?;itN@-hyN zj^O)U+pYS)1uto|-To53#{V3b>Qs92I@J8+GhzSXnW06R)`M!f8dAOOzUoaXjR92W z87Vw|=W#mZEd2bzcDn)L;LpLqZ*8|PeHRWmhi(244oFiDMt%3>RvQYp?QtL2kvcp) z3H_wH@jeGyUoV3m^)e2+uXHCrdGF_w?mu)N`^gjhui)SNx!~Wp_wGdQvYqbx@)2Hp z_twYTd)%k)$~U8Xn%>H-$Jg9{Ncs06<*s}uy5}_uU78!l-T3jKeM@YW!lU3uccUYZ z0;ll82VeN$2|ajt+G7f$LAYV0Z$~=dvcyRF1r$fq~ zGjebZP!3KYb$EDYPsFk->a@t=!+zXcvcn<|A6~mA2it?|*V|SYXD8o1`RLBI4Tq_>ZI2AKVY)CEz&6{VpER?}zqZ#zDXDvfTy_ zz&`OO{+8Ujr3Kkb9^`g#FzE9GJ@p=|l!MRp+BcmsnJ5Q`_eT`h2LcPFlw&f!l07pV zc>apmJ&Z>M$M%H$<)g6vY|_tie4!3^A?0jBw-?p0uB7U{w9A9q#^UmnGaC)UdUIBOTg}r4JePG5f5q|m0F7!Dou$6=sA$W4s(FYdr(`W z@^zjOJLI478e(IOV}{yxPZO=i0;nW{EP`)?E2=O3rvw$H4K2^n{}6nwrZ3ggbs4Nc z2(C>{P^;$3Tl{m-_lyg;A#1=T+^Qn@sxb6>k2xQO+Y42#m6t(kFH1d}HcIns>X}%{ zvR5mbXp5H#LnN5uwFQ>e6DJ|`Ml6%Aw8T4ut4xmD4H)=z00TYCA&9~sys`i9jSBtA5SNUJHY z!D|wDO#-h;;57-nCV~GSN?=@z%*FF`oM$#H_tdF6Ax&Y#A!z$FT?~Mt(EuFZ8iPa1 z1DkIGtWkqSq zpLR#8{8C17&%#jOuB6fp5aF{^8TTu!fK<(@zO{Wm!g&^ucFhwJrAVUkfV>%$VzSr0bc*?Tx$+tDsS^J zlCn;svL_eB1A^{EkFX?QL~LM7g=bmzI?Xj6N3SygF8GC|MATK71m@LzYA`cENRJ_g zeso3~3$Y@|VjO@Js+Aaqp|G6RkS@2Crj~)|fRd%2yG}^$jJ5{d`727jHkq%;mEfaXVPNwb8MB?#15 zb&QTzD%Q*4VuIB0KKR67G-2-hWTCqzNtQ}pGQ6ir2`6g5LK)Xs8dZK5L*ZO? zZR|@35d#rrFl?#;9i|u@v3d&5O*Sss*y$p%Q_rbZq)SJ{tuHE@OyP+?pQN!^;t7Xz zgI|ThrkDFhrydj7<=o5kMxBUFEb)z-PFuw+e355|j4ucj`d6`UM$YOM6G&~U)moZK0|f?` z4nc0LxrxhA5}uSm0L+&wnUsc8HdTZu$cj+Tv!zbG*=*YJxRNZ6*N9T+TXcJlqOMaq zp+Q)PjH9tr4tURW8fza+Lw8Igx58eyTG0(8MzxM4{-`Iw;AwbLlqPcX>0}Y7%VZHb zq(Ji`3w=%kgqpyj#40MG-=$TSm?&xo8b0(qMKI`T9r~|>Ri+i9?RY#f4>X%w!#WCw z&_jIZ@$@9^op1)13=#;_d_7tFh9^pV;`JEU zqMA-01iaG{L&+zw8&V*Y>?z+0XLoC*M9H633anTQhz;dQk&y()k8}$V6p84@rsRj-{vVRi# zm5N;Cz}~Rd!oexLDhGGvcGQYbgTD6jTJ&gSBuMEAt+#lx9h;(zPL zJ*Jp+ce@bk*lWF^lV2&G{1s)v^6p04j%Rd7iaeEu2^`LheEHcgKg$Hp9>0U&2iaqM z?n8;(P(sgRYg1prb=Ccw+uj0x^UF8C+^5Q$d)xRB3*G@pm)Rl7w1bropBqZ;YZ#E8 z1A0v1h2ZKFCU9^~C)fb4Bhab&lkC&Q*_+|v9Gsje2N&&-;v9EPZe0q4pQhSo{jVO= z|3gFLl^ab`Z&=uxax|-y8xcdL6-Y@ zZa=b5`)vB7WBPd0KVcf^TSx)?;GeQeLQsr`j6Kiqg}?V8BXS3=s1$JZNfW{xz7yjK z>qTC0W!|ce8=#K7`ns--kW7T=43Bf=*GNgc4->o`+Wq9fOH@Xh)-@Di;ZiJ2(9tIJ z420J?2bjn{rI$Ee4#S{lNzc`Xa5b$Vt|_ksP1=IjLDKSW9u^g=Ru$FTqP~1wLxVSs zn6#G8vBXdoxD3a^6wnQETdo}_io)n?*s6001X1de*oI86N4X&HDN$hXT+4cbl9Jyd0b9{6 zt~d6uOe;8=R^*tgW<}x1AHnF1t~Ay`ORJNr#n-AwP;9-HW5TJgN4-M#=f<`}vZ5u> zjkG~TVyY0aK{AS>k|>R1ajY@%uIz=QVNK{ENOz1tP4v15w!nC0?7X2ClUh9y%h|h( zwm5GpwK3~Ev|-!-7x@B=e#EO2_c&t{876Ic)?k$@@lc< z9m{x=^IoQFO}t!aKTNw>GmoMeA`38G9Tn0NsFyS^>ejkThC)1y12W)~XaH58BBy;p z0vwLQ#2-<5M0Mv;&Pm#=TbM<&&X!S*az)$O&Rxz?kyZtLgB)u^od%sUn@YqWr8ins zK&4klE#W|sjt@2Hc7)bC)EI4sbY)D_&%h+>{A8XjGT+LwEAlSqZB6Oan(jR(ZoP5f zd%)oehiEfy#ac7RvYU=g95VgNFYC^4G?>qpw3^;6;tBUHx*^Z23Ig~W^_}{i3+WrO zNyj+{i|MS%R?%eI%4RXC+GS>zdB)-9f_u?MbVsYB2xBg-&Acwma^6luP*r@m~_5nI}R4rD~isvBPK4{>k)(H`JRS`ER-j1Vd z+%Sr9A}wm}MS3!qgX9elEp1rcItJ&Q0n};@RJ{&990nf_2j3|d=OH#}TI35q$+^Ge zjN6(mJ$hFU*=m=lM&PxOPDMlVN|t`f#)*{$Z`f*%rw2e+0aq0zg$*AU<2yIR$Mk@s zMb5#UJAG&4L*R~T>rd#-1;2+oa^?2bx_?i$t~9;8-J@2Z5api|gl|!xCXRn=()-$` zkS@0a%0Tnf+irjA@bKvH@QY|JM?ZD+Q)A9};#Sw=cjsN< zLeIKt`Q9i0+b@3mt$*>YfAM^~?6pZLUE-^v(%>cx{A%$x02eP$<8xOHpPVBh@aYu9d_9Bn@DOO;@x~36fu3P90dDsLLFS2B?U-8pK_+ zL(zfDRP%M|i9#Eo$BXspw+B7eUc##cG3hX>os%UdMJ>$mPSu7as`bRWY!0gEP7Yzw z)En3KNe^6~AG@GH{}q8Ewh0)7Vk*@JD>)TkPgd8h5=uX%zwGCp&CJgvzJ(Eh(LLU)N z&~o9^VRvP9ScP%GV&8GFz_Bc(gUU`>N;TB#^wsxagXrg$x9>(!G3cn#s|S59z5-k# z9CsGojIFl>nxgI%32+FV#iU=(CM=1*q6Fygs>Y;BuNu{LRcK11)$llq9U;p_g*`Ao zShF`16H^kI#Bn^Zf-u1~74s@LXnq`K2t{Dk>UP-0`+UfL&3R1%uSwuF3A`qO*CcQ% zfzGjOY#a|HPFzVO;>qiumnEU_tO?JQ)DjI4g9XGqmiiF*b{Do97JYbM20gvAIg!%$ zLz>k^$^hZ1URN3m6?s++AuVzN!{hD~9KvBEH6ZL9w+oFdpC$+lmpo6k63YgqB}*UA zpVQ*MN@Q5+>9Wm*h}cj@QFq{340vJ| zx#6?0(pbmkxTr9yk|MI?OUQx0*u$mQ{D{PfCtTXFMvB!?q(?LPh=?v=H(DN?mJ2K& zP6lasAF{YL3+xH}ah`5rCG9Mq-H>2&G&6mZaMDP@f&^1vS(F`?79BP0BrfAJ0CE5<7ZL@qQuL%WvPUOG2Zxh;^gP?pWmmRqwXd37MO8}+ z#&TsU%Um#wdCr{b3w9NA)wdHmp)dvkRUMn$eB7rLyEI5F!ICmDoJZ5i*D|Z-;4CdB zTczg-TmXh#XKT@{QA`}cB$e4I*0<`<`chr*?eL;9Bw#X~*gngU(irsXPWuOIVo2s& zHYyJoQW*v9JEW__vCFKOq_$uXue4E9zlgh{L2ttZm&N&%Z`ZmBTMC}`(+HQQlgv## zU$@QsyL94`gkzjaZ2?w;u2S)o;W(z{(5>~F0r+HP8(c5|qR34O{bFg#A*5s#E%SPBdg^T&);i6w_2SK-VQXv%H$~ zah&ynv%-8g$9V2WzF@bdtYX`E#F-*`WIyE&!0Ae!)f{uJ6KR+k&dnX4PvJl%hcCTY zq4UYFxE$d#5KnDt`C4s(otqCLCC`sqi5b523x_j|vu6V9`eh{a6rwtB90=T~)~e!I`V(?F2ytLiBJtq|2v6)>#)>>I+Dbof{f zS>X(B?UdpZM?fc>2dp*B;zQ)s&wIO7izZo!W<3`N$l+WOeNP9lb#Lo2R|9syM zpZ=BY_J3Xx=BqjHCjHaDqNv^#Hg+sPOkp*CIjCLj4t;rf?xRz;+yCQ7;DBELJ-^-l z3LJc9$v1l7;NQaBuLKTw>&iqvE27xDM^n0S6SIx{;v+3v7fKH2SG#}Jo!l6{$n%po z`Y-bgU+Ce>J@3{p^n6qP2bSbl3iKM*GiheSCdlQt&?Jz&p>uTc4ReLnF_~?D)ZH{P6Jjr>p3xVC_@9uYK)>7c{Q+ zsi(F_L%FYh42`0CXg=dzC< z9A8aedhg%UZF0R0_vGXs{DXrnU$6q+`1QxebG{n={sG(eJ_jBO$J=8$ z&jFtn%%0tHYkKJ_GCn!M{&#YL11=!FpLTRrtUK%m`+dDM-mJnRCvT|x*gcTow?ztd>{ zG}?>Xz3_#g7rrg0FvvmK_ZnAdMURS^Wo9EAR+7{;Jmp6j1nH4pL;^(AAVZ7gdvl6l=~#L$l5RH1TUd0tt*s)OZ}kfXdq^>?@`!Qm7iWQh-#hA_1{ zj)4@AMr&ZiHON>i9e~Aq#24p_Vv>~>oxq9qK?zpgl_L_XP*l&@b3|`t=1c7k&tDi9 z>Nl8!Vkgpa<}TDN`(UIp9`%-=ydW8Au^!EMiO+&tp-+li&^Fo>kVPSwy5h$*EOT*^)7v4B>`ZY0J95}Zg(zxMg;K?F{w0#B$OwlgsVIz@5pn0o zkqyd`MfHg^m3K}%BG(bo-w0D4flL2?e9HGM&0n$nV| zPqi99A~qHaMFuBZuA7Bj&kSW-eLIroq1$kOi1-znDasq?AZ5DhmRUDPV?PJG5iPQA zyC^do=0Uv7^#xJK;b{gQUk#43q79WRU+2M_l9`-zp2naCrz%GVIWH@6Ac7x$$#}DQ z#xL$@x@UXke0h=w;K(sk$D&rplXSyx26-MP{iW(fp+%k8YQ!J?xONV?s}`=kJk|6D zbb`$rlr_0@%Sn<5_S}aI0)q>0PnR3@_;~bf|@4!`)3bT<5_F zb+`@PSaYs;quEP@#miFsvW)JjG*P=|uaD`$W~n=0{4{P &{VO5Y{TIgY=9-fW&T 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 pI|oz$XTO9*u5&b+8(#nb diff --git a/DSView/res/DSLogicPro.bin b/DSView/res/DSLogicPro.bin index 3b13b47989583c9329d9e22cab472374af01370a..c2bfdfae0d93caa55cb5eee0701279a42c8ae0b1 100644 GIT binary patch literal 340884 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