diff --git a/.gitignore b/.gitignore index 0b790b9e5..75fd65295 100644 --- a/.gitignore +++ b/.gitignore @@ -5,13 +5,11 @@ **/out/ **/out.gcc/ **/out.clang/ - **/temp/ # files **/gccLinksClangWarning.txt **/.mxproject - internal/receiver/trices.raw +**/.DS_store -.DS_Store diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 9135448c7..56501af8c 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -87,7 +87,7 @@ archives: # If format is `binary`, no archives are created and the binaries are instead # uploaded directly. # Default is `tar.gz`. - format: tar.gz + formats: tar.gz # use zip for windows archives # Can be used to change the archive formats for specific GOOSs. @@ -95,7 +95,7 @@ archives: # Default is empty. format_overrides: - goos: windows - format: zip + formats: [ 'zip' ] # Additional files/globs you want to add to the archive. # Defaults are any files matching `LICENCE*`, `LICENSE*`, # `README*` and `CHANGELOG*` (case-insensitive). @@ -117,15 +117,8 @@ archives: - src/* - third_party/* - _test/* - - AUTHORS.md - - CHANGELOG.md - - CODE_OF_CONDUCT.md - - CONTRIBUTING.md - - LICENSE.md - - README.md - - GoInfos.txt - - clang-format.sh - - FilesAndFolders.md + - ./*.sh + - ./*.md - go.mod - go.sum - super-linter.report/* diff --git a/.vscode/launch.json b/.vscode/launch.json index 6d78cbcbf..44530ace9 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,6 +1,19 @@ { "version": "0.2.0", "configurations": [ + { + "name": "generate", + "type": "go", + "request": "launch", + "mode": "auto", + "program": "${workspaceFolder}/cmd/trice", + "env": {}, + "args": ["generate", + "-c", + "-idlist", "${workspaceFolder}/examples/G0B1_inst/til.json", + "-verbose" + ] + }, { "name": "TCP4", "type": "go", @@ -93,7 +106,7 @@ ] }, { - "name": "-p com46", + "name": "G0B1 -p com6", "type": "go", "request": "launch", "mode": "auto", @@ -101,11 +114,12 @@ "env": {}, "args": ["log", "-port", - "com46", + "com6", + "-pf=cobs", "-i", - "${workspaceFolder}/../NAi2Development/SD3Modbus/SD3-HW-RevA-Lib_Modbus-STM32-HAL-FreeRTOS/til.json", + "${workspaceFolder}/examples/G0B1_inst/til.json", "-li", - "${workspaceFolder}/../NAi2Development/SD3Modbus/SD3-HW-RevA-Lib_Modbus-STM32-HAL-FreeRTOS/li.json" + "${workspaceFolder}/examples/G0B1_inst/li.json" ] }, { diff --git a/.vscode/settings.json b/.vscode/settings.json index d82de92c7..496fbf15c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -16,7 +16,8 @@ "NUCLEO", "Strg", "tcobs", - "TREX" + "TREX", + "vscode" ], "C_Cpp.errorSquiggles": "Disabled", "cmake.configureOnOpen": false, diff --git a/CHANGELOG.md b/CHANGELOG.md index 56e1cdce7..6b614c18d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,118 +1,152 @@ - +
+ +# Changelog + + + -- [1. v0.60.1 Twice Log Screen Shot](#1-v0601-twice-log-screen-shot) -- [2. v0.56.0 Changes](#2-v0560-changes) - - [2.1. Legacy `TRICE*` macros](#21-legacy-trice-macros) - - [2.2. Function call macros `TRice`, `Trice` and `trice`](#22-function-call-macros-trice-trice-and-trice) - - [2.3. Common improvements](#23-common-improvements) - - [2.4. CLI changes](#24-cli-changes) - - [2.5. Changes under the hood](#25-changes-under-the-hood) -- [3. v063. Changes](#3-v063-changes) -- [4. v0.64.0 Changes (unsorted)](#4-v0640-changes-unsorted) -- [5. v0.64.1 changes (unsorted)](#5-v0641-changes-unsorted) -- [6. v0.65.0 Changes](#6-v0650-changes) -- [7. v0.66.0 Changes](#7-v0660-changes) -- [8. v0.67.0 Changes](#8-v0670-changes) -- [9. v0.68.0 Changes](#9-v0680-changes) -- [10. v0.69.0 Changes](#10-v0690-changes) -- [11. v0.70.0 Changes](#11-v0700-changes) - - [11.1. Overview](#111-overview) - - [11.2. Git Log](#112-git-log) -- [12. v0.71.0 Changes](#12-v0710-changes) - - [12.1. Overview](#121-overview) - - [12.2. Git Log](#122-git-log) -- [13. v0.72.0 Changes](#13-v0720-changes) - - [13.1. Overview](#131-overview) - - [13.2. Git Log](#132-git-log) -- [14. v0.72.1 Changes](#14-v0721-changes) - - [14.1. Overview](#141-overview) - - [14.2. Git Log](#142-git-log) -- [15. master branch changes](#15-master-branch-changes) +* 1. [v0.60.1 Twice Log Screen Shot](#v0.60.1-twice-log-screen-shot) +* 2. [v0.56.0 Changes](#v0.56.0-changes) + * 2.1. [Legacy `TRICE*` macros](#legacy-`trice*`-macros) + * 2.2. [Function call macros `TRice`, `Trice` and `trice`](#function-call-macros-`trice`,-`trice`-and-`trice`) + * 2.3. [Common improvements](#common-improvements) + * 2.4. [CLI changes](#cli-changes) + * 2.5. [Changes under the hood](#changes-under-the-hood) +* 3. [v0.63.0 Changes](#v0.63.0-changes) +* 4. [v0.64.0 Changes](#v0.64.0-changes) +* 5. [v0.64.1 changes](#v0.64.1-changes) +* 6. [v0.65.0 Changes](#v0.65.0-changes) +* 7. [v0.66.0 Changes](#v0.66.0-changes) +* 8. [v0.67.0 Changes](#v0.67.0-changes) +* 9. [v0.68.0 Changes](#v0.68.0-changes) +* 10. [v0.69.0 Changes](#v0.69.0-changes) +* 11. [v0.70.0 Changes](#v0.70.0-changes) + * 11.1. [Overview](#overview) + * 11.2. [Git Log](#git-log) +* 12. [v0.71.0 Changes](#v0.71.0-changes) + * 12.1. [Overview](#overview-1) + * 12.2. [Git Log](#git-log-1) +* 13. [v0.72.0 Changes](#v0.72.0-changes) + * 13.1. [v0.72.0 Overview](#v0.72.0-overview) + * 13.2. [v0.72.0 Git Log](#v0.72.0-git-log) +* 14. [v0.72.1 Changes](#v0.72.1-changes) + * 14.1. [v0.72.1 Overview](#v0.72.1-overview) + * 14.2. [v0.72.1 Git Log](#v0.72.1-git-log) +* 15. [v0.72.2 Changes](#v0.72.2-changes) + * 15.1. [v0.72.2 Overview](#v0.72.2-overview) + * 15.2. [v0.72.2 Git Log](#v0.72.2-git-log) +* 16. [v0.72.3 Changes](#v0.72.3-changes) + * 16.1. [v0.72.3 Overview](#v0.72.3-overview) + * 16.2. [v0.72.3 Git Log](#v0.72.3-git-log) +* 17. [v0.72.4 Changes](#v0.72.4-changes) + * 17.1. [v0.72.4 Overview](#v0.72.4-overview) + * 17.2. [v0.72.4 Git Log](#v0.72.4-git-log) +* 18. [v0.72.5 Changes](#v0.72.5-changes) + * 18.1. [v0.72.5 Overview](#v0.72.5-overview) + * 18.2. [v0.72.5 Git Log](#v0.72.5-git-log) +* 19. [v0.73.0 Changes](#v0.73.0-changes) + * 19.1. [v0.73.0 Overview](#v0.73.0-overview) + * 19.2. [v0.73.0 Git Log](#v0.73.0-git-log) +* 20. [v0.73.1 Changes](#v0.73.1-changes) + * 20.1. [v0.73.0 Overview](#v0.73.0-overview-1) + * 20.2. [v0.73.0 Git Log](#v0.73.0-git-log-1) +* 21. [master branch changes](#master-branch-changes) + -# Changelog - - - -| date | version | comment | -| ----------- | ------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| 2020-02-11 | 0.1 | initial version | -| 2020-02-14 | 0.2 | SHORT_MEMORY switch added | -| 2020-02-18 | 0.3 | C macros renamed into TRICE | -| 2020-02-20 | 0.4 | trice printf() adapter added | -| 2020-02-22 | 0.5 | support for auto param count | -| 2020-03-01 | 0.6 | encryption support, TRICE64_2 added | -| 2020-03-12 | 0.7 | `trice u -src dir1 -src file -src dir2` any now possible, -ts added, effective runtime strings | -| 2020-03-29 | 0.8 | auto-logfile, remoteDisplay added, check issues! | -| 2020-04-07 | 0.8.2 | display server supports many receiver-clients, no line mixes, code partially restructured, line prefix | -| 2020-04-22 | 0.9 | fileWatcher added (no need to re-load til.json anymore), now `trice s` possible for COMport scan, NUCLEO-F070 demo project added, now with ANSI color (faster), default log filename with timestamp, remote displayServer shutdown possible | -| 2020-05-12 | 0.9.1 | `SeggerRTT` & `SeggerRTTD` added, docs extended, more test examples, TRICE16_1 critical section bugfix | -| 2020-06-29 | 0.9.2 | CLI slightly changed (no more 'r'), doc extended, added: Tests, Examples, JLINK, RND, SIM, FILE, TRICE_SYNC, TRICE_VARIANT, TRICE_ASSERT, now no semi-colon after `TRICE` is tolerated (macros), several `TRICE` in one code line are now ok | + + +| date | version | comment | +|------------|--------:|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| 2020-02-11 | 0.1 | initial version | +| 2020-02-14 | 0.2 | SHORT_MEMORY switch added | +| 2020-02-18 | 0.3 | C macros renamed into TRICE | +| 2020-02-20 | 0.4 | trice printf() adapter added | +| 2020-02-22 | 0.5 | support for auto param count | +| 2020-03-01 | 0.6 | encryption support, TRICE64_2 added | +| 2020-03-12 | 0.7 | `trice u -src dir1 -src file -src dir2` any now possible, -ts added, effective runtime strings | +| 2020-03-29 | 0.8 | auto-logfile, remoteDisplay added, check issues! | +| 2020-04-07 | 0.8.2 | display server supports many receiver-clients, no line mixes, code partially restructured, line prefix | +| 2020-04-22 | 0.9 | fileWatcher added (no need to re-load til.json anymore), now `trice s` possible for COMport scan, NUCLEO-F070 demo project added, now with ANSI color (faster), default log filename with timestamp, remote displayServer shutdown possible | +| 2020-05-12 | 0.9.1 | `SeggerRTT` & `SeggerRTTD` added, docs extended, more test examples, TRICE16_1 critical section bugfix | +| 2020-06-29 | 0.9.2 | CLI slightly changed (no more 'r'), doc extended, added: Tests, Examples, JLINK, RND, SIM, FILE, TRICE_SYNC, TRICE_VARIANT, TRICE_ASSERT, now no semi-colon after `TRICE` is tolerated (macros), several `TRICE` in one code line are now ok | | ... | | -| 2022-FEB-11 | 0.48.0 | FILE & TCP4 input ports added | -| 2022-APR-27 | 0.49.1 | FILEBUFFER support added | -| 2022-APR-27 | 0.49.1 | Darwin binaries added | -| 2022-MAY-14 | 0.49.2 | Legacy comport Tarm driver code deactivated, TRICE_S usage clarification in [TriceUserGuide.md](./doc/TriceUserGuide.md), `\t` support inside format strings added, `TRICE` macro in one line demand added., FILEBUFFER issue fixed (workaround) | -| 2022-MAY-16 | 0.50.0 | Switch `-tcp` added allowing trice TCP output for reception with 3rd party tools. | -| 2022-MAY-17 | 0.51.0 | Switch `-binaryLogfile`added. | -| 2022-MAY-22 | 0.51.1 | Display server works again. Simple Shell added. | -| 2022-JUN-05 | 0.52.0 | UART Command option added (MDK-ARM_STM32F030R8 example), Colors extended. | -| 2022-JUN-14 | 0.53.0 | Macros added: TRICE_B, TRICE8_B, TRICE16_B, TRICE32_B, TRICE64_B, TRICE8_F, TRICE16_F, TRICE32_F, TRICE64_F. | -| 2022-JUL-06 | 0.54.0 | Location information file `li.json` now generated with `trice u`. This makes the 4 bytes location information inside the binary data obsolete and reduces the transmitted data. You should adapt your `triceConfig.h` - disable `TRICE_LOCATION` there. | -| 2022-JUL-07 | 0.54.1 | Test data adapted | -| 2022-AUG-25 | 0.55.1 | Switching to TREX (see ./doc/TriceV1.0Specification.md) as default encoding. Legacy projects need "trice log -enc TLE" now. In project specific `triceConfig.h` file switch between `TRICE_TREX_ENCODING` and `TRICE_LEGACY_ENCODING`. For TREX framing TCOBSv1 is active. As default the `Id(n) sub-macro uses a 16-bit timestamp, so be careful changing legacy projects. See issue [#317](https://github.com/rokath/trice/issues/317). | -| 2023-FEB-19 | 0.56.0 | Many changes - see below | -| 2023-FEB-21 | 0.56.2 | TriceUserManual.md changed | -| 2023-FEB-21 | 0.56.3 | Target Modbus Code deactivated (anyway not usable yet) | -| 2023-MAR-05 | 0.56.4 | Maintenance release: all 3 modes work parallel over RTT0 and UARTA in MDK-ARM_STM32F030R8. | -| 2023-MAY-04 | 0.57.0 | Target code reworked. Now 4 buffer types: `STACK`,`STATIC` for direct mode only and `DOUBLE`, `RING` for deferred plus optional direct mode. A RTT 32-bit write function allows direct SEGGER_RTT output within less 100 MCU clocks (^=1.5µs@64MHz). | -| 2023-MAY-05 | 0.58.0 | Target files all now direct in src folder and need to be included all. Direct XTEA with RTT32 (experimental). | -| 2023-MAY-10 | 0.59.0 | Target code better structured. Automatic target tests working and now extendable with more configuration variants. Auxiliary support for direct and deferred. Common RTT Diagnostics for all RTT Modes as part of TRICE_DIAGNOSTICS. | -| 2023-MAY-14 | 0.60.0 | XTEA working with doubleBuffer in multi-pack mode and also with ringBuffer (safe-single mode). Tests for that added and also a test for twin mode (direct plus deferred output) is working. more target code tests | -| 2023-MAY-15 | 0.60.1 | Twice Log enabled in https://github.com/rokath/trice/tree/master/test/MDK-ARM_STM32F030R8_instrumented as `triceConfig.h` example. | -| 2023-MAY-16 | 0.60.2 | Target code linted. | -| 2023-JUN-09 | 0.60.3 | vsCode with Clang\|GCC examples added | -| 2023-JUL-24 | 0.61.0 | `trice insert` as new command is successor for `trice update`. With `trice zero` all IDs in source can be set to 0. A following `trice insert` will restore the IDs. Experimental `trice clean` command added. `trice update | renew | refresh` depreciated now and will be removed in the future. | -| 2023-JUL-24 | 0.61.1 | Fixed [#407](https://github.com/rokath/trice/issues/407) | -| 2023-JUL-24 | 0.61.2 | Fixed [#423](https://github.com/rokath/trice/issues/423) | -| 2023-AUG-06 | 0.62.0 | Examples moved from ./test to ./examples. ReadMe.md and scripts adapted. This includes the movement of TriceDiagnostics() to `triceCheck.c` because this is more a user specific and no library functionality. | -| 2023-AUG-06 | 0.62.1 | In some cases, when Trice16() returned a 32-bit value the cycle counter got disturbed. This is solved now. | -| 2023-SEP-10 | 0.62.2 | Fixes issue [#427](https://github.com/rokath/trice/issues/427). TCOBS decoder more robust against data garbage. | -| 2023-SEP-22 | 0.62.3 | Incorporated pull requests [#433](https://github.com/rokath/trice/issues/433) && [#435](https://github.com/rokath/trice/issues/435). Minor clarification in trice user guide. | -| 2024-Mar-17 | 0.63.0 | See [3. v063. Changes](#3-v063-changes) | -| 2024-JUL-18 | 0.64.0 | See [4. v0.64.0 Changes (unsorted)](#4-v0640-changes-unsorted) | -| 2024-JUL-26 | 0.64.1 | See [v0.64.1 changes (unsorted)](#v0.64.1changesunsorted) | -| 2024-JUL-26 | 0.64.2 | minor cleanups | -| 2024-JUL-27 | 0.64.3 | ID management improved for special cases | -| 2024-AUG-08 | 0.65.0 | See [6. v0.65.0 Changes](#6-v0650-changes) | -| 2024-AUG-17 | 0.66.0 | See [7. v0.66.0 Changes](#7-v0660-changes) | -| 2024-AUG-18 | 0.66.1 | Documetation and tests improved | -| 2024-AUG-23 | 0.67.0 | See [8. v0.67.0 Changes](#8-v0670-changes) | -| 2024-AUG-30 | 0.68.0 | See [9. v0.68.0 Changes](#9-v0680-changes) | -| 2024-AUG-23 | master | See [10. v0.69.0 Changes](#10-v0690-changes) | -| 2024-OCT-04 | 0.70.0 | See [11. v0.70.0 Changes](#11-v0700-changes) | -| 2024-OCT-17 | 0.71.0 | See [12. v0.71.0 Changes](#11-v0700-changes) | -| 2024-OCT-17 | master | See [13. master branch changes](#13-master-branch-changes) | - -## 1. v0.60.1 Twice Log Screen Shot - -- Please look at the used command lines carefully, expecially the `-d16` switch - -![x](./docs/ref/v0.60.1TwiceLog.png) -## 2. v0.56.0 Changes +| 2022-FEB-11 | 0.48.0 | FILE & TCP4 input ports added | +| 2022-APR-27 | 0.49.1 | FILEBUFFER support added | +| 2022-APR-27 | 0.49.1 | Darwin binaries added | +| 2022-MAY-14 | 0.49.2 | Legacy comport Tarm driver code deactivated, TRICE_S usage clarification, `\t` support inside format strings added, `TRICE` macro in one line demand added., FILEBUFFER issue fixed (workaround) | +| 2022-MAY-16 | 0.50.0 | Switch `-tcp` added allowing trice TCP output for reception with 3rd party tools. | +| 2022-MAY-17 | 0.51.0 | Switch `-binaryLogfile`added. | +| 2022-MAY-22 | 0.51.1 | Display server works again. Simple Shell added. | +| 2022-JUN-05 | 0.52.0 | UART Command option added (MDK-ARM_STM32F030R8 example), Colors extended. | +| 2022-JUN-14 | 0.53.0 | Macros added: TRICE_B, TRICE8_B, TRICE16_B, TRICE32_B, TRICE64_B, TRICE8_F, TRICE16_F, TRICE32_F, TRICE64_F. | +| 2022-JUL-06 | 0.54.0 | Location information file `li.json` now generated with `trice u`. This makes the 4 bytes location information inside the binary data obsolete and reduces the transmitted data. You should adapt your `triceConfig.h` - disable `TRICE_LOCATION` there. | +| 2022-JUL-07 | 0.54.1 | Test data adapted | +| 2022-AUG-25 | 0.55.1 | Switching to TREX as default encoding. Legacy projects need "trice log -enc TLE" now. In project specific `triceConfig.h` file switch between `TRICE_TREX_ENCODING` and `TRICE_LEGACY_ENCODING`. For TREX framing TCOBSv1 is active. As default the `Id(n) sub-macro uses a 16-bit timestamp, so be careful changing legacy projects. See issue [#317](https://github.com/rokath/trice/issues/317). | +| 2023-FEB-19 | 0.56.0 | Many changes - see below | +| 2023-FEB-21 | 0.56.3 | Target Modbus Code deactivated (anyway not usable yet) | +| 2023-MAR-05 | 0.56.4 | Maintenance release: all 3 modes work parallel over RTT0 and UARTA in MDK-ARM_STM32F030R8. | +| 2023-MAY-04 | 0.57.0 | Target code reworked. Now 4 buffer types: `STACK`,`STATIC` for direct mode only and `DOUBLE`, `RING` for deferred plus optional direct mode. A RTT 32-bit write function allows direct SEGGER_RTT output within less 100 MCU clocks (^=1.5µs@64MHz). | +| 2023-MAY-05 | 0.58.0 | Target files all now direct in src folder and need to be included all. Direct XTEA with RTT32 (experimental). | +| 2023-MAY-10 | 0.59.0 | Target code better structured. Automatic target tests working and now extendable with more configuration variants. Auxiliary support for direct and deferred. Common RTT Diagnostics for all RTT Modes as part of TRICE_DIAGNOSTICS. | +| 2023-MAY-14 | 0.60.0 | XTEA working with doubleBuffer in multi-pack mode and also with ringBuffer (safe-single mode). Tests for that added and also a test for twin mode (direct plus deferred output) is working. more target code tests | +| 2023-MAY-15 | 0.60.1 | Twice Log enabled in https://github.com/rokath/trice/tree/master/test/MDK-ARM_STM32F030R8_instrumented as `triceConfig.h` example. | +| 2023-MAY-16 | 0.60.2 | Target code linted. | +| 2023-JUN-09 | 0.60.3 | vsCode with Clang\|GCC examples added | +| 2023-JUL-24 | 0.61.0 | `trice insert` as new command is successor for `trice update`. With `trice zero` all IDs in source can be set to 0. A following `trice insert` will restore the IDs. Experimental `trice clean` command added. `trice update | renew | refresh` depreciated now and will be removed in the future. | +| 2023-JUL-24 | 0.61.1 | Fixed [#407](https://github.com/rokath/trice/issues/407) | +| 2023-JUL-24 | 0.61.2 | Fixed [#423](https://github.com/rokath/trice/issues/423) | +| 2023-AUG-06 | 0.62.0 | Examples moved from ./test to ./examples. ReadMe.md and scripts adapted. This includes the movement of TriceDiagnostics() to `triceCheck.c` because this is more a user specific and no library functionality. | +| 2023-AUG-06 | 0.62.1 | In some cases, when Trice16() returned a 32-bit value the cycle counter got disturbed. This is solved now. | +| 2023-SEP-10 | 0.62.2 | Fixes issue [#427](https://github.com/rokath/trice/issues/427). TCOBS decoder more robust against data garbage. | +| 2023-SEP-22 | 0.62.3 | Incorporated pull requests [#433](https://github.com/rokath/trice/issues/433) && [#435](https://github.com/rokath/trice/issues/435). Minor clarification in trice user guide. | +| 2024-Mar-17 | 0.63.0 | See [3. v063. Changes](#v0.63.0-changes) | +| 2024-JUL-18 | 0.64.0 | See [4. v0.64.0 Changes](#v0.64.0-changes) | +| 2024-JUL-26 | 0.64.1 | See [v0.64.1 changes](#v0.64.1-changes) | +| 2024-JUL-26 | 0.64.2 | minor cleanups | +| 2024-JUL-27 | 0.64.3 | ID management improved for special cases | +| 2024-AUG-08 | 0.65.0 | See [6. v0.65.0 Changes](#v0.65.0-changes) | +| 2024-AUG-17 | 0.66.0 | See [7. v0.66.0 Changes](#v0.66.0-changes) | +| 2024-AUG-18 | 0.66.1 | Documetation and tests improved | +| 2024-AUG-23 | 0.67.0 | See [8. v0.67.0 Changes](#v0.67.0-changes) | +| 2024-AUG-30 | 0.68.0 | See [9. v0.68.0 Changes](#v0.68.0-changes) | +| 2024-AUG-23 | 0.69.0 | See [10. v0.69.0 Changes](#v0.69.0-changes) | +| 2024-OCT-09 | 0.70.0 | See [11. v0.70.0 Changes](#v0.70.0-changes) | +| 2024-OCT-17 | 0.71.0 | See [12. v0.71.0 Changes](#v0.71.0-changes) | +| 2024-OCT-31 | 0.72.0 | See [13. v0.72.0 Changes](#v0.72.0-changes) | +| 2024-NOV-06 | 0.72.1 | See [14. v0.72.1 Changes](#v0.72.1-changes) | +| 2024-NOV-17 | 0.72.2 | See [15. v0.72.2 Changes](#v0.72.2-changes) | +| 2024-NOV-29 | 0.72.3 | See [16. v0.72.3 Changes](#v0.72.3-changes) | +| 2024-DEC-10 | 0.72.4 | See [17. v0.72.4 Changes](#v0.72.4-changes) | +| 2024-DEC-18 | 0.72.5 | See [18. v0.72.5 Changes](#v0.72.5-changes) | +| 2024-DEC-18 | master | See [19. master branch changes](#master-branch-changes) | + +## 1. v0.60.1 Twice Log Screen Shot + +Please look at the used command lines carefully, expecially the `-d16` switch + + + +## 2. v0.56.0 Changes This is a major release hopefully not breaking too much! -### 2.1. Legacy `TRICE*` macros +### 2.1. Legacy `TRICE*` macros * Using the `TRICE*` macros generally is not recommended anymore, but they are still supported. * `TRICE*` macros with an `Id(n)` inside are now with 16-bit stamps. To have 32-bit stamps use `ID(n)` instead and `id(n)` is for no stamps. The ID numbers can stay the same. * The very little time advantage of code inlining will not count in most cases. * The `TRICE_*` macros, like `TRICE_S` are still needed. -### 2.2. Function call macros `TRice`, `Trice` and `trice` +### 2.2. Function call macros `TRice`, `Trice` and `trice` * The `TRICE*` macros are inlining the trice code, what could lead to significant memory usage if you use these MACROs heavily. * `TRice*` macros insert a 32-bit stamp. @@ -126,26 +160,26 @@ This is a major release hopefully not breaking too much! * The `*64` macro extensions are usable for 64-bit values, like `double`. * See `test\testdata\triceCheck.c` for examples. -### 2.3. Common improvements +### 2.3. Common improvements -- Target time stamps now better formatted, Default is `µs`, `ms` is selectable. -- A new document TriceConfigProjectImageSizeOptimization.md was written. -- Trice messages containing several `\n` are better formatted. -- Multiple physical channels parallel usable now, like RTT and UART. -- A space after ShowID inserted, also after target stamp for better visibility. -- `triceConfig.h` was heavily restructured. -- Target code split in several files now, but only `trice.c` needs to be added to the target project. +* Target time stamps now better formatted, Default is `µs`, `ms` is selectable. +* A new document TriceConfigProjectImageSizeOptimization.md was written. (Now part of TriceUserManual.md) +* Trice messages containing several `\n` are better formatted. +* Multiple physical channels parallel usable now, like RTT and UART. +* A space after ShowID inserted, also after target stamp for better visibility. +* `triceConfig.h` was heavily restructured. +* Target code split in several files now, but only `trice.c` needs to be added to the target project. -### 2.4. CLI changes +### 2.4. CLI changes -- `ts` ist now target stamp. Host stamps are switchable with `-hs`. -- `-packageFraming` is new. -- Switch `-newlineIndent` added. -- `li off` is now possible. -- `trice s` now shows if a port is used already. -- `my/path/auto` now possible with log files. +* `ts` ist now target stamp. Host stamps are switchable with `-hs`. +* `-packageFraming` is new. +* Switch `-newlineIndent` added. +* `li off` is now possible. +* `trice s` now shows if a port is used already. +* `my/path/auto` now possible with log files. -### 2.5. Changes under the hood +### 2.5. Changes under the hood * MemFs `afero.Afero` is used now, what is for better tests. * A `til.json.c|h` is generated when `trice u` is called with `-v` switch. @@ -157,125 +191,125 @@ This is a major release hopefully not breaking too much! * False positive windows vet warning removed. * Endianness updated and tested. -## 3. v063. Changes - -- Issue [#436](https://github.com/rokath/trice/issues/436) done (faster now). -- Issue [#438](https://github.com/rokath/trice/issues/438) done (minor). -- Issue [#439](https://github.com/rokath/trice/issues/439) done (no more trice macros inside header files). -- Now unified `__restrict` keyword. `RESTRICT` keyword removed and `#include ` into all **triceConfig.h** files. Obsolete 'RESTRICT' code removed. -- Code cleanup, tests now ok with `-race`. **Added: `triceAssertTrue` and `triceAssertFalse`**. -- CLI switch `-d16` better documented. -- **`UserNonBlockingDirectWrite8AuxiliaryFn` and `UserNonBlockingDeferredWrite8AuxiliaryFn` invented for a cleaner auxiliary interface adaption**. -- Doc updated in `TriceUserGuide.md`, `TriceVsPrintfSimilaritiesAndDifferences.md`, `TriceTargetCode.md`, `TriceColor.md` and preface extended. -- Folder `examples` fixed. -- Merge pull request [#442](https://github.com/rokath/trice/pull/442) from rokath/dependabot/go_modules/golang.org/x/crypto-0.17.0. -- Merge pull request [#437](https://github.com/rokath/trice/pull/437) from hugobpontes/fix_ID_Id_compiler_warnings (add `do ... while (0)` to Id and ID macros. - -## 4. v0.64.0 Changes (unsorted) - -- additional configuration checks -- TriceNonBlockingDirectWrite re-coded -- auxiliary output 32bit support -- example projects folder re-worked -- According issue #456 inside trice.h some renaming to avoid name clashes with other libraries. Only ID, Id, id and iD stayed the same for user code readability and compability. -- BuildInfo added to self-compiled Trice compiled binary. -- CGO test dokumentation extended. -- CYCLE error now with sound in Trice tool. -- Chapter "Trice Limitations" re-worked. -- FreeRTOS example added -- Merge pull request #454 from hugobpontes/master -- More checks for dynamic strings -- More descriptive error messages when running out of IDs -- Naming for TRICE_DEFERRED_TRANSFER_MODE improved -- New test cases added -- Now only one common TriceEncode Function. (Code clean-up) -- Overflow checks successful -- SEGGER_RTT_32BIT now also with framing possible -- TRICE_CONFIG_WARNINGS switch added -- TRICE_PROTECT test added -- TRICE_PROTRCT switch added -- TriceEnoughSpace() better commented for ring buffer. -- TriceEnoughSpace() corrected and commented for ring buffer. -- TriceOvewrflowCount added as diagnostics value -- Undefine ID, Id, id, iD at the trice.h start to avoid name clashes just in case a previous header file used them (see issue #456) -- Update README.md -- Update TriceUserGuide.md -- Update cgo_test.go -- Update trice.c -- Update triceConfig.h -- triceDefaultConfig.h file added. -- additional configuration checks -- additional id processing methods -- additional test cases -- automated tests now with all test lines -- automatic tests extended and adapted -- code cleanup, formatting, comments updated -- cycle error message compacted -- dead code removed -- Test for double buffer multi packaging now ok with encryption -- encryption code improved -- test folder names adapted to pattern -- example folder names unified -- full build info displayed (only) with *trice version -verbose* -- improved id management and testing -- "no package framing" fix -- trice configuration switches added -- triceAsssertTrue and triceAssertFalse are now covered by TRICE_CLEAN too. -- triceDefaultConfig.h eases settings now -- "simulated" UART -- Most config switches with 0 or 1 only (removed #ifdef) -- +triceUart.c (User provides triceUart.h) -- better id procesing -- compiler switches variants -- improved id testing -- triceDefaultConfig.h - -## 5. v0.64.1 changes (unsorted) - -- `b171458c` (origin/debug, debug) Bugfix: Temp buffer was too small -- `478bfa7d` diagnostics re-ordered to get more secure output if buffers are very small -- `3714af9f` double buffer re-worked, tests ok -- `43c327bc` Minor ID management improvement -- `7ac98469` remove unused commands from install with renaming -- `b2824c07` TRICE_DATA_OFFSET diagnostics added. -- `0be73a55` TRICE_SINGLE_MAX_SIZE now disables Trice functions needing more space. -- `2fa74111` Issue [#476](https://github.com/rokath/trice/issues/476) solved -- `f6fdb28f` Update ReadMe.md -- `67fc2879` small encryption bugfix -- `2bd02c25` Links corrected -- `74b2449d` examples doc improved -- `1b3ae219` doc updated -- `ba18d165` smaller improvements -- `f714c213` duplicate information removed and referenced to origin -- `a2ec33fe` hint added -- `4df3bfa5` ReadMe.md added to some examples - -## 6. v0.65.0 Changes - -- `5af9c2bb664e11e5e2663e56116d842719ca6f8d` Issue #431 solved -- `430c6a4dde817bc39ec35d595341efbe069cf482` Issue #466 solved -- You can now use `trice8B( "msg: %02x\n", buffer, len);` functions and the like. See [test/testdata/triceCheck.c](test/testdata/triceCheck.c) for examples. - -## 7. v0.66.0 Changes - -- `3b607b44d6681e2d6aa60eea7eba24a939b81e4b` (HEAD -> master, origin/master, origin/devel, origin/HEAD, devel) wip -- `5db46f255a669a4407af8a255af4413a548a18cf` issue #485 solved: li.json now extended instead of re-generated to keep legacy location information -- `d0bb82d35446c67ab4337cab033c5957d8c8571b` triceB ok AND logLevel ok -- `97a3a2a33eb7f56f98626971ba5f844b2754fe93` small bugfix resulting from more test cases -- `8a4d1c3bfa98ac240d0fda0d961b4a9c94b4f911` Issue #356 solved -- `58351b3c338957053758f128bbf8837dcfc0f28e` Check added for valid ID range. -- `a617c97317a08c34cb7e923cf6595a95eac67560` Legacy sub commands refresh and renew replace with sub command add. -- `e87234851ea1e6dccf33c547657460953c5fd870` changelog update -- `b28ab89295d2fa38f6ea0c935aa701ac82384ff6` issue #363 solved: Remove legacy "i" artifacts from code (example: updateParamCountAndID0) -- `fe82bc6e27c32504f3102705de7f82b8d764b20c` issue #478 solved: : Add Trice tool CLI switch for automated \n after each trice message to avoid the need to write it all the time. -- `832e4c1e438a3499b557bb778a91a56dc57edc34` function signature more universal -- `d99e06341f871bc9b0e38686ea36f336bfb8a84f` folder renamed -- `287239db4940c401b395ed9b9f7c91bc210ebc46` Testig slightly improved - -## 8. v0.67.0 Changes +## 3. v0.63.0 Changes + +* Issue [#436](https://github.com/rokath/trice/issues/436) done (faster now). +* Issue [#438](https://github.com/rokath/trice/issues/438) done (minor). +* Issue [#439](https://github.com/rokath/trice/issues/439) done (no more trice macros inside header files). +* Now unified `__restrict` keyword. `RESTRICT` keyword removed and `#include ` into all **triceConfig.h** files. Obsolete 'RESTRICT' code removed. +* Code cleanup, tests now ok with `-race`. **Added: `triceAssertTrue` and `triceAssertFalse`**. +* CLI switch `-d16` better documented. +* **`UserNonBlockingDirectWrite8AuxiliaryFn` and `UserNonBlockingDeferredWrite8AuxiliaryFn` invented for a cleaner auxiliary interface adaption**. +* Doc updated in `TriceUserGuide.md`, `TriceVsPrintfSimilaritiesAndDifferences.md`, `TriceTargetCode.md` (now in TriceUserManual.md), `TriceColor.md` and preface extended. +* Folder `examples` fixed. +* Merge pull request [#442](https://github.com/rokath/trice/pull/442) from rokath/dependabot/go_modules/golang.org/x/crypto-0.17.0. +* Merge pull request [#437](https://github.com/rokath/trice/pull/437) from hugobpontes/fix_ID_Id_compiler_warnings (add `do ... while (0)` to Id and ID macros. + +## 4. v0.64.0 Changes + +* additional configuration checks +* TriceNonBlockingDirectWrite re-coded +* auxiliary output 32bit support +* example projects folder re-worked +* According issue #456 inside trice.h some renaming to avoid name clashes with other libraries. Only ID, Id, id and iD stayed the same for user code readability and compability. +* BuildInfo added to self-compiled Trice compiled binary. +* CGO test documentation extended. +* CYCLE error now with sound in Trice tool. +* Chapter "Trice Limitations" re-worked. +* FreeRTOS example added +* Merge pull request #454 from hugobpontes/master +* More checks for dynamic strings +* More descriptive error messages when running out of IDs +* Naming for TRICE_DEFERRED_TRANSFER_MODE improved +* New test cases added +* Now only one common TriceEncode Function. (Code clean-up) +* Overflow checks successful +* SEGGER_RTT_32BIT now also with framing possible +* TRICE_CONFIG_WARNINGS switch added +* TRICE_PROTECT test added +* TRICE_PROTRCT switch added +* TriceEnoughSpace() better commented for ring buffer. +* TriceEnoughSpace() corrected and commented for ring buffer. +* TriceOvewrflowCount added as diagnostics value +* Undefine ID, Id, id, iD at the trice.h start to avoid name clashes just in case a previous header file used them (see issue #456) +* Update README.md +* Update TriceUserGuide.md +* Update cgo_test.go +* Update trice.c +* Update triceConfig.h +* triceDefaultConfig.h file added. +* additional configuration checks +* additional id processing methods +* additional test cases +* automated tests now with all test lines +* automatic tests extended and adapted +* code cleanup, formatting, comments updated +* cycle error message compacted +* dead code removed +* Test for double buffer multi packaging now ok with encryption +* encryption code improved +* test folder names adapted to pattern +* example folder names unified +* full build info displayed (only) with *trice version -verbose* +* improved id management and testing +* "no package framing" fix +* trice configuration switches added +* triceAsssertTrue and triceAssertFalse are now covered by TRICE_CLEAN too. +* triceDefaultConfig.h eases settings now +* "simulated" UART +* Most config switches with 0 or 1 only (removed #ifdef) +* +triceUart.c (User provides triceUart.h) +* better id procesing +* compiler switches variants +* improved id testing +* triceDefaultConfig.h + +## 5. v0.64.1 changes + +* `b171458c` (origin/debug, debug) Bugfix: Temp buffer was too small +* `478bfa7d` diagnostics re-ordered to get more secure output if buffers are very small +* `3714af9f` double buffer re-worked, tests ok +* `43c327bc` Minor ID management improvement +* `7ac98469` remove unused commands from install with renaming +* `b2824c07` TRICE_DATA_OFFSET diagnostics added. +* `0be73a55` TRICE_SINGLE_MAX_SIZE now disables Trice functions needing more space. +* `2fa74111` Issue [#476](https://github.com/rokath/trice/issues/476) solved +* `f6fdb28f` Update ReadMe.md +* `67fc2879` small encryption bugfix +* `2bd02c25` Links corrected +* `74b2449d` examples doc improved +* `1b3ae219` doc updated +* `ba18d165` smaller improvements +* `f714c213` duplicate information removed and referenced to origin +* `a2ec33fe` hint added +* `4df3bfa5` ReadMe.md added to some examples + +## 6. v0.65.0 Changes + +* `5af9c2bb664e11e5e2663e56116d842719ca6f8d` Issue #431 solved +* `430c6a4dde817bc39ec35d595341efbe069cf482` Issue #466 solved +* You can now use `trice8B( "msg: %02x\n", buffer, len);` functions and the like. See [test/testdata/triceCheck.c](test/testdata/triceCheck.c) for examples. + +## 7. v0.66.0 Changes + +* `3b607b44d6681e2d6aa60eea7eba24a939b81e4b` (HEAD -> master, origin/master, origin/devel, origin/HEAD, devel) wip +* `5db46f255a669a4407af8a255af4413a548a18cf` issue #485 solved: li.json now extended instead of re-generated to keep legacy location information +* `d0bb82d35446c67ab4337cab033c5957d8c8571b` triceB ok AND logLevel ok +* `97a3a2a33eb7f56f98626971ba5f844b2754fe93` small bugfix resulting from more test cases +* `8a4d1c3bfa98ac240d0fda0d961b4a9c94b4f911` Issue #356 solved +* `58351b3c338957053758f128bbf8837dcfc0f28e` Check added for valid ID range. +* `a617c97317a08c34cb7e923cf6595a95eac67560` Legacy sub commands refresh and renew replace with sub command add. +* `e87234851ea1e6dccf33c547657460953c5fd870` changelog update +* `b28ab89295d2fa38f6ea0c935aa701ac82384ff6` issue #363 solved: Remove legacy "i" artifacts from code (example: updateParamCountAndID0) +* `fe82bc6e27c32504f3102705de7f82b8d764b20c` issue #478 solved: : Add Trice tool CLI switch for automated \n after each trice message to avoid the need to write it all the time. +* `832e4c1e438a3499b557bb778a91a56dc57edc34` function signature more universal +* `d99e06341f871bc9b0e38686ea36f336bfb8a84f` folder renamed +* `287239db4940c401b395ed9b9f7c91bc210ebc46` Testig slightly improved + +## 8. v0.67.0 Changes | hash | comment | -| ---------- | ---------------------------------------------------------------------------------- | +|------------|------------------------------------------------------------------------------------| | `cec916e4` | ++ skipAdditionalChecks CLI flag | | `71076aae` | Additional verbosity logs | | `0e4c8c53` | ++ CompactSrcs, ++ evaluateTriceParameterCount, ++ matchBracketLiteral | @@ -299,10 +333,10 @@ This is a major release hopefully not breaking too much! | `c5ca8482` | Merge branch 'devel' | | `a33627dc` | founding | -## 9. v0.68.0 Changes +## 9. v0.68.0 Changes | hash | comment | -| ---------- | --------------------------------------------------------------------------------------------------------- | +|------------|-----------------------------------------------------------------------------------------------------------| | `5746d892` | include files order changed back and locked now for *tcobsv1\*.c* to avoid compilation errors | | `0b1258aa` | SEGGER files updated | | `5324f415` | updated with .clang-format-ignore info | @@ -325,15 +359,15 @@ This is a major release hopefully not breaking too much! | `db54a8dd` | add .gitattibutes to avoid problem in git diff with end of line | | `653ec4a1` | Automatic TRICE_CLEAN modification added. | -## 10. v0.69.0 Changes +## 10. v0.69.0 Changes -- Big-endian MCUs should now be usable with the complete Trice macro set (automatic test added). -- Trice code auto-formatted with `clang-format.sh`. (Special thanks to @Sazerac) +* Big-endian MCUs should now be usable with the complete Trice macro set (automatic test added). +* Trice code auto-formatted with `clang-format.sh`. (Special thanks to @Sazerac) Used git log command: `git log --pretty=oneline --abbrev-commit` | hash | comment | -| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +|------------|--------------------------------------------------------------------------------------------------------------------------------------------| | `2486b5f5` | (HEAD -> master, origin/master, origin/HEAD) clang-format run | | `7eb0f831` | IDs regenerated | | `18b28063` | bash script updateExampleData.sh safer | @@ -374,21 +408,20 @@ Used git log command: `git log --pretty=oneline --abbrev-commit` | `944c4982` | clang-format: don't sort include | | `85ae6d65` | clang-format off/on added for TriceCheck | | `72bd7449` | #493 fix (hopefully, untested) | -| `9a7a2eeb` | Update TraceWithTrice.md | | `b6fe0a31` | Update README.md | | `bfb430d0` | Typo correction | | `8bb96662` | edit error corrected | | `95ea617f` | comments updated | -| `00771e2e` | indentiation adapted | +| `00771e2e` | indent adapted | | `f8fcc07c` | c++ frame added | -| `05982811` | indentiation manually adapted and .clang-format-ignore extended | +| `05982811` | indent manually adapted and .clang-format-ignore extended | | `651aac37` | TRICE_BUFFER_SIZE now with 4 additional scratch bytes | -| `afd0da98` | indentiation manually changed for readability | +| `afd0da98` | indent manually changed for readability | | `771754fd` | formatting and comments changed slightly | | `5b4b40d8` | Update README.md | | `b6e68494` | (tag: v0.68.0) rlcp added to .goreleaser.yaml | -- Test results (`be_dblB_de_tcobs_ua` is the "big-endian" test using `TRICE_TRANSFER_ORDER_IS_NOT_MCU_ENDIAN == 1` setting and `trice log ... -triceEndianness bigEndian`): +* Test results (`be_dblB_de_tcobs_ua` is the "big-endian" test using `TRICE_TRANSFER_ORDER_IS_NOT_MCU_ENDIAN == 1` setting and `trice log ... -triceEndianness bigEndian`): ```bash ms@DESKTOP-7POEGPB MINGW64 ~/repos/trice (master) @@ -464,40 +497,40 @@ user 0m0.000s sys 0m0.000s ``` -## 11. v0.70.0 Changes +## 11. v0.70.0 Changes -### 11.1. Overview +### 11.1. Overview -- Trice cache option added -- Trice commands `trice update` and `trice zero` removed -- Better handling of target MCU endianness - now mostly automatically detected (Special thanks to [Sazerac4](https://github.com/Sazerac4)) -- TRICE_OFF switch without warnings: unused parameter -- Tests changed to hexadecimal stamps to see issues easier -- spacing CLI switch added to `trice insert` -- Target code test folder `test` renamed into `_test` to avoid vsCode slowdown. To execute these tests rename this folder temporary back and run `go test ./test/...`. +* Trice cache option added +* Trice commands `trice update` and `trice zero` removed +* Better handling of target MCU endianness - now mostly automatically detected (Special thanks to [Sazerac4](https://github.com/Sazerac4)) +* TRICE_OFF switch without warnings: unused parameter +* Tests changed to hexadecimal stamps to see issues easier +* spacing CLI switch added to `trice insert` +* Target code test folder `test` renamed into `_test` to avoid vsCode slowdown. To execute these tests rename this folder temporary back and run `go test ./test/...`. -### 11.2. Git Log +### 11.2. Git Log Used git log command: `git log --pretty=oneline --abbrev-commit` and less importand lines removed -| hash | comment | -| ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `0242c1e3` | Trice cache info added. | -| `087fffc3` | cache switch added, renamed test to _test incorporated to examples | -| `ddeb703d` | Merge pull request #505 from Sazerac4/feat/update/endian | -| `b600c039` | Update ReadMe.md rename info | -| `377b7a1c` | test folder renamed into _test | -| `a6b36b8e` | trice cache tests complete | -| `c2c53481` | cache test overview table added | +| hash | comment | +|------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `0242c1e3` | Trice cache info added. | +| `087fffc3` | cache switch added, renamed test to _test incorporated to examples | +| `ddeb703d` | Merge pull request #505 from Sazerac4/feat/update/endian | +| `b600c039` | Update ReadMe.md rename info | +| `377b7a1c` | test folder renamed into _test | +| `a6b36b8e` | trice cache tests complete | +| `c2c53481` | cache test overview table added | | `04cfbcaa` | \- Add missing control on user definition on HTOTS,HTOTL,HTOTS \- Correction on error message - Format: `find ./src -name '*.c' -o -name '*.h' | xargs clang-format-18 -style=file -i` | -| `2ff9fa58` | Adds several resolutions around endianess -Add byte orders detection, remove default TRICE_MCU_IS_BIG_ENDIAN. User need to set it if not detected -Add Detection on libc include to use it -Remove full macros byteswap option, use always "TriceReverse" inline function (same effect) -Remove endianess configurations options -Add compilers buid-in when available to swap endianess (GCC and clang supported) -Add C23 endianess detection resolution | -| `6788972f` | dead code (after removing command update) commented out | -| `aa465ca5` | code refactored | -| `c5eb2a54` | Update insertIDs.go | -| `8e1a76e9` | Update TriceCacheSpec.md | -| `35fece93` | trice commands `update` and `zero` removed. | -| `7e2494bb` | Bugfix in helpinfo.go: update params where shown in insert params. | -| `75010487` | Hint "EXPERIMENTAL!" to `-cache` switch | +| `2ff9fa58` | Adds several resolutions around endianess -Add byte orders detection, remove default TRICE_MCU_IS_BIG_ENDIAN. User need to set it if not detected -Add Detection on libc include to use it -Remove full macros byteswap option, use always "TriceReverse" inline function (same effect) -Remove endianess configurations options -Add compilers buid-in when available to swap endianess (GCC and clang supported) -Add C23 endianess detection resolution | +| `6788972f` | dead code (after removing command update) commented out | +| `aa465ca5` | code refactored | +| `c5eb2a54` | Update insertIDs.go | +| `8e1a76e9` | Update TriceCacheSpec.md (now part of TriceUserManual.md) | +| `35fece93` | trice commands `update` and `zero` removed. | +| `7e2494bb` | Bugfix in helpinfo.go: update params where shown in insert params. | +| `75010487` | Hint "EXPERIMENTAL!" to `-cache` switch | | `a8e91da3` | New CLI switch `-cache` for `trice i` and `trice c`` | | `5b07e155` | Update comment in trice.h | | `4d99a760` | trice cache seams to work | @@ -535,18 +568,18 @@ Used git log command: `git log --pretty=oneline --abbrev-commit` and less import | `3c1b3aba` | .goreleaser.yaml adapted to goreleaser version 2 | | `751def35` | v0.69.0 infos and test results added to CHANGELOG.md | -## 12. v0.71.0 Changes +## 12. v0.71.0 Changes -### 12.1. Overview +### 12.1. Overview -- A new CLI switch for `trice insert` is invented: `-IDRange`. See `trice help -insert` for details. +* A new CLI switch for `trice insert` is invented: `-IDRange`. See `trice help -insert` for details. -### 12.2. Git Log +### 12.2. Git Log Used git log command: `git log --pretty=oneline --abbrev-commit` and less important lines removed | Hash | Comment | -| ---------- | --------------------------------------------------------------- | +|------------|-----------------------------------------------------------------| | `ac0f0834` | Windows drive letter issue for the tests fixed. | | `53c7080b` | IDRange code refactored. | | `31d33f72` | Path handling improved to work with linux, mac & windows. | @@ -562,20 +595,20 @@ Used git log command: `git log --pretty=oneline --abbrev-commit` and less import | `62eacd08` | Doubled used ID test added | | `85686181` | v0.70.0 changelog added | -## 13. v0.72.0 Changes +## 13. v0.72.0 Changes -### 13.1. Overview +### 13.1. v0.72.0 Overview -- Trice cache folders now with correct permissions. -- Trice deferred mode for ring buffer now also supports multi pack mode. -- Multi pack mode now as default setting for deferred modes. +* Trice cache folders now with correct permissions. +* Trice deferred mode for ring buffer now also supports multi pack mode. +* Multi pack mode now as default setting for deferred modes. -### 13.2. Git Log +### 13.2. v0.72.0 Git Log Used git log command: `git log --oneline` and less important lines removed | Hash | Comment | -| ---------- | ----------------------------------------------------------------------------------------------------------- | +|------------|-------------------------------------------------------------------------------------------------------------| | `2289bd9d` | TRICE_SINGLE_PACK_MODE set explicit | | `8330b41f` | MacOS adapted | | `198c179e` | TRICE_MULTI_PACK_MODE is now default config for deferred mode | @@ -608,18 +641,18 @@ Used git log command: `git log --oneline` and less important lines removed | `9b309925` | Trice cache "issue" chapter added | | `014ebdfc` | v0.71.0 ChangeLog added | -## 14. v0.72.1 Changes +## 14. v0.72.1 Changes -### 14.1. Overview +### 14.1. v0.72.1 Overview -- Issue #509 fixed (better `TRICE_OFF` handling) +* Issue #509 fixed (better `TRICE_OFF` handling) -### 14.2. Git Log +### 14.2. v0.72.1 Git Log Used git log command: `git log --oneline` and less important lines removed | Hash | Comment | -| ---------- | ------------------------------------------------------------------ | +|------------|--------------------------------------------------------------------| | `46c95093` | Linker flags now all under $LFLAGS and warnings eliminated | | `5f228e55` | Better TRICE_OFF handling (issue #509) | | `a415d3bc` | No more default TRICE_BUFFER, User needs to decide | @@ -631,5 +664,231 @@ Used git log command: `git log --oneline` and less important lines removed | `010f8edb` | ignore MacOS specific files | | `fb734ff5` | Update ReadMe.md | +## 15. v0.72.2 Changes + +### 15.1. v0.72.2 Overview + +Maintenance release, more build variants tests in L432 project, OpenOCD experiments + +### 15.2. v0.72.2 Git Log + +Used git log command: `git log --oneline` and less important lines removed -## 15. master branch changes +| Hash | Comment | +|------------|--------------------------------------------------------------------------------------------| +| `07c59a3f` | compiler switch error fixed | +| `86dff423` | workspace file added to L432 example | +| `234dd298` | CONFIGURATION switch added to L432 example | +| `9940dbb6` | OpenOCD for ST-Link and J-Link added and tested | +| `fb28cc78` | TriceLogConfiguration function added to examples | +| `faba8336` | Fixed some seldom config variants | +| `2d46233d` | minor Go lint action | +| `4d5f636e` | triceCheck.c now without IDs checked in | +| `50a4dc18` | CYCLE changed to CYCLE_ERROR and reserved for the Trice tool exclusively | +| `1cae53ad` | Update TriceOverRTT.md | +| `dc1cea13` | openocd automation wip | +| `c77172be` | RTT support with open-ocd for Darwin added | +| `75bb0f5b` | openocd trial | +| `b152a30b` | Added info about Darwin | +| `fb4f06d8` | RTT handling improved | +| `0d685236` | JLINK wait time replaced by try loop. The wait time was too long for macOs | +| `b4afac11` | examples now with triceExamples.c to avoid repetition | +| `3589a558` | Now at top level a renew... sript for the example & test IDs | +| `71884858` | example folder renamed from ..._instr to ..._inst | +| `ec77575e` | wip build on several OS | +| `470aab1b` | trice.c code extended with #if TRICE_DIRECT_OUTPUT == 1 and #if TRICE_DEFERRED_OUTPUT == 1 | +| `1024170a` | Similar projects extended with postform | +| `b8f63c38` | G0B1_inst example SEGGER_RTT_Conf.h finetuned to needs | +| `74b026fd` | TRICE_DEFERRED_OUTPUT and TRICE_DIRECT_OUTPUT switches added to diagnostic code | +| `2be95fd6` | Build scripts reworked for G0B1_inst example | +| `784e2da9` | TriceUserGuide.md updted | +| `6c47db08` | obsolete code removed | +| `5ac9ec50` | Update TriceColor.md | +| `29e5522b` | Update TriceVsPrintfSimilaritiesAndDifferences.md | +| `f7a98e31` | Update README.md | +| `a14271cb` | error messages improved | +| `bc1d8a6e` | In build.s args handling improved | +| `58249ac9` | v0.72.1 Changes added | + +## 16. v0.72.3 Changes + +### 16.1. v0.72.3 Overview + +Minor bug fix release. `trice insert` CLI `-spacing` renamed into `spaceInsideParenthesis` and added t0 `trice clean`. + +### 16.2. v0.72.3 Git Log + +Used git log command: `git log --oneline v0.72.2..HEAD` and less important lines removed + +| Hash | Comment | +|------------|----------------------------------------------------------| +| `04075971` | v0.72.3 prepared | +| `c6852b8f` | partial "-Wmaybe-uninitialized" added | +| `acd8c7b3` | Merge branch 'master' into devel | +| `647aec83` | gcc selected | +| `a2738843` | date command added | +| `47a9404c` | comment added | +| `1677111b` | auto formatting reults | +| `f7fbfb10` | exec mode added to scripts | +| `e028a42b` | Merge branch 'master' into devel | +| `05eede21` | CLI switch -spaceInsideParenthesis added to `tice clean` | +| `588cb266` | .goreleaser.yaml updated | +| `5dcd029a` | v0.72.2 Changes incorporated | + +## 17. v0.72.4 Changes + +### 17.1. v0.72.4 Overview + +* A new `trice generate` command added. +* A statistics switch `trice log -stat` added to display, how often each Trice message occurred. +* Documentation extended and improved + * `./examples folder` + * All documentation moved to TriceUserManual.md + * Previous documentation locations link into approriate places inside the TriceUserManual.md + +### 17.2. v0.72.4 Git Log + +Used git log command: `git log --oneline v0.72.3..HEAD | grep -v wip >> CHANGELOG.md` and less important lines removed + +| Hash | Comment | +|------------|--------------------------------------------------------------------------------------| +| `0dd99828` | Merge branch 'devel' | +| `0017f7c3` | test results updated | +| `3bab2a2a` | Merge pull request #513 from rokath/dependabot/go_modules/golang.org/x/crypto-0.31.0 | +| `17f95d91` | Chapter Test Results added | +| `300681f8` | Avoids panic on running out on IDs in non-random case | +| `7964225e` | triceF treated differently | +| `35cd7d63` | legacy comment removed | +| `bfdfd9cd` | Link repaired | +| `9e0038a7` | RPC info added test info moved | +| `bdc7f1f4` | Bump golang.org/x/crypto from 0.17.0 to 0.31.0 | +| `cf402d36` | generate ok | +| `78fbd3a5` | Unique names for function pointers | +| `266fbf59` | Update TriceUserManual.md | +| `bd0c671b` | Update README.md | +| `002a4893` | finetuning generate | +| `fd669335` | C# generator base function ok | +| `048679eb` | generate added | +| `43756571` | comment removed | +| `1eb30e19` | bugfix | +| `a9984a68` | refactored | +| `1514f8dd` | Show all colors now only with trice generate | +| `be61b9d5` | CLI generate extended | +| `d7bae494` | trice generate works (partially | +| `232b2db9` | -stat ok | +| `5e0132b5` | "trice log -p com1 -stat" is working | +| `20f269c6` | small correction | +| `b8dc081b` | clang-format adaptions | +| `cfaf10e5` | F030 examples reworked | +| `892348ca` | devel merged into master | +| `ac27fdde` | test | +| `d2ed07f4` | config speed examples added to user manual | +| `59f5a180` | Update TriceUserManual.md | +| `de22b2bc` | Update _config.yml | +| `1ba89570` | devel merged into master | +| `1c30f593` | Update README.md | +| `c253b7d3` | link redirection | +| `0564a374` | CLI long name now -spaceInsideParenthesis | +| `97b04cef` | CLI switch renamed: spaceAfterOpeningBrace -> spaceInsideTriceBrace | +| `39caef30` | contend moved to Trice User Manual | +| `d91133ce` | link typo fixed | +| `7966ca7b` | Links now direct into user manual | +| `a2356fdc` | folder renamed/removed | +| `e681a2a7` | moved/renamed | +| `7cefbadb` | link added | +| `f4057c5e` | Markdown doc files formatting improved | +| `c9027ee3` | image sizes adapted | +| `f4b4c6ed` | TOC improved | + +## 18. v0.72.5 Changes + +### 18.1. v0.72.5 Overview + +* All documents merged into [Trice User Manual](./docs/TriceUserManual.md) +* The `trice generate` now checks format soecifier count in Trices against their values count. + +### 18.2. v0.72.5 Git Log + +Used git log command: `git log --oneline v0.72.4..HEAD | grep -v wip >> CHANGELOG.md` and less important lines removed + +| Hash | Comment | +|------------|--------------------------------------------------------------------------------------------------------| +| `61f8cfbf` | stop on parse errors immediately | +| `a7e3c986` | wrong character deleted | +| `91450830` | ./renewIDs_in_examples_and_test_folder.sh now usese relative paths does not delete history per default | +| `367ea55b` | comment added | +| `72db3de7` | maintenance | +| `27c42b48` | ConstructFullTriceInfo reworked and environment adapted | +| `bcc184c4` | Special test for debug added | +| `7af720a2` | Hint added | +| `4cc18f30` | special test for debugging added | +| `3b23aec7` | typo corrected | +| `cd366fb3` | Update TriceUserManual.md | + +

(back to top)

+ +## 19. v0.73.0 Changes + +### 19.1. v0.73.0 Overview + +* RTT Log support for Linux and Darwin improved +* Trice User Manual extended +* Example improved + +### 19.2. v0.73.0 Git Log + +Used git log command: `git log --oneline v0.72.5..HEAD | grep -v wip >> CHANGELOG.md` and less important lines removed + + | Hash | Comment | + |----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------| + | 7f0854b1 | User manual PDF re-generated | + | 4748c60d | Better RTT Log support for Darwin and Linux. | + | 427aaaa6 | Update TriceUserManual.md | + | 33c4cd94 | RTTLog with tmux added (experimental) | + | 75c4ec1c | example logs improved | + | 5279680f | OpenCM3 example now part of user manual | + | c20e95d7 | RTT Support unified and improved, | + | 7b86ee49 | example scripts simplified | + | 985de7c3 | Chapter Add-On Hints added | + | f2dbf365 | RTT script for Linux ok | + | e469901a | win setup updated | + | 0d8cf7c7 | minor adaptions for Windows | + | ffb2201a | -defaultStampSize for legacy upper case only TRICE messages changed to 0 | + | b354653f | LI now shows only base name during trice log to keep lines shorter | + | bb9f0d23 | Update TriceUserManual.md | + | c3e304e4 | - Scripts improved - Only one common trice-clean... and trice-insert... script - Trice cache warning added in case no cache folder exists and -cache switch is applied | + | dd5828f8 | SeveraL Minor improvements | + | 6fd091de | Change to global demoTIL.json and demoLI.json | + | 41be494b | Verbose ID log extended and improved | + | 839d0ea3 | Linux setup added | + | aec94373 | ++caffeinate | + | d8312a09 | Chapter "Trice location information file li.json" extended. | + | 506906d9 | CLI -liPathRelative bool replaced with -liPath string | + | a65202d8 | Link repair | + | 100efb3c | 2 chapters added | + | cd00e784 | Update TriceUserManual.md | + | 6a36774e | Chapters Protect, Diag and Avoid False-Positives added | + +## 20. v0.73.1 Changes + +### 20.1. v0.73.0 Overview + +* legacy debug log removed +* [Issue #517](https://github.com/rokath/trice/issues/517) solved +* TriceUserManual extended + +### 20.2. v0.73.0 Git Log + +Used git log command: `git log --oneline v0.72.5..HEAD | grep -v wip >> CHANGELOG.md` and less important lines removed + + | Hash | Comment | + | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + |`b44c1799`| Merge remote-tracking branch 'origin/devel' into devel + |`a1c216e4`| legacy debug log removed + |`f6aaddeb`| 2 chapters added: library? and possible variadic macros issue + |`d105a8da`| Update trice.h + + +## 21. master branch changes + +

(back to top)

diff --git a/FilesAndFolders.md b/FilesAndFolders.md deleted file mode 100644 index f24526314..000000000 --- a/FilesAndFolders.md +++ /dev/null @@ -1,116 +0,0 @@ -# Files and Folders - -| name | content | -|---------------------------------|--------------------------------------------------| -| `.clang-format` | See below | -| `.clang-format-ignore` | See below | -| `.editorconfig` | See below | -| `.code_snippets/` | | -| `.git/` | version control data base | -| `.github/` | | -| `.gitattributes` | See below | -| `.gitignore` | | -| `.goreleaser.yml` | | -| `.idea/` | GoLand | -| `.travis.yml` | | -| `.vscode/` | | -| `AUTHORS.md` | | -| `CHANGELOG.md` | | -| `CODE_OF_CONDUCT.md` | | -| `CONTRIBUTING.md` | | -| `FoldersAndFiles.md` | this file | -| `GoInfos.txt` | | -| `LICENSE.md` | | -| `README.md` | | -| `_config.yml` | | -| `branchesInfo.md` | | -| `cmd/` | | -| `coverage.out` | | -| `dist/` | created by goreleaser | -| `docs/` | | -| `examples/` | real projects | -| `fmtcoverage.html` | | -| `go.mod` | | -| `go.sum` | | -| `internal/` | trice Go packages for internal usage only | -| `pkg/` | trice Go packages usagable externally | -| `src/` | trice target sources | -| `super-linter.report/` | | -| `temp/` | project binary logfiles | -| `third_party/` | tools | -| [./cmd/cui](../cmd/cui) | (do not use) command user interface tryout code | -| [./cmd/stim](../cmd/stim) | (do not use) target stimulation tool tryout code | -| [./cmd/trice](../cmd/trice) | `trice` tool command Go sources | -| [./docs](./docs) | documentation | -| [./examples](../examples) | example target projects | -| [./internal](../internal) | `trice` tool internal Go packages | -| [./pkg](../pkg) | `trice` tool common Go packages | -| [./src/](../src) | C sources for trice instrumentation | -| [./test](../test) | automatic target code tests | -| [./third_party](../third_party) | external components | - -## `.clang-format` - -*Contributor: [Sazerac4](https://github.com/Sazerac4)* - -Sazerac4 commented Aug 29, 2024: -I have a code formatter when I make changes to my application but I would like to keep the style of the library when modifying. -I couldn't find a code formatter, is there a tool used? If not, I propose this to provide one as an example by using clang-format. - -```bash -# I have created a default style : -clang-format -style=llvm -dump-config > .clang-format -# Then format the code: -find ./src -name '*.c' -o -name '*.h'| xargs clang-format-18 -style=file -i -``` - -The style of the example does not correspond to the original one. Configurations are necessary for this to be the case. Tags can be placed to prevent certain macros from being formatted - -```C -int formatted_code; -// clang-format off - void unformatted_code ; -// clang-format on -void formatted_code_again; -``` - -I have tuned some settings for clang-format : - -```bash -- IndentWidth: 4 // original code size indentation -- ColumnLimit: 0 // avoid breaking long line (like macros) -- PointerAlignment: Left // like original files (mostly) -``` - -With preprocessor indentation, the result is a bit strange in some cases. It's possible with the option IndentPPDirectives ([doc](https://releases.llvm.org/18.1.6/tools/clang/docs/ClangFormatStyleOptions.html)). - -Staying as close as possible to a default version (LLVM in this case) makes it easier to regenerate the style if necessary. - -See also: https://github.com/rokath/trice/pull/487#issuecomment-2318003072 - -## `.clang-format-ignore` - -*Contributor: [Sazerac4](https://github.com/Sazerac4)* - -Sazerac4 commented Aug 30, 2024: -I have added .clang-format-ignore to ignore formatting for specific files - - -## `.editorconfig` - -*Contributor: [Sazerac4](https://github.com/Sazerac4)* - -The`.editorconfig` file allows to better identify the basic style for every files. (endline, charset, ...). It is a file accepted by a wide list of IDEs and editors : [link](https://editorconfig.org/#file-format-details) -This addition is motivated by forgetting the end of line in the .gitattributes file. - -## `.gitattributes` - -*Contributor: [Sazerac4](https://github.com/Sazerac4)* - -With the`.gitattributes` file avoid problems with "diff" and end of lines. [Here](https://www.aleksandrhovhannisyan.com/blog/crlf-vs-lf-normalizing-line-endings-in-git/) is an article that presents the problem. - -To fill the`.gitattributes`, I used the command below to view all the extensions currently used. - -```bash -git ls-tree -r HEAD --name-only | perl -ne 'print $1 if m/\.([^.\/]+)$/' | sort -u -``` diff --git a/LICENSE.md b/LICENSE.md index 1ee23af13..4d8b8a977 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -14,7 +14,7 @@ copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE +FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE diff --git a/README.md b/README.md index 0c5c27563..6e58ce4f5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,10 @@ -# ![TriceGirlS.png](./docs/ref/TriceGirl-167x222.png) **Trice** <- **TR**~~ace~~ **I**~~ds~~ **C** **E**~~mbedded~~ +
-[github.io/trice/](https://rokath.github.io/trice/) +# 🅃🅁ace 🄸d's 🄲 🄴mbedded + +#### ![TriceGirlS.png](./docs/ref/TriceGirl-167x222.png) Hi, I am Trice. + + ![GitHub issues](https://img.shields.io/github/issues/rokath/trice) @@ -11,10 +15,10 @@ ![GitHub commits since latest release](https://img.shields.io/github/commits-since/rokath/trice/latest) [![Go Report Card](https://goreportcard.com/badge/github.com/rokath/trice)](https://goreportcard.com/report/github.com/rokath/trice) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) -[![test](https://github.com/shogo82148/actions-goveralls/workflows/_test/badge.svg?branch=main)](https://coveralls.io/github/rokath/trice) [![Coverage Status](https://coveralls.io/repos/github/rokath/trice/badge.svg?branch=master)](https://coveralls.io/github/rokath/trice?branch=master) + Log in (a) trice ([S>G](https://www.screentogif.com/)) ![ ](./docs/ref/life0.gif) @@ -23,23 +27,24 @@ even inside **↯ interrupts** in less than 1 µs❗ ## About - Replace `printf` or `log` in **C**-code for getting: - - **[Speed](./docs/TriceSpeed.md)**, to be usable also **inside interrupts**, - - **[Space](./docs/TriceSpace.md)**, to reduce needed FLASH memory size, - - **[Features](./docs/TraceWithTrice.md#Tricefeatures)** delighting the developers heart. -- Main idea: Logging strings **not** into an embedded device to display them later on a PC but keep [usage comfortable and simple](./docs/TriceUserGuide.md#2-get-started). + - **[Speed](./docs/TriceUserManual.md/#trice-speed)**, to be usable also **inside interrupts**, + - **[Space](./docs/TriceUserManual.md/#trice-memory-needs)**, to reduce needed FLASH memory size, + - **[Features](./docs/TriceUserManual.md/#trice-features-(overview))** delighting the developers heart. +- Main idea: Logging strings **not** into an embedded device to display them later on a PC but keep [usage comfortable and simple](./docs/TriceUserManual.md/#port-it). - *Trice* consists of 2 parts: 1. **C** code `trice` macros, similar usable like `printf`, generating tiny & super-fast embedded device real-time trace/log code. 2. Tool **trice** for managing and visualization. - Written in [Go](https://golang.org/) and therefore usable on all platforms Go supports. - You can also use your own environment to receive the *Trice* packages, exchange the carried IDs with the format string and print out. -- [Trice User guide](./docs/TriceUserGuide.md) +- [Trice User Manual](./docs/TriceUserManual.md) +- Trice Status: **_Trice is ready to be used!_** ## Possible Use Cases - Using *Trice* not only for **printf debugging** but also as **logging** technique is possible and gives the advantage to have very short messages (no strings) for transmission, but keep in mind that the file [til.json](./_test/testdata/til.json) is the key to read all output if your devices in the field for 10 or more years. - Optionally add [til.json](./_test/testdata/til.json) as a (compressed) resource to your target image. One possibility is using [SRecord](http://srecord.sourceforge.net/download.html). Or simply provide a download link. - You can see *Trice* also as a kind of **data compression** what could be interesting for [IoT](https://en.wikipedia.org/wiki/Internet_of_things) things, especially [NB-IoT](https://en.wikipedia.org/wiki/Narrowband_IoT), where you have very low data rates. -- Storing *Trice* messages in [FLASH memory](https://en.wikipedia.org/wiki/Flash_memory) for later log analysis saves memory because a typical `TRICE` occupies only 4 bytes independently of the format string length plus optional values. +- [Storing *Trice* messages in FLASH memory](./docs/TriceUserManual.md#writing-the-trice-logs-into-an-sd-card-(or-a-user-specific-output)) for later log analysis saves memory because a typical `TRICE` occupies only 4 bytes independently of the format string length plus optional values. - Also, it is possible to **encrypt** the *Trice* transfer packets to get a reasonable protection for many cases. - This way you can deliver firmware images with encrypted *Trice* output, only readable with the appropriate key and [til.json](./_test/testdata/til.json). - [XTEA](https://en.m.wikipedia.org/wiki/XTEA) is implemented as one option. @@ -48,7 +53,7 @@ even inside **↯ interrupts** in less than 1 µs❗ ## How it approximately works (UART example) -This slightly simplified [view](https://github.com/jgraph/drawio) is explained [here](./docs/TraceWithTrice.md#4-how-it-works---the-main-idea) +This slightly simplified [view](https://github.com/jgraph/drawio) is explained [here](./docs/TriceUserManual.md/#how-it-works---the-main-idea) ![trice](./docs/ref/triceCOBSBlockDiagram.svg) @@ -57,7 +62,9 @@ This slightly simplified [view](https://github.com/jgraph/drawio) is explained [ - Implemented: - [UART](https://en.wikipedia.org/wiki/Universal_asynchronous_receiver-transmitter) connectable to virtual UART over USB - [RTT](https://www.segger.com/products/debug-probes/j-link/technology/about-real-time-transfer/) over [J-Link](./third_party/segger.com/ReadMe.md) and [RTT over ST-Link](./third_party/goST/ReadMe.md) -- A small separate microcontroller is always usable as interfaces bridge to [GPIO](https://circuitcellar.com/cc-blog/a-trace-tool-for-embedded-systems/), [I²C](https://en.wikipedia.org/wiki/I%C2%B2C), [SPI](https://en.wikipedia.org/wiki/Serial_Peripheral_Interface), [CAN](https://en.wikipedia.org/wiki/CAN_bus), [LIN](https://en.wikipedia.org/wiki/Local_Interconnect_Network), ... + - TCP4 + - UDP4 (currently as PR #529) +- A small separate microcontroller is always usable as interfaces bridge from [GPIO](https://circuitcellar.com/cc-blog/a-trace-tool-for-embedded-systems/), [I²C](https://en.wikipedia.org/wiki/I%C2%B2C), [SPI](https://en.wikipedia.org/wiki/Serial_Peripheral_Interface), [CAN](https://en.wikipedia.org/wiki/CAN_bus), [LIN](https://en.wikipedia.org/wiki/Local_Interconnect_Network), ... to UART. - With a Chip from FTDI, check for example [Adafruit FT232H Breakout](https://learn.adafruit.com/adafruit-ft232h-breakout), GPIO, I2C and SPI are easy accessable. ## Display server option @@ -65,20 +72,22 @@ Start `trice ds` inside a console, option: [third_party/alacritty](./third_party ## Documentation -- [https://interrupt.memfault.com/blog/trice](https://interrupt.memfault.com/blog/trice) -- [Trice User Guide](./docs/TriceUserGuide.md) -- Check the [docs](./docs) folder. No need to read all this stuff - it is just for help and reference. -- Check issues and discussions including the closed items. +- [https://interrupt.memfault.com/blog/trice](https://interrupt.memfault.com/blog/trice) (a bit outdated) +- [Trice User Manual](./docs/TriceUserManual.md) (covers also the interrupt blog actualized information) +- Check [issues](https://github.com/rokath/trice/issues) and [discussions](https://github.com/rokath/trice/discussions) including the closed items. +- Read the target source code, especially [triceDefaultConfig.h](./src/triceDefaultConfig.h) +- View the [CLI](https://en.wikipedia.org/wiki/Command-line_interface) options by executing `trice help -all` in a terminal or reading [tricehelpall_test.go](./internal/args/tricehelpall_test.go) +- Look into and optionally modify [./internal/emitter/lineTransformerANSI.go](./internal/emitter/lineTransformerANSI.go) (Needs `go install ./cmd/trice/...` afterwards.) ## Debugging using VS-Code and Clang for a Trice-instrumented Project in Direct-Out Mode over SEGGER-RTT -(See folder [./examples](./examples) for more details.) +(See chapter [Development Environment Setup](./docs/TriceUserManual.md#development-environment-setup) for more details.) -![x](./examples/Animation.gif) + ## Trice Cache -Starting with Trice version 0.70.0 it is possible to use additionally the Trice `-cache` CLI switch for the commands `trice insert` and `trice clean`. This switch will have only effect when the user creates in his home directory the **`.trice/cache`** folder. The Trice cache is considered as experimental, even it it thoroughly tested. ([Trice Cache Spec](./docs/TriceCacheSpec.md)) +Starting with Trice version 0.70.0 it is possible to use additionally the Trice `-cache` CLI switch for the commands `trice insert` and `trice clean`. This switch will have only effect when the user creates in his home directory the **`.trice/cache`** folder. ([Trice Cache Spec](./docs/TriceUserManual.md#trice-cache-for-compilation-speed)) ### When to use it @@ -86,7 +95,7 @@ When you use `trice i` as a pre-compile step and `trice c` as a post-compile ste ### How it works -The Trice cache keeps copies of all to `trice i` or `trice c` passed files after processing them, to avoid repeatedly ID inserting and cleaning. **The copies are used to get the same results as with `trice i` or `trice c` for all files not edited inbetween.** Edited files are processed normally and the cache is updated afterwards. Because the file copies are done without changing the file modification time, **a build system does not process unchanged files again even the IDs have been temorarily removed from the files**. +The Trice cache keeps copies of all to `trice i` or `trice c` passed files after processing them, to avoid repeatedly ID inserting and cleaning. **The copies are used to get the same results as with `trice i` or `trice c` for all files not edited inbetween.** Edited files are processed normally and the cache is updated afterwards. Because the file copies are done without changing the file modification time, **a build system does not process unchanged files again even the IDs have been temporarily removed from the files**. ### Hint @@ -94,9 +103,29 @@ The Trice cache keeps copies of all to `trice i` or `trice c` passed files after For example an auto-formatter should get active **before** the `tice insert` command. +## Wich mode to use? + +- For the development direct mode with SEGGER_RTT is recommended. +- Most use cases are coverable in deferred mode with TRICE_BUFFER == TRICE_RING_BUFFER (less RAM needs) in TRICE_MULTI_PACK_MODE (less transfer data). + +## Project Status + +Trice is full usable and there are no known bugs (see [issues](https://github.com/rokath/trice/issues)). + +## Future + +The documentation could get improved, for example by adding a quick start help. Additional features like remote procedure calls could be described and a separate tlog, maybe written in C, would allow logging on any platforms - not only **Go** supported ones. + +## Structured Logging + +Trice will (hopefully soon) suppport structured logging. Triggered by [#531](https://github.com/rokath/trice/discussions/531) there is now a [specifcation draft](https://github.com/rokath/trice/blob/master/docs/StructuredLoggingWithTrice.md). Please provide some critical feedback before the implementaion starts. + ## Support? -Yes please - or simply :star: it. ☺ +* Yes please - Trice takes a lot of my spare time and I wish to keep it MIT licensed in the future as well. +* If you make profit using Trice in your products, donations would convince my family to proceed with Trice and also secure future improvements. + + [Become a Sponsor with your Github Account](https://github.com/sponsors/rokath/) @@ -121,28 +150,39 @@ git clone https://github.com/rokath/trice.git ## Similar projects +- ARM ITM/SWO (hardware-native) +- ARM Keil Event Recorder (hardware-native) - [baical.net](http://baical.net/up7.html) (C) - [call stack logger function instrumentation](https://dev.to/taugustyn/call-stack-logger-function-instrumentation-as-a-way-to-trace-programs-flow-of-execution-419a) (a way to trace programs flow of execution) - [Debugging with Dynamic Printf Breakpoints](https://mcuoneclipse.com/2022/02/09/debugging-with-dynamic-printf-breakpoints/) (Eclipse IDE option) -- [defmt](https://github.com/knurling-rs/defmt) (Rust) +- [defmt (Rust)](https://github.com/knurling-rs/defmt) - [Diagnostic Log and Trace](https://github.com/COVESA/dlt-daemon) (AUTOSAR) -- [elog](https://github.com/martinribelotta/elog) (Embedded logger with minimal footprint and memory usage) -- [J-Link System View](https://www.segger.com/products/development-tools/systemview/technology/what-is-systemview/) (SEGGER) +- [Embedded Logger (elog)](https://github.com/martinribelotta/elog) (Embedded logger with minimal footprint and memory usage) - [Logging with symbols - The Embedonomicon](https://docs.rust-embedded.org/embedonomicon/logging.html) +- [McuLog (McuOnEclipse)](https://mcuoneclipse.com/2020/06/01/mculog-logging-framework-for-small-embedded-microcontroller-systems/) - [MCUViewer](https://github.com/klonyyy/MCUViewer) -- [Memfault Compact Log Library](https://docs.memfault.com/docs/mcu/compact-logs/#host-decoding) -- [Metal Serial Library](https://github.com/metal-ci/_test/tree/master/doc/metal.serial.md) +- [Memfault Compact Log Library](https://docs.memfault.com/docs/mcu/compact-logs/#host-decoding) (part of firmware SDK) + - [Minimal Structured Logging for Autonomous Vehikles](https://youtu.be/FyJI4Z6jD4w) (C++, closed source talk) -- [NanoLog](https://github.com/PlatformLab/NanoLog) (Linux C++) -- [Percepio Tracealyzer](https://percepio.com/tracealyzer/) (Visual Trace Diagnostics) +- [NanoLog (C++11)](https://github.com/PlatformLab/NanoLog) (Linux C++) +- [Percepio Tracealyzer (with TraceRecorder)](https://percepio.com/tracealyzer/) (Visual Trace Diagnostics) - [Pigweed Trace Tokenized](https://pigweed.dev/pw_trace_tokenized/) +- [Postform](https://github.com/Javier-varez/Postform) (Postponed formatting experiments with string interning in C++. Inspired by the defmt Rust crate ) - [qpspy](https://www.state-machine.com/qtools/qpspy.html) (C/C++) +- [Real-time binary data logging/tracing toolkit](https://github.com/RTEdbg/RTEdbg) +- [SEGGER System View](https://www.segger.com/products/development-tools/systemview/technology/what-is-systemview/) - [Serial-Studio](https://github.com/Serial-Studio/Serial-Studio) (Data visualisation) +- [Tonbandgerät](https://github.com/schilkp/Tonbandgeraet) (A small embedded systems tracer with support for bare-metal and FreeRTOS-based targets) - [Traces](https://github.com/yotamr/traces) (API tracing framework for Linux C/C++ applications +- [uLog (RD Poor)](https://github.com/rdpoor/ulog) - [Zepyr Dictionary Based Logging](https://docs.zephyrproject.org/3.1.0/services/logging/index.html#dictionary-based-logging) +[ChatGPT Trice Compare (2025-05-26)](https://htmlpreview.github.io/?https://github.com/rokath/trice/blob/master/docs/ChatGPTo4-mini-high_TriceCompare.html) + - +

(back to top)

diff --git a/_config.yml b/_config.yml index c4192631f..346aef9d8 100644 --- a/_config.yml +++ b/_config.yml @@ -1 +1 @@ -theme: jekyll-theme-cayman \ No newline at end of file +theme: jekyll-theme-dinky diff --git a/_test/ReadMe.md b/_test/ReadMe.md index e00cab872..b84df0fb6 100644 --- a/_test/ReadMe.md +++ b/_test/ReadMe.md @@ -1,93 +1 @@ -# Testing the Target `Trice` C-code - -## General info - -This folder is per default named to `_test` to avoid vsCode slow down. - -The main aim of these tests is to automatic compile and run the target code in different compiler switch variants avoiding manual testing this way. - -For the user it could be helpful to start with a `triceConfig.h`file from here and to adapt the Trice tool command line from the matching `cgo_test.go` if no close match in the `examples` folder was found. - -## How to run the tests - -- In `_trice` folder first execute `go clean -cache`. Cleaning the **Go** cache is recommended, because the CGO tests keep pre-compiled files and when editing C-files, this can led to confusing results. -- To run the tests `cd` into `_test` and execute `go test ./...` fom there. - -## Tests Details - -All folders despite `testdata` are test folders and the name `tf` is used as a place holder for them in this document. - -To exclude a specific folder temporary, simply rename it to start with an underscore `_tf`. - -The `tf` are serving for target code testing in different configuration variants on the host machine. The file [./testdata/triceCheck.c](./testdata/triceCheck.c) is the master file for editing. After changing it, [./updateTestData.sh](./updateTestData.sh) needs to run. It runs `trice insert` updating [./testdata/til.json](./testdata/til.json). - -To be able to run `go test ./...` successfully without running the [./updateTestData.sh](./updateTestData.sh) script in advance, the script action results are checked in as well. That implies that [./testdata/triceCheck.c](./testdata/triceCheck.c) goes with IDs into the repo. - -[./testdata/cgoPackage.go](./testdata/cgoPackage.go) is the common master for the `generated_cgoPackage.go` files and contains the common test code. - -The folders `tf` are Go packages just for tests. They all have the same package name `cgot` and are not included into the trice tool. The different `cgot` packages are independent and could have any names. They do not see each other and are used for target code testing independently. - -The `tf/triceConfig.h` files differ and correspondent to the `tf/cgo_test.go` files in the same folder. On test execution, the `./testdata/*.c` files are compiled into the trice test executable together with the trice sources `../src` using the `tf/triceConfig.h` file. - -The individual tests collect the expected results (`//exp: result`) together with the line numbers into a slice to execute the test loop on it. The `triceLogTest` function gets the `triceLog` function as parameter. - -`triceLogTest` iterates over the results slice and calls for each line the C-function `triceCheck`. Then the line specific binary data buffer is passed to the `triceLog` parameter function which "logs" the passed buffer into an actual result string which in turn is compared with the expected result. - -The whole process is relatively slow because of the often passed Go - C barrier, but allows automated tests in different configuration variants in one shot. - -The `testdata\cgoPackage.go` file contains a variable `testLines = n`, which limits the amount of performed trices for each test case to `n`. Changing this value will heavily influence the test duration. The value `-1` is reserved for testing all test lines. - -## How to add new test cases - -- Choose a test folder similar to the intended test and copy it under a new descriptive name like `newTest`. -- Extend file `testdata/updateTestData.sh` accordingly. -- Edit files `newTest/triceConfig.h` and `newTest/cgo_test.go` in a matching way. -- Run command `go test test/newTest/...` - -## Test Internals - -The `./trice/_test/testdata/*.c` and `./trice/src/*.c` are compiled together with the actual cgot package into one singe Trice test binary, resulting in as many test binaries as there are test folders. Calling its TestFunction(s) causes the activation of the Trice statement(s) inside *triceCheck.c*. The ususally into an embedded device compiled Trice code generates a few bytes according to the configuration into a buffer. These bytes are transmitted usually in real life over a (serial) port or RTT. In the tests here, this buffer is then read out by the Trice tool handler function according to the used CLI switches and processed to a log string using the *til.json* file. This string is then compared to the expected string for the activated line. - -Each `tf` is a **Go** package, which is not part of any **Go** application. They all named `cgot` and are only used independently for testing different configurations. The `tf/generated_cgoPackage.go` file is identical in all `tf`. Its master is `testdata/cgoPackage.go`. After editing the master, running the command `./updateTestData.sh` copies the master to all `tf` and renames it to `generated_cgoPackage.go`. - -The test specific target code configuration is inside `tf/trice.Config.h` and the appropriate Trice tool CLI switches are in `tf/cgo_test.go`. - -When running `go test ./tf`, a Trice tool test executable is build, using the Trice tool packages and the `tf` package `cgot`, and the function `TestLogs` is executed. Its internal closure `triceLog` contains the Trice tool CLI switches and is passed to the `ccgot` package function `triceLogTest` together with the number of testLines and the trice mode (`directTransfer` or `deferrerdTransfer`). - -During the test, the file `triceCheck.c` is scanned for lines like - -```C -break; case __LINE__: TRice( iD(3537), "info:This is a message without values and a 32-bit stamp.\n" ); //exp: time: 842,150_450default: info:This is a message without values and a 32-bit stamp. -``` - -Some C-code lines contain Trice statements and comments starting with `//exp: ` followed by the expected Trice tool output for that specific line. The **Go** testfunction collects these outputs in a slice together with the line numbers. Then for each found line number the execution of the **Go** function `func triceCheck(n int)` takes part, which in turn calls the CGO compiled C-function `TriceCheck(n)`. The now activated Trice C-code writes the generated trice bytes in a between **C** and **Go** shared buffer using the C-function `TriceWriteDeviceCgo`. After returning from the **Go** function `func triceCheck(n int)` and optionally calling `TriceTransfer` in deferred mode the Trice tool `triceLog()` function converts the Trice buffer bytes to the log string and compares the result with the expected data. The between **Go** and **C** shared buffer limits the executed Trices per line to one, because they use the same buffer from the beginning. This could be done better with an increment to allow several trices in one single line. - -Because each test runs a different configuration, all possible combinations are testable. - -## Test Cases - -### Folder Naming Convention - -| Folder Name Part | Meaning | -|:----------------:|----------------------------------------------------------------------------------------------------------| -| `testdata` | This is no test folder. It contains data common to all tests. | -| `_...` | Folder starting with an undescore `_` are excluded when `go test ./...` is executed. | -| `_di_` | direct mode | -| `_de_` | deferred mode | -| `staticB_` | static buffer, direct mode only possible | -| `stackB_` | stack buffer, direct mode only possible | -| `ringB_` | ring buffer, deferred mode and optional parallel direct mode | -| `dblB_` | double buffer, deferred mode and optional parallel direct mode | -| `_rtt8_` | (simulated) SEGGER_RTT byte transfer | -| `_rtt32_` | (simulated) SEGGER_RTT word transfer | -| `__` | direct and deferred mode together | -| `_xtea_` | with encryption, otherwise without encryption | -| `_tcobs` | TCOBS package framing | -| `_cobs` | COBS package framing | -| `_nopf` | no package framing | -| `_multi_` | Usually each Trice is handled separately. In multi mode, groups of available Trices are framed together. | -| `_ua` | simulated UART A output (for deferred modes) | - -# Test Issues - -Test folders starting with `ERROR_` have issues. These cases are **usable** on the target. These tests fail for an unknown reason. Probably it is a test implementation issue. Especially when XTEA is used in one output but not in the other, the tests fail. +# [../docs/TriceUserManual.md/#testing-the-trice-library-c-code-for-the-target](../docs/TriceUserManual.md/#testing-the-trice-library-c-code-for-the-target) diff --git a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md similarity index 100% rename from _test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md rename to _test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md diff --git a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h similarity index 98% rename from _test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h rename to _test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go similarity index 66% rename from _test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go rename to _test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go index 2efcf8314..6dbd3a4e5 100644 --- a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go +++ b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=cobs", "-d16"})) return o.String() } @@ -25,7 +28,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pw=MySecret", "-pf=COBS", "-d16=false"))} return o.String() } diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go similarity index 96% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go rename to _test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h similarity index 67% rename from _test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h rename to _test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h index c52901151..35ef8b1b9 100644 --- a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h +++ b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h @@ -9,18 +9,15 @@ extern "C" { #endif -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf cobs -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_BUFFER TRICE_DOUBLE_BUFFER +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf cobs -d16=true #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pw MySecret -pf COBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pw MySecret -pf COBS #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceUart.h b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h similarity index 91% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceUart.h rename to _test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceUart.h +++ b/_test/_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/_ringB_de_multi_cobs_ua/generated_cgoPackage.go b/_test/_ringB_de_multi_cobs_ua/generated_cgoPackage.go deleted file mode 100644 index 93f924427..000000000 --- a/_test/_ringB_de_multi_cobs_ua/generated_cgoPackage.go +++ /dev/null @@ -1,237 +0,0 @@ -// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net -// Use of this source code is governed by a license that can be found in the LICENSE file. - -// Package cgot is a helper for testing the target C-code. -// Each C function gets a Go wrapper which is tested in appropriate test functions. -// For some reason inside the trice_test.go an 'import "C"' is not possible. -// The C-files referring to the trice sources this way avoiding code duplication. -// The Go functions defined here are not exported. They are called by the Go test functions in this package. -// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. -// Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various -// package folders, where it is used separately. -package cgot - -// #include -// void TriceCheck( int n ); -// void TriceTransfer( void ); -// unsigned TriceOutDepth( void ); -// void CgoSetTriceBuffer( uint8_t* buf ); -// void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src -// #include "../../src/trice.c" -// #include "../../src/trice8.c" -// #include "../../src/trice16.c" -// #include "../../src/trice32.c" -// #include "../../src/trice64.c" -// #include "../../src/triceUart.c" -// #include "../../src/triceAuxiliary.c" -// #include "../../src/triceDoubleBuffer.c" -// #include "../../src/triceRingBuffer.c" -// #include "../../src/triceStackBuffer.c" -// #include "../../src/triceStaticBuffer.c" -// #include "../../src/xtea.c" -// #include "../../src/cobsDecode.c" -// #include "../../src/cobsEncode.c" -// #include "../../src/tcobsv1Decode.c" -// #include "../../src/tcobsv1Encode.c" -// #include "../testdata/triceCheck.c" -// #include "../testdata/cgoTrice.c" -import "C" - -import ( - "bufio" - "fmt" - "path" - "runtime" - "strings" - "testing" - "unsafe" - - "github.com/rokath/trice/pkg/msg" - "github.com/spf13/afero" - "github.com/tj/assert" -) - -var ( - triceDir string // triceDir holds the trice directory path. - testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. -) - -// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory -func init() { - _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs - testDir := path.Dir(filename) - triceDir = path.Join(testDir, "../../") - C.TriceInit() -} - -// setTriceBuffer tells the underlying C code where to output the trice byte stream. -func setTriceBuffer(o []byte) { - Cout := (*C.uchar)(unsafe.Pointer(&o[0])) - C.CgoSetTriceBuffer(Cout) -} - -// triceCheck performs triceCheck C-code sequence n. -func triceCheck(n int) { - C.TriceCheck(C.int(n)) -} - -// triceTransfer performs the deferred trice output. -func triceTransfer() { - C.TriceTransfer() -} - -// triceOutDepth returns the actual out buffer depth. -func triceOutDepth() int { - return int(C.TriceOutDepth()) -} - -// triceClearOutBuffer tells the trice kernel, that the data has been red. -func triceClearOutBuffer() { - C.CgoClearTriceBuffer() -} - -// linesInFile does get the lines in a file and stores them in a string slice. -func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go - // Create new Scanner. - scanner := bufio.NewScanner(fh) - result := []string{} - // Use Scan. - for scanner.Scan() { - line := scanner.Text() - // Append line to result. - result = append(result, line) - } - return result -} - -// results contains the expected result string exps for line number line. -type results struct { - line int - exps string -} - -func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { - // get all file lines into a []string - f, e := fSys.Open(filename) - msg.OnErr(e) - lines := linesInFile(f) - - for i, line := range lines { - s := strings.Split(line, "//") - if len(s) == 2 { // just one "//" - lineEnd := s[1] - subStr := "exp:" - index := strings.LastIndex(lineEnd, subStr) - if index >= 0 { - var r results - r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) - result = append(result, r) - } - } - } - return -} - -// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. -// It uses the inside fSys specified til.json and returns the log output. -type logF func(t *testing.T, fSys *afero.Afero, buffer string) string - -// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). -// It loops over the result list and executes for each result the compiled C-code. -// It passes the received binary data as buffer to the triceLog function of type logF. -// This function is test package specific defined. The file cgoPackage.go is -// copied into all specific test packages and compiled there together with the -// triceConfig.h, which holds the test package specific target code configuration. -// limit is the count of executed test lines starting from the beginning. -1 ist for all. -func triceLogTest(t *testing.T, triceLog logF, limit int) { - - osFSys := &afero.Afero{Fs: afero.NewOsFs()} - //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} - - // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log - out := make([]byte, 32768) - setTriceBuffer(out) - - result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) - - var count int - for i, r := range result { - - count++ - if limit >= 0 && count >= limit { - return - } - - fmt.Println(i, r) - - // target activity - triceCheck(r.line) - - triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. - - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i in r.line - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } -} - -// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. -func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { - - osFSys := &afero.Afero{Fs: afero.NewOsFs()} - - // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log - out := make([]byte, 32768) - setTriceBuffer(out) - - result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) - - var count int - for i, r := range result { - - count++ - if limit >= 0 && count >= limit { - return - } - fmt.Println(i, r) - triceCheck(r.line) // target activity - - { // check direct output - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog0(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } - - { // check deferred output - triceTransfer() - - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog1(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } - } -} diff --git a/_test/_ringB_de_multi_cobs_ua/triceUart.h b/_test/_ringB_de_multi_cobs_ua/triceUart.h deleted file mode 100644 index 168f1b417..000000000 --- a/_test/_ringB_de_multi_cobs_ua/triceUart.h +++ /dev/null @@ -1,52 +0,0 @@ -/*! \file triceUart.h -\author Thomas.Hoehenleitner [at] seerose.net -*******************************************************************************/ - -#ifndef TRICE_UART_H_ -#define TRICE_UART_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include "trice.h" - -#if TRICE_DEFERRED_UARTA == 1 - -//! Check if a new byte can be written into trice transmit register. -//! \retval 0 == not empty -//! \retval !0 == empty -//! User must provide this function. -TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { - return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); -} - -//! Write value v into trice transmit register. -//! \param v byte to transmit -//! User must provide this function. -TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); -} - -//! Allow interrupt for empty trice data transmit register. -//! User must provide this function. -TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { - // LL_USART_EnableIT_TXE(TRICE_UARTA); -} - -//! Disallow interrupt for empty trice data transmit register. -//! User must provide this function. -TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { - // LL_USART_DisableIT_TXE(TRICE_UARTA); -} -#endif // #if TRICE_DEFERRED_UARTA == 1 - -#if TRICE_DEFERRED_UARTB == 1 - -#endif // #if TRICE_DEFERRED_UARTB == 1 - -#ifdef __cplusplus -} -#endif - -#endif /* TRICE_UART_H_ */ diff --git a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md similarity index 100% rename from _test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md rename to _test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/ReadMe.md diff --git a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h similarity index 98% rename from _test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h rename to _test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go similarity index 66% rename from _test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go rename to _test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go index 2efcf8314..6dbd3a4e5 100644 --- a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go +++ b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=cobs", "-d16"})) return o.String() } @@ -25,7 +28,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pw=MySecret", "-pf=COBS", "-d16=false"))} return o.String() } diff --git a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go similarity index 96% rename from _test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go rename to _test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h similarity index 72% rename from _test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h rename to _test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h index 2ce2f8958..57d7f2407 100644 --- a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h +++ b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h @@ -10,19 +10,14 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf cobs -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf cobs -d16=true #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pw MySecret -pf COBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pw MySecret -pf COBS #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h similarity index 91% rename from _test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h rename to _test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h +++ b/_test/_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/ReadMe.md b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/ReadMe.md similarity index 100% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/ReadMe.md rename to _test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/ReadMe.md diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h similarity index 98% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h rename to _test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/cgo_test.go b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/cgo_test.go similarity index 51% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/cgo_test.go rename to _test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/cgo_test.go index 1a208fd17..2b5490835 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/cgo_test.go +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/cgo_test.go @@ -17,8 +17,11 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - // trice -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=true", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + // trice -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -hs off -pw MySecret -pf COBS -d16=true + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pw=MySecret", "-pf=COBS", "-d16=true"})) return o.String() } @@ -26,8 +29,11 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - // trice l -p com4 -d16=false - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + // trice -p com4 -d16=false + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=COBS", "-d16=false"})) return o.String() } diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/generated_cgoPackage.go b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/generated_cgoPackage.go similarity index 96% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/generated_cgoPackage.go rename to _test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/generated_cgoPackage.go +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceConfig.h b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceConfig.h similarity index 71% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceConfig.h rename to _test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceConfig.h index c6afda966..3292c534b 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceConfig.h +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceConfig.h @@ -10,19 +10,14 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true #define TRICE_DIRECT_XTEA_ENCRYPT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pf COBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pf COBS #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceUart.h b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceUart.h similarity index 91% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceUart.h rename to _test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceUart.h +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/ReadMe.md b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/ReadMe.md similarity index 100% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/ReadMe.md rename to _test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/ReadMe.md diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h similarity index 98% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h rename to _test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/cgo_test.go b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/cgo_test.go similarity index 51% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/cgo_test.go rename to _test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/cgo_test.go index 4b22b405a..d0640e6dc 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/cgo_test.go +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/cgo_test.go @@ -17,8 +17,11 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - // trice -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=true", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + // trice -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -hs off -pw MySecret -pf COBS -d16=true + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pw=MySecret", "-pf=COBS", "-d16=true"})) return o.String() } @@ -26,8 +29,11 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - // trice l -p com4 -d16=false - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + // trice -p com4 -d16=false + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=TCOBS", "-d16=false"})) return o.String() } diff --git a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go similarity index 96% rename from _test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go rename to _test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/_ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceConfig.h b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceConfig.h similarity index 70% rename from _test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceConfig.h rename to _test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceConfig.h index 5260bbf48..266b0b123 100644 --- a/_test/_ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceConfig.h +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceConfig.h @@ -10,18 +10,13 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true #define TRICE_DIRECT_XTEA_ENCRYPT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pf TCOBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pf TCOBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceUart.h similarity index 91% rename from _test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h rename to _test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/_ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/triceUart.h +++ b/_test/_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/_ringB_protect_de_tcobs_ua/generated_cgoPackage.go b/_test/_ringB_protect_de_tcobs_ua/generated_cgoPackage.go deleted file mode 100644 index 93f924427..000000000 --- a/_test/_ringB_protect_de_tcobs_ua/generated_cgoPackage.go +++ /dev/null @@ -1,237 +0,0 @@ -// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net -// Use of this source code is governed by a license that can be found in the LICENSE file. - -// Package cgot is a helper for testing the target C-code. -// Each C function gets a Go wrapper which is tested in appropriate test functions. -// For some reason inside the trice_test.go an 'import "C"' is not possible. -// The C-files referring to the trice sources this way avoiding code duplication. -// The Go functions defined here are not exported. They are called by the Go test functions in this package. -// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. -// Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various -// package folders, where it is used separately. -package cgot - -// #include -// void TriceCheck( int n ); -// void TriceTransfer( void ); -// unsigned TriceOutDepth( void ); -// void CgoSetTriceBuffer( uint8_t* buf ); -// void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src -// #include "../../src/trice.c" -// #include "../../src/trice8.c" -// #include "../../src/trice16.c" -// #include "../../src/trice32.c" -// #include "../../src/trice64.c" -// #include "../../src/triceUart.c" -// #include "../../src/triceAuxiliary.c" -// #include "../../src/triceDoubleBuffer.c" -// #include "../../src/triceRingBuffer.c" -// #include "../../src/triceStackBuffer.c" -// #include "../../src/triceStaticBuffer.c" -// #include "../../src/xtea.c" -// #include "../../src/cobsDecode.c" -// #include "../../src/cobsEncode.c" -// #include "../../src/tcobsv1Decode.c" -// #include "../../src/tcobsv1Encode.c" -// #include "../testdata/triceCheck.c" -// #include "../testdata/cgoTrice.c" -import "C" - -import ( - "bufio" - "fmt" - "path" - "runtime" - "strings" - "testing" - "unsafe" - - "github.com/rokath/trice/pkg/msg" - "github.com/spf13/afero" - "github.com/tj/assert" -) - -var ( - triceDir string // triceDir holds the trice directory path. - testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. -) - -// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory -func init() { - _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs - testDir := path.Dir(filename) - triceDir = path.Join(testDir, "../../") - C.TriceInit() -} - -// setTriceBuffer tells the underlying C code where to output the trice byte stream. -func setTriceBuffer(o []byte) { - Cout := (*C.uchar)(unsafe.Pointer(&o[0])) - C.CgoSetTriceBuffer(Cout) -} - -// triceCheck performs triceCheck C-code sequence n. -func triceCheck(n int) { - C.TriceCheck(C.int(n)) -} - -// triceTransfer performs the deferred trice output. -func triceTransfer() { - C.TriceTransfer() -} - -// triceOutDepth returns the actual out buffer depth. -func triceOutDepth() int { - return int(C.TriceOutDepth()) -} - -// triceClearOutBuffer tells the trice kernel, that the data has been red. -func triceClearOutBuffer() { - C.CgoClearTriceBuffer() -} - -// linesInFile does get the lines in a file and stores them in a string slice. -func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go - // Create new Scanner. - scanner := bufio.NewScanner(fh) - result := []string{} - // Use Scan. - for scanner.Scan() { - line := scanner.Text() - // Append line to result. - result = append(result, line) - } - return result -} - -// results contains the expected result string exps for line number line. -type results struct { - line int - exps string -} - -func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { - // get all file lines into a []string - f, e := fSys.Open(filename) - msg.OnErr(e) - lines := linesInFile(f) - - for i, line := range lines { - s := strings.Split(line, "//") - if len(s) == 2 { // just one "//" - lineEnd := s[1] - subStr := "exp:" - index := strings.LastIndex(lineEnd, subStr) - if index >= 0 { - var r results - r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) - result = append(result, r) - } - } - } - return -} - -// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. -// It uses the inside fSys specified til.json and returns the log output. -type logF func(t *testing.T, fSys *afero.Afero, buffer string) string - -// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). -// It loops over the result list and executes for each result the compiled C-code. -// It passes the received binary data as buffer to the triceLog function of type logF. -// This function is test package specific defined. The file cgoPackage.go is -// copied into all specific test packages and compiled there together with the -// triceConfig.h, which holds the test package specific target code configuration. -// limit is the count of executed test lines starting from the beginning. -1 ist for all. -func triceLogTest(t *testing.T, triceLog logF, limit int) { - - osFSys := &afero.Afero{Fs: afero.NewOsFs()} - //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} - - // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log - out := make([]byte, 32768) - setTriceBuffer(out) - - result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) - - var count int - for i, r := range result { - - count++ - if limit >= 0 && count >= limit { - return - } - - fmt.Println(i, r) - - // target activity - triceCheck(r.line) - - triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. - - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i in r.line - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } -} - -// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. -func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { - - osFSys := &afero.Afero{Fs: afero.NewOsFs()} - - // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log - out := make([]byte, 32768) - setTriceBuffer(out) - - result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) - - var count int - for i, r := range result { - - count++ - if limit >= 0 && count >= limit { - return - } - fmt.Println(i, r) - triceCheck(r.line) // target activity - - { // check direct output - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog0(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } - - { // check deferred output - triceTransfer() - - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog1(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } - } -} diff --git a/_test/_ringB_protect_de_tcobs_ua/triceUart.h b/_test/_ringB_protect_de_tcobs_ua/triceUart.h deleted file mode 100644 index 168f1b417..000000000 --- a/_test/_ringB_protect_de_tcobs_ua/triceUart.h +++ /dev/null @@ -1,52 +0,0 @@ -/*! \file triceUart.h -\author Thomas.Hoehenleitner [at] seerose.net -*******************************************************************************/ - -#ifndef TRICE_UART_H_ -#define TRICE_UART_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include "trice.h" - -#if TRICE_DEFERRED_UARTA == 1 - -//! Check if a new byte can be written into trice transmit register. -//! \retval 0 == not empty -//! \retval !0 == empty -//! User must provide this function. -TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { - return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); -} - -//! Write value v into trice transmit register. -//! \param v byte to transmit -//! User must provide this function. -TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); -} - -//! Allow interrupt for empty trice data transmit register. -//! User must provide this function. -TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { - // LL_USART_EnableIT_TXE(TRICE_UARTA); -} - -//! Disallow interrupt for empty trice data transmit register. -//! User must provide this function. -TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { - // LL_USART_DisableIT_TXE(TRICE_UARTA); -} -#endif // #if TRICE_DEFERRED_UARTA == 1 - -#if TRICE_DEFERRED_UARTB == 1 - -#endif // #if TRICE_DEFERRED_UARTB == 1 - -#ifdef __cplusplus -} -#endif - -#endif /* TRICE_UART_H_ */ diff --git a/_test/_ringB_de_multi_cobs_ua/ReadMe.md b/_test/alias_dblB_de_tcobs_ua/ReadMe.md similarity index 100% rename from _test/_ringB_de_multi_cobs_ua/ReadMe.md rename to _test/alias_dblB_de_tcobs_ua/ReadMe.md diff --git a/_test/alias_dblB_de_tcobs_ua/TargetActivity.c b/_test/alias_dblB_de_tcobs_ua/TargetActivity.c new file mode 100644 index 000000000..334003c08 --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/TargetActivity.c @@ -0,0 +1,32 @@ +//! \file TargetActivity.c +//! \brief This file gets compiled into the cgot package only because it exists in the cgot folder. +//! \details Go func triceLogSpecialTest parses additionally this file to collect the expected results line by line for later test execution. + + + + +#include "trice.h" + +// The strings behind "//exp:" are the expected result for each line (-color=off) +// Lines ending with a comment starting with `//exp:` are executed during the automatic Go tests. +// clang-format off + +void TriceCheckSpecial( int n ) { + + switch(n){ + default: + + break; case __LINE__: TRice("Hello World!\n" ); //exp: Time:feed3322default: Hello World! + // 'printi' is declared as -alias in ./trice_environment.sh and defined here in triceConfig.h which is excluded from parsing in ./trice_environment.sh. + // 'prints' is declared as -salias in ./trice_environment.sh and defined here in triceConfig.h which is excluded from parsing in ./trice_environment.sh. + break; case __LINE__: prints("att:'-alias' & '-salias' contributor is %s.\n", "@srgg" ); //exp: Time: default: att:'-alias' & '-salias' contributor is @srgg. + break; case __LINE__: printi("A user printi call without values.\n"); //exp: Time: default: A user printi call without values. + break; case __LINE__: prints("A user prints call without values.\n"); //exp: Time: default: A user prints call without values. + break; case __LINE__: printi("A user printi call with integer and float values: %u, %d, %x, %2.1f\n", 42, -8, 0xc0de, aFloat(-42.0) ); //exp: Time: default: A user printi call with integer and float values: 42, -8, c0de, -42.0 + break; case __LINE__: prints("A user prints call with integer and float values: %u, %d, %x, %2.1f\n", 42, -8, 0xc0de, -42.0); //exp: Time: default: A user prints call with integer and float values: 42, -8, c0de, -42.0 + break; case __LINE__: prints("A user ... with string, integer and float values: %u, %d, %x, %2.1f, %s and %s\n", 42, -8, 0xc0de, -42.0, "up", "down"); //exp: Time: default: A user ... with string, integer and float values: 42, -8, c0de, -42.0, up and down + + } +} + +// clang-format on diff --git a/_test/alias_dblB_de_tcobs_ua/cgo_alias.go b/_test/alias_dblB_de_tcobs_ua/cgo_alias.go new file mode 100644 index 000000000..25edb4904 --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/cgo_alias.go @@ -0,0 +1,65 @@ +package cgot + +// For some reason inside the trice_test.go an 'import "C"' is not possible. + +// #define NANOPRINTF_IMPLEMENTATION +// #include "nanoprintf.h" +// void TriceCheckSpecial( int n ); +import "C" +import ( + "fmt" + "strings" + "testing" + + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func targetSpecialActivity(n int) { + C.TriceCheckSpecial(C.int(n)) +} + +// triceLogSpecialTest creates a list of expected results from path.Join(triceDir, "./_test/tf/TargetActivity.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogSpecialTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, "./TargetActivity.c") + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + targetSpecialActivity(r.line) // triceCheck would compile but not wat we want here + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} diff --git a/_test/alias_dblB_de_tcobs_ua/cgo_test.go b/_test/alias_dblB_de_tcobs_ua/cgo_test.go new file mode 100644 index 000000000..248fe8de5 --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/cgo_test.go @@ -0,0 +1,34 @@ +package cgot + +import ( + "bytes" + "io" + "path" + "testing" + + "github.com/rokath/trice/internal/args" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func TestLogs(t *testing.T) { + // triceLog is the log function for executing the trice logging on binary log data in buffer as space separated numbers. + // It uses the inside fSys specified til.json and returns the log output. + triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { + var o bytes.Buffer + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", + "-pf=none", + "-doubled16BitID", + "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, + "-hs=off", + "-prefix=off", + "-li=off", + "-color=off", + "-ts0", "Time: ", + "-ts16", "Time: %04x", + "-ts32", "Time:%08x"})) + return o.String() + } + triceLogSpecialTest(t, triceLog, -1) +} diff --git a/_test/alias_dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/alias_dblB_de_tcobs_ua/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/alias_dblB_de_tcobs_ua/nanoprintf.h b/_test/alias_dblB_de_tcobs_ua/nanoprintf.h new file mode 100644 index 000000000..13d4fe5b1 --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/nanoprintf.h @@ -0,0 +1,1203 @@ +/* nanoprintf v0.5.5: a tiny embeddable printf replacement written in C. + https://github.com/charlesnicholson/nanoprintf + charles.nicholson+nanoprintf@gmail.com + dual-licensed under 0bsd and unlicense, take your pick. see eof for details. */ + +#ifndef NPF_H_INCLUDED +#define NPF_H_INCLUDED + +#include +#include + +// Define this to fully sandbox nanoprintf inside of a translation unit. +#ifdef NANOPRINTF_VISIBILITY_STATIC + #define NPF_VISIBILITY static +#else + #define NPF_VISIBILITY extern +#endif + +#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) + #define NPF_PRINTF_ATTR(FORMAT_INDEX, VARGS_INDEX) \ + __attribute__((format(printf, FORMAT_INDEX, VARGS_INDEX))) +#else + #define NPF_PRINTF_ATTR(FORMAT_INDEX, VARGS_INDEX) +#endif + +// Public API + +#ifdef __cplusplus +#define NPF_RESTRICT +extern "C" { +#else +#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) +#define NPF_RESTRICT restrict +#else +#define NPF_RESTRICT +#endif +#endif + +// The npf_ functions all return the number of bytes required to express the +// fully-formatted string, not including the null terminator character. +// The npf_ functions do not return negative values, since the lack of 'l' length +// modifier support makes encoding errors impossible. + +NPF_VISIBILITY int npf_snprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + const char * NPF_RESTRICT format, + ...) NPF_PRINTF_ATTR(3, 4); + +NPF_VISIBILITY int npf_vsnprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + char const * NPF_RESTRICT format, + va_list vlist) NPF_PRINTF_ATTR(3, 0); + +typedef void (*npf_putc)(int c, void *ctx); +NPF_VISIBILITY int npf_pprintf(npf_putc pc, + void * NPF_RESTRICT pc_ctx, + char const * NPF_RESTRICT format, + ...) NPF_PRINTF_ATTR(3, 4); + +NPF_VISIBILITY int npf_vpprintf(npf_putc pc, + void * NPF_RESTRICT pc_ctx, + char const * NPF_RESTRICT format, + va_list vlist) NPF_PRINTF_ATTR(3, 0); + +#ifdef __cplusplus +} +#endif + +#endif // NPF_H_INCLUDED + +/* The implementation of nanoprintf begins here, to be compiled only if + NANOPRINTF_IMPLEMENTATION is defined. In a multi-file library what follows would + be nanoprintf.c. */ + +#ifdef NANOPRINTF_IMPLEMENTATION + +#ifndef NPF_IMPLEMENTATION_INCLUDED +#define NPF_IMPLEMENTATION_INCLUDED + +#include +#include + +// The conversion buffer must fit at least UINT64_MAX in octal format with the leading '0'. +#ifndef NANOPRINTF_CONVERSION_BUFFER_SIZE + #define NANOPRINTF_CONVERSION_BUFFER_SIZE 23 +#endif +#if NANOPRINTF_CONVERSION_BUFFER_SIZE < 23 + #error The size of the conversion buffer must be at least 23 bytes. +#endif + +// Pick reasonable defaults if nothing's been configured. +#if !defined(NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_ALT_FORM_FLAG) + #define NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS 0 + #define NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS 0 + #define NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS 0 + #define NANOPRINTF_USE_ALT_FORM_FLAG 1 +#endif + +// If anything's been configured, everything must be configured. +#ifndef NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif + +// Ensure flags are compatible. +#if (NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1) && \ + (NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 0) + #error Precision format specifiers must be enabled if float support is enabled. +#endif + +// intmax_t / uintmax_t require stdint from c99 / c++11 +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + #ifndef _MSC_VER + #ifdef __cplusplus + #if __cplusplus < 201103L + #error large format specifier support requires C++11 or later. + #endif + #else + #if __STDC_VERSION__ < 199409L + #error nanoprintf requires C99 or later. + #endif + #endif + #endif +#endif + +// Figure out if we can disable warnings with pragmas. +#ifdef __clang__ + #define NPF_CLANG 1 + #define NPF_GCC_PAST_4_6 0 +#else + #define NPF_CLANG 0 + #if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 6))) + #define NPF_GCC_PAST_4_6 1 + #else + #define NPF_GCC_PAST_4_6 0 + #endif +#endif + +#if NPF_CLANG || NPF_GCC_PAST_4_6 + #define NPF_HAVE_GCC_WARNING_PRAGMAS 1 +#else + #define NPF_HAVE_GCC_WARNING_PRAGMAS 0 +#endif + +#if NPF_HAVE_GCC_WARNING_PRAGMAS + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wunused-function" + #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" + #ifdef __cplusplus + #pragma GCC diagnostic ignored "-Wold-style-cast" + #endif + #pragma GCC diagnostic ignored "-Wpadded" + #pragma GCC diagnostic ignored "-Wfloat-equal" + #if NPF_CLANG + #pragma GCC diagnostic ignored "-Wc++98-compat-pedantic" + #pragma GCC diagnostic ignored "-Wcovered-switch-default" + #pragma GCC diagnostic ignored "-Wdeclaration-after-statement" + #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" + #ifndef __APPLE__ + #pragma GCC diagnostic ignored "-Wunsafe-buffer-usage" + #endif + #elif NPF_GCC_PAST_4_6 + #pragma GCC diagnostic ignored "-Wmaybe-uninitialized" + #endif +#endif + +#ifdef _MSC_VER + #pragma warning(push) + #pragma warning(disable:4619) // there is no warning number 'number' + // C4619 has to be disabled first! + #pragma warning(disable:4127) // conditional expression is constant + #pragma warning(disable:4505) // unreferenced local function has been removed + #pragma warning(disable:4514) // unreferenced inline function has been removed + #pragma warning(disable:4701) // potentially uninitialized local variable used + #pragma warning(disable:4706) // assignment within conditional expression + #pragma warning(disable:4710) // function not inlined + #pragma warning(disable:4711) // function selected for inline expansion + #pragma warning(disable:4820) // padding added after struct member + #pragma warning(disable:5039) // potentially throwing function passed to extern C function + #pragma warning(disable:5045) // compiler will insert Spectre mitigation for memory load + #pragma warning(disable:5262) // implicit switch fall-through + #pragma warning(disable:26812) // enum type is unscoped +#endif + +#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) + #define NPF_NOINLINE __attribute__((noinline)) + #define NPF_FORCE_INLINE inline __attribute__((always_inline)) +#elif defined(_MSC_VER) + #define NPF_NOINLINE __declspec(noinline) + #define NPF_FORCE_INLINE inline __forceinline +#else + #define NPF_NOINLINE + #define NPF_FORCE_INLINE +#endif + +#if (NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1) || \ + (NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1) +enum { + NPF_FMT_SPEC_OPT_NONE, + NPF_FMT_SPEC_OPT_LITERAL, + NPF_FMT_SPEC_OPT_STAR, +}; +#endif + +enum { + NPF_FMT_SPEC_LEN_MOD_NONE, +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_LEN_MOD_SHORT, // 'h' + NPF_FMT_SPEC_LEN_MOD_CHAR, // 'hh' +#endif + NPF_FMT_SPEC_LEN_MOD_LONG, // 'l' + NPF_FMT_SPEC_LEN_MOD_LONG_DOUBLE, // 'L' +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_LEN_MOD_LARGE_LONG_LONG, // 'll' + NPF_FMT_SPEC_LEN_MOD_LARGE_INTMAX, // 'j' + NPF_FMT_SPEC_LEN_MOD_LARGE_SIZET, // 'z' + NPF_FMT_SPEC_LEN_MOD_LARGE_PTRDIFFT, // 't' +#endif +}; + +enum { + NPF_FMT_SPEC_CONV_NONE, + NPF_FMT_SPEC_CONV_PERCENT, // '%' + NPF_FMT_SPEC_CONV_CHAR, // 'c' + NPF_FMT_SPEC_CONV_STRING, // 's' + NPF_FMT_SPEC_CONV_SIGNED_INT, // 'i', 'd' +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_CONV_BINARY, // 'b' +#endif + NPF_FMT_SPEC_CONV_OCTAL, // 'o' + NPF_FMT_SPEC_CONV_HEX_INT, // 'x', 'X' + NPF_FMT_SPEC_CONV_UNSIGNED_INT, // 'u' + NPF_FMT_SPEC_CONV_POINTER, // 'p' +#if NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_CONV_WRITEBACK, // 'n' +#endif +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_CONV_FLOAT_DEC, // 'f', 'F' + NPF_FMT_SPEC_CONV_FLOAT_SCI, // 'e', 'E' + NPF_FMT_SPEC_CONV_FLOAT_SHORTEST, // 'g', 'G' + NPF_FMT_SPEC_CONV_FLOAT_HEX, // 'a', 'A' +#endif +}; + +typedef struct npf_format_spec { +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + int field_width; +#endif +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + int prec; + uint8_t prec_opt; +#endif +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + uint8_t field_width_opt; + char left_justified; // '-' + char leading_zero_pad; // '0' +#endif + char prepend; // ' ' or '+' +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + char alt_form; // '#' +#endif + char case_adjust; // 'a' - 'A' , or 0 (must be non-negative to work) + uint8_t length_modifier; + uint8_t conv_spec; +} npf_format_spec_t; + +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 0 + typedef long npf_int_t; + typedef unsigned long npf_uint_t; +#else + typedef intmax_t npf_int_t; + typedef uintmax_t npf_uint_t; +#endif + +typedef struct npf_bufputc_ctx { + char *dst; + size_t len; + size_t cur; +} npf_bufputc_ctx_t; + +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + typedef char npf_size_is_ptrdiff[(sizeof(size_t) == sizeof(ptrdiff_t)) ? 1 : -1]; + typedef ptrdiff_t npf_ssize_t; + typedef size_t npf_uptrdiff_t; +#endif + +#ifdef _MSC_VER + #include +#endif + +#define NPF_MIN(x, y) ((x) <= (y) ? (x) : (y)) +#define NPF_MAX(x, y) ((x) >= (y) ? (x) : (y)) + +static int npf_parse_format_spec(char const *format, npf_format_spec_t *out_spec) { + char const *cur = format; + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + out_spec->left_justified = 0; + out_spec->leading_zero_pad = 0; +#endif + out_spec->case_adjust = 'a' - 'A'; // lowercase + out_spec->prepend = 0; +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + out_spec->alt_form = 0; +#endif + + while (*++cur) { // cur points at the leading '%' character + switch (*cur) { // Optional flags +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + case '-': out_spec->left_justified = '-'; out_spec->leading_zero_pad = 0; continue; + case '0': out_spec->leading_zero_pad = !out_spec->left_justified; continue; +#endif + case '+': out_spec->prepend = '+'; continue; + case ' ': if (out_spec->prepend == 0) { out_spec->prepend = ' '; } continue; +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + case '#': out_spec->alt_form = '#'; continue; +#endif + default: break; + } + break; + } + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + out_spec->field_width = 0; + out_spec->field_width_opt = NPF_FMT_SPEC_OPT_NONE; + if (*cur == '*') { + out_spec->field_width_opt = NPF_FMT_SPEC_OPT_STAR; + ++cur; + } else { + while ((*cur >= '0') && (*cur <= '9')) { + out_spec->field_width_opt = NPF_FMT_SPEC_OPT_LITERAL; + out_spec->field_width = (out_spec->field_width * 10) + (*cur++ - '0'); + } + } +#endif + +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec = 0; + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; + if (*cur == '.') { + ++cur; + if (*cur == '*') { + out_spec->prec_opt = NPF_FMT_SPEC_OPT_STAR; + ++cur; + } else { + if (*cur == '-') { + ++cur; + } else { + out_spec->prec_opt = NPF_FMT_SPEC_OPT_LITERAL; + } + while ((*cur >= '0') && (*cur <= '9')) { + out_spec->prec = (out_spec->prec * 10) + (*cur++ - '0'); + } + } + } +#endif + + uint_fast8_t tmp_conv = NPF_FMT_SPEC_CONV_NONE; + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_NONE; + switch (*cur++) { // Length modifier +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + case 'h': + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_SHORT; + if (*cur == 'h') { + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_CHAR; + ++cur; + } + break; +#endif + case 'l': + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LONG; +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + if (*cur == 'l') { + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_LONG_LONG; + ++cur; + } +#endif + break; +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + case 'L': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LONG_DOUBLE; break; +#endif +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + case 'j': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_INTMAX; break; + case 'z': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_SIZET; break; + case 't': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_PTRDIFFT; break; +#endif + default: --cur; break; + } + + switch (*cur++) { // Conversion specifier + case '%': out_spec->conv_spec = NPF_FMT_SPEC_CONV_PERCENT; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; + out_spec->prec = 0; +#endif + break; + + case 'c': out_spec->conv_spec = NPF_FMT_SPEC_CONV_CHAR; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; + out_spec->prec = 0; +#endif + break; + + case 's': out_spec->conv_spec = NPF_FMT_SPEC_CONV_STRING; + break; + + case 'i': + case 'd': tmp_conv = NPF_FMT_SPEC_CONV_SIGNED_INT; goto finish; + case 'o': tmp_conv = NPF_FMT_SPEC_CONV_OCTAL; goto finish; + case 'u': tmp_conv = NPF_FMT_SPEC_CONV_UNSIGNED_INT; goto finish; + case 'X': out_spec->case_adjust = 0; + case 'x': tmp_conv = NPF_FMT_SPEC_CONV_HEX_INT; goto finish; + finish: + out_spec->conv_spec = (uint8_t)tmp_conv; +#if (NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1) && \ + (NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1) + if (out_spec->prec_opt != NPF_FMT_SPEC_OPT_NONE) { out_spec->leading_zero_pad = 0; } +#endif + break; + +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + case 'F': out_spec->case_adjust = 0; + case 'f': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_DEC; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; + + case 'E': out_spec->case_adjust = 0; + case 'e': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_SCI; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; + + case 'G': out_spec->case_adjust = 0; + case 'g': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_SHORTEST; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; + + case 'A': out_spec->case_adjust = 0; + case 'a': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_HEX; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; +#endif + +#if NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS == 1 + case 'n': + // todo: reject string if flags or width or precision exist + out_spec->conv_spec = NPF_FMT_SPEC_CONV_WRITEBACK; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; +#endif + break; +#endif + + case 'p': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_POINTER; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; +#endif + break; + +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + case 'B': + out_spec->case_adjust = 0; + case 'b': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_BINARY; + break; +#endif + + default: return 0; + } + + return (int)(cur - format); +} + +static NPF_NOINLINE int npf_utoa_rev( + npf_uint_t val, char *buf, uint_fast8_t base, char case_adj) { + uint_fast8_t n = 0; + do { + int_fast8_t const d = (int_fast8_t)(val % base); + *buf++ = (char)(((d < 10) ? '0' : ('A' - 10 + case_adj)) + d); + ++n; + val /= base; + } while (val); + return (int)n; +} + +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + +#include + +#if (DBL_MANT_DIG <= 11) && (DBL_MAX_EXP <= 16) + typedef uint_fast16_t npf_double_bin_t; + typedef int_fast8_t npf_ftoa_exp_t; +#elif (DBL_MANT_DIG <= 24) && (DBL_MAX_EXP <= 128) + typedef uint_fast32_t npf_double_bin_t; + typedef int_fast8_t npf_ftoa_exp_t; +#elif (DBL_MANT_DIG <= 53) && (DBL_MAX_EXP <= 1024) + typedef uint_fast64_t npf_double_bin_t; + typedef int_fast16_t npf_ftoa_exp_t; +#else + #error Unsupported width of the double type. +#endif + +// The floating point conversion code works with an unsigned integer type of any size. +#ifndef NANOPRINTF_CONVERSION_FLOAT_TYPE + #define NANOPRINTF_CONVERSION_FLOAT_TYPE unsigned int +#endif +typedef NANOPRINTF_CONVERSION_FLOAT_TYPE npf_ftoa_man_t; + +#if (NANOPRINTF_CONVERSION_BUFFER_SIZE <= UINT_FAST8_MAX) && (UINT_FAST8_MAX <= INT_MAX) + typedef uint_fast8_t npf_ftoa_dec_t; +#else + typedef int npf_ftoa_dec_t; +#endif + +enum { + NPF_DOUBLE_EXP_MASK = DBL_MAX_EXP * 2 - 1, + NPF_DOUBLE_EXP_BIAS = DBL_MAX_EXP - 1, + NPF_DOUBLE_MAN_BITS = DBL_MANT_DIG - 1, + NPF_DOUBLE_BIN_BITS = sizeof(npf_double_bin_t) * CHAR_BIT, + NPF_DOUBLE_SIGN_POS = sizeof(double) * CHAR_BIT - 1, + NPF_FTOA_MAN_BITS = sizeof(npf_ftoa_man_t) * CHAR_BIT, + NPF_FTOA_SHIFT_BITS = + ((NPF_FTOA_MAN_BITS < DBL_MANT_DIG) ? NPF_FTOA_MAN_BITS : DBL_MANT_DIG) - 1 +}; + +/* Generally, floating-point conversion implementations use + grisu2 (https://bit.ly/2JgMggX) and ryu (https://bit.ly/2RLXSg0) algorithms, + which are mathematically exact and fast, but require large lookup tables. + + This implementation was inspired by Wojciech Muła's (zdjęcia@garnek.pl) + algorithm (http://0x80.pl/notesen/2015-12-29-float-to-string.html) and + extended further by adding dynamic scaling and configurable integer width by + Oskars Rubenis (https://github.com/Okarss). */ + +static NPF_FORCE_INLINE npf_double_bin_t npf_double_to_int_rep(double f) { + // Union-cast is UB pre-C11 and in all C++; the compiler optimizes the code below. + npf_double_bin_t bin; + char const *src = (char const *)&f; + char *dst = (char *)&bin; + for (uint_fast8_t i = 0; i < sizeof(f); ++i) { dst[i] = src[i]; } + return bin; +} + +static int npf_ftoa_rev(char *buf, npf_format_spec_t const *spec, double f) { + char const *ret = NULL; + npf_double_bin_t bin = npf_double_to_int_rep(f); + + // Unsigned -> signed int casting is IB and can raise a signal but generally doesn't. + npf_ftoa_exp_t exp = + (npf_ftoa_exp_t)((npf_ftoa_exp_t)(bin >> NPF_DOUBLE_MAN_BITS) & NPF_DOUBLE_EXP_MASK); + + bin &= ((npf_double_bin_t)0x1 << NPF_DOUBLE_MAN_BITS) - 1; + if (exp == (npf_ftoa_exp_t)NPF_DOUBLE_EXP_MASK) { // special value + ret = (bin) ? "NAN" : "FNI"; + goto exit; + } + if (spec->prec > (NANOPRINTF_CONVERSION_BUFFER_SIZE - 2)) { goto exit; } + if (exp) { // normal number + bin |= (npf_double_bin_t)0x1 << NPF_DOUBLE_MAN_BITS; + } else { // subnormal number + ++exp; + } + exp = (npf_ftoa_exp_t)(exp - NPF_DOUBLE_EXP_BIAS); + + uint_fast8_t carry; carry = 0; + npf_ftoa_dec_t end, dec; dec = (npf_ftoa_dec_t)spec->prec; + if (dec +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + || spec->alt_form +#endif + ) { + buf[dec++] = '.'; + } + + { // Integer part + npf_ftoa_man_t man_i; + + if (exp >= 0) { + int_fast8_t shift_i = + (int_fast8_t)((exp > NPF_FTOA_SHIFT_BITS) ? (int)NPF_FTOA_SHIFT_BITS : exp); + npf_ftoa_exp_t exp_i = (npf_ftoa_exp_t)(exp - shift_i); + shift_i = (int_fast8_t)(NPF_DOUBLE_MAN_BITS - shift_i); + man_i = (npf_ftoa_man_t)(bin >> shift_i); + + if (exp_i) { + if (shift_i) { + carry = (bin >> (shift_i - 1)) & 0x1; + } + exp = NPF_DOUBLE_MAN_BITS; // invalidate the fraction part + } + + // Scale the exponent from base-2 to base-10. + for (; exp_i; --exp_i) { + if (!(man_i & ((npf_ftoa_man_t)0x1 << (NPF_FTOA_MAN_BITS - 1)))) { + man_i = (npf_ftoa_man_t)(man_i << 1); + man_i = (npf_ftoa_man_t)(man_i | carry); carry = 0; + } else { + if (dec >= NANOPRINTF_CONVERSION_BUFFER_SIZE) { goto exit; } + buf[dec++] = '0'; + carry = (((uint_fast8_t)(man_i % 5) + carry) > 2); + man_i /= 5; + } + } + } else { + man_i = 0; + } + end = dec; + + do { // Print the integer + if (end >= NANOPRINTF_CONVERSION_BUFFER_SIZE) { goto exit; } + buf[end++] = (char)('0' + (char)(man_i % 10)); + man_i /= 10; + } while (man_i); + } + + { // Fraction part + npf_ftoa_man_t man_f; + npf_ftoa_dec_t dec_f = (npf_ftoa_dec_t)spec->prec; + + if (exp < NPF_DOUBLE_MAN_BITS) { + int_fast8_t shift_f = (int_fast8_t)((exp < 0) ? -1 : exp); + npf_ftoa_exp_t exp_f = (npf_ftoa_exp_t)(exp - shift_f); + npf_double_bin_t bin_f = + bin << ((NPF_DOUBLE_BIN_BITS - NPF_DOUBLE_MAN_BITS) + shift_f); + + // This if-else statement can be completely optimized at compile time. + if (NPF_DOUBLE_BIN_BITS > NPF_FTOA_MAN_BITS) { + man_f = (npf_ftoa_man_t)(bin_f >> ((unsigned)(NPF_DOUBLE_BIN_BITS - + NPF_FTOA_MAN_BITS) % + NPF_DOUBLE_BIN_BITS)); + carry = (uint_fast8_t)((bin_f >> ((unsigned)(NPF_DOUBLE_BIN_BITS - + NPF_FTOA_MAN_BITS - 1) % + NPF_DOUBLE_BIN_BITS)) & 0x1); + } else { + man_f = (npf_ftoa_man_t)((npf_ftoa_man_t)bin_f + << ((unsigned)(NPF_FTOA_MAN_BITS - + NPF_DOUBLE_BIN_BITS) % NPF_FTOA_MAN_BITS)); + carry = 0; + } + + // Scale the exponent from base-2 to base-10 and prepare the first digit. + for (uint_fast8_t digit = 0; dec_f && (exp_f < 4); ++exp_f) { + if ((man_f > ((npf_ftoa_man_t)-4 / 5)) || digit) { + carry = (uint_fast8_t)(man_f & 0x1); + man_f = (npf_ftoa_man_t)(man_f >> 1); + } else { + man_f = (npf_ftoa_man_t)(man_f * 5); + if (carry) { man_f = (npf_ftoa_man_t)(man_f + 3); carry = 0; } + if (exp_f < 0) { + buf[--dec_f] = '0'; + } else { + ++digit; + } + } + } + man_f = (npf_ftoa_man_t)(man_f + carry); + carry = (exp_f >= 0); + dec = 0; + } else { + man_f = 0; + } + + if (dec_f) { + // Print the fraction + for (;;) { + buf[--dec_f] = (char)('0' + (char)(man_f >> (NPF_FTOA_MAN_BITS - 4))); + man_f = (npf_ftoa_man_t)(man_f & ~((npf_ftoa_man_t)0xF << (NPF_FTOA_MAN_BITS - 4))); + if (!dec_f) { break; } + man_f = (npf_ftoa_man_t)(man_f * 10); + } + man_f = (npf_ftoa_man_t)(man_f << 4); + } + if (exp < NPF_DOUBLE_MAN_BITS) { + carry &= (uint_fast8_t)(man_f >> (NPF_FTOA_MAN_BITS - 1)); + } + } + + // Round the number + for (; carry; ++dec) { + if (dec >= NANOPRINTF_CONVERSION_BUFFER_SIZE) { goto exit; } + if (dec >= end) { buf[end++] = '0'; } + if (buf[dec] == '.') { continue; } + carry = (buf[dec] == '9'); + buf[dec] = (char)(carry ? '0' : (buf[dec] + 1)); + } + + return (int)end; +exit: + if (!ret) { ret = "RRE"; } + uint_fast8_t i; + for (i = 0; ret[i]; ++i) { buf[i] = (char)(ret[i] + spec->case_adjust); } + return -(int)i; +} + +#endif // NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS + +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 +static int npf_bin_len(npf_uint_t u) { + // Return the length of the binary string format of 'u', preferring intrinsics. + if (!u) { return 1; } + +#ifdef _MSC_VER // Win64, use _BSR64 for everything. If x86, use _BSR when non-large. + #ifdef _M_X64 + #define NPF_HAVE_BUILTIN_CLZ + #define NPF_CLZ _BitScanReverse64 + #elif NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 0 + #define NPF_HAVE_BUILTIN_CLZ + #define NPF_CLZ _BitScanReverse + #endif + #ifdef NPF_HAVE_BUILTIN_CLZ + unsigned long idx; + NPF_CLZ(&idx, u); + return (int)(idx + 1); + #endif +#elif NPF_CLANG || NPF_GCC_PAST_4_6 + #define NPF_HAVE_BUILTIN_CLZ + #if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + #define NPF_CLZ(X) ((sizeof(long long) * CHAR_BIT) - (size_t)__builtin_clzll(X)) + #else + #define NPF_CLZ(X) ((sizeof(long) * CHAR_BIT) - (size_t)__builtin_clzl(X)) + #endif + return (int)NPF_CLZ(u); +#endif + +#ifndef NPF_HAVE_BUILTIN_CLZ + int n; + for (n = 0; u; ++n, u >>= 1); // slow but small software fallback + return n; +#else + #undef NPF_HAVE_BUILTIN_CLZ + #undef NPF_CLZ +#endif +} +#endif + +static void npf_bufputc(int c, void *ctx) { + npf_bufputc_ctx_t *bpc = (npf_bufputc_ctx_t *)ctx; + if (bpc->cur < bpc->len) { bpc->dst[bpc->cur++] = (char)c; } +} + +static void npf_bufputc_nop(int c, void *ctx) { (void)c; (void)ctx; } + +typedef struct npf_cnt_putc_ctx { + npf_putc pc; + void *ctx; + int n; +} npf_cnt_putc_ctx_t; + +static void npf_putc_cnt(int c, void *ctx) { + npf_cnt_putc_ctx_t *pc_cnt = (npf_cnt_putc_ctx_t *)ctx; + ++pc_cnt->n; + pc_cnt->pc(c, pc_cnt->ctx); // sibling-call optimization +} + +#define NPF_PUTC(VAL) do { npf_putc_cnt((int)(VAL), &pc_cnt); } while (0) + +#define NPF_EXTRACT(MOD, CAST_TO, EXTRACT_AS) \ + case NPF_FMT_SPEC_LEN_MOD_##MOD: val = (CAST_TO)va_arg(args, EXTRACT_AS); break + +#define NPF_WRITEBACK(MOD, TYPE) \ + case NPF_FMT_SPEC_LEN_MOD_##MOD: *(va_arg(args, TYPE *)) = (TYPE)pc_cnt.n; break + +int npf_vpprintf(npf_putc pc, void *pc_ctx, char const *format, va_list args) { + npf_format_spec_t fs; + char const *cur = format; + npf_cnt_putc_ctx_t pc_cnt; + pc_cnt.pc = pc; + pc_cnt.ctx = pc_ctx; + pc_cnt.n = 0; + + while (*cur) { + int const fs_len = (*cur != '%') ? 0 : npf_parse_format_spec(cur, &fs); + if (!fs_len) { NPF_PUTC(*cur++); continue; } + cur += fs_len; + + // Extract star-args immediately +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + if (fs.field_width_opt == NPF_FMT_SPEC_OPT_STAR) { + fs.field_width = va_arg(args, int); + if (fs.field_width < 0) { + fs.field_width = -fs.field_width; + fs.left_justified = 1; + } + } +#endif +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + if (fs.prec_opt == NPF_FMT_SPEC_OPT_STAR) { + fs.prec = va_arg(args, int); + if (fs.prec < 0) { fs.prec_opt = NPF_FMT_SPEC_OPT_NONE; } + } +#endif + + union { char cbuf_mem[NANOPRINTF_CONVERSION_BUFFER_SIZE]; npf_uint_t binval; } u; + char *cbuf = u.cbuf_mem, sign_c = 0; + int cbuf_len = 0; + char need_0x = 0; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + int field_pad = 0; + char pad_c = 0; +#endif +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + int prec_pad = 0; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + uint_fast8_t zero = 0; +#endif +#endif + + // Extract and convert the argument to string, point cbuf at the text. + switch (fs.conv_spec) { + case NPF_FMT_SPEC_CONV_PERCENT: + *cbuf = '%'; + cbuf_len = 1; + break; + + case NPF_FMT_SPEC_CONV_CHAR: + *cbuf = (char)va_arg(args, int); + cbuf_len = (*cbuf) ? 1 : 0; + break; + + case NPF_FMT_SPEC_CONV_STRING: { + cbuf = va_arg(args, char *); +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + for (char const *s = cbuf; + ((fs.prec_opt == NPF_FMT_SPEC_OPT_NONE) || (cbuf_len < fs.prec)) && cbuf && *s; + ++s, ++cbuf_len); +#else + for (char const *s = cbuf; cbuf && *s; ++s, ++cbuf_len); // strlen +#endif + } break; + + case NPF_FMT_SPEC_CONV_SIGNED_INT: { + npf_int_t val = 0; + switch (fs.length_modifier) { + NPF_EXTRACT(NONE, int, int); +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(SHORT, short, int); + NPF_EXTRACT(CHAR, signed char, int); +#endif + NPF_EXTRACT(LONG, long, long); +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(LARGE_LONG_LONG, long long, long long); + NPF_EXTRACT(LARGE_INTMAX, intmax_t, intmax_t); + NPF_EXTRACT(LARGE_SIZET, npf_ssize_t, npf_ssize_t); + NPF_EXTRACT(LARGE_PTRDIFFT, ptrdiff_t, ptrdiff_t); +#endif + default: break; + } + + sign_c = (val < 0) ? '-' : fs.prepend; + +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + zero = !val; +#endif + // special case, if prec and value are 0, skip + if (!val && (fs.prec_opt != NPF_FMT_SPEC_OPT_NONE) && !fs.prec) { + cbuf_len = 0; + } else +#endif + { + npf_uint_t uval = (npf_uint_t)val; + if (val < 0) { uval = 0 - uval; } + cbuf_len = npf_utoa_rev(uval, cbuf, 10, fs.case_adjust); + } + } break; + +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + case NPF_FMT_SPEC_CONV_BINARY: +#endif + case NPF_FMT_SPEC_CONV_OCTAL: + case NPF_FMT_SPEC_CONV_HEX_INT: + case NPF_FMT_SPEC_CONV_UNSIGNED_INT: + case NPF_FMT_SPEC_CONV_POINTER: { + npf_uint_t val = 0; + + if (fs.conv_spec == NPF_FMT_SPEC_CONV_POINTER) { + val = (npf_uint_t)(uintptr_t)va_arg(args, void *); + } else { + switch (fs.length_modifier) { + NPF_EXTRACT(NONE, unsigned, unsigned); +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(SHORT, unsigned short, unsigned); + NPF_EXTRACT(CHAR, unsigned char, unsigned); +#endif + NPF_EXTRACT(LONG, unsigned long, unsigned long); +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(LARGE_LONG_LONG, unsigned long long, unsigned long long); + NPF_EXTRACT(LARGE_INTMAX, uintmax_t, uintmax_t); + NPF_EXTRACT(LARGE_SIZET, size_t, size_t); + NPF_EXTRACT(LARGE_PTRDIFFT, npf_uptrdiff_t, npf_uptrdiff_t); +#endif + default: break; + } + } + +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + zero = !val; +#endif + if (!val && (fs.prec_opt != NPF_FMT_SPEC_OPT_NONE) && !fs.prec) { + // Zero value and explicitly-requested zero precision means "print nothing". +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + if ((fs.conv_spec == NPF_FMT_SPEC_CONV_OCTAL) && fs.alt_form) { + fs.prec = 1; // octal special case, print a single '0' + } +#endif + } else +#endif +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + if (fs.conv_spec == NPF_FMT_SPEC_CONV_BINARY) { + cbuf_len = npf_bin_len(val); u.binval = val; + } else +#endif + { + uint_fast8_t const base = (fs.conv_spec == NPF_FMT_SPEC_CONV_OCTAL) ? + 8u : ((fs.conv_spec == NPF_FMT_SPEC_CONV_UNSIGNED_INT) ? 10u : 16u); + cbuf_len = npf_utoa_rev(val, cbuf, base, fs.case_adjust); + } + +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + if (val && fs.alt_form && (fs.conv_spec == NPF_FMT_SPEC_CONV_OCTAL)) { + cbuf[cbuf_len++] = '0'; // OK to add leading octal '0' immediately. + } + + if (val && fs.alt_form) { // 0x or 0b but can't write it yet. + if ((fs.conv_spec == NPF_FMT_SPEC_CONV_HEX_INT) || + (fs.conv_spec == NPF_FMT_SPEC_CONV_POINTER)) { need_0x = 'X'; } +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + else if (fs.conv_spec == NPF_FMT_SPEC_CONV_BINARY) { need_0x = 'B'; } +#endif + if (need_0x) { need_0x = (char)(need_0x + fs.case_adjust); } + } +#endif + } break; + +#if NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS == 1 + case NPF_FMT_SPEC_CONV_WRITEBACK: + switch (fs.length_modifier) { + NPF_WRITEBACK(NONE, int); +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_WRITEBACK(SHORT, short); + NPF_WRITEBACK(CHAR, signed char); +#endif + NPF_WRITEBACK(LONG, long); +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_WRITEBACK(LARGE_LONG_LONG, long long); + NPF_WRITEBACK(LARGE_INTMAX, intmax_t); + NPF_WRITEBACK(LARGE_SIZET, npf_ssize_t); + NPF_WRITEBACK(LARGE_PTRDIFFT, ptrdiff_t); +#endif + default: break; + } break; +#endif + +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + case NPF_FMT_SPEC_CONV_FLOAT_DEC: + case NPF_FMT_SPEC_CONV_FLOAT_SCI: + case NPF_FMT_SPEC_CONV_FLOAT_SHORTEST: + case NPF_FMT_SPEC_CONV_FLOAT_HEX: { + double val; + if (fs.length_modifier == NPF_FMT_SPEC_LEN_MOD_LONG_DOUBLE) { + val = (double)va_arg(args, long double); + } else { + val = va_arg(args, double); + } + + sign_c = (npf_double_to_int_rep(val) >> NPF_DOUBLE_SIGN_POS) ? '-' : fs.prepend; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + zero = (val == 0.); +#endif + cbuf_len = npf_ftoa_rev(cbuf, &fs, val); + if (cbuf_len < 0) { // negative means text (not number), so ignore the '0' flag + cbuf_len = -cbuf_len; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + fs.leading_zero_pad = 0; +#endif + } + } break; +#endif + default: break; + } + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + // Compute the field width pad character + if (fs.field_width_opt != NPF_FMT_SPEC_OPT_NONE) { + if (fs.leading_zero_pad) { +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + if ((fs.prec_opt != NPF_FMT_SPEC_OPT_NONE) && !fs.prec && zero) { + pad_c = ' '; + } else +#endif + { pad_c = '0'; } + } else { pad_c = ' '; } + } +#endif + + // Compute the number of bytes to truncate or '0'-pad. +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + if (fs.conv_spec != NPF_FMT_SPEC_CONV_STRING) { +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + // float precision is after the decimal point + if ((fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_DEC) && + (fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_SCI) && + (fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_SHORTEST) && + (fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_HEX)) +#endif + { prec_pad = NPF_MAX(0, fs.prec - cbuf_len); } + } +#endif + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + // Given the full converted length, how many pad bytes? + field_pad = fs.field_width - cbuf_len - !!sign_c; + if (need_0x) { field_pad -= 2; } +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + field_pad -= prec_pad; +#endif + field_pad = NPF_MAX(0, field_pad); + + // Apply right-justified field width if requested + if (!fs.left_justified && pad_c) { // If leading zeros pad, sign goes first. + if (pad_c == '0') { + if (sign_c) { NPF_PUTC(sign_c); sign_c = 0; } + // Pad byte is '0', write '0x' before '0' pad chars. + if (need_0x) { NPF_PUTC('0'); NPF_PUTC(need_0x); } + } + while (field_pad-- > 0) { NPF_PUTC(pad_c); } + // Pad byte is ' ', write '0x' after ' ' pad chars but before number. + if ((pad_c != '0') && need_0x) { NPF_PUTC('0'); NPF_PUTC(need_0x); } + } else +#endif + { if (need_0x) { NPF_PUTC('0'); NPF_PUTC(need_0x); } } // no pad, '0x' requested. + + // Write the converted payload + if (fs.conv_spec == NPF_FMT_SPEC_CONV_STRING) { + for (int i = 0; cbuf && (i < cbuf_len); ++i) { NPF_PUTC(cbuf[i]); } + } else { + if (sign_c) { NPF_PUTC(sign_c); } +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + while (prec_pad-- > 0) { NPF_PUTC('0'); } // int precision leads. +#endif +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + if (fs.conv_spec == NPF_FMT_SPEC_CONV_BINARY) { + while (cbuf_len) { NPF_PUTC('0' + ((u.binval >> --cbuf_len) & 1)); } + } else +#endif + { while (cbuf_len-- > 0) { NPF_PUTC(cbuf[cbuf_len]); } } // payload is reversed + } + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + if (fs.left_justified && pad_c) { // Apply left-justified field width + while (field_pad-- > 0) { NPF_PUTC(pad_c); } + } +#endif + } + + return pc_cnt.n; +} + +#undef NPF_PUTC +#undef NPF_EXTRACT +#undef NPF_WRITEBACK + +int npf_pprintf(npf_putc pc, + void * NPF_RESTRICT pc_ctx, + char const * NPF_RESTRICT format, + ...) { + va_list val; + va_start(val, format); + int const rv = npf_vpprintf(pc, pc_ctx, format, val); + va_end(val); + return rv; +} + +int npf_snprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + const char * NPF_RESTRICT format, + ...) { + va_list val; + va_start(val, format); + int const rv = npf_vsnprintf(buffer, bufsz, format, val); + va_end(val); + return rv; +} + +int npf_vsnprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + char const * NPF_RESTRICT format, + va_list vlist) { + npf_bufputc_ctx_t bufputc_ctx; + bufputc_ctx.dst = buffer; + bufputc_ctx.len = bufsz; + bufputc_ctx.cur = 0; + + npf_putc const pc = buffer ? npf_bufputc : npf_bufputc_nop; + int const n = npf_vpprintf(pc, &bufputc_ctx, format, vlist); + + if (buffer && bufsz) { +#ifdef NANOPRINTF_SNPRINTF_SAFE_EMPTY_STRING_ON_OVERFLOW + buffer[(n < 0 || (unsigned)n >= bufsz) ? 0 : n] = '\0'; +#else + buffer[n < 0 ? 0 : NPF_MIN((unsigned)n, bufsz - 1)] = '\0'; +#endif + } + + return n; +} + +#if NPF_HAVE_GCC_WARNING_PRAGMAS + #pragma GCC diagnostic pop +#endif + +#ifdef _MSC_VER + #pragma warning(pop) +#endif + +#endif // NPF_IMPLEMENTATION_INCLUDED +#endif // NANOPRINTF_IMPLEMENTATION + +/* + nanoprintf is dual-licensed under both the "Unlicense" and the + "Zero-Clause BSD" (0BSD) licenses. The intent of this dual-licensing + structure is to make nanoprintf as consumable as possible in as many + environments / countries / companies as possible without any + encumberances. + + The text of the two licenses follows below: + + ============================== UNLICENSE ============================== + + This is free and unencumbered software released into the public domain. + + Anyone is free to copy, modify, publish, use, compile, sell, or + distribute this software, either in source code form or as a compiled + binary, for any purpose, commercial or non-commercial, and by any + means. + + In jurisdictions that recognize copyright laws, the author or authors + of this software dedicate any and all copyright interest in the + software to the public domain. We make this dedication for the benefit + of the public at large and to the detriment of our heirs and + successors. We intend this dedication to be an overt act of + relinquishment in perpetuity of all present and future rights to this + software under copyright law. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + + For more information, please refer to + + ================================ 0BSD ================================= + + Copyright (C) 2019- by Charles Nicholson + + Permission to use, copy, modify, and/or distribute this software for + any purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +*/ \ No newline at end of file diff --git a/_test/alias_dblB_de_tcobs_ua/triceConfig.h b/_test/alias_dblB_de_tcobs_ua/triceConfig.h new file mode 100644 index 000000000..b975b13c1 --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/triceConfig.h @@ -0,0 +1,43 @@ +/*! \file triceConfig.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_CONFIG_H_ +#define TRICE_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define TRICE_BUFFER TRICE_STACK_BUFFER +#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_AUXILIARY32 1 +#define TRICE_CGO 1 +#define TRICE_CYCLE_COUNTER 0 + +////////////////////////////////////////////////////////////////////////////// +// aliases - we have to exclude this in trice_environment.sh +// +#include "nanoprintf.h" + +//! printi is a user print example with only integer values and therefore replacable direct with trice. +#define printi trice + +//! prints is a user print example with string, float and integer values. +//! We have to perform a normal print into a buffer, which then is passed to triceS. +//! This is slow but we can integrate user code without changing it. +#define prints(id, fmt, ...) \ + do { \ + char buf[96]; \ + npf_snprintf(buf, sizeof(buf), fmt, ##__VA_ARGS__); \ + triceS(id, "%s", buf); \ + } while(0) + +// +////////////////////////////////////////////////////////////////////////////// + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_CONFIG_H_ */ diff --git a/_test/alias_dblB_de_tcobs_ua/triceUart.h b/_test/alias_dblB_de_tcobs_ua/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/alias_dblB_de_tcobs_ua/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/_ringB_protect_de_tcobs_ua/ReadMe.md b/_test/aliasassert_dblB_de_tcobs_ua/ReadMe.md similarity index 100% rename from _test/_ringB_protect_de_tcobs_ua/ReadMe.md rename to _test/aliasassert_dblB_de_tcobs_ua/ReadMe.md diff --git a/_test/aliasassert_dblB_de_tcobs_ua/TargetActivity.c b/_test/aliasassert_dblB_de_tcobs_ua/TargetActivity.c new file mode 100644 index 000000000..9afba76c6 --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/TargetActivity.c @@ -0,0 +1,39 @@ +//! \file TargetActivity.c +//! \brief This file gets compiled into the cgot package only because it exists in the cgot folder. +//! \details Go func triceLogSpecialTest parses additionally this file to collect the expected results line by line for later test execution. + +#include "trice.h" + +// The strings behind "//exp:" are the expected result for each line (-color=off) +// Lines ending with a comment starting with `//exp:` are executed during the automatic Go tests. +// clang-format off + +void TriceCheckSpecial( int n ) { + + // The custom macros cause compiler warnings, when the IDs are still inserted. Therefore a 'trice clean' is needed before building the binary. + + /* Some Custom Trice Alias Examples */ + const int theRightAnswer = 42; + const int theFastFoundAnswer = 24; + const char* theQuestion = "What could be the answer to the Ultimate Question of Life, the Universe, and Everything?"; + + switch(n){ + default: + break; case __LINE__: TRice("Hello World!\n" ); //exp: Time:feed3322default: Hello World! + + // Some Trice custom alias examples + break; case __LINE__: CUSTOM_PRINT("CUSTOM_PRINT example: the right answer is: %d\n", theRightAnswer); //exp: Time: default: CUSTOM_PRINT example: the right answer is: 42 + + // Assert with condition + break; case __LINE__: CUSTOM_ASSERT(theFastFoundAnswer == theRightAnswer); //exp: Time: default: [ASSERT] TargetActivity.c:28: theFastFoundAnswer == theRightAnswer + + // Assert with condition and a message: This works too, but triggers a clang compiler warning, we cannot suppress. (https://stackoverflow.com/questions/52692564/how-can-i-disable-format-security-error-with-clang) + break; case __LINE__: CUSTOM_ASSERT(theFastFoundAnswer == theRightAnswer, (char*)theQuestion ); //exp: Time: default: [ASSERT] TargetActivity.c:31: theFastFoundAnswer == theRightAnswer -> What could be the answer to the Ultimate Question of Life, the Universe, and Everything? + + // Assert with condition and a message and some extra message arguments + break; case __LINE__: CUSTOM_ASSERT(theFastFoundAnswer == theRightAnswer, (char*)"'%s' Am, it is %d", (char*)theQuestion, theRightAnswer); //exp: Time: default: [ASSERT] TargetActivity.c:34: theFastFoundAnswer == theRightAnswer -> 'What could be the answer to the Ultimate Question of Life, the Universe, and Everything?' Am, it is 42 + } + +} + +// clang-format on diff --git a/_test/aliasassert_dblB_de_tcobs_ua/cgo_alias.go b/_test/aliasassert_dblB_de_tcobs_ua/cgo_alias.go new file mode 100644 index 000000000..25edb4904 --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/cgo_alias.go @@ -0,0 +1,65 @@ +package cgot + +// For some reason inside the trice_test.go an 'import "C"' is not possible. + +// #define NANOPRINTF_IMPLEMENTATION +// #include "nanoprintf.h" +// void TriceCheckSpecial( int n ); +import "C" +import ( + "fmt" + "strings" + "testing" + + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func targetSpecialActivity(n int) { + C.TriceCheckSpecial(C.int(n)) +} + +// triceLogSpecialTest creates a list of expected results from path.Join(triceDir, "./_test/tf/TargetActivity.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogSpecialTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, "./TargetActivity.c") + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + targetSpecialActivity(r.line) // triceCheck would compile but not wat we want here + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} diff --git a/_test/aliasassert_dblB_de_tcobs_ua/cgo_test.go b/_test/aliasassert_dblB_de_tcobs_ua/cgo_test.go new file mode 100644 index 000000000..248fe8de5 --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/cgo_test.go @@ -0,0 +1,34 @@ +package cgot + +import ( + "bytes" + "io" + "path" + "testing" + + "github.com/rokath/trice/internal/args" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func TestLogs(t *testing.T) { + // triceLog is the log function for executing the trice logging on binary log data in buffer as space separated numbers. + // It uses the inside fSys specified til.json and returns the log output. + triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { + var o bytes.Buffer + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", + "-pf=none", + "-doubled16BitID", + "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, + "-hs=off", + "-prefix=off", + "-li=off", + "-color=off", + "-ts0", "Time: ", + "-ts16", "Time: %04x", + "-ts32", "Time:%08x"})) + return o.String() + } + triceLogSpecialTest(t, triceLog, -1) +} diff --git a/_test/aliasassert_dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/aliasassert_dblB_de_tcobs_ua/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/aliasassert_dblB_de_tcobs_ua/nanoprintf.h b/_test/aliasassert_dblB_de_tcobs_ua/nanoprintf.h new file mode 100644 index 000000000..13d4fe5b1 --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/nanoprintf.h @@ -0,0 +1,1203 @@ +/* nanoprintf v0.5.5: a tiny embeddable printf replacement written in C. + https://github.com/charlesnicholson/nanoprintf + charles.nicholson+nanoprintf@gmail.com + dual-licensed under 0bsd and unlicense, take your pick. see eof for details. */ + +#ifndef NPF_H_INCLUDED +#define NPF_H_INCLUDED + +#include +#include + +// Define this to fully sandbox nanoprintf inside of a translation unit. +#ifdef NANOPRINTF_VISIBILITY_STATIC + #define NPF_VISIBILITY static +#else + #define NPF_VISIBILITY extern +#endif + +#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) + #define NPF_PRINTF_ATTR(FORMAT_INDEX, VARGS_INDEX) \ + __attribute__((format(printf, FORMAT_INDEX, VARGS_INDEX))) +#else + #define NPF_PRINTF_ATTR(FORMAT_INDEX, VARGS_INDEX) +#endif + +// Public API + +#ifdef __cplusplus +#define NPF_RESTRICT +extern "C" { +#else +#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) +#define NPF_RESTRICT restrict +#else +#define NPF_RESTRICT +#endif +#endif + +// The npf_ functions all return the number of bytes required to express the +// fully-formatted string, not including the null terminator character. +// The npf_ functions do not return negative values, since the lack of 'l' length +// modifier support makes encoding errors impossible. + +NPF_VISIBILITY int npf_snprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + const char * NPF_RESTRICT format, + ...) NPF_PRINTF_ATTR(3, 4); + +NPF_VISIBILITY int npf_vsnprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + char const * NPF_RESTRICT format, + va_list vlist) NPF_PRINTF_ATTR(3, 0); + +typedef void (*npf_putc)(int c, void *ctx); +NPF_VISIBILITY int npf_pprintf(npf_putc pc, + void * NPF_RESTRICT pc_ctx, + char const * NPF_RESTRICT format, + ...) NPF_PRINTF_ATTR(3, 4); + +NPF_VISIBILITY int npf_vpprintf(npf_putc pc, + void * NPF_RESTRICT pc_ctx, + char const * NPF_RESTRICT format, + va_list vlist) NPF_PRINTF_ATTR(3, 0); + +#ifdef __cplusplus +} +#endif + +#endif // NPF_H_INCLUDED + +/* The implementation of nanoprintf begins here, to be compiled only if + NANOPRINTF_IMPLEMENTATION is defined. In a multi-file library what follows would + be nanoprintf.c. */ + +#ifdef NANOPRINTF_IMPLEMENTATION + +#ifndef NPF_IMPLEMENTATION_INCLUDED +#define NPF_IMPLEMENTATION_INCLUDED + +#include +#include + +// The conversion buffer must fit at least UINT64_MAX in octal format with the leading '0'. +#ifndef NANOPRINTF_CONVERSION_BUFFER_SIZE + #define NANOPRINTF_CONVERSION_BUFFER_SIZE 23 +#endif +#if NANOPRINTF_CONVERSION_BUFFER_SIZE < 23 + #error The size of the conversion buffer must be at least 23 bytes. +#endif + +// Pick reasonable defaults if nothing's been configured. +#if !defined(NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS) && \ + !defined(NANOPRINTF_USE_ALT_FORM_FLAG) + #define NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS 0 + #define NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS 1 + #define NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS 0 + #define NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS 0 + #define NANOPRINTF_USE_ALT_FORM_FLAG 1 +#endif + +// If anything's been configured, everything must be configured. +#ifndef NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif +#ifndef NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS + #error NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS must be #defined to 0 or 1 +#endif + +// Ensure flags are compatible. +#if (NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1) && \ + (NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 0) + #error Precision format specifiers must be enabled if float support is enabled. +#endif + +// intmax_t / uintmax_t require stdint from c99 / c++11 +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + #ifndef _MSC_VER + #ifdef __cplusplus + #if __cplusplus < 201103L + #error large format specifier support requires C++11 or later. + #endif + #else + #if __STDC_VERSION__ < 199409L + #error nanoprintf requires C99 or later. + #endif + #endif + #endif +#endif + +// Figure out if we can disable warnings with pragmas. +#ifdef __clang__ + #define NPF_CLANG 1 + #define NPF_GCC_PAST_4_6 0 +#else + #define NPF_CLANG 0 + #if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 6))) + #define NPF_GCC_PAST_4_6 1 + #else + #define NPF_GCC_PAST_4_6 0 + #endif +#endif + +#if NPF_CLANG || NPF_GCC_PAST_4_6 + #define NPF_HAVE_GCC_WARNING_PRAGMAS 1 +#else + #define NPF_HAVE_GCC_WARNING_PRAGMAS 0 +#endif + +#if NPF_HAVE_GCC_WARNING_PRAGMAS + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wunused-function" + #pragma GCC diagnostic ignored "-Wimplicit-fallthrough" + #ifdef __cplusplus + #pragma GCC diagnostic ignored "-Wold-style-cast" + #endif + #pragma GCC diagnostic ignored "-Wpadded" + #pragma GCC diagnostic ignored "-Wfloat-equal" + #if NPF_CLANG + #pragma GCC diagnostic ignored "-Wc++98-compat-pedantic" + #pragma GCC diagnostic ignored "-Wcovered-switch-default" + #pragma GCC diagnostic ignored "-Wdeclaration-after-statement" + #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" + #ifndef __APPLE__ + #pragma GCC diagnostic ignored "-Wunsafe-buffer-usage" + #endif + #elif NPF_GCC_PAST_4_6 + #pragma GCC diagnostic ignored "-Wmaybe-uninitialized" + #endif +#endif + +#ifdef _MSC_VER + #pragma warning(push) + #pragma warning(disable:4619) // there is no warning number 'number' + // C4619 has to be disabled first! + #pragma warning(disable:4127) // conditional expression is constant + #pragma warning(disable:4505) // unreferenced local function has been removed + #pragma warning(disable:4514) // unreferenced inline function has been removed + #pragma warning(disable:4701) // potentially uninitialized local variable used + #pragma warning(disable:4706) // assignment within conditional expression + #pragma warning(disable:4710) // function not inlined + #pragma warning(disable:4711) // function selected for inline expansion + #pragma warning(disable:4820) // padding added after struct member + #pragma warning(disable:5039) // potentially throwing function passed to extern C function + #pragma warning(disable:5045) // compiler will insert Spectre mitigation for memory load + #pragma warning(disable:5262) // implicit switch fall-through + #pragma warning(disable:26812) // enum type is unscoped +#endif + +#if defined(__clang__) || defined(__GNUC__) || defined(__GNUG__) + #define NPF_NOINLINE __attribute__((noinline)) + #define NPF_FORCE_INLINE inline __attribute__((always_inline)) +#elif defined(_MSC_VER) + #define NPF_NOINLINE __declspec(noinline) + #define NPF_FORCE_INLINE inline __forceinline +#else + #define NPF_NOINLINE + #define NPF_FORCE_INLINE +#endif + +#if (NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1) || \ + (NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1) +enum { + NPF_FMT_SPEC_OPT_NONE, + NPF_FMT_SPEC_OPT_LITERAL, + NPF_FMT_SPEC_OPT_STAR, +}; +#endif + +enum { + NPF_FMT_SPEC_LEN_MOD_NONE, +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_LEN_MOD_SHORT, // 'h' + NPF_FMT_SPEC_LEN_MOD_CHAR, // 'hh' +#endif + NPF_FMT_SPEC_LEN_MOD_LONG, // 'l' + NPF_FMT_SPEC_LEN_MOD_LONG_DOUBLE, // 'L' +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_LEN_MOD_LARGE_LONG_LONG, // 'll' + NPF_FMT_SPEC_LEN_MOD_LARGE_INTMAX, // 'j' + NPF_FMT_SPEC_LEN_MOD_LARGE_SIZET, // 'z' + NPF_FMT_SPEC_LEN_MOD_LARGE_PTRDIFFT, // 't' +#endif +}; + +enum { + NPF_FMT_SPEC_CONV_NONE, + NPF_FMT_SPEC_CONV_PERCENT, // '%' + NPF_FMT_SPEC_CONV_CHAR, // 'c' + NPF_FMT_SPEC_CONV_STRING, // 's' + NPF_FMT_SPEC_CONV_SIGNED_INT, // 'i', 'd' +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_CONV_BINARY, // 'b' +#endif + NPF_FMT_SPEC_CONV_OCTAL, // 'o' + NPF_FMT_SPEC_CONV_HEX_INT, // 'x', 'X' + NPF_FMT_SPEC_CONV_UNSIGNED_INT, // 'u' + NPF_FMT_SPEC_CONV_POINTER, // 'p' +#if NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_CONV_WRITEBACK, // 'n' +#endif +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + NPF_FMT_SPEC_CONV_FLOAT_DEC, // 'f', 'F' + NPF_FMT_SPEC_CONV_FLOAT_SCI, // 'e', 'E' + NPF_FMT_SPEC_CONV_FLOAT_SHORTEST, // 'g', 'G' + NPF_FMT_SPEC_CONV_FLOAT_HEX, // 'a', 'A' +#endif +}; + +typedef struct npf_format_spec { +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + int field_width; +#endif +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + int prec; + uint8_t prec_opt; +#endif +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + uint8_t field_width_opt; + char left_justified; // '-' + char leading_zero_pad; // '0' +#endif + char prepend; // ' ' or '+' +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + char alt_form; // '#' +#endif + char case_adjust; // 'a' - 'A' , or 0 (must be non-negative to work) + uint8_t length_modifier; + uint8_t conv_spec; +} npf_format_spec_t; + +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 0 + typedef long npf_int_t; + typedef unsigned long npf_uint_t; +#else + typedef intmax_t npf_int_t; + typedef uintmax_t npf_uint_t; +#endif + +typedef struct npf_bufputc_ctx { + char *dst; + size_t len; + size_t cur; +} npf_bufputc_ctx_t; + +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + typedef char npf_size_is_ptrdiff[(sizeof(size_t) == sizeof(ptrdiff_t)) ? 1 : -1]; + typedef ptrdiff_t npf_ssize_t; + typedef size_t npf_uptrdiff_t; +#endif + +#ifdef _MSC_VER + #include +#endif + +#define NPF_MIN(x, y) ((x) <= (y) ? (x) : (y)) +#define NPF_MAX(x, y) ((x) >= (y) ? (x) : (y)) + +static int npf_parse_format_spec(char const *format, npf_format_spec_t *out_spec) { + char const *cur = format; + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + out_spec->left_justified = 0; + out_spec->leading_zero_pad = 0; +#endif + out_spec->case_adjust = 'a' - 'A'; // lowercase + out_spec->prepend = 0; +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + out_spec->alt_form = 0; +#endif + + while (*++cur) { // cur points at the leading '%' character + switch (*cur) { // Optional flags +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + case '-': out_spec->left_justified = '-'; out_spec->leading_zero_pad = 0; continue; + case '0': out_spec->leading_zero_pad = !out_spec->left_justified; continue; +#endif + case '+': out_spec->prepend = '+'; continue; + case ' ': if (out_spec->prepend == 0) { out_spec->prepend = ' '; } continue; +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + case '#': out_spec->alt_form = '#'; continue; +#endif + default: break; + } + break; + } + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + out_spec->field_width = 0; + out_spec->field_width_opt = NPF_FMT_SPEC_OPT_NONE; + if (*cur == '*') { + out_spec->field_width_opt = NPF_FMT_SPEC_OPT_STAR; + ++cur; + } else { + while ((*cur >= '0') && (*cur <= '9')) { + out_spec->field_width_opt = NPF_FMT_SPEC_OPT_LITERAL; + out_spec->field_width = (out_spec->field_width * 10) + (*cur++ - '0'); + } + } +#endif + +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec = 0; + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; + if (*cur == '.') { + ++cur; + if (*cur == '*') { + out_spec->prec_opt = NPF_FMT_SPEC_OPT_STAR; + ++cur; + } else { + if (*cur == '-') { + ++cur; + } else { + out_spec->prec_opt = NPF_FMT_SPEC_OPT_LITERAL; + } + while ((*cur >= '0') && (*cur <= '9')) { + out_spec->prec = (out_spec->prec * 10) + (*cur++ - '0'); + } + } + } +#endif + + uint_fast8_t tmp_conv = NPF_FMT_SPEC_CONV_NONE; + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_NONE; + switch (*cur++) { // Length modifier +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + case 'h': + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_SHORT; + if (*cur == 'h') { + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_CHAR; + ++cur; + } + break; +#endif + case 'l': + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LONG; +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + if (*cur == 'l') { + out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_LONG_LONG; + ++cur; + } +#endif + break; +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + case 'L': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LONG_DOUBLE; break; +#endif +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + case 'j': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_INTMAX; break; + case 'z': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_SIZET; break; + case 't': out_spec->length_modifier = NPF_FMT_SPEC_LEN_MOD_LARGE_PTRDIFFT; break; +#endif + default: --cur; break; + } + + switch (*cur++) { // Conversion specifier + case '%': out_spec->conv_spec = NPF_FMT_SPEC_CONV_PERCENT; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; + out_spec->prec = 0; +#endif + break; + + case 'c': out_spec->conv_spec = NPF_FMT_SPEC_CONV_CHAR; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; + out_spec->prec = 0; +#endif + break; + + case 's': out_spec->conv_spec = NPF_FMT_SPEC_CONV_STRING; + break; + + case 'i': + case 'd': tmp_conv = NPF_FMT_SPEC_CONV_SIGNED_INT; goto finish; + case 'o': tmp_conv = NPF_FMT_SPEC_CONV_OCTAL; goto finish; + case 'u': tmp_conv = NPF_FMT_SPEC_CONV_UNSIGNED_INT; goto finish; + case 'X': out_spec->case_adjust = 0; + case 'x': tmp_conv = NPF_FMT_SPEC_CONV_HEX_INT; goto finish; + finish: + out_spec->conv_spec = (uint8_t)tmp_conv; +#if (NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1) && \ + (NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1) + if (out_spec->prec_opt != NPF_FMT_SPEC_OPT_NONE) { out_spec->leading_zero_pad = 0; } +#endif + break; + +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + case 'F': out_spec->case_adjust = 0; + case 'f': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_DEC; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; + + case 'E': out_spec->case_adjust = 0; + case 'e': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_SCI; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; + + case 'G': out_spec->case_adjust = 0; + case 'g': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_SHORTEST; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; + + case 'A': out_spec->case_adjust = 0; + case 'a': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_FLOAT_HEX; + if (out_spec->prec_opt == NPF_FMT_SPEC_OPT_NONE) { out_spec->prec = 6; } + break; +#endif + +#if NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS == 1 + case 'n': + // todo: reject string if flags or width or precision exist + out_spec->conv_spec = NPF_FMT_SPEC_CONV_WRITEBACK; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; +#endif + break; +#endif + + case 'p': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_POINTER; +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + out_spec->prec_opt = NPF_FMT_SPEC_OPT_NONE; +#endif + break; + +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + case 'B': + out_spec->case_adjust = 0; + case 'b': + out_spec->conv_spec = NPF_FMT_SPEC_CONV_BINARY; + break; +#endif + + default: return 0; + } + + return (int)(cur - format); +} + +static NPF_NOINLINE int npf_utoa_rev( + npf_uint_t val, char *buf, uint_fast8_t base, char case_adj) { + uint_fast8_t n = 0; + do { + int_fast8_t const d = (int_fast8_t)(val % base); + *buf++ = (char)(((d < 10) ? '0' : ('A' - 10 + case_adj)) + d); + ++n; + val /= base; + } while (val); + return (int)n; +} + +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + +#include + +#if (DBL_MANT_DIG <= 11) && (DBL_MAX_EXP <= 16) + typedef uint_fast16_t npf_double_bin_t; + typedef int_fast8_t npf_ftoa_exp_t; +#elif (DBL_MANT_DIG <= 24) && (DBL_MAX_EXP <= 128) + typedef uint_fast32_t npf_double_bin_t; + typedef int_fast8_t npf_ftoa_exp_t; +#elif (DBL_MANT_DIG <= 53) && (DBL_MAX_EXP <= 1024) + typedef uint_fast64_t npf_double_bin_t; + typedef int_fast16_t npf_ftoa_exp_t; +#else + #error Unsupported width of the double type. +#endif + +// The floating point conversion code works with an unsigned integer type of any size. +#ifndef NANOPRINTF_CONVERSION_FLOAT_TYPE + #define NANOPRINTF_CONVERSION_FLOAT_TYPE unsigned int +#endif +typedef NANOPRINTF_CONVERSION_FLOAT_TYPE npf_ftoa_man_t; + +#if (NANOPRINTF_CONVERSION_BUFFER_SIZE <= UINT_FAST8_MAX) && (UINT_FAST8_MAX <= INT_MAX) + typedef uint_fast8_t npf_ftoa_dec_t; +#else + typedef int npf_ftoa_dec_t; +#endif + +enum { + NPF_DOUBLE_EXP_MASK = DBL_MAX_EXP * 2 - 1, + NPF_DOUBLE_EXP_BIAS = DBL_MAX_EXP - 1, + NPF_DOUBLE_MAN_BITS = DBL_MANT_DIG - 1, + NPF_DOUBLE_BIN_BITS = sizeof(npf_double_bin_t) * CHAR_BIT, + NPF_DOUBLE_SIGN_POS = sizeof(double) * CHAR_BIT - 1, + NPF_FTOA_MAN_BITS = sizeof(npf_ftoa_man_t) * CHAR_BIT, + NPF_FTOA_SHIFT_BITS = + ((NPF_FTOA_MAN_BITS < DBL_MANT_DIG) ? NPF_FTOA_MAN_BITS : DBL_MANT_DIG) - 1 +}; + +/* Generally, floating-point conversion implementations use + grisu2 (https://bit.ly/2JgMggX) and ryu (https://bit.ly/2RLXSg0) algorithms, + which are mathematically exact and fast, but require large lookup tables. + + This implementation was inspired by Wojciech Muła's (zdjęcia@garnek.pl) + algorithm (http://0x80.pl/notesen/2015-12-29-float-to-string.html) and + extended further by adding dynamic scaling and configurable integer width by + Oskars Rubenis (https://github.com/Okarss). */ + +static NPF_FORCE_INLINE npf_double_bin_t npf_double_to_int_rep(double f) { + // Union-cast is UB pre-C11 and in all C++; the compiler optimizes the code below. + npf_double_bin_t bin; + char const *src = (char const *)&f; + char *dst = (char *)&bin; + for (uint_fast8_t i = 0; i < sizeof(f); ++i) { dst[i] = src[i]; } + return bin; +} + +static int npf_ftoa_rev(char *buf, npf_format_spec_t const *spec, double f) { + char const *ret = NULL; + npf_double_bin_t bin = npf_double_to_int_rep(f); + + // Unsigned -> signed int casting is IB and can raise a signal but generally doesn't. + npf_ftoa_exp_t exp = + (npf_ftoa_exp_t)((npf_ftoa_exp_t)(bin >> NPF_DOUBLE_MAN_BITS) & NPF_DOUBLE_EXP_MASK); + + bin &= ((npf_double_bin_t)0x1 << NPF_DOUBLE_MAN_BITS) - 1; + if (exp == (npf_ftoa_exp_t)NPF_DOUBLE_EXP_MASK) { // special value + ret = (bin) ? "NAN" : "FNI"; + goto exit; + } + if (spec->prec > (NANOPRINTF_CONVERSION_BUFFER_SIZE - 2)) { goto exit; } + if (exp) { // normal number + bin |= (npf_double_bin_t)0x1 << NPF_DOUBLE_MAN_BITS; + } else { // subnormal number + ++exp; + } + exp = (npf_ftoa_exp_t)(exp - NPF_DOUBLE_EXP_BIAS); + + uint_fast8_t carry; carry = 0; + npf_ftoa_dec_t end, dec; dec = (npf_ftoa_dec_t)spec->prec; + if (dec +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + || spec->alt_form +#endif + ) { + buf[dec++] = '.'; + } + + { // Integer part + npf_ftoa_man_t man_i; + + if (exp >= 0) { + int_fast8_t shift_i = + (int_fast8_t)((exp > NPF_FTOA_SHIFT_BITS) ? (int)NPF_FTOA_SHIFT_BITS : exp); + npf_ftoa_exp_t exp_i = (npf_ftoa_exp_t)(exp - shift_i); + shift_i = (int_fast8_t)(NPF_DOUBLE_MAN_BITS - shift_i); + man_i = (npf_ftoa_man_t)(bin >> shift_i); + + if (exp_i) { + if (shift_i) { + carry = (bin >> (shift_i - 1)) & 0x1; + } + exp = NPF_DOUBLE_MAN_BITS; // invalidate the fraction part + } + + // Scale the exponent from base-2 to base-10. + for (; exp_i; --exp_i) { + if (!(man_i & ((npf_ftoa_man_t)0x1 << (NPF_FTOA_MAN_BITS - 1)))) { + man_i = (npf_ftoa_man_t)(man_i << 1); + man_i = (npf_ftoa_man_t)(man_i | carry); carry = 0; + } else { + if (dec >= NANOPRINTF_CONVERSION_BUFFER_SIZE) { goto exit; } + buf[dec++] = '0'; + carry = (((uint_fast8_t)(man_i % 5) + carry) > 2); + man_i /= 5; + } + } + } else { + man_i = 0; + } + end = dec; + + do { // Print the integer + if (end >= NANOPRINTF_CONVERSION_BUFFER_SIZE) { goto exit; } + buf[end++] = (char)('0' + (char)(man_i % 10)); + man_i /= 10; + } while (man_i); + } + + { // Fraction part + npf_ftoa_man_t man_f; + npf_ftoa_dec_t dec_f = (npf_ftoa_dec_t)spec->prec; + + if (exp < NPF_DOUBLE_MAN_BITS) { + int_fast8_t shift_f = (int_fast8_t)((exp < 0) ? -1 : exp); + npf_ftoa_exp_t exp_f = (npf_ftoa_exp_t)(exp - shift_f); + npf_double_bin_t bin_f = + bin << ((NPF_DOUBLE_BIN_BITS - NPF_DOUBLE_MAN_BITS) + shift_f); + + // This if-else statement can be completely optimized at compile time. + if (NPF_DOUBLE_BIN_BITS > NPF_FTOA_MAN_BITS) { + man_f = (npf_ftoa_man_t)(bin_f >> ((unsigned)(NPF_DOUBLE_BIN_BITS - + NPF_FTOA_MAN_BITS) % + NPF_DOUBLE_BIN_BITS)); + carry = (uint_fast8_t)((bin_f >> ((unsigned)(NPF_DOUBLE_BIN_BITS - + NPF_FTOA_MAN_BITS - 1) % + NPF_DOUBLE_BIN_BITS)) & 0x1); + } else { + man_f = (npf_ftoa_man_t)((npf_ftoa_man_t)bin_f + << ((unsigned)(NPF_FTOA_MAN_BITS - + NPF_DOUBLE_BIN_BITS) % NPF_FTOA_MAN_BITS)); + carry = 0; + } + + // Scale the exponent from base-2 to base-10 and prepare the first digit. + for (uint_fast8_t digit = 0; dec_f && (exp_f < 4); ++exp_f) { + if ((man_f > ((npf_ftoa_man_t)-4 / 5)) || digit) { + carry = (uint_fast8_t)(man_f & 0x1); + man_f = (npf_ftoa_man_t)(man_f >> 1); + } else { + man_f = (npf_ftoa_man_t)(man_f * 5); + if (carry) { man_f = (npf_ftoa_man_t)(man_f + 3); carry = 0; } + if (exp_f < 0) { + buf[--dec_f] = '0'; + } else { + ++digit; + } + } + } + man_f = (npf_ftoa_man_t)(man_f + carry); + carry = (exp_f >= 0); + dec = 0; + } else { + man_f = 0; + } + + if (dec_f) { + // Print the fraction + for (;;) { + buf[--dec_f] = (char)('0' + (char)(man_f >> (NPF_FTOA_MAN_BITS - 4))); + man_f = (npf_ftoa_man_t)(man_f & ~((npf_ftoa_man_t)0xF << (NPF_FTOA_MAN_BITS - 4))); + if (!dec_f) { break; } + man_f = (npf_ftoa_man_t)(man_f * 10); + } + man_f = (npf_ftoa_man_t)(man_f << 4); + } + if (exp < NPF_DOUBLE_MAN_BITS) { + carry &= (uint_fast8_t)(man_f >> (NPF_FTOA_MAN_BITS - 1)); + } + } + + // Round the number + for (; carry; ++dec) { + if (dec >= NANOPRINTF_CONVERSION_BUFFER_SIZE) { goto exit; } + if (dec >= end) { buf[end++] = '0'; } + if (buf[dec] == '.') { continue; } + carry = (buf[dec] == '9'); + buf[dec] = (char)(carry ? '0' : (buf[dec] + 1)); + } + + return (int)end; +exit: + if (!ret) { ret = "RRE"; } + uint_fast8_t i; + for (i = 0; ret[i]; ++i) { buf[i] = (char)(ret[i] + spec->case_adjust); } + return -(int)i; +} + +#endif // NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS + +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 +static int npf_bin_len(npf_uint_t u) { + // Return the length of the binary string format of 'u', preferring intrinsics. + if (!u) { return 1; } + +#ifdef _MSC_VER // Win64, use _BSR64 for everything. If x86, use _BSR when non-large. + #ifdef _M_X64 + #define NPF_HAVE_BUILTIN_CLZ + #define NPF_CLZ _BitScanReverse64 + #elif NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 0 + #define NPF_HAVE_BUILTIN_CLZ + #define NPF_CLZ _BitScanReverse + #endif + #ifdef NPF_HAVE_BUILTIN_CLZ + unsigned long idx; + NPF_CLZ(&idx, u); + return (int)(idx + 1); + #endif +#elif NPF_CLANG || NPF_GCC_PAST_4_6 + #define NPF_HAVE_BUILTIN_CLZ + #if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + #define NPF_CLZ(X) ((sizeof(long long) * CHAR_BIT) - (size_t)__builtin_clzll(X)) + #else + #define NPF_CLZ(X) ((sizeof(long) * CHAR_BIT) - (size_t)__builtin_clzl(X)) + #endif + return (int)NPF_CLZ(u); +#endif + +#ifndef NPF_HAVE_BUILTIN_CLZ + int n; + for (n = 0; u; ++n, u >>= 1); // slow but small software fallback + return n; +#else + #undef NPF_HAVE_BUILTIN_CLZ + #undef NPF_CLZ +#endif +} +#endif + +static void npf_bufputc(int c, void *ctx) { + npf_bufputc_ctx_t *bpc = (npf_bufputc_ctx_t *)ctx; + if (bpc->cur < bpc->len) { bpc->dst[bpc->cur++] = (char)c; } +} + +static void npf_bufputc_nop(int c, void *ctx) { (void)c; (void)ctx; } + +typedef struct npf_cnt_putc_ctx { + npf_putc pc; + void *ctx; + int n; +} npf_cnt_putc_ctx_t; + +static void npf_putc_cnt(int c, void *ctx) { + npf_cnt_putc_ctx_t *pc_cnt = (npf_cnt_putc_ctx_t *)ctx; + ++pc_cnt->n; + pc_cnt->pc(c, pc_cnt->ctx); // sibling-call optimization +} + +#define NPF_PUTC(VAL) do { npf_putc_cnt((int)(VAL), &pc_cnt); } while (0) + +#define NPF_EXTRACT(MOD, CAST_TO, EXTRACT_AS) \ + case NPF_FMT_SPEC_LEN_MOD_##MOD: val = (CAST_TO)va_arg(args, EXTRACT_AS); break + +#define NPF_WRITEBACK(MOD, TYPE) \ + case NPF_FMT_SPEC_LEN_MOD_##MOD: *(va_arg(args, TYPE *)) = (TYPE)pc_cnt.n; break + +int npf_vpprintf(npf_putc pc, void *pc_ctx, char const *format, va_list args) { + npf_format_spec_t fs; + char const *cur = format; + npf_cnt_putc_ctx_t pc_cnt; + pc_cnt.pc = pc; + pc_cnt.ctx = pc_ctx; + pc_cnt.n = 0; + + while (*cur) { + int const fs_len = (*cur != '%') ? 0 : npf_parse_format_spec(cur, &fs); + if (!fs_len) { NPF_PUTC(*cur++); continue; } + cur += fs_len; + + // Extract star-args immediately +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + if (fs.field_width_opt == NPF_FMT_SPEC_OPT_STAR) { + fs.field_width = va_arg(args, int); + if (fs.field_width < 0) { + fs.field_width = -fs.field_width; + fs.left_justified = 1; + } + } +#endif +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + if (fs.prec_opt == NPF_FMT_SPEC_OPT_STAR) { + fs.prec = va_arg(args, int); + if (fs.prec < 0) { fs.prec_opt = NPF_FMT_SPEC_OPT_NONE; } + } +#endif + + union { char cbuf_mem[NANOPRINTF_CONVERSION_BUFFER_SIZE]; npf_uint_t binval; } u; + char *cbuf = u.cbuf_mem, sign_c = 0; + int cbuf_len = 0; + char need_0x = 0; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + int field_pad = 0; + char pad_c = 0; +#endif +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + int prec_pad = 0; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + uint_fast8_t zero = 0; +#endif +#endif + + // Extract and convert the argument to string, point cbuf at the text. + switch (fs.conv_spec) { + case NPF_FMT_SPEC_CONV_PERCENT: + *cbuf = '%'; + cbuf_len = 1; + break; + + case NPF_FMT_SPEC_CONV_CHAR: + *cbuf = (char)va_arg(args, int); + cbuf_len = (*cbuf) ? 1 : 0; + break; + + case NPF_FMT_SPEC_CONV_STRING: { + cbuf = va_arg(args, char *); +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + for (char const *s = cbuf; + ((fs.prec_opt == NPF_FMT_SPEC_OPT_NONE) || (cbuf_len < fs.prec)) && cbuf && *s; + ++s, ++cbuf_len); +#else + for (char const *s = cbuf; cbuf && *s; ++s, ++cbuf_len); // strlen +#endif + } break; + + case NPF_FMT_SPEC_CONV_SIGNED_INT: { + npf_int_t val = 0; + switch (fs.length_modifier) { + NPF_EXTRACT(NONE, int, int); +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(SHORT, short, int); + NPF_EXTRACT(CHAR, signed char, int); +#endif + NPF_EXTRACT(LONG, long, long); +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(LARGE_LONG_LONG, long long, long long); + NPF_EXTRACT(LARGE_INTMAX, intmax_t, intmax_t); + NPF_EXTRACT(LARGE_SIZET, npf_ssize_t, npf_ssize_t); + NPF_EXTRACT(LARGE_PTRDIFFT, ptrdiff_t, ptrdiff_t); +#endif + default: break; + } + + sign_c = (val < 0) ? '-' : fs.prepend; + +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + zero = !val; +#endif + // special case, if prec and value are 0, skip + if (!val && (fs.prec_opt != NPF_FMT_SPEC_OPT_NONE) && !fs.prec) { + cbuf_len = 0; + } else +#endif + { + npf_uint_t uval = (npf_uint_t)val; + if (val < 0) { uval = 0 - uval; } + cbuf_len = npf_utoa_rev(uval, cbuf, 10, fs.case_adjust); + } + } break; + +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + case NPF_FMT_SPEC_CONV_BINARY: +#endif + case NPF_FMT_SPEC_CONV_OCTAL: + case NPF_FMT_SPEC_CONV_HEX_INT: + case NPF_FMT_SPEC_CONV_UNSIGNED_INT: + case NPF_FMT_SPEC_CONV_POINTER: { + npf_uint_t val = 0; + + if (fs.conv_spec == NPF_FMT_SPEC_CONV_POINTER) { + val = (npf_uint_t)(uintptr_t)va_arg(args, void *); + } else { + switch (fs.length_modifier) { + NPF_EXTRACT(NONE, unsigned, unsigned); +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(SHORT, unsigned short, unsigned); + NPF_EXTRACT(CHAR, unsigned char, unsigned); +#endif + NPF_EXTRACT(LONG, unsigned long, unsigned long); +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_EXTRACT(LARGE_LONG_LONG, unsigned long long, unsigned long long); + NPF_EXTRACT(LARGE_INTMAX, uintmax_t, uintmax_t); + NPF_EXTRACT(LARGE_SIZET, size_t, size_t); + NPF_EXTRACT(LARGE_PTRDIFFT, npf_uptrdiff_t, npf_uptrdiff_t); +#endif + default: break; + } + } + +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + zero = !val; +#endif + if (!val && (fs.prec_opt != NPF_FMT_SPEC_OPT_NONE) && !fs.prec) { + // Zero value and explicitly-requested zero precision means "print nothing". +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + if ((fs.conv_spec == NPF_FMT_SPEC_CONV_OCTAL) && fs.alt_form) { + fs.prec = 1; // octal special case, print a single '0' + } +#endif + } else +#endif +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + if (fs.conv_spec == NPF_FMT_SPEC_CONV_BINARY) { + cbuf_len = npf_bin_len(val); u.binval = val; + } else +#endif + { + uint_fast8_t const base = (fs.conv_spec == NPF_FMT_SPEC_CONV_OCTAL) ? + 8u : ((fs.conv_spec == NPF_FMT_SPEC_CONV_UNSIGNED_INT) ? 10u : 16u); + cbuf_len = npf_utoa_rev(val, cbuf, base, fs.case_adjust); + } + +#if NANOPRINTF_USE_ALT_FORM_FLAG == 1 + if (val && fs.alt_form && (fs.conv_spec == NPF_FMT_SPEC_CONV_OCTAL)) { + cbuf[cbuf_len++] = '0'; // OK to add leading octal '0' immediately. + } + + if (val && fs.alt_form) { // 0x or 0b but can't write it yet. + if ((fs.conv_spec == NPF_FMT_SPEC_CONV_HEX_INT) || + (fs.conv_spec == NPF_FMT_SPEC_CONV_POINTER)) { need_0x = 'X'; } +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + else if (fs.conv_spec == NPF_FMT_SPEC_CONV_BINARY) { need_0x = 'B'; } +#endif + if (need_0x) { need_0x = (char)(need_0x + fs.case_adjust); } + } +#endif + } break; + +#if NANOPRINTF_USE_WRITEBACK_FORMAT_SPECIFIERS == 1 + case NPF_FMT_SPEC_CONV_WRITEBACK: + switch (fs.length_modifier) { + NPF_WRITEBACK(NONE, int); +#if NANOPRINTF_USE_SMALL_FORMAT_SPECIFIERS == 1 + NPF_WRITEBACK(SHORT, short); + NPF_WRITEBACK(CHAR, signed char); +#endif + NPF_WRITEBACK(LONG, long); +#if NANOPRINTF_USE_LARGE_FORMAT_SPECIFIERS == 1 + NPF_WRITEBACK(LARGE_LONG_LONG, long long); + NPF_WRITEBACK(LARGE_INTMAX, intmax_t); + NPF_WRITEBACK(LARGE_SIZET, npf_ssize_t); + NPF_WRITEBACK(LARGE_PTRDIFFT, ptrdiff_t); +#endif + default: break; + } break; +#endif + +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + case NPF_FMT_SPEC_CONV_FLOAT_DEC: + case NPF_FMT_SPEC_CONV_FLOAT_SCI: + case NPF_FMT_SPEC_CONV_FLOAT_SHORTEST: + case NPF_FMT_SPEC_CONV_FLOAT_HEX: { + double val; + if (fs.length_modifier == NPF_FMT_SPEC_LEN_MOD_LONG_DOUBLE) { + val = (double)va_arg(args, long double); + } else { + val = va_arg(args, double); + } + + sign_c = (npf_double_to_int_rep(val) >> NPF_DOUBLE_SIGN_POS) ? '-' : fs.prepend; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + zero = (val == 0.); +#endif + cbuf_len = npf_ftoa_rev(cbuf, &fs, val); + if (cbuf_len < 0) { // negative means text (not number), so ignore the '0' flag + cbuf_len = -cbuf_len; +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + fs.leading_zero_pad = 0; +#endif + } + } break; +#endif + default: break; + } + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + // Compute the field width pad character + if (fs.field_width_opt != NPF_FMT_SPEC_OPT_NONE) { + if (fs.leading_zero_pad) { +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + if ((fs.prec_opt != NPF_FMT_SPEC_OPT_NONE) && !fs.prec && zero) { + pad_c = ' '; + } else +#endif + { pad_c = '0'; } + } else { pad_c = ' '; } + } +#endif + + // Compute the number of bytes to truncate or '0'-pad. +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + if (fs.conv_spec != NPF_FMT_SPEC_CONV_STRING) { +#if NANOPRINTF_USE_FLOAT_FORMAT_SPECIFIERS == 1 + // float precision is after the decimal point + if ((fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_DEC) && + (fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_SCI) && + (fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_SHORTEST) && + (fs.conv_spec != NPF_FMT_SPEC_CONV_FLOAT_HEX)) +#endif + { prec_pad = NPF_MAX(0, fs.prec - cbuf_len); } + } +#endif + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + // Given the full converted length, how many pad bytes? + field_pad = fs.field_width - cbuf_len - !!sign_c; + if (need_0x) { field_pad -= 2; } +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + field_pad -= prec_pad; +#endif + field_pad = NPF_MAX(0, field_pad); + + // Apply right-justified field width if requested + if (!fs.left_justified && pad_c) { // If leading zeros pad, sign goes first. + if (pad_c == '0') { + if (sign_c) { NPF_PUTC(sign_c); sign_c = 0; } + // Pad byte is '0', write '0x' before '0' pad chars. + if (need_0x) { NPF_PUTC('0'); NPF_PUTC(need_0x); } + } + while (field_pad-- > 0) { NPF_PUTC(pad_c); } + // Pad byte is ' ', write '0x' after ' ' pad chars but before number. + if ((pad_c != '0') && need_0x) { NPF_PUTC('0'); NPF_PUTC(need_0x); } + } else +#endif + { if (need_0x) { NPF_PUTC('0'); NPF_PUTC(need_0x); } } // no pad, '0x' requested. + + // Write the converted payload + if (fs.conv_spec == NPF_FMT_SPEC_CONV_STRING) { + for (int i = 0; cbuf && (i < cbuf_len); ++i) { NPF_PUTC(cbuf[i]); } + } else { + if (sign_c) { NPF_PUTC(sign_c); } +#if NANOPRINTF_USE_PRECISION_FORMAT_SPECIFIERS == 1 + while (prec_pad-- > 0) { NPF_PUTC('0'); } // int precision leads. +#endif +#if NANOPRINTF_USE_BINARY_FORMAT_SPECIFIERS == 1 + if (fs.conv_spec == NPF_FMT_SPEC_CONV_BINARY) { + while (cbuf_len) { NPF_PUTC('0' + ((u.binval >> --cbuf_len) & 1)); } + } else +#endif + { while (cbuf_len-- > 0) { NPF_PUTC(cbuf[cbuf_len]); } } // payload is reversed + } + +#if NANOPRINTF_USE_FIELD_WIDTH_FORMAT_SPECIFIERS == 1 + if (fs.left_justified && pad_c) { // Apply left-justified field width + while (field_pad-- > 0) { NPF_PUTC(pad_c); } + } +#endif + } + + return pc_cnt.n; +} + +#undef NPF_PUTC +#undef NPF_EXTRACT +#undef NPF_WRITEBACK + +int npf_pprintf(npf_putc pc, + void * NPF_RESTRICT pc_ctx, + char const * NPF_RESTRICT format, + ...) { + va_list val; + va_start(val, format); + int const rv = npf_vpprintf(pc, pc_ctx, format, val); + va_end(val); + return rv; +} + +int npf_snprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + const char * NPF_RESTRICT format, + ...) { + va_list val; + va_start(val, format); + int const rv = npf_vsnprintf(buffer, bufsz, format, val); + va_end(val); + return rv; +} + +int npf_vsnprintf(char * NPF_RESTRICT buffer, + size_t bufsz, + char const * NPF_RESTRICT format, + va_list vlist) { + npf_bufputc_ctx_t bufputc_ctx; + bufputc_ctx.dst = buffer; + bufputc_ctx.len = bufsz; + bufputc_ctx.cur = 0; + + npf_putc const pc = buffer ? npf_bufputc : npf_bufputc_nop; + int const n = npf_vpprintf(pc, &bufputc_ctx, format, vlist); + + if (buffer && bufsz) { +#ifdef NANOPRINTF_SNPRINTF_SAFE_EMPTY_STRING_ON_OVERFLOW + buffer[(n < 0 || (unsigned)n >= bufsz) ? 0 : n] = '\0'; +#else + buffer[n < 0 ? 0 : NPF_MIN((unsigned)n, bufsz - 1)] = '\0'; +#endif + } + + return n; +} + +#if NPF_HAVE_GCC_WARNING_PRAGMAS + #pragma GCC diagnostic pop +#endif + +#ifdef _MSC_VER + #pragma warning(pop) +#endif + +#endif // NPF_IMPLEMENTATION_INCLUDED +#endif // NANOPRINTF_IMPLEMENTATION + +/* + nanoprintf is dual-licensed under both the "Unlicense" and the + "Zero-Clause BSD" (0BSD) licenses. The intent of this dual-licensing + structure is to make nanoprintf as consumable as possible in as many + environments / countries / companies as possible without any + encumberances. + + The text of the two licenses follows below: + + ============================== UNLICENSE ============================== + + This is free and unencumbered software released into the public domain. + + Anyone is free to copy, modify, publish, use, compile, sell, or + distribute this software, either in source code form or as a compiled + binary, for any purpose, commercial or non-commercial, and by any + means. + + In jurisdictions that recognize copyright laws, the author or authors + of this software dedicate any and all copyright interest in the + software to the public domain. We make this dedication for the benefit + of the public at large and to the detriment of our heirs and + successors. We intend this dedication to be an overt act of + relinquishment in perpetuity of all present and future rights to this + software under copyright law. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + + For more information, please refer to + + ================================ 0BSD ================================= + + Copyright (C) 2019- by Charles Nicholson + + Permission to use, copy, modify, and/or distribute this software for + any purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +*/ \ No newline at end of file diff --git a/_test/aliasassert_dblB_de_tcobs_ua/triceConfig.h b/_test/aliasassert_dblB_de_tcobs_ua/triceConfig.h new file mode 100644 index 000000000..1a446203f --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/triceConfig.h @@ -0,0 +1,105 @@ +/*! \file triceConfig.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_CONFIG_H_ +#define TRICE_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define TRICE_BUFFER TRICE_STACK_BUFFER +#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_AUXILIARY32 1 +#define TRICE_CGO 1 +#define TRICE_CYCLE_COUNTER 0 +#define TRICE_SINGLE_MAX_SIZE (104+100) + +////////////////////////////////////////////////////////////////////////////// +// aliases - we have to exclude this in trice_environment.sh +// +#include "nanoprintf.h" + +// Helper macro to extract the filename from the full path +#ifndef FILENAME + #define FILENAME(path) (strrchr(path, '/') ? strrchr(path, '/') + 1 : (strrchr(path, '\\') ? strrchr(path, '\\') + 1 : path)) +#endif + +// Argument counting dispatch (up to 16 arguments) +#define GET_17TH_ARG(_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,...) _17 +#define COUNT_ARGS_3(...) GET_17TH_ARG(__VA_ARGS__,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,1,0) +#define COUNT_ARGS_4(...) GET_17TH_ARG(__VA_ARGS__,4,4,4,4,4,4,4,4,4,4,4,4,4,3,2,1,0) +#define _DISPATCH_IMPL(name,N) name##_##N +#define _DISPATCH_EXPAND(name,N) _DISPATCH_IMPL(name,N) + +// Portable pragma macros for disabling nonnull warnings +#if defined(__GNUC__) || defined(__clang__) + // GCC and Clang + #define DISABLE_NONNULL_WARNING_BEGIN \ + _Pragma("GCC diagnostic push") \ + _Pragma("GCC diagnostic ignored \"-Wnonnull\"") + #define DISABLE_NONNULL_WARNING_END \ + _Pragma("GCC diagnostic pop") +#elif defined(_MSC_VER) + // Microsoft Visual C++ + #define DISABLE_NONNULL_WARNING_BEGIN \ + __pragma(warning(push)) \ + __pragma(warning(disable: 6387)) + #define DISABLE_NONNULL_WARNING_END \ + __pragma(warning(pop)) +#else + // Unknown compiler - no-op + #define DISABLE_NONNULL_WARNING_BEGIN + #define DISABLE_NONNULL_WARNING_END +#endif + + #define ASSERT_MESSAGE_HELPER_VAR(out_var, condition_str, file_path, line_number, fmt, ...) \ + char full_msg[512]; \ + if (fmt != NULL) { \ + DISABLE_NONNULL_WARNING_BEGIN \ + char user_msg[256]; \ + npf_snprintf(user_msg, sizeof(user_msg), fmt, ##__VA_ARGS__); \ + DISABLE_NONNULL_WARNING_END \ + npf_snprintf(full_msg, sizeof(full_msg), "[ASSERT] %s:%d: %s -> %s\n", \ + FILENAME(file_path), line_number, condition_str, user_msg); \ + } else { \ + npf_snprintf(full_msg, sizeof(full_msg), "[ASSERT] %s:%d: %s\n", \ + FILENAME(file_path), line_number, condition_str); \ + } \ + char* out_var = full_msg + + #define CUSTOM_ASSERT_IMPL(id, condition, condition_str, file, line, fmt, ...) \ + do { \ + if (!(condition)) { \ + ASSERT_MESSAGE_HELPER_VAR(assert_msg, condition_str, file, line, fmt, ##__VA_ARGS__); \ + triceS(id, "%s", assert_msg); \ + } \ + } while(0) + + #define CUSTOM_PRINT(id, ...) trice(id, ##__VA_ARGS__) + + // Assert implementations + #define CUSTOM_ASSERT_1(id) \ + static_assert(0,"CUSTOM_ASSERT requires at least 2 arguments: id, condition") + + #define CUSTOM_ASSERT_2(id,condition) \ + CUSTOM_ASSERT_IMPL(id, condition, #condition, __FILE__, __LINE__, NULL) + + #define CUSTOM_ASSERT_3(id,condition,fmt) \ + CUSTOM_ASSERT_IMPL(id, condition, #condition, __FILE__, __LINE__, fmt) + + #define CUSTOM_ASSERT_4(id,condition,fmt,...) \ + CUSTOM_ASSERT_IMPL(id, condition, #condition, __FILE__, __LINE__, fmt, ##__VA_ARGS__) + + #define CUSTOM_ASSERT(...) \ + _DISPATCH_EXPAND(CUSTOM_ASSERT,COUNT_ARGS_4(__VA_ARGS__))(__VA_ARGS__) + +// +////////////////////////////////////////////////////////////////////////////// + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_CONFIG_H_ */ diff --git a/_test/aliasassert_dblB_de_tcobs_ua/triceUart.h b/_test/aliasassert_dblB_de_tcobs_ua/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/aliasassert_dblB_de_tcobs_ua/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/be_dblB_de_tcobs_ua/cgo_test.go b/_test/be_dblB_de_tcobs_ua/cgo_test.go index 983ef5675..b4cc72211 100644 --- a/_test/be_dblB_de_tcobs_ua/cgo_test.go +++ b/_test/be_dblB_de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-triceEndianness=bigEndian", "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-triceEndianness=bigEndian", "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/be_dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/be_dblB_de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/be_dblB_de_tcobs_ua/generated_cgoPackage.go +++ b/_test/be_dblB_de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/be_dblB_de_tcobs_ua/triceConfig.h b/_test/be_dblB_de_tcobs_ua/triceConfig.h index 9dcfdfcc3..5b5aba050 100644 --- a/_test/be_dblB_de_tcobs_ua/triceConfig.h +++ b/_test/be_dblB_de_tcobs_ua/triceConfig.h @@ -10,13 +10,10 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_TRANSFER_ORDER_IS_BIG_ENDIAN 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/be_dblB_de_tcobs_ua/triceUart.h b/_test/be_dblB_de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/be_dblB_de_tcobs_ua/triceUart.h +++ b/_test/be_dblB_de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/be_staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h b/_test/be_staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/be_staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h +++ b/_test/be_staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/be_staticB_di_xtea_cobs_rtt32/cgo_test.go b/_test/be_staticB_di_xtea_cobs_rtt32/cgo_test.go index 2e8038ada..7691f6ab5 100644 --- a/_test/be_staticB_di_xtea_cobs_rtt32/cgo_test.go +++ b/_test/be_staticB_di_xtea_cobs_rtt32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-triceEndianness=bigEndian", "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-triceEndianness=bigEndian", "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/be_staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go b/_test/be_staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/be_staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go +++ b/_test/be_staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/be_staticB_di_xtea_cobs_rtt32/triceConfig.h b/_test/be_staticB_di_xtea_cobs_rtt32/triceConfig.h index 21f4bc664..978e9eeab 100644 --- a/_test/be_staticB_di_xtea_cobs_rtt32/triceConfig.h +++ b/_test/be_staticB_di_xtea_cobs_rtt32/triceConfig.h @@ -11,12 +11,10 @@ extern "C" { #define TRICE_TRANSFER_ORDER_IS_BIG_ENDIAN 1 #define TRICE_BUFFER TRICE_STATIC_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_XTEA_ENCRYPT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_cobs_ua/cgo_test.go b/_test/dblB_de_cobs_ua/cgo_test.go index 134d46db4..adba353f3 100644 --- a/_test/dblB_de_cobs_ua/cgo_test.go +++ b/_test/dblB_de_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_cobs_ua/generated_cgoPackage.go b/_test/dblB_de_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_cobs_ua/triceConfig.h b/_test/dblB_de_cobs_ua/triceConfig.h index 19b7334cd..3d26da8a6 100644 --- a/_test/dblB_de_cobs_ua/triceConfig.h +++ b/_test/dblB_de_cobs_ua/triceConfig.h @@ -10,12 +10,10 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_cobs_ua/triceUart.h b/_test/dblB_de_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_cobs_ua/triceUart.h +++ b/_test/dblB_de_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_multi_cobs_ua/cgo_test.go b/_test/dblB_de_multi_cobs_ua/cgo_test.go index 7b3011f9a..712a8a960 100644 --- a/_test/dblB_de_multi_cobs_ua/cgo_test.go +++ b/_test/dblB_de_multi_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_multi_cobs_ua/generated_cgoPackage.go b/_test/dblB_de_multi_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_multi_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_multi_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_multi_cobs_ua/triceConfig.h b/_test/dblB_de_multi_cobs_ua/triceConfig.h index 675d13455..97161790f 100644 --- a/_test/dblB_de_multi_cobs_ua/triceConfig.h +++ b/_test/dblB_de_multi_cobs_ua/triceConfig.h @@ -10,13 +10,11 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_multi_cobs_ua/triceUart.h b/_test/dblB_de_multi_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_multi_cobs_ua/triceUart.h +++ b/_test/dblB_de_multi_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_multi_nopf_ua/cgo_test.go b/_test/dblB_de_multi_nopf_ua/cgo_test.go index f025576b0..0bceb11e6 100644 --- a/_test/dblB_de_multi_nopf_ua/cgo_test.go +++ b/_test/dblB_de_multi_nopf_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_multi_nopf_ua/generated_cgoPackage.go b/_test/dblB_de_multi_nopf_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_multi_nopf_ua/generated_cgoPackage.go +++ b/_test/dblB_de_multi_nopf_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_multi_nopf_ua/triceConfig.h b/_test/dblB_de_multi_nopf_ua/triceConfig.h index 5b0130c65..26e5e772e 100644 --- a/_test/dblB_de_multi_nopf_ua/triceConfig.h +++ b/_test/dblB_de_multi_nopf_ua/triceConfig.h @@ -10,14 +10,11 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_NONE #define TRICE_DEFERRED_UARTA 1 - #define TRICE_UARTA #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_multi_nopf_ua/triceUart.h b/_test/dblB_de_multi_nopf_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_multi_nopf_ua/triceUart.h +++ b/_test/dblB_de_multi_nopf_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_multi_tcobs_ua/cgo_test.go b/_test/dblB_de_multi_tcobs_ua/cgo_test.go index 20a97d719..c5a3abe89 100644 --- a/_test/dblB_de_multi_tcobs_ua/cgo_test.go +++ b/_test/dblB_de_multi_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p", "BUFFER", "-args", buffer, "-hs", "off", "-prefix", "off", "-li", "off", "-color", "off", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p", "BUFFER", "-args", buffer, "-hs", "off", "-prefix", "off", "-li", "off", "-color", "off", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_multi_tcobs_ua/generated_cgoPackage.go b/_test/dblB_de_multi_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_multi_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_multi_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_multi_tcobs_ua/triceConfig.h b/_test/dblB_de_multi_tcobs_ua/triceConfig.h index 8867af2ba..0a4dfd8bf 100644 --- a/_test/dblB_de_multi_tcobs_ua/triceConfig.h +++ b/_test/dblB_de_multi_tcobs_ua/triceConfig.h @@ -10,12 +10,10 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_multi_tcobs_ua/triceUart.h b/_test/dblB_de_multi_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_multi_tcobs_ua/triceUart.h +++ b/_test/dblB_de_multi_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_multi_xtea_cobs_ua/cgo_test.go b/_test/dblB_de_multi_xtea_cobs_ua/cgo_test.go index 602de9aca..92a45b371 100644 --- a/_test/dblB_de_multi_xtea_cobs_ua/cgo_test.go +++ b/_test/dblB_de_multi_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_multi_xtea_cobs_ua/generated_cgoPackage.go b/_test/dblB_de_multi_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_multi_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_multi_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_multi_xtea_cobs_ua/triceConfig.h b/_test/dblB_de_multi_xtea_cobs_ua/triceConfig.h index 38a4a5830..e842aa34d 100644 --- a/_test/dblB_de_multi_xtea_cobs_ua/triceConfig.h +++ b/_test/dblB_de_multi_xtea_cobs_ua/triceConfig.h @@ -10,14 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_multi_xtea_cobs_ua/triceUart.h b/_test/dblB_de_multi_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_multi_xtea_cobs_ua/triceUart.h +++ b/_test/dblB_de_multi_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_multi_xtea_tcobs_ua/cgo_test.go b/_test/dblB_de_multi_xtea_tcobs_ua/cgo_test.go index 61214ef2b..6b867e17d 100644 --- a/_test/dblB_de_multi_xtea_tcobs_ua/cgo_test.go +++ b/_test/dblB_de_multi_xtea_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go b/_test/dblB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_multi_xtea_tcobs_ua/triceConfig.h b/_test/dblB_de_multi_xtea_tcobs_ua/triceConfig.h index 53fc1d488..1b1285fc9 100644 --- a/_test/dblB_de_multi_xtea_tcobs_ua/triceConfig.h +++ b/_test/dblB_de_multi_xtea_tcobs_ua/triceConfig.h @@ -10,16 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_nopf_ua/cgo_test.go b/_test/dblB_de_nopf_ua/cgo_test.go index f025576b0..0bceb11e6 100644 --- a/_test/dblB_de_nopf_ua/cgo_test.go +++ b/_test/dblB_de_nopf_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_nopf_ua/generated_cgoPackage.go b/_test/dblB_de_nopf_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_nopf_ua/generated_cgoPackage.go +++ b/_test/dblB_de_nopf_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_nopf_ua/triceConfig.h b/_test/dblB_de_nopf_ua/triceConfig.h index 9656c880e..76610a8b9 100644 --- a/_test/dblB_de_nopf_ua/triceConfig.h +++ b/_test/dblB_de_nopf_ua/triceConfig.h @@ -10,14 +10,11 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_NONE #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_tcobs_ua/cgo_test.go b/_test/dblB_de_tcobs_ua/cgo_test.go index d063a3de6..96ff33fcd 100644 --- a/_test/dblB_de_tcobs_ua/cgo_test.go +++ b/_test/dblB_de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/dblB_de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_tcobs_ua/triceConfig.h b/_test/dblB_de_tcobs_ua/triceConfig.h index d83a6d353..c486eae06 100644 --- a/_test/dblB_de_tcobs_ua/triceConfig.h +++ b/_test/dblB_de_tcobs_ua/triceConfig.h @@ -10,11 +10,9 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_tcobs_ua/triceUart.h b/_test/dblB_de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_tcobs_ua/triceUart.h +++ b/_test/dblB_de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_xtea_cobs_ua/cgo_test.go b/_test/dblB_de_xtea_cobs_ua/cgo_test.go index 602de9aca..92a45b371 100644 --- a/_test/dblB_de_xtea_cobs_ua/cgo_test.go +++ b/_test/dblB_de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_xtea_cobs_ua/generated_cgoPackage.go b/_test/dblB_de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_xtea_cobs_ua/triceConfig.h b/_test/dblB_de_xtea_cobs_ua/triceConfig.h index c764af726..b7478e2ef 100644 --- a/_test/dblB_de_xtea_cobs_ua/triceConfig.h +++ b/_test/dblB_de_xtea_cobs_ua/triceConfig.h @@ -10,13 +10,11 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_xtea_cobs_ua/triceUart.h b/_test/dblB_de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_xtea_cobs_ua/triceUart.h +++ b/_test/dblB_de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_de_xtea_tcobs_ua/cgo_test.go b/_test/dblB_de_xtea_tcobs_ua/cgo_test.go index 61214ef2b..6b867e17d 100644 --- a/_test/dblB_de_xtea_tcobs_ua/cgo_test.go +++ b/_test/dblB_de_xtea_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_de_xtea_tcobs_ua/generated_cgoPackage.go b/_test/dblB_de_xtea_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_de_xtea_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_de_xtea_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_de_xtea_tcobs_ua/triceConfig.h b/_test/dblB_de_xtea_tcobs_ua/triceConfig.h index dd835e769..7cf1e0dbe 100644 --- a/_test/dblB_de_xtea_tcobs_ua/triceConfig.h +++ b/_test/dblB_de_xtea_tcobs_ua/triceConfig.h @@ -10,14 +10,11 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_de_xtea_tcobs_ua/triceUart.h b/_test/dblB_de_xtea_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_de_xtea_tcobs_ua/triceUart.h +++ b/_test/dblB_de_xtea_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt32__de_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt32__de_cobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt32__de_cobs_ua/cgo_test.go index bb06f6516..5382bf24f 100644 --- a/_test/dblB_di_nopf_rtt32__de_cobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt32__de_cobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt32__de_cobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt32__de_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt32__de_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt32__de_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceConfig.h index d2cd9deb7..41ed99196 100644 --- a/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt32__de_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/cgo_test.go index bb06f6516..5382bf24f 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceConfig.h index baeee2924..b945dc684 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceConfig.h @@ -10,16 +10,13 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt32__de_multi_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/cgo_test.go index 6779ce1e3..528c3df55 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceConfig.h index c5a3455a4..e8bddf3be 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt32__de_multi_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go index 6779ce1e3..528c3df55 100644 --- a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h index ed55aba80..ba65a2d38 100644 --- a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h @@ -10,14 +10,11 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt32__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go index 494ab8e41..0baa2a951 100644 --- a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=NONE", "-d16"})) return o.String() } @@ -25,7 +28,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pw=MySecret", "-pf=COBS", "-d16=false"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h index 88c01f96b..a28b323c5 100644 --- a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h @@ -10,18 +10,13 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf cobs -d16=true #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pw MySecret -pf COBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pw MySecret -pf COBS #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt8__de_cobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt8__de_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt8__de_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt8__de_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt8__de_cobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt8__de_cobs_ua/cgo_test.go index bb06f6516..5382bf24f 100644 --- a/_test/dblB_di_nopf_rtt8__de_cobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt8__de_cobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt8__de_cobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt8__de_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt8__de_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt8__de_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceConfig.h index c34075dd3..a3cf0a96f 100644 --- a/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt8__de_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/cgo_test.go index bb06f6516..5382bf24f 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceConfig.h index c69d8c662..1455030d9 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceConfig.h @@ -10,16 +10,13 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt8__de_multi_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/cgo_test.go index 6779ce1e3..528c3df55 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceConfig.h index c7f85c563..666b1fb8e 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt8__de_multi_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go index 6779ce1e3..528c3df55 100644 --- a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go +++ b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -27,7 +27,7 @@ func TestLogs(t *testing.T) { // Default CLI switch values are not working in combined mode, set them explicit! triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h index 98aec8674..641047a8a 100644 --- a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h +++ b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h @@ -10,16 +10,14 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 + #ifdef __cplusplus } #endif diff --git a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceUart.h b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceUart.h +++ b/_test/dblB_di_nopf_rtt8__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/protect_dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/protect_dblB_de_tcobs_ua/generated_cgoPackage.go deleted file mode 100644 index 93f924427..000000000 --- a/_test/protect_dblB_de_tcobs_ua/generated_cgoPackage.go +++ /dev/null @@ -1,237 +0,0 @@ -// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net -// Use of this source code is governed by a license that can be found in the LICENSE file. - -// Package cgot is a helper for testing the target C-code. -// Each C function gets a Go wrapper which is tested in appropriate test functions. -// For some reason inside the trice_test.go an 'import "C"' is not possible. -// The C-files referring to the trice sources this way avoiding code duplication. -// The Go functions defined here are not exported. They are called by the Go test functions in this package. -// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. -// Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various -// package folders, where it is used separately. -package cgot - -// #include -// void TriceCheck( int n ); -// void TriceTransfer( void ); -// unsigned TriceOutDepth( void ); -// void CgoSetTriceBuffer( uint8_t* buf ); -// void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src -// #include "../../src/trice.c" -// #include "../../src/trice8.c" -// #include "../../src/trice16.c" -// #include "../../src/trice32.c" -// #include "../../src/trice64.c" -// #include "../../src/triceUart.c" -// #include "../../src/triceAuxiliary.c" -// #include "../../src/triceDoubleBuffer.c" -// #include "../../src/triceRingBuffer.c" -// #include "../../src/triceStackBuffer.c" -// #include "../../src/triceStaticBuffer.c" -// #include "../../src/xtea.c" -// #include "../../src/cobsDecode.c" -// #include "../../src/cobsEncode.c" -// #include "../../src/tcobsv1Decode.c" -// #include "../../src/tcobsv1Encode.c" -// #include "../testdata/triceCheck.c" -// #include "../testdata/cgoTrice.c" -import "C" - -import ( - "bufio" - "fmt" - "path" - "runtime" - "strings" - "testing" - "unsafe" - - "github.com/rokath/trice/pkg/msg" - "github.com/spf13/afero" - "github.com/tj/assert" -) - -var ( - triceDir string // triceDir holds the trice directory path. - testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. -) - -// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory -func init() { - _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs - testDir := path.Dir(filename) - triceDir = path.Join(testDir, "../../") - C.TriceInit() -} - -// setTriceBuffer tells the underlying C code where to output the trice byte stream. -func setTriceBuffer(o []byte) { - Cout := (*C.uchar)(unsafe.Pointer(&o[0])) - C.CgoSetTriceBuffer(Cout) -} - -// triceCheck performs triceCheck C-code sequence n. -func triceCheck(n int) { - C.TriceCheck(C.int(n)) -} - -// triceTransfer performs the deferred trice output. -func triceTransfer() { - C.TriceTransfer() -} - -// triceOutDepth returns the actual out buffer depth. -func triceOutDepth() int { - return int(C.TriceOutDepth()) -} - -// triceClearOutBuffer tells the trice kernel, that the data has been red. -func triceClearOutBuffer() { - C.CgoClearTriceBuffer() -} - -// linesInFile does get the lines in a file and stores them in a string slice. -func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go - // Create new Scanner. - scanner := bufio.NewScanner(fh) - result := []string{} - // Use Scan. - for scanner.Scan() { - line := scanner.Text() - // Append line to result. - result = append(result, line) - } - return result -} - -// results contains the expected result string exps for line number line. -type results struct { - line int - exps string -} - -func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { - // get all file lines into a []string - f, e := fSys.Open(filename) - msg.OnErr(e) - lines := linesInFile(f) - - for i, line := range lines { - s := strings.Split(line, "//") - if len(s) == 2 { // just one "//" - lineEnd := s[1] - subStr := "exp:" - index := strings.LastIndex(lineEnd, subStr) - if index >= 0 { - var r results - r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) - result = append(result, r) - } - } - } - return -} - -// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. -// It uses the inside fSys specified til.json and returns the log output. -type logF func(t *testing.T, fSys *afero.Afero, buffer string) string - -// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). -// It loops over the result list and executes for each result the compiled C-code. -// It passes the received binary data as buffer to the triceLog function of type logF. -// This function is test package specific defined. The file cgoPackage.go is -// copied into all specific test packages and compiled there together with the -// triceConfig.h, which holds the test package specific target code configuration. -// limit is the count of executed test lines starting from the beginning. -1 ist for all. -func triceLogTest(t *testing.T, triceLog logF, limit int) { - - osFSys := &afero.Afero{Fs: afero.NewOsFs()} - //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} - - // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log - out := make([]byte, 32768) - setTriceBuffer(out) - - result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) - - var count int - for i, r := range result { - - count++ - if limit >= 0 && count >= limit { - return - } - - fmt.Println(i, r) - - // target activity - triceCheck(r.line) - - triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. - - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i in r.line - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } -} - -// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. -func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { - - osFSys := &afero.Afero{Fs: afero.NewOsFs()} - - // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log - out := make([]byte, 32768) - setTriceBuffer(out) - - result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) - - var count int - for i, r := range result { - - count++ - if limit >= 0 && count >= limit { - return - } - fmt.Println(i, r) - triceCheck(r.line) // target activity - - { // check direct output - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog0(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } - - { // check deferred output - triceTransfer() - - length := triceOutDepth() - bin := out[:length] // bin contains the binary trice data of trice message i - - buf := fmt.Sprint(bin) - buffer := buf[1 : len(buf)-1] - - act := triceLog1(t, osFSys, buffer) - triceClearOutBuffer() - - assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) - } - } -} diff --git a/_test/protect_dblB_de_tcobs_ua/triceUart.h b/_test/protect_dblB_de_tcobs_ua/triceUart.h deleted file mode 100644 index 168f1b417..000000000 --- a/_test/protect_dblB_de_tcobs_ua/triceUart.h +++ /dev/null @@ -1,52 +0,0 @@ -/*! \file triceUart.h -\author Thomas.Hoehenleitner [at] seerose.net -*******************************************************************************/ - -#ifndef TRICE_UART_H_ -#define TRICE_UART_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include "trice.h" - -#if TRICE_DEFERRED_UARTA == 1 - -//! Check if a new byte can be written into trice transmit register. -//! \retval 0 == not empty -//! \retval !0 == empty -//! User must provide this function. -TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { - return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); -} - -//! Write value v into trice transmit register. -//! \param v byte to transmit -//! User must provide this function. -TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); -} - -//! Allow interrupt for empty trice data transmit register. -//! User must provide this function. -TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { - // LL_USART_EnableIT_TXE(TRICE_UARTA); -} - -//! Disallow interrupt for empty trice data transmit register. -//! User must provide this function. -TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { - // LL_USART_DisableIT_TXE(TRICE_UARTA); -} -#endif // #if TRICE_DEFERRED_UARTA == 1 - -#if TRICE_DEFERRED_UARTB == 1 - -#endif // #if TRICE_DEFERRED_UARTB == 1 - -#ifdef __cplusplus -} -#endif - -#endif /* TRICE_UART_H_ */ diff --git a/_test/ringB_de_cobs_ua/cgo_test.go b/_test/ringB_de_cobs_ua/cgo_test.go index 7b3011f9a..712a8a960 100644 --- a/_test/ringB_de_cobs_ua/cgo_test.go +++ b/_test/ringB_de_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_cobs_ua/generated_cgoPackage.go b/_test/ringB_de_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_cobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_cobs_ua/triceConfig.h b/_test/ringB_de_cobs_ua/triceConfig.h index 6037a5472..94f208b4f 100644 --- a/_test/ringB_de_cobs_ua/triceConfig.h +++ b/_test/ringB_de_cobs_ua/triceConfig.h @@ -14,7 +14,6 @@ extern "C" { #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_cobs_ua/triceUart.h b/_test/ringB_de_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_cobs_ua/triceUart.h +++ b/_test/ringB_de_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/protect_dblB_de_tcobs_ua/ReadMe.md b/_test/ringB_de_multi_cobs_ua/ReadMe.md similarity index 100% rename from _test/protect_dblB_de_tcobs_ua/ReadMe.md rename to _test/ringB_de_multi_cobs_ua/ReadMe.md diff --git a/_test/_ringB_de_multi_cobs_ua/cgo_test.go b/_test/ringB_de_multi_cobs_ua/cgo_test.go similarity index 72% rename from _test/_ringB_de_multi_cobs_ua/cgo_test.go rename to _test/ringB_de_multi_cobs_ua/cgo_test.go index 102da85d3..a8c4aefcb 100644 --- a/_test/_ringB_de_multi_cobs_ua/cgo_test.go +++ b/_test/ringB_de_multi_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-pf=COBS", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-pf=TCOBS", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_multi_cobs_ua/generated_cgoPackage.go b/_test/ringB_de_multi_cobs_ua/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/ringB_de_multi_cobs_ua/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/_ringB_de_multi_cobs_ua/triceConfig.h b/_test/ringB_de_multi_cobs_ua/triceConfig.h similarity index 99% rename from _test/_ringB_de_multi_cobs_ua/triceConfig.h rename to _test/ringB_de_multi_cobs_ua/triceConfig.h index 8cc1c952d..0491f8263 100644 --- a/_test/_ringB_de_multi_cobs_ua/triceConfig.h +++ b/_test/ringB_de_multi_cobs_ua/triceConfig.h @@ -14,7 +14,6 @@ extern "C" { #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_multi_cobs_ua/triceUart.h b/_test/ringB_de_multi_cobs_ua/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/ringB_de_multi_cobs_ua/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/ringB_de_multi_tcobs_ua/cgo_test.go b/_test/ringB_de_multi_tcobs_ua/cgo_test.go index f2c3b4334..7cf5ac10a 100644 --- a/_test/ringB_de_multi_tcobs_ua/cgo_test.go +++ b/_test/ringB_de_multi_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming=false", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming=false", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_multi_tcobs_ua/generated_cgoPackage.go b/_test/ringB_de_multi_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_multi_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_multi_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_multi_tcobs_ua/triceConfig.h b/_test/ringB_de_multi_tcobs_ua/triceConfig.h index 8cc1c952d..0491f8263 100644 --- a/_test/ringB_de_multi_tcobs_ua/triceConfig.h +++ b/_test/ringB_de_multi_tcobs_ua/triceConfig.h @@ -14,7 +14,6 @@ extern "C" { #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_multi_tcobs_ua/triceUart.h b/_test/ringB_de_multi_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_multi_tcobs_ua/triceUart.h +++ b/_test/ringB_de_multi_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_de_multi_xtea_cobs_ua/cgo_test.go b/_test/ringB_de_multi_xtea_cobs_ua/cgo_test.go index 602de9aca..92a45b371 100644 --- a/_test/ringB_de_multi_xtea_cobs_ua/cgo_test.go +++ b/_test/ringB_de_multi_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_multi_xtea_cobs_ua/generated_cgoPackage.go b/_test/ringB_de_multi_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_multi_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_multi_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_multi_xtea_cobs_ua/triceConfig.h b/_test/ringB_de_multi_xtea_cobs_ua/triceConfig.h index ac48dde4c..6f715edc2 100644 --- a/_test/ringB_de_multi_xtea_cobs_ua/triceConfig.h +++ b/_test/ringB_de_multi_xtea_cobs_ua/triceConfig.h @@ -14,10 +14,8 @@ extern "C" { #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS - #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_multi_xtea_cobs_ua/triceUart.h b/_test/ringB_de_multi_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_multi_xtea_cobs_ua/triceUart.h +++ b/_test/ringB_de_multi_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_de_multi_xtea_tcobs_ua/cgo_test.go b/_test/ringB_de_multi_xtea_tcobs_ua/cgo_test.go index 61214ef2b..6b867e17d 100644 --- a/_test/ringB_de_multi_xtea_tcobs_ua/cgo_test.go +++ b/_test/ringB_de_multi_xtea_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go b/_test/ringB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_multi_xtea_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_multi_xtea_tcobs_ua/triceConfig.h b/_test/ringB_de_multi_xtea_tcobs_ua/triceConfig.h index f7f0bfb7c..3d38203f6 100644 --- a/_test/ringB_de_multi_xtea_tcobs_ua/triceConfig.h +++ b/_test/ringB_de_multi_xtea_tcobs_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_BUFFER TRICE_RING_BUFFER - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_TRANSFER_MODE TRICE_MULTI_PACK_MODE #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_multi_xtea_tcobs_ua/triceUart.h b/_test/ringB_de_multi_xtea_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_multi_xtea_tcobs_ua/triceUart.h +++ b/_test/ringB_de_multi_xtea_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_de_nopf_ua/cgo_test.go b/_test/ringB_de_nopf_ua/cgo_test.go index f025576b0..0bceb11e6 100644 --- a/_test/ringB_de_nopf_ua/cgo_test.go +++ b/_test/ringB_de_nopf_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_nopf_ua/generated_cgoPackage.go b/_test/ringB_de_nopf_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_nopf_ua/generated_cgoPackage.go +++ b/_test/ringB_de_nopf_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_nopf_ua/triceConfig.h b/_test/ringB_de_nopf_ua/triceConfig.h index 3255a00ac..def5a22ad 100644 --- a/_test/ringB_de_nopf_ua/triceConfig.h +++ b/_test/ringB_de_nopf_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_TRANSFER_MODE TRICE_SINGLE_PACK_MODE #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_NONE #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_nopf_ua/triceUart.h b/_test/ringB_de_nopf_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_nopf_ua/triceUart.h +++ b/_test/ringB_de_nopf_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_de_tcobs_ua/cgo_test.go b/_test/ringB_de_tcobs_ua/cgo_test.go index e04ae03e9..8b2265a92 100644 --- a/_test/ringB_de_tcobs_ua/cgo_test.go +++ b/_test/ringB_de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-singleFraming", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_tcobs_ua/triceConfig.h b/_test/ringB_de_tcobs_ua/triceConfig.h index 4b9ec6510..a72c6e7dc 100644 --- a/_test/ringB_de_tcobs_ua/triceConfig.h +++ b/_test/ringB_de_tcobs_ua/triceConfig.h @@ -13,7 +13,6 @@ extern "C" { #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_tcobs_ua/triceUart.h b/_test/ringB_de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_tcobs_ua/triceUart.h +++ b/_test/ringB_de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_de_xtea_cobs_ua/cgo_test.go b/_test/ringB_de_xtea_cobs_ua/cgo_test.go index 602de9aca..92a45b371 100644 --- a/_test/ringB_de_xtea_cobs_ua/cgo_test.go +++ b/_test/ringB_de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_xtea_cobs_ua/generated_cgoPackage.go b/_test/ringB_de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_xtea_cobs_ua/triceConfig.h b/_test/ringB_de_xtea_cobs_ua/triceConfig.h index 41dd6f101..a1d731d32 100644 --- a/_test/ringB_de_xtea_cobs_ua/triceConfig.h +++ b/_test/ringB_de_xtea_cobs_ua/triceConfig.h @@ -13,10 +13,8 @@ extern "C" { #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS - #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_xtea_cobs_ua/triceUart.h b/_test/ringB_de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_xtea_cobs_ua/triceUart.h +++ b/_test/ringB_de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_de_xtea_tcobs_ua/cgo_test.go b/_test/ringB_de_xtea_tcobs_ua/cgo_test.go index 61214ef2b..6b867e17d 100644 --- a/_test/ringB_de_xtea_tcobs_ua/cgo_test.go +++ b/_test/ringB_de_xtea_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-pw=MySecret", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_de_xtea_tcobs_ua/generated_cgoPackage.go b/_test/ringB_de_xtea_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_de_xtea_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_de_xtea_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_de_xtea_tcobs_ua/triceConfig.h b/_test/ringB_de_xtea_tcobs_ua/triceConfig.h index 7840b74d0..0fc5a17f2 100644 --- a/_test/ringB_de_xtea_tcobs_ua/triceConfig.h +++ b/_test/ringB_de_xtea_tcobs_ua/triceConfig.h @@ -10,14 +10,11 @@ extern "C" { #endif #define TRICE_CONFIG_WARNINGS 0 - #define TRICE_BUFFER TRICE_RING_BUFFER - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_de_xtea_tcobs_ua/triceUart.h b/_test/ringB_de_xtea_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_de_xtea_tcobs_ua/triceUart.h +++ b/_test/ringB_de_xtea_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/cgo_test.go b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/cgo_test.go index e82b7bfaa..c9359babf 100644 --- a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/cgo_test.go +++ b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -25,7 +25,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceConfig.h b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceConfig.h index e7321ba19..b1acb2534 100644 --- a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceConfig.h +++ b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceConfig.h @@ -10,15 +10,12 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceUart.h b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceUart.h +++ b/_test/ringB_di_cobs_rtt32__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/cgo_test.go b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/cgo_test.go index e82b7bfaa..44417e3c3 100644 --- a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/cgo_test.go +++ b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/cgo_test.go @@ -17,7 +17,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=cobs", "-d16"})) return o.String() } @@ -25,7 +28,10 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), + "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", + "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x", + "-pf=TCOBS", "-d16=false"})) return o.String() } diff --git a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceConfig.h b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceConfig.h index 4cffd0486..9aa00dd51 100644 --- a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceConfig.h +++ b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceConfig.h @@ -13,11 +13,9 @@ extern "C" { #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceUart.h b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceUart.h +++ b/_test/ringB_di_cobs_rtt8__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go index cd82ef8f8..c13677431 100644 --- a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go +++ b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -25,7 +25,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h index 436b683ff..252290c7b 100644 --- a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h +++ b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceConfig.h @@ -12,11 +12,9 @@ extern "C" { #define TRICE_BUFFER TRICE_RING_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceUart.h b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceUart.h +++ b/_test/ringB_di_nopf_rtt32__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go index 494ab8e41..7ffa0ac7a 100644 --- a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go +++ b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -25,7 +25,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h index f56fcf26f..df2fbcc5a 100644 --- a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h +++ b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceConfig.h @@ -10,18 +10,13 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf none -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pf none -d16=true #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pw MySecret -pf COBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pw MySecret -pf COBS #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h +++ b/_test/ringB_di_nopf_rtt32__de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go index cd82ef8f8..c13677431 100644 --- a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go +++ b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -25,7 +25,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h index 92705a34b..1f3c4e6a7 100644 --- a/_test/ringB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h +++ b/_test/ringB_di_nopf_rtt8__de_tcobs_ua/triceConfig.h @@ -12,11 +12,9 @@ extern "C" { #define TRICE_BUFFER TRICE_RING_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/cgo_test.go b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/cgo_test.go index 264a43d8c..7b9c4cc15 100644 --- a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/cgo_test.go +++ b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -25,7 +25,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceConfig.h b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceConfig.h index b3add9d8e..b9ff20d9c 100644 --- a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceConfig.h +++ b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceConfig.h @@ -13,11 +13,9 @@ extern "C" { #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_TCOBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceUart.h b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceUart.h +++ b/_test/ringB_di_tcobs_rtt32__de_tcobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h +++ b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go index 3e9762562..5729c8942 100644 --- a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go +++ b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog0 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } @@ -25,7 +25,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog1 := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-d16=false", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=COBS", "-pw=MySecret", "-d16=false", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go +++ b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h index 79318ea9f..737ccf26c 100644 --- a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h +++ b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceConfig.h @@ -10,20 +10,15 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - -// trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true -#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_OUTPUT 1 // trice l -p jlink -args "-Device STM32F030R8 -if SWD -Speed 4000 -RTTChannel 0" -showID "deb:%04x" -hs off -pw MySecret -pf COBS -d16=true #define TRICE_DIRECT_XTEA_ENCRYPT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - -// trice l -p com4 -d16=false -pw MySecret -pf COBS -#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_OUTPUT 1 // trice l -p com4 -d16=false -pw MySecret -pf COBS #define TRICE_DEFERRED_XTEA_ENCRYPT 1 #define TRICE_DEFERRED_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceUart.h b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceUart.h index 168f1b417..0a04f00a4 100644 --- a/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceUart.h +++ b/_test/ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/triceUart.h @@ -25,7 +25,8 @@ TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { //! \param v byte to transmit //! User must provide this function. TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { - // LL_USART_TransmitData8(TRICE_UARTA, v); + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); } //! Allow interrupt for empty trice data transmit register. diff --git a/_test/ringB_protect_de_tcobs_ua/ReadMe.md b/_test/ringB_protect_de_tcobs_ua/ReadMe.md new file mode 100644 index 000000000..6aeb40282 --- /dev/null +++ b/_test/ringB_protect_de_tcobs_ua/ReadMe.md @@ -0,0 +1,4 @@ +# Attention + +* Do **not** edit `generated_cgoPackage.go`. Change instead file `../testdata/cgoPackage.go` and execute `../updateTestData.sh` afterwards. This influences _all_ cgot packages tests. +* For individual modifications use file `cgo_test.go` or create an additional file. diff --git a/_test/_ringB_protect_de_tcobs_ua/TargetActivity.c b/_test/ringB_protect_de_tcobs_ua/TargetActivity.c similarity index 55% rename from _test/_ringB_protect_de_tcobs_ua/TargetActivity.c rename to _test/ringB_protect_de_tcobs_ua/TargetActivity.c index d2379f7f0..8b994e243 100644 --- a/_test/_ringB_protect_de_tcobs_ua/TargetActivity.c +++ b/_test/ringB_protect_de_tcobs_ua/TargetActivity.c @@ -3,11 +3,11 @@ // Needed safety space is 4*((TRICE_DATA_OFFSET>>2) + (TRICE_SINGLE_MAX_SIZE>>1)-1) = 208 // Needed safety space is TRICE_DATA_OFFSET + (2*TRICE_SINGLE_MAX_SIZE)-4) = 208 // TRICE_DEFERRED_BUFFER_SIZE == 324 -char* TargetActivity(void) { // -4 bytes TRICE_DATA_OFFSET = 320 bytes space - TRice(iD(16200), "Hello "); // -8 bytes = 312 bytes space - TRice(iD(16201), "World!\n"); // -8 bytes = 304 bytes space - TRice64(iD(16202), "msg:Twelve 64-bit values: %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12); // -104 bytes = 200 bytes space +char* TargetActivity(void) { // -4 bytes TRICE_DATA_OFFSET = 320 bytes space + TRice("Hello "); // -8 bytes = 312 bytes space + TRice("World!\n"); // -8 bytes = 304 bytes space + TRice64("msg:Twelve 64-bit values: %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12); // -104 bytes = 200 bytes space // so the next Trice does not fit - trice(iD(16203), "Hello again\n"); // -4 bytes -> no fit! + trice("Hello again\n"); // -4 bytes -> no fit! return "feed3322 Hello World!\nfeed3322 Twelve 64-bit values: -1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12"; } diff --git a/_test/_ringB_protect_de_tcobs_ua/cgo_special.go b/_test/ringB_protect_de_tcobs_ua/cgo_special.go similarity index 100% rename from _test/_ringB_protect_de_tcobs_ua/cgo_special.go rename to _test/ringB_protect_de_tcobs_ua/cgo_special.go diff --git a/_test/_ringB_protect_de_tcobs_ua/cgo_test.go b/_test/ringB_protect_de_tcobs_ua/cgo_test.go similarity index 87% rename from _test/_ringB_protect_de_tcobs_ua/cgo_test.go rename to _test/ringB_protect_de_tcobs_ua/cgo_test.go index c255310e6..ae5ba54f7 100644 --- a/_test/_ringB_protect_de_tcobs_ua/cgo_test.go +++ b/_test/ringB_protect_de_tcobs_ua/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=none", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=none", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } triceLogSpecialTest(t, triceLog) diff --git a/_test/ringB_protect_de_tcobs_ua/generated_cgoPackage.go b/_test/ringB_protect_de_tcobs_ua/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/ringB_protect_de_tcobs_ua/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/_ringB_protect_de_tcobs_ua/triceConfig.h b/_test/ringB_protect_de_tcobs_ua/triceConfig.h similarity index 94% rename from _test/_ringB_protect_de_tcobs_ua/triceConfig.h rename to _test/ringB_protect_de_tcobs_ua/triceConfig.h index 7c4ce9f30..0ff951cfb 100644 --- a/_test/_ringB_protect_de_tcobs_ua/triceConfig.h +++ b/_test/ringB_protect_de_tcobs_ua/triceConfig.h @@ -10,18 +10,13 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_RING_BUFFER - #define TRICE_PROTECT 1 - #define TRICE_DEFERRED_BUFFER_SIZE 324 - -#define TRICE_DATA_OFFSET 4 +//#define TRICE_DATA_OFFSET 4 #define TRICE_SINGLE_MAX_SIZE 104 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/ringB_protect_de_tcobs_ua/triceUart.h b/_test/ringB_protect_de_tcobs_ua/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/ringB_protect_de_tcobs_ua/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/special_dblB_de_tcobs_ua/ReadMe.md b/_test/special_dblB_de_tcobs_ua/ReadMe.md new file mode 100644 index 000000000..6aeb40282 --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/ReadMe.md @@ -0,0 +1,4 @@ +# Attention + +* Do **not** edit `generated_cgoPackage.go`. Change instead file `../testdata/cgoPackage.go` and execute `../updateTestData.sh` afterwards. This influences _all_ cgot packages tests. +* For individual modifications use file `cgo_test.go` or create an additional file. diff --git a/_test/special_dblB_de_tcobs_ua/TargetActivity.c b/_test/special_dblB_de_tcobs_ua/TargetActivity.c new file mode 100644 index 000000000..2c7971c5d --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/TargetActivity.c @@ -0,0 +1,33 @@ +#include "trice.h" + +// clang-format off + +void TriceCheckSpecial( int n ) { + + static int8_t b8[24] = { 0, -1, -2, 0x33, 4, 5, 6, 7, 8, 9, 10, 11, 0, -1, -2, 0x33, 4, 5, 6, 7, 8, 9, 10, 11 }; + static int16_t b16[] = { 0, -1, -2, 0x3344 }; + static int32_t b32[] = { 0, -1, -2, 0x33445555}; + static int64_t b64[4] = { 0, -1, -2, 0x3344555566666666 }; + + switch(n){ + case __LINE__: TRice("Hello World!\n"); //exp: Time:feed3322 Hello World! + break; case __LINE__: TRICE8_F(ID(0), "info:FunctionNameWa", b8, sizeof(b8) /sizeof(int8_t) ); //exp: Time:feed3322 FunctionNameWa(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: TRice8F("info:FunctionNameWb", b8, sizeof(b8) /sizeof(int8_t) ); //exp: Time:feed3322 FunctionNameWb(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: Trice8F("info:FunctionNameWc", b8, sizeof(b8) /sizeof(int8_t) ); //exp: Time: be16 FunctionNameWc(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: trice8F("info:FunctionNameWd", b8, sizeof(b8) /sizeof(int8_t) ); //exp: Time: FunctionNameWd(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: TRICE16_F(ID(0), "info:FunctionNameXa", b16, sizeof(b16)/sizeof(int16_t) ); //exp: Time:feed3322 FunctionNameXa(0000)(ffff)(fffe)(3344) + break; case __LINE__: TRice16F("info:FunctionNameXb", b16, sizeof(b16)/sizeof(int16_t) ); //exp: Time:feed3322 FunctionNameXb(0000)(ffff)(fffe)(3344) + break; case __LINE__: Trice16F("info:FunctionNameXc", b16, sizeof(b16)/sizeof(int16_t) ); //exp: Time: be16 FunctionNameXc(0000)(ffff)(fffe)(3344) + break; case __LINE__: trice16F("info:FunctionNameXd", b16, sizeof(b16)/sizeof(int16_t) ); //exp: Time: FunctionNameXd(0000)(ffff)(fffe)(3344) + break; case __LINE__: TRICE32_F(ID(0), "info:FunctionNameYa", b32, sizeof(b32)/sizeof(int32_t) ); //exp: Time:feed3322 FunctionNameYa(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: TRice32F("rpc:FunctionNameYb", b32, sizeof(b32)/sizeof(int32_t) ); //exp: Time:feed3322 rpc:FunctionNameYb(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: Trice32F("rpc:FunctionNameYc", b32, sizeof(b32)/sizeof(int32_t) ); //exp: Time: be16 rpc:FunctionNameYc(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: trice32F("call:FunctionNameYd", b32, sizeof(b32)/sizeof(int32_t) ); //exp: Time: call:FunctionNameYd(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: TRICE64_F(ID(0), "info:FunctionNameZa", b64, sizeof(b64)/sizeof(int64_t) ); //exp: Time:feed3322 FunctionNameZa(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + break; case __LINE__: TRice64F("call:FunctionNameZb", b64, sizeof(b64)/sizeof(int64_t) ); //exp: Time:feed3322 call:FunctionNameZb(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + break; case __LINE__: Trice64F("RPC:FunctionNameZc", b64, sizeof(b64)/sizeof(int64_t) ); //exp: Time: be16 RPC:FunctionNameZc(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + break; case __LINE__: trice64F("Rpc:FunctionNameZd", b64, sizeof(b64)/sizeof(int64_t) ); //exp: Time: Rpc:FunctionNameZd(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + } +} + +// clang-format on diff --git a/_test/special_dblB_de_tcobs_ua/cgo_special.go b/_test/special_dblB_de_tcobs_ua/cgo_special.go new file mode 100644 index 000000000..3c064001b --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/cgo_special.go @@ -0,0 +1,63 @@ +package cgot + +// For some reason inside the trice_test.go an 'import "C"' is not possible. + +// void TriceCheckSpecial( int n ); +import "C" +import ( + "fmt" + "strings" + "testing" + + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func targetSpecialActivity(n int) { + C.TriceCheckSpecial(C.int(n)) +} + +// triceLogSpecialTest creates a list of expected results from path.Join(triceDir, "./_test/tf/TargetActivity.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogSpecialTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, "./TargetActivity.c") + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + targetSpecialActivity(r.line) // triceCheck would compile but not wat we want here + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} diff --git a/_test/special_dblB_de_tcobs_ua/cgo_test.go b/_test/special_dblB_de_tcobs_ua/cgo_test.go new file mode 100644 index 000000000..163d6c23d --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/cgo_test.go @@ -0,0 +1,23 @@ +package cgot + +import ( + "bytes" + "io" + "path" + "testing" + + "github.com/rokath/trice/internal/args" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func TestLogs(t *testing.T) { + // triceLog is the log function for executing the trice logging on binary log data in buffer as space separated numbers. + // It uses the inside fSys specified til.json and returns the log output. + triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { + var o bytes.Buffer + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-pf=none", "-doubled16BitID", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=none", "-ts0", "Time: ", "-ts16", "Time: %04x", "-ts32", "Time:%08x"})) + return o.String() + } + triceLogSpecialTest(t, triceLog, -1) +} diff --git a/_test/special_dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/special_dblB_de_tcobs_ua/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/special_dblB_de_tcobs_ua/triceConfig.h b/_test/special_dblB_de_tcobs_ua/triceConfig.h new file mode 100644 index 000000000..978db03d1 --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/triceConfig.h @@ -0,0 +1,22 @@ +/*! \file triceConfig.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_CONFIG_H_ +#define TRICE_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define TRICE_BUFFER TRICE_STACK_BUFFER +#define TRICE_DIRECT_OUTPUT 1 +#define TRICE_DIRECT_AUXILIARY32 1 +#define TRICE_CGO 1 +#define TRICE_CYCLE_COUNTER 0 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_CONFIG_H_ */ diff --git a/_test/special_dblB_de_tcobs_ua/triceUart.h b/_test/special_dblB_de_tcobs_ua/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/special_dblB_de_tcobs_ua/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/special_for_debug/ReadMe.md b/_test/special_for_debug/ReadMe.md new file mode 100644 index 000000000..6aeb40282 --- /dev/null +++ b/_test/special_for_debug/ReadMe.md @@ -0,0 +1,4 @@ +# Attention + +* Do **not** edit `generated_cgoPackage.go`. Change instead file `../testdata/cgoPackage.go` and execute `../updateTestData.sh` afterwards. This influences _all_ cgot packages tests. +* For individual modifications use file `cgo_test.go` or create an additional file. diff --git a/_test/special_for_debug/TargetActivity.c b/_test/special_for_debug/TargetActivity.c new file mode 100644 index 000000000..73df21b7a --- /dev/null +++ b/_test/special_for_debug/TargetActivity.c @@ -0,0 +1,10 @@ +//! \file TargetActivity.c + +#include "trice.h" + +char* TargetActivity(void) { + uint8_t buf[3] = {0xaa, 0xbb, 0xcc}; + TRice8B("%3x\n", buf, 3); + TRice8B("%3x\n", buf, 3); + return "feed3322 aa bb cc\nfeed3322 aa bb cc"; +} diff --git a/_test/protect_dblB_de_tcobs_ua/cgo_special.go b/_test/special_for_debug/cgo_special.go similarity index 100% rename from _test/protect_dblB_de_tcobs_ua/cgo_special.go rename to _test/special_for_debug/cgo_special.go diff --git a/_test/protect_dblB_de_tcobs_ua/cgo_test.go b/_test/special_for_debug/cgo_test.go similarity index 86% rename from _test/protect_dblB_de_tcobs_ua/cgo_test.go rename to _test/special_for_debug/cgo_test.go index dd0b49702..4e972dca9 100644 --- a/_test/protect_dblB_de_tcobs_ua/cgo_test.go +++ b/_test/special_for_debug/cgo_test.go @@ -18,7 +18,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=none", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=none", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } triceLogSpecialTest(t, triceLog) diff --git a/_test/special_for_debug/generated_cgoPackage.go b/_test/special_for_debug/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/special_for_debug/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/protect_dblB_de_tcobs_ua/triceConfig.h b/_test/special_for_debug/triceConfig.h similarity index 99% rename from _test/protect_dblB_de_tcobs_ua/triceConfig.h rename to _test/special_for_debug/triceConfig.h index 10d4ec6cb..c384ba39c 100644 --- a/_test/protect_dblB_de_tcobs_ua/triceConfig.h +++ b/_test/special_for_debug/triceConfig.h @@ -10,13 +10,10 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_DOUBLE_BUFFER - #define TRICE_DEFERRED_BUFFER_SIZE 512 - #define TRICE_DEFERRED_OUTPUT 1 #define TRICE_DEFERRED_UARTA 1 #define TRICE_UARTA - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/special_for_debug/triceUart.h b/_test/special_for_debug/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/special_for_debug/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/special_protect_dblB_de_tcobs_ua/ReadMe.md b/_test/special_protect_dblB_de_tcobs_ua/ReadMe.md new file mode 100644 index 000000000..6aeb40282 --- /dev/null +++ b/_test/special_protect_dblB_de_tcobs_ua/ReadMe.md @@ -0,0 +1,4 @@ +# Attention + +* Do **not** edit `generated_cgoPackage.go`. Change instead file `../testdata/cgoPackage.go` and execute `../updateTestData.sh` afterwards. This influences _all_ cgot packages tests. +* For individual modifications use file `cgo_test.go` or create an additional file. diff --git a/_test/protect_dblB_de_tcobs_ua/TargetActivity.c b/_test/special_protect_dblB_de_tcobs_ua/TargetActivity.c similarity index 51% rename from _test/protect_dblB_de_tcobs_ua/TargetActivity.c rename to _test/special_protect_dblB_de_tcobs_ua/TargetActivity.c index a09f56504..73a3d4d42 100644 --- a/_test/protect_dblB_de_tcobs_ua/TargetActivity.c +++ b/_test/special_protect_dblB_de_tcobs_ua/TargetActivity.c @@ -2,11 +2,11 @@ // Needed safety space is TRICE_SINGLE_MAX_SIZE = 104 // TRICE_HALF_BUFFER_SIZE == 256 - TRICE_DATA_OFFSET == 64 = 192 bytes -char* TargetActivity(void) { // -4 bytes TRICE_DATA_OFFSET = 188 bytes space - TRice(iD(16204), "Hello "); // -8 bytes = 180 bytes space - TRice(iD(16205), "World!\n"); // -8 bytes = 172 bytes space - TRice64(iD(16206), "msg:Twelve 64-bit values: %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12); // -104 bytes = 68 bytes space +char* TargetActivity(void) { // -4 bytes TRICE_DATA_OFFSET = 188 bytes space + TRice("Hello "); // -8 bytes = 180 bytes space + TRice("World!\n"); // -8 bytes = 172 bytes space + TRice64("msg:Twelve 64-bit values: %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12); // -104 bytes = 68 bytes space // so the next Trice does not fit - trice(iD(16207), "Hello again\n"); // -4 bytes -> no fit! + trice("Hello again\n"); // -4 bytes -> no fit! return "feed3322 Hello World!\nfeed3322 Twelve 64-bit values: -1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12"; } diff --git a/_test/special_protect_dblB_de_tcobs_ua/cgo_special.go b/_test/special_protect_dblB_de_tcobs_ua/cgo_special.go new file mode 100644 index 000000000..a022cd92d --- /dev/null +++ b/_test/special_protect_dblB_de_tcobs_ua/cgo_special.go @@ -0,0 +1,10 @@ +package cgot + +// For some reason inside the trice_test.go an 'import "C"' is not possible. + +// char* TargetActivity( void ); +import "C" + +func targetActivity() (r string) { + return C.GoString(C.TargetActivity()) +} diff --git a/_test/special_protect_dblB_de_tcobs_ua/cgo_test.go b/_test/special_protect_dblB_de_tcobs_ua/cgo_test.go new file mode 100644 index 000000000..4e972dca9 --- /dev/null +++ b/_test/special_protect_dblB_de_tcobs_ua/cgo_test.go @@ -0,0 +1,53 @@ +package cgot + +import ( + "bytes" + "fmt" + "io" + "path" + "strings" + "testing" + + "github.com/rokath/trice/internal/args" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +func TestLogs(t *testing.T) { + // triceLog is the log function for executing the trice logging on binary log data in buffer as space separated numbers. + // It uses the inside fSys specified til.json and returns the log output. + triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { + var o bytes.Buffer + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=none", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + return o.String() + } + triceLogSpecialTest(t, triceLog) +} + +// triceLogSpecialTest ... +func triceLogSpecialTest(t *testing.T, triceLog logF) { + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + out := make([]byte, 32768) + setTriceBuffer(out) + + exp := targetActivity() + + // For the ring buffer, we need to call triceTransfer() at least for each Trice statement in targetActivity(). + // For the double buffer one call is enough. + for i := 0; i < 5; i++ { + triceTransfer() + } + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message. + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) // convert binary buffer into result string + + triceClearOutBuffer() + + assert.Equal(t, exp, strings.TrimSuffix(act, "\n")) + +} diff --git a/_test/special_protect_dblB_de_tcobs_ua/generated_cgoPackage.go b/_test/special_protect_dblB_de_tcobs_ua/generated_cgoPackage.go new file mode 100644 index 000000000..ac954638b --- /dev/null +++ b/_test/special_protect_dblB_de_tcobs_ua/generated_cgoPackage.go @@ -0,0 +1,237 @@ +// Copyright 2020 Thomas.Hoehenleitner [at] seerose.net +// Use of this source code is governed by a license that can be found in the LICENSE file. + +// Package cgot is a helper for testing the target C-code. +// Each C function gets a Go wrapper which is tested in appropriate test functions. +// For some reason inside the trice_test.go an 'import "C"' is not possible. +// The C-files referring to the trice sources this way avoiding code duplication. +// The Go functions defined here are not exported. They are called by the Go test functions in this package. +// This way the test functions are executing the trice C-code compiled with the triceConfig.h here. +// Inside ./testdata this file is named cgoPackage.go where it is maintained. +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various +// package folders, where it is used separately. +package cgot + +// #include +// void TriceCheck( int n ); +// void TriceTransfer( void ); +// unsigned TriceOutDepth( void ); +// void CgoSetTriceBuffer( uint8_t* buf ); +// void CgoClearTriceBuffer( void ); +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security +// #include "../../src/trice.c" +// #include "../../src/trice8.c" +// #include "../../src/trice16.c" +// #include "../../src/trice32.c" +// #include "../../src/trice64.c" +// #include "../../src/triceUart.c" +// #include "../../src/triceAuxiliary.c" +// #include "../../src/triceDoubleBuffer.c" +// #include "../../src/triceRingBuffer.c" +// #include "../../src/triceStackBuffer.c" +// #include "../../src/triceStaticBuffer.c" +// #include "../../src/xtea.c" +// #include "../../src/cobsDecode.c" +// #include "../../src/cobsEncode.c" +// #include "../../src/tcobsv1Decode.c" +// #include "../../src/tcobsv1Encode.c" +// #include "../testdata/triceCheck.c" +// #include "../testdata/cgoTrice.c" +import "C" + +import ( + "bufio" + "fmt" + "path" + "runtime" + "strings" + "testing" + "unsafe" + + "github.com/rokath/trice/pkg/msg" + "github.com/spf13/afero" + "github.com/tj/assert" +) + +var ( + triceDir string // triceDir holds the trice directory path. + testLines = -1 // testLines is the common number of tested lines in triceCheck. The value -1 is for all lines, what takes time. +) + +// https://stackoverflow.com/questions/23847003/golang-tests-and-working-directory +func init() { + _, filename, _, _ := runtime.Caller(0) // filename is the test executable inside the package dir like cgo_stackBuffer_noCycle_tcobs + testDir := path.Dir(filename) + triceDir = path.Join(testDir, "../../") + C.TriceInit() +} + +// setTriceBuffer tells the underlying C code where to output the trice byte stream. +func setTriceBuffer(o []byte) { + Cout := (*C.uchar)(unsafe.Pointer(&o[0])) + C.CgoSetTriceBuffer(Cout) +} + +// triceCheck performs triceCheck C-code sequence n. +func triceCheck(n int) { + C.TriceCheck(C.int(n)) +} + +// triceTransfer performs the deferred trice output. +func triceTransfer() { + C.TriceTransfer() +} + +// triceOutDepth returns the actual out buffer depth. +func triceOutDepth() int { + return int(C.TriceOutDepth()) +} + +// triceClearOutBuffer tells the trice kernel, that the data has been red. +func triceClearOutBuffer() { + C.CgoClearTriceBuffer() +} + +// linesInFile does get the lines in a file and stores them in a string slice. +func linesInFile(fh afero.File) []string { // https://www.dotnetperls.com/lines-file-go + // Create new Scanner. + scanner := bufio.NewScanner(fh) + result := []string{} + // Use Scan. + for scanner.Scan() { + line := scanner.Text() + // Append line to result. + result = append(result, line) + } + return result +} + +// results contains the expected result string exps for line number line. +type results struct { + line int + exps string +} + +func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { + // get all file lines into a []string + f, e := fSys.Open(filename) + msg.OnErr(e) + lines := linesInFile(f) + + for i, line := range lines { + s := strings.Split(line, "//") + if len(s) == 2 { // just one "//" + lineEnd := s[1] + subStr := "exp:" + index := strings.LastIndex(lineEnd, subStr) + if index >= 0 { + var r results + r.line = i + 1 // 1st line number is 1 and not 0 + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) + result = append(result, r) + } + } + } + return +} + +// logF is the log function type for executing the trice logging on binary log data in buffer as space separated numbers. +// It uses the inside fSys specified til.json and returns the log output. +type logF func(t *testing.T, fSys *afero.Afero, buffer string) string + +// triceLogTest creates a list of expected results from path.Join(triceDir, "./_test/testdata/triceCheck.c"). +// It loops over the result list and executes for each result the compiled C-code. +// It passes the received binary data as buffer to the triceLog function of type logF. +// This function is test package specific defined. The file cgoPackage.go is +// copied into all specific test packages and compiled there together with the +// triceConfig.h, which holds the test package specific target code configuration. +// limit is the count of executed test lines starting from the beginning. -1 ist for all. +func triceLogTest(t *testing.T, triceLog logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + //mmFSys := &afero.Afero{Fs: afero.NewMemMapFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + + fmt.Println(i, r) + + // target activity + triceCheck(r.line) + + triceTransfer() // This is only for deferred modes needed, but direct modes contain this as empty function. + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i in r.line + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } +} + +// triceLogTest2 works like triceLogTest but additionally expects doubled output: direct and deferred. +func triceLogTest2(t *testing.T, triceLog0, triceLog1 logF, limit int) { + + osFSys := &afero.Afero{Fs: afero.NewOsFs()} + + // CopyFileIntoFSys(t, mmFSys, "til.json", osFSys, td+"./til.json") // needed for the trice log + out := make([]byte, 32768) + setTriceBuffer(out) + + result := getExpectedResults(osFSys, path.Join(triceDir, "./_test/testdata/triceCheck.c")) + + var count int + for i, r := range result { + + count++ + if limit >= 0 && count >= limit { + return + } + fmt.Println(i, r) + triceCheck(r.line) // target activity + + { // check direct output + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog0(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + + { // check deferred output + triceTransfer() + + length := triceOutDepth() + bin := out[:length] // bin contains the binary trice data of trice message i + + buf := fmt.Sprint(bin) + buffer := buf[1 : len(buf)-1] + + act := triceLog1(t, osFSys, buffer) + triceClearOutBuffer() + + assert.Equal(t, r.exps, strings.TrimSuffix(act, "\n")) + } + } +} diff --git a/_test/special_protect_dblB_de_tcobs_ua/triceConfig.h b/_test/special_protect_dblB_de_tcobs_ua/triceConfig.h new file mode 100644 index 000000000..c384ba39c --- /dev/null +++ b/_test/special_protect_dblB_de_tcobs_ua/triceConfig.h @@ -0,0 +1,24 @@ +/*! \file triceConfig.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_CONFIG_H_ +#define TRICE_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define TRICE_BUFFER TRICE_DOUBLE_BUFFER +#define TRICE_DEFERRED_BUFFER_SIZE 512 +#define TRICE_DEFERRED_OUTPUT 1 +#define TRICE_DEFERRED_UARTA 1 +#define TRICE_UARTA +#define TRICE_CGO 1 +#define TRICE_CYCLE_COUNTER 0 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_CONFIG_H_ */ diff --git a/_test/special_protect_dblB_de_tcobs_ua/triceUart.h b/_test/special_protect_dblB_de_tcobs_ua/triceUart.h new file mode 100644 index 000000000..0a04f00a4 --- /dev/null +++ b/_test/special_protect_dblB_de_tcobs_ua/triceUart.h @@ -0,0 +1,53 @@ +/*! \file triceUart.h +\author Thomas.Hoehenleitner [at] seerose.net +*******************************************************************************/ + +#ifndef TRICE_UART_H_ +#define TRICE_UART_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "trice.h" + +#if TRICE_DEFERRED_UARTA == 1 + +//! Check if a new byte can be written into trice transmit register. +//! \retval 0 == not empty +//! \retval !0 == empty +//! User must provide this function. +TRICE_INLINE uint32_t triceTxDataRegisterEmptyUartA(void) { + return 1; // LL_USART_IsActiveFlag_TXE(TRICE_UARTA); +} + +//! Write value v into trice transmit register. +//! \param v byte to transmit +//! User must provide this function. +TRICE_INLINE void triceTransmitData8UartA(uint8_t v) { + TRICE_UNUSED(v); // Avoid noise with -Wunused-parameter + // LL_USART_TransmitData8(TRICE_UARTA, v); +} + +//! Allow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceEnableTxEmptyInterruptUartA(void) { + // LL_USART_EnableIT_TXE(TRICE_UARTA); +} + +//! Disallow interrupt for empty trice data transmit register. +//! User must provide this function. +TRICE_INLINE void triceDisableTxEmptyInterruptUartA(void) { + // LL_USART_DisableIT_TXE(TRICE_UARTA); +} +#endif // #if TRICE_DEFERRED_UARTA == 1 + +#if TRICE_DEFERRED_UARTB == 1 + +#endif // #if TRICE_DEFERRED_UARTB == 1 + +#ifdef __cplusplus +} +#endif + +#endif /* TRICE_UART_H_ */ diff --git a/_test/stackB_di_nopf_aux32/SEGGER_RTT_Conf.h b/_test/stackB_di_nopf_aux32/SEGGER_RTT_Conf.h new file mode 100644 index 000000000..dc37b31e9 --- /dev/null +++ b/_test/stackB_di_nopf_aux32/SEGGER_RTT_Conf.h @@ -0,0 +1,429 @@ +/********************************************************************* +* SEGGER Microcontroller GmbH * +* The Embedded Experts * +********************************************************************** +* * +* (c) 1995 - 2021 SEGGER Microcontroller GmbH * +* * +* www.segger.com Support: support@segger.com * +* * +********************************************************************** +* * +* SEGGER RTT * Real Time Transfer for embedded targets * +* * +********************************************************************** +* * +* All rights reserved. * +* * +* SEGGER strongly recommends to not make any changes * +* to or modify the source code of this software in order to stay * +* compatible with the RTT protocol and J-Link. * +* * +* Redistribution and use in source and binary forms, with or * +* without modification, are permitted provided that the following * +* condition is met: * +* * +* o Redistributions of source code must retain the above copyright * +* notice, this condition and the following disclaimer. * +* * +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND * +* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, * +* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * +* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * +* DISCLAIMED. IN NO EVENT SHALL SEGGER Microcontroller BE LIABLE FOR * +* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * +* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT * +* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * +* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * +* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * +* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * +* DAMAGE. * +* * +********************************************************************** +* * +* RTT version: 8.12a * +* * +********************************************************************** + +---------------------------END-OF-HEADER------------------------------ +File : SEGGER_RTT_Conf.h +Purpose : Implementation of SEGGER real-time transfer (RTT) which + allows real-time communication on targets which support + debugger memory accesses while the CPU is running. +Revision: $Rev: 24316 $ + +*/ + +#ifndef SEGGER_RTT_CONF_H +#define SEGGER_RTT_CONF_H + +#ifdef __IAR_SYSTEMS_ICC__ + #include +#endif + +/********************************************************************* +* +* Defines, configurable +* +********************************************************************** +*/ + +// +// Take in and set to correct values for Cortex-A systems with CPU cache +// +//#define SEGGER_RTT_CPU_CACHE_LINE_SIZE (32) // Largest cache line size (in bytes) in the current system +//#define SEGGER_RTT_UNCACHED_OFF (0xFB000000) // Address alias where RTT CB and buffers can be accessed uncached +// +// Most common case: +// Up-channel 0: RTT +// Up-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) +#endif +// +// Most common case: +// Down-channel 0: RTT +// Down-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_DOWN_BUFFERS + #define SEGGER_RTT_MAX_NUM_DOWN_BUFFERS (3) // Max. number of down-buffers (H->T) available on this target (Default: 3) +#endif + +#ifndef BUFFER_SIZE_UP + #define BUFFER_SIZE_UP (1024) // Size of the buffer for terminal output of target, up to host (Default: 1k) +#endif + +#ifndef BUFFER_SIZE_DOWN + #define BUFFER_SIZE_DOWN (16) // Size of the buffer for terminal input to target from host (Usually keyboard input) (Default: 16) +#endif + +#ifndef SEGGER_RTT_PRINTF_BUFFER_SIZE + #define SEGGER_RTT_PRINTF_BUFFER_SIZE (64u) // Size of buffer for RTT printf to bulk-send chars via RTT (Default: 64) +#endif + +#ifndef SEGGER_RTT_MODE_DEFAULT + #define SEGGER_RTT_MODE_DEFAULT SEGGER_RTT_MODE_NO_BLOCK_SKIP // Mode for pre-initialized terminal channel (buffer 0) +#endif + +/********************************************************************* +* +* RTT memcpy configuration +* +* memcpy() is good for large amounts of data, +* but the overhead is big for small amounts, which are usually stored via RTT. +* With SEGGER_RTT_MEMCPY_USE_BYTELOOP a simple byte loop can be used instead. +* +* SEGGER_RTT_MEMCPY() can be used to replace standard memcpy() in RTT functions. +* This is may be required with memory access restrictions, +* such as on Cortex-A devices with MMU. +*/ +#ifndef SEGGER_RTT_MEMCPY_USE_BYTELOOP + #define SEGGER_RTT_MEMCPY_USE_BYTELOOP 0 // 0: Use memcpy/SEGGER_RTT_MEMCPY, 1: Use a simple byte-loop +#endif +// +// Example definition of SEGGER_RTT_MEMCPY to external memcpy with GCC toolchains and Cortex-A targets +// +//#if ((defined __SES_ARM) || (defined __CROSSWORKS_ARM) || (defined __GNUC__)) && (defined (__ARM_ARCH_7A__)) +// #define SEGGER_RTT_MEMCPY(pDest, pSrc, NumBytes) SEGGER_memcpy((pDest), (pSrc), (NumBytes)) +//#endif + +// +// Target is not allowed to perform other RTT operations while string still has not been stored completely. +// Otherwise we would probably end up with a mixed string in the buffer. +// If using RTT from within interrupts, multiple tasks or multi processors, define the SEGGER_RTT_LOCK() and SEGGER_RTT_UNLOCK() function here. +// +// SEGGER_RTT_MAX_INTERRUPT_PRIORITY can be used in the sample lock routines on Cortex-M3/4. +// Make sure to mask all interrupts which can send RTT data, i.e. generate SystemView events, or cause task switches. +// When high-priority interrupts must not be masked while sending RTT data, SEGGER_RTT_MAX_INTERRUPT_PRIORITY needs to be adjusted accordingly. +// (Higher priority = lower priority number) +// Default value for embOS: 128u +// Default configuration in FreeRTOS: configMAX_SYSCALL_INTERRUPT_PRIORITY: ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) +// In case of doubt mask all interrupts: 1 << (8 - BASEPRI_PRIO_BITS) i.e. 1 << 5 when 3 bits are implemented in NVIC +// or define SEGGER_RTT_LOCK() to completely disable interrupts. +// +#ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) // Interrupt priority to lock on SEGGER_RTT_LOCK on Cortex-M3/4 (Default: 0x20) +#endif + +/********************************************************************* +* +* RTT lock configuration for SEGGER Embedded Studio, +* Rowley CrossStudio and GCC +*/ +#if ((defined(__SES_ARM) || defined(__SES_RISCV) || defined(__CROSSWORKS_ARM) || defined(__GNUC__) || defined(__clang__)) && !defined (__CC_ARM) && !defined(WIN32)) + #if (defined(__ARM_ARCH_6M__) || defined(__ARM_ARCH_8M_BASE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, primask \n\t" \ + "movs r1, #1 \n\t" \ + "msr primask, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr primask, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, basepri \n\t" \ + "mov r1, %1 \n\t" \ + "msr basepri, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : "i"(SEGGER_RTT_MAX_INTERRUPT_PRIORITY) \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr basepri, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + + #elif (defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #elif defined(__riscv) || defined(__riscv_xlen) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("csrr %0, mstatus \n\t" \ + "csrci mstatus, 8 \n\t" \ + "andi %0, %0, 8 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("csrr a1, mstatus \n\t" \ + "or %0, %0, a1 \n\t" \ + "csrs mstatus, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "a1" \ + ); \ + } + #else + #define SEGGER_RTT_LOCK() + #define SEGGER_RTT_UNLOCK() + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR EWARM +*/ +#ifdef __ICCARM__ + #if (defined (__ARM6M__) && (__CORE__ == __ARM6M__)) || \ + (defined (__ARM8M_BASELINE__) && (__CORE__ == __ARM8M_BASELINE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7EM__) && (__CORE__ == __ARM7EM__)) || \ + (defined (__ARM7M__) && (__CORE__ == __ARM7M__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_BASEPRI(); \ + __set_BASEPRI(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() __set_BASEPRI(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7A__) && (__CORE__ == __ARM7A__)) || \ + (defined (__ARM7R__) && (__CORE__ == __ARM7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RX +*/ +#ifdef __ICCRX__ + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RL78 +*/ +#ifdef __ICCRL78__ + #define SEGGER_RTT_LOCK() { \ + __istate_t _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for KEIL ARM +*/ +#ifdef __CC_ARM + #if (defined __TARGET_ARCH_6S_M) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char _SEGGER_RTT__PRIMASK __asm( "primask"); \ + _SEGGER_RTT__LockState = _SEGGER_RTT__PRIMASK; \ + _SEGGER_RTT__PRIMASK = 1u; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char BASEPRI __asm( "basepri"); \ + _SEGGER_RTT__LockState = BASEPRI; \ + BASEPRI = SEGGER_RTT_MAX_INTERRUPT_PRIORITY; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() BASEPRI = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for TI ARM +*/ +#ifdef __TI_ARM__ + #if defined (__TI_ARM_V6M0__) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__TI_ARM_V7M3__) || defined (__TI_ARM_V7M4__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = _set_interrupt_priority(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() _set_interrupt_priority(_SEGGER_RTT__LockState); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for CCRX +*/ +#ifdef __RX + #include + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = get_psw() & 0x010000; \ + clrpsw_i(); + + #define SEGGER_RTT_UNLOCK() set_psw(get_psw() | _SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for embOS Simulation on Windows +* (Can also be used for generic RTT locking with embOS) +*/ +#if defined(WIN32) || defined(SEGGER_RTT_LOCK_EMBOS) + +void OS_SIM_EnterCriticalSection(void); +void OS_SIM_LeaveCriticalSection(void); + +#define SEGGER_RTT_LOCK() { \ + OS_SIM_EnterCriticalSection(); + +#define SEGGER_RTT_UNLOCK() OS_SIM_LeaveCriticalSection(); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration fallback +*/ +#ifndef SEGGER_RTT_LOCK + #define SEGGER_RTT_LOCK() // Lock RTT (nestable) (i.e. disable interrupts) +#endif + +#ifndef SEGGER_RTT_UNLOCK + #define SEGGER_RTT_UNLOCK() // Unlock RTT (nestable) (i.e. enable previous interrupt lock state) +#endif + +#endif +/*************************** End of file ****************************/ diff --git a/_test/stackB_di_nopf_aux32/cgo_test.go b/_test/stackB_di_nopf_aux32/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/stackB_di_nopf_aux32/cgo_test.go +++ b/_test/stackB_di_nopf_aux32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/stackB_di_nopf_aux32/generated_cgoPackage.go b/_test/stackB_di_nopf_aux32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/stackB_di_nopf_aux32/generated_cgoPackage.go +++ b/_test/stackB_di_nopf_aux32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/stackB_di_nopf_aux32/triceConfig.h b/_test/stackB_di_nopf_aux32/triceConfig.h index 421689cbf..978db03d1 100644 --- a/_test/stackB_di_nopf_aux32/triceConfig.h +++ b/_test/stackB_di_nopf_aux32/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STACK_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_AUXILIARY32 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/stackB_di_nopf_aux8/SEGGER_RTT_Conf.h b/_test/stackB_di_nopf_aux8/SEGGER_RTT_Conf.h new file mode 100644 index 000000000..dc37b31e9 --- /dev/null +++ b/_test/stackB_di_nopf_aux8/SEGGER_RTT_Conf.h @@ -0,0 +1,429 @@ +/********************************************************************* +* SEGGER Microcontroller GmbH * +* The Embedded Experts * +********************************************************************** +* * +* (c) 1995 - 2021 SEGGER Microcontroller GmbH * +* * +* www.segger.com Support: support@segger.com * +* * +********************************************************************** +* * +* SEGGER RTT * Real Time Transfer for embedded targets * +* * +********************************************************************** +* * +* All rights reserved. * +* * +* SEGGER strongly recommends to not make any changes * +* to or modify the source code of this software in order to stay * +* compatible with the RTT protocol and J-Link. * +* * +* Redistribution and use in source and binary forms, with or * +* without modification, are permitted provided that the following * +* condition is met: * +* * +* o Redistributions of source code must retain the above copyright * +* notice, this condition and the following disclaimer. * +* * +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND * +* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, * +* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * +* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * +* DISCLAIMED. IN NO EVENT SHALL SEGGER Microcontroller BE LIABLE FOR * +* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * +* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT * +* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * +* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * +* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * +* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * +* DAMAGE. * +* * +********************************************************************** +* * +* RTT version: 8.12a * +* * +********************************************************************** + +---------------------------END-OF-HEADER------------------------------ +File : SEGGER_RTT_Conf.h +Purpose : Implementation of SEGGER real-time transfer (RTT) which + allows real-time communication on targets which support + debugger memory accesses while the CPU is running. +Revision: $Rev: 24316 $ + +*/ + +#ifndef SEGGER_RTT_CONF_H +#define SEGGER_RTT_CONF_H + +#ifdef __IAR_SYSTEMS_ICC__ + #include +#endif + +/********************************************************************* +* +* Defines, configurable +* +********************************************************************** +*/ + +// +// Take in and set to correct values for Cortex-A systems with CPU cache +// +//#define SEGGER_RTT_CPU_CACHE_LINE_SIZE (32) // Largest cache line size (in bytes) in the current system +//#define SEGGER_RTT_UNCACHED_OFF (0xFB000000) // Address alias where RTT CB and buffers can be accessed uncached +// +// Most common case: +// Up-channel 0: RTT +// Up-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) +#endif +// +// Most common case: +// Down-channel 0: RTT +// Down-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_DOWN_BUFFERS + #define SEGGER_RTT_MAX_NUM_DOWN_BUFFERS (3) // Max. number of down-buffers (H->T) available on this target (Default: 3) +#endif + +#ifndef BUFFER_SIZE_UP + #define BUFFER_SIZE_UP (1024) // Size of the buffer for terminal output of target, up to host (Default: 1k) +#endif + +#ifndef BUFFER_SIZE_DOWN + #define BUFFER_SIZE_DOWN (16) // Size of the buffer for terminal input to target from host (Usually keyboard input) (Default: 16) +#endif + +#ifndef SEGGER_RTT_PRINTF_BUFFER_SIZE + #define SEGGER_RTT_PRINTF_BUFFER_SIZE (64u) // Size of buffer for RTT printf to bulk-send chars via RTT (Default: 64) +#endif + +#ifndef SEGGER_RTT_MODE_DEFAULT + #define SEGGER_RTT_MODE_DEFAULT SEGGER_RTT_MODE_NO_BLOCK_SKIP // Mode for pre-initialized terminal channel (buffer 0) +#endif + +/********************************************************************* +* +* RTT memcpy configuration +* +* memcpy() is good for large amounts of data, +* but the overhead is big for small amounts, which are usually stored via RTT. +* With SEGGER_RTT_MEMCPY_USE_BYTELOOP a simple byte loop can be used instead. +* +* SEGGER_RTT_MEMCPY() can be used to replace standard memcpy() in RTT functions. +* This is may be required with memory access restrictions, +* such as on Cortex-A devices with MMU. +*/ +#ifndef SEGGER_RTT_MEMCPY_USE_BYTELOOP + #define SEGGER_RTT_MEMCPY_USE_BYTELOOP 0 // 0: Use memcpy/SEGGER_RTT_MEMCPY, 1: Use a simple byte-loop +#endif +// +// Example definition of SEGGER_RTT_MEMCPY to external memcpy with GCC toolchains and Cortex-A targets +// +//#if ((defined __SES_ARM) || (defined __CROSSWORKS_ARM) || (defined __GNUC__)) && (defined (__ARM_ARCH_7A__)) +// #define SEGGER_RTT_MEMCPY(pDest, pSrc, NumBytes) SEGGER_memcpy((pDest), (pSrc), (NumBytes)) +//#endif + +// +// Target is not allowed to perform other RTT operations while string still has not been stored completely. +// Otherwise we would probably end up with a mixed string in the buffer. +// If using RTT from within interrupts, multiple tasks or multi processors, define the SEGGER_RTT_LOCK() and SEGGER_RTT_UNLOCK() function here. +// +// SEGGER_RTT_MAX_INTERRUPT_PRIORITY can be used in the sample lock routines on Cortex-M3/4. +// Make sure to mask all interrupts which can send RTT data, i.e. generate SystemView events, or cause task switches. +// When high-priority interrupts must not be masked while sending RTT data, SEGGER_RTT_MAX_INTERRUPT_PRIORITY needs to be adjusted accordingly. +// (Higher priority = lower priority number) +// Default value for embOS: 128u +// Default configuration in FreeRTOS: configMAX_SYSCALL_INTERRUPT_PRIORITY: ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) +// In case of doubt mask all interrupts: 1 << (8 - BASEPRI_PRIO_BITS) i.e. 1 << 5 when 3 bits are implemented in NVIC +// or define SEGGER_RTT_LOCK() to completely disable interrupts. +// +#ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) // Interrupt priority to lock on SEGGER_RTT_LOCK on Cortex-M3/4 (Default: 0x20) +#endif + +/********************************************************************* +* +* RTT lock configuration for SEGGER Embedded Studio, +* Rowley CrossStudio and GCC +*/ +#if ((defined(__SES_ARM) || defined(__SES_RISCV) || defined(__CROSSWORKS_ARM) || defined(__GNUC__) || defined(__clang__)) && !defined (__CC_ARM) && !defined(WIN32)) + #if (defined(__ARM_ARCH_6M__) || defined(__ARM_ARCH_8M_BASE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, primask \n\t" \ + "movs r1, #1 \n\t" \ + "msr primask, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr primask, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, basepri \n\t" \ + "mov r1, %1 \n\t" \ + "msr basepri, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : "i"(SEGGER_RTT_MAX_INTERRUPT_PRIORITY) \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr basepri, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + + #elif (defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #elif defined(__riscv) || defined(__riscv_xlen) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("csrr %0, mstatus \n\t" \ + "csrci mstatus, 8 \n\t" \ + "andi %0, %0, 8 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("csrr a1, mstatus \n\t" \ + "or %0, %0, a1 \n\t" \ + "csrs mstatus, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "a1" \ + ); \ + } + #else + #define SEGGER_RTT_LOCK() + #define SEGGER_RTT_UNLOCK() + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR EWARM +*/ +#ifdef __ICCARM__ + #if (defined (__ARM6M__) && (__CORE__ == __ARM6M__)) || \ + (defined (__ARM8M_BASELINE__) && (__CORE__ == __ARM8M_BASELINE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7EM__) && (__CORE__ == __ARM7EM__)) || \ + (defined (__ARM7M__) && (__CORE__ == __ARM7M__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_BASEPRI(); \ + __set_BASEPRI(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() __set_BASEPRI(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7A__) && (__CORE__ == __ARM7A__)) || \ + (defined (__ARM7R__) && (__CORE__ == __ARM7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RX +*/ +#ifdef __ICCRX__ + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RL78 +*/ +#ifdef __ICCRL78__ + #define SEGGER_RTT_LOCK() { \ + __istate_t _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for KEIL ARM +*/ +#ifdef __CC_ARM + #if (defined __TARGET_ARCH_6S_M) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char _SEGGER_RTT__PRIMASK __asm( "primask"); \ + _SEGGER_RTT__LockState = _SEGGER_RTT__PRIMASK; \ + _SEGGER_RTT__PRIMASK = 1u; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char BASEPRI __asm( "basepri"); \ + _SEGGER_RTT__LockState = BASEPRI; \ + BASEPRI = SEGGER_RTT_MAX_INTERRUPT_PRIORITY; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() BASEPRI = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for TI ARM +*/ +#ifdef __TI_ARM__ + #if defined (__TI_ARM_V6M0__) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__TI_ARM_V7M3__) || defined (__TI_ARM_V7M4__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = _set_interrupt_priority(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() _set_interrupt_priority(_SEGGER_RTT__LockState); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for CCRX +*/ +#ifdef __RX + #include + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = get_psw() & 0x010000; \ + clrpsw_i(); + + #define SEGGER_RTT_UNLOCK() set_psw(get_psw() | _SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for embOS Simulation on Windows +* (Can also be used for generic RTT locking with embOS) +*/ +#if defined(WIN32) || defined(SEGGER_RTT_LOCK_EMBOS) + +void OS_SIM_EnterCriticalSection(void); +void OS_SIM_LeaveCriticalSection(void); + +#define SEGGER_RTT_LOCK() { \ + OS_SIM_EnterCriticalSection(); + +#define SEGGER_RTT_UNLOCK() OS_SIM_LeaveCriticalSection(); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration fallback +*/ +#ifndef SEGGER_RTT_LOCK + #define SEGGER_RTT_LOCK() // Lock RTT (nestable) (i.e. disable interrupts) +#endif + +#ifndef SEGGER_RTT_UNLOCK + #define SEGGER_RTT_UNLOCK() // Unlock RTT (nestable) (i.e. enable previous interrupt lock state) +#endif + +#endif +/*************************** End of file ****************************/ diff --git a/_test/stackB_di_nopf_aux8/cgo_test.go b/_test/stackB_di_nopf_aux8/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/stackB_di_nopf_aux8/cgo_test.go +++ b/_test/stackB_di_nopf_aux8/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/stackB_di_nopf_aux8/generated_cgoPackage.go b/_test/stackB_di_nopf_aux8/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/stackB_di_nopf_aux8/generated_cgoPackage.go +++ b/_test/stackB_di_nopf_aux8/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/stackB_di_nopf_aux8/triceConfig.h b/_test/stackB_di_nopf_aux8/triceConfig.h index e6a85004f..82d7d93c9 100644 --- a/_test/stackB_di_nopf_aux8/triceConfig.h +++ b/_test/stackB_di_nopf_aux8/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STACK_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_AUXILIARY8 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/stackB_di_nopf_rtt32/SEGGER_RTT_Conf.h b/_test/stackB_di_nopf_rtt32/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/stackB_di_nopf_rtt32/SEGGER_RTT_Conf.h +++ b/_test/stackB_di_nopf_rtt32/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/stackB_di_nopf_rtt32/cgo_test.go b/_test/stackB_di_nopf_rtt32/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/stackB_di_nopf_rtt32/cgo_test.go +++ b/_test/stackB_di_nopf_rtt32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/stackB_di_nopf_rtt32/generated_cgoPackage.go b/_test/stackB_di_nopf_rtt32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/stackB_di_nopf_rtt32/generated_cgoPackage.go +++ b/_test/stackB_di_nopf_rtt32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/stackB_di_nopf_rtt32/triceConfig.h b/_test/stackB_di_nopf_rtt32/triceConfig.h index 5b8610e7e..1877cc7fb 100644 --- a/_test/stackB_di_nopf_rtt32/triceConfig.h +++ b/_test/stackB_di_nopf_rtt32/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STACK_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/stackB_di_nopf_rtt8/SEGGER_RTT_Conf.h b/_test/stackB_di_nopf_rtt8/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/stackB_di_nopf_rtt8/SEGGER_RTT_Conf.h +++ b/_test/stackB_di_nopf_rtt8/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/stackB_di_nopf_rtt8/cgo_test.go b/_test/stackB_di_nopf_rtt8/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/stackB_di_nopf_rtt8/cgo_test.go +++ b/_test/stackB_di_nopf_rtt8/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/stackB_di_nopf_rtt8/generated_cgoPackage.go b/_test/stackB_di_nopf_rtt8/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/stackB_di_nopf_rtt8/generated_cgoPackage.go +++ b/_test/stackB_di_nopf_rtt8/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/stackB_di_nopf_rtt8/triceConfig.h b/_test/stackB_di_nopf_rtt8/triceConfig.h index cb4249765..1166d2c82 100644 --- a/_test/stackB_di_nopf_rtt8/triceConfig.h +++ b/_test/stackB_di_nopf_rtt8/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STACK_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/stackB_di_xtea_cobs_rtt8/SEGGER_RTT_Conf.h b/_test/stackB_di_xtea_cobs_rtt8/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/stackB_di_xtea_cobs_rtt8/SEGGER_RTT_Conf.h +++ b/_test/stackB_di_xtea_cobs_rtt8/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/stackB_di_xtea_cobs_rtt8/cgo_test.go b/_test/stackB_di_xtea_cobs_rtt8/cgo_test.go index e8d292c8b..9009e9cbb 100644 --- a/_test/stackB_di_xtea_cobs_rtt8/cgo_test.go +++ b/_test/stackB_di_xtea_cobs_rtt8/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/stackB_di_xtea_cobs_rtt8/generated_cgoPackage.go b/_test/stackB_di_xtea_cobs_rtt8/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/stackB_di_xtea_cobs_rtt8/generated_cgoPackage.go +++ b/_test/stackB_di_xtea_cobs_rtt8/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/stackB_di_xtea_cobs_rtt8/triceConfig.h b/_test/stackB_di_xtea_cobs_rtt8/triceConfig.h index ad473d4fc..8a8a57286 100644 --- a/_test/stackB_di_xtea_cobs_rtt8/triceConfig.h +++ b/_test/stackB_di_xtea_cobs_rtt8/triceConfig.h @@ -10,12 +10,10 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_STACK_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_XTEA_ENCRYPT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_nopf_aux32/SEGGER_RTT_Conf.h b/_test/staticB_di_nopf_aux32/SEGGER_RTT_Conf.h new file mode 100644 index 000000000..dc37b31e9 --- /dev/null +++ b/_test/staticB_di_nopf_aux32/SEGGER_RTT_Conf.h @@ -0,0 +1,429 @@ +/********************************************************************* +* SEGGER Microcontroller GmbH * +* The Embedded Experts * +********************************************************************** +* * +* (c) 1995 - 2021 SEGGER Microcontroller GmbH * +* * +* www.segger.com Support: support@segger.com * +* * +********************************************************************** +* * +* SEGGER RTT * Real Time Transfer for embedded targets * +* * +********************************************************************** +* * +* All rights reserved. * +* * +* SEGGER strongly recommends to not make any changes * +* to or modify the source code of this software in order to stay * +* compatible with the RTT protocol and J-Link. * +* * +* Redistribution and use in source and binary forms, with or * +* without modification, are permitted provided that the following * +* condition is met: * +* * +* o Redistributions of source code must retain the above copyright * +* notice, this condition and the following disclaimer. * +* * +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND * +* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, * +* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * +* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * +* DISCLAIMED. IN NO EVENT SHALL SEGGER Microcontroller BE LIABLE FOR * +* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * +* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT * +* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * +* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * +* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * +* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * +* DAMAGE. * +* * +********************************************************************** +* * +* RTT version: 8.12a * +* * +********************************************************************** + +---------------------------END-OF-HEADER------------------------------ +File : SEGGER_RTT_Conf.h +Purpose : Implementation of SEGGER real-time transfer (RTT) which + allows real-time communication on targets which support + debugger memory accesses while the CPU is running. +Revision: $Rev: 24316 $ + +*/ + +#ifndef SEGGER_RTT_CONF_H +#define SEGGER_RTT_CONF_H + +#ifdef __IAR_SYSTEMS_ICC__ + #include +#endif + +/********************************************************************* +* +* Defines, configurable +* +********************************************************************** +*/ + +// +// Take in and set to correct values for Cortex-A systems with CPU cache +// +//#define SEGGER_RTT_CPU_CACHE_LINE_SIZE (32) // Largest cache line size (in bytes) in the current system +//#define SEGGER_RTT_UNCACHED_OFF (0xFB000000) // Address alias where RTT CB and buffers can be accessed uncached +// +// Most common case: +// Up-channel 0: RTT +// Up-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) +#endif +// +// Most common case: +// Down-channel 0: RTT +// Down-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_DOWN_BUFFERS + #define SEGGER_RTT_MAX_NUM_DOWN_BUFFERS (3) // Max. number of down-buffers (H->T) available on this target (Default: 3) +#endif + +#ifndef BUFFER_SIZE_UP + #define BUFFER_SIZE_UP (1024) // Size of the buffer for terminal output of target, up to host (Default: 1k) +#endif + +#ifndef BUFFER_SIZE_DOWN + #define BUFFER_SIZE_DOWN (16) // Size of the buffer for terminal input to target from host (Usually keyboard input) (Default: 16) +#endif + +#ifndef SEGGER_RTT_PRINTF_BUFFER_SIZE + #define SEGGER_RTT_PRINTF_BUFFER_SIZE (64u) // Size of buffer for RTT printf to bulk-send chars via RTT (Default: 64) +#endif + +#ifndef SEGGER_RTT_MODE_DEFAULT + #define SEGGER_RTT_MODE_DEFAULT SEGGER_RTT_MODE_NO_BLOCK_SKIP // Mode for pre-initialized terminal channel (buffer 0) +#endif + +/********************************************************************* +* +* RTT memcpy configuration +* +* memcpy() is good for large amounts of data, +* but the overhead is big for small amounts, which are usually stored via RTT. +* With SEGGER_RTT_MEMCPY_USE_BYTELOOP a simple byte loop can be used instead. +* +* SEGGER_RTT_MEMCPY() can be used to replace standard memcpy() in RTT functions. +* This is may be required with memory access restrictions, +* such as on Cortex-A devices with MMU. +*/ +#ifndef SEGGER_RTT_MEMCPY_USE_BYTELOOP + #define SEGGER_RTT_MEMCPY_USE_BYTELOOP 0 // 0: Use memcpy/SEGGER_RTT_MEMCPY, 1: Use a simple byte-loop +#endif +// +// Example definition of SEGGER_RTT_MEMCPY to external memcpy with GCC toolchains and Cortex-A targets +// +//#if ((defined __SES_ARM) || (defined __CROSSWORKS_ARM) || (defined __GNUC__)) && (defined (__ARM_ARCH_7A__)) +// #define SEGGER_RTT_MEMCPY(pDest, pSrc, NumBytes) SEGGER_memcpy((pDest), (pSrc), (NumBytes)) +//#endif + +// +// Target is not allowed to perform other RTT operations while string still has not been stored completely. +// Otherwise we would probably end up with a mixed string in the buffer. +// If using RTT from within interrupts, multiple tasks or multi processors, define the SEGGER_RTT_LOCK() and SEGGER_RTT_UNLOCK() function here. +// +// SEGGER_RTT_MAX_INTERRUPT_PRIORITY can be used in the sample lock routines on Cortex-M3/4. +// Make sure to mask all interrupts which can send RTT data, i.e. generate SystemView events, or cause task switches. +// When high-priority interrupts must not be masked while sending RTT data, SEGGER_RTT_MAX_INTERRUPT_PRIORITY needs to be adjusted accordingly. +// (Higher priority = lower priority number) +// Default value for embOS: 128u +// Default configuration in FreeRTOS: configMAX_SYSCALL_INTERRUPT_PRIORITY: ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) +// In case of doubt mask all interrupts: 1 << (8 - BASEPRI_PRIO_BITS) i.e. 1 << 5 when 3 bits are implemented in NVIC +// or define SEGGER_RTT_LOCK() to completely disable interrupts. +// +#ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) // Interrupt priority to lock on SEGGER_RTT_LOCK on Cortex-M3/4 (Default: 0x20) +#endif + +/********************************************************************* +* +* RTT lock configuration for SEGGER Embedded Studio, +* Rowley CrossStudio and GCC +*/ +#if ((defined(__SES_ARM) || defined(__SES_RISCV) || defined(__CROSSWORKS_ARM) || defined(__GNUC__) || defined(__clang__)) && !defined (__CC_ARM) && !defined(WIN32)) + #if (defined(__ARM_ARCH_6M__) || defined(__ARM_ARCH_8M_BASE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, primask \n\t" \ + "movs r1, #1 \n\t" \ + "msr primask, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr primask, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, basepri \n\t" \ + "mov r1, %1 \n\t" \ + "msr basepri, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : "i"(SEGGER_RTT_MAX_INTERRUPT_PRIORITY) \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr basepri, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + + #elif (defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #elif defined(__riscv) || defined(__riscv_xlen) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("csrr %0, mstatus \n\t" \ + "csrci mstatus, 8 \n\t" \ + "andi %0, %0, 8 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("csrr a1, mstatus \n\t" \ + "or %0, %0, a1 \n\t" \ + "csrs mstatus, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "a1" \ + ); \ + } + #else + #define SEGGER_RTT_LOCK() + #define SEGGER_RTT_UNLOCK() + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR EWARM +*/ +#ifdef __ICCARM__ + #if (defined (__ARM6M__) && (__CORE__ == __ARM6M__)) || \ + (defined (__ARM8M_BASELINE__) && (__CORE__ == __ARM8M_BASELINE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7EM__) && (__CORE__ == __ARM7EM__)) || \ + (defined (__ARM7M__) && (__CORE__ == __ARM7M__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_BASEPRI(); \ + __set_BASEPRI(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() __set_BASEPRI(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7A__) && (__CORE__ == __ARM7A__)) || \ + (defined (__ARM7R__) && (__CORE__ == __ARM7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RX +*/ +#ifdef __ICCRX__ + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RL78 +*/ +#ifdef __ICCRL78__ + #define SEGGER_RTT_LOCK() { \ + __istate_t _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for KEIL ARM +*/ +#ifdef __CC_ARM + #if (defined __TARGET_ARCH_6S_M) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char _SEGGER_RTT__PRIMASK __asm( "primask"); \ + _SEGGER_RTT__LockState = _SEGGER_RTT__PRIMASK; \ + _SEGGER_RTT__PRIMASK = 1u; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char BASEPRI __asm( "basepri"); \ + _SEGGER_RTT__LockState = BASEPRI; \ + BASEPRI = SEGGER_RTT_MAX_INTERRUPT_PRIORITY; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() BASEPRI = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for TI ARM +*/ +#ifdef __TI_ARM__ + #if defined (__TI_ARM_V6M0__) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__TI_ARM_V7M3__) || defined (__TI_ARM_V7M4__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = _set_interrupt_priority(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() _set_interrupt_priority(_SEGGER_RTT__LockState); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for CCRX +*/ +#ifdef __RX + #include + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = get_psw() & 0x010000; \ + clrpsw_i(); + + #define SEGGER_RTT_UNLOCK() set_psw(get_psw() | _SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for embOS Simulation on Windows +* (Can also be used for generic RTT locking with embOS) +*/ +#if defined(WIN32) || defined(SEGGER_RTT_LOCK_EMBOS) + +void OS_SIM_EnterCriticalSection(void); +void OS_SIM_LeaveCriticalSection(void); + +#define SEGGER_RTT_LOCK() { \ + OS_SIM_EnterCriticalSection(); + +#define SEGGER_RTT_UNLOCK() OS_SIM_LeaveCriticalSection(); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration fallback +*/ +#ifndef SEGGER_RTT_LOCK + #define SEGGER_RTT_LOCK() // Lock RTT (nestable) (i.e. disable interrupts) +#endif + +#ifndef SEGGER_RTT_UNLOCK + #define SEGGER_RTT_UNLOCK() // Unlock RTT (nestable) (i.e. enable previous interrupt lock state) +#endif + +#endif +/*************************** End of file ****************************/ diff --git a/_test/staticB_di_nopf_aux32/cgo_test.go b/_test/staticB_di_nopf_aux32/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/staticB_di_nopf_aux32/cgo_test.go +++ b/_test/staticB_di_nopf_aux32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_nopf_aux32/generated_cgoPackage.go b/_test/staticB_di_nopf_aux32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_nopf_aux32/generated_cgoPackage.go +++ b/_test/staticB_di_nopf_aux32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_nopf_aux32/triceConfig.h b/_test/staticB_di_nopf_aux32/triceConfig.h index 73fcb5d43..757f37763 100644 --- a/_test/staticB_di_nopf_aux32/triceConfig.h +++ b/_test/staticB_di_nopf_aux32/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STATIC_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_AUXILIARY32 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_nopf_aux8/SEGGER_RTT_Conf.h b/_test/staticB_di_nopf_aux8/SEGGER_RTT_Conf.h new file mode 100644 index 000000000..dc37b31e9 --- /dev/null +++ b/_test/staticB_di_nopf_aux8/SEGGER_RTT_Conf.h @@ -0,0 +1,429 @@ +/********************************************************************* +* SEGGER Microcontroller GmbH * +* The Embedded Experts * +********************************************************************** +* * +* (c) 1995 - 2021 SEGGER Microcontroller GmbH * +* * +* www.segger.com Support: support@segger.com * +* * +********************************************************************** +* * +* SEGGER RTT * Real Time Transfer for embedded targets * +* * +********************************************************************** +* * +* All rights reserved. * +* * +* SEGGER strongly recommends to not make any changes * +* to or modify the source code of this software in order to stay * +* compatible with the RTT protocol and J-Link. * +* * +* Redistribution and use in source and binary forms, with or * +* without modification, are permitted provided that the following * +* condition is met: * +* * +* o Redistributions of source code must retain the above copyright * +* notice, this condition and the following disclaimer. * +* * +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND * +* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, * +* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * +* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * +* DISCLAIMED. IN NO EVENT SHALL SEGGER Microcontroller BE LIABLE FOR * +* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * +* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT * +* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * +* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * +* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * +* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * +* DAMAGE. * +* * +********************************************************************** +* * +* RTT version: 8.12a * +* * +********************************************************************** + +---------------------------END-OF-HEADER------------------------------ +File : SEGGER_RTT_Conf.h +Purpose : Implementation of SEGGER real-time transfer (RTT) which + allows real-time communication on targets which support + debugger memory accesses while the CPU is running. +Revision: $Rev: 24316 $ + +*/ + +#ifndef SEGGER_RTT_CONF_H +#define SEGGER_RTT_CONF_H + +#ifdef __IAR_SYSTEMS_ICC__ + #include +#endif + +/********************************************************************* +* +* Defines, configurable +* +********************************************************************** +*/ + +// +// Take in and set to correct values for Cortex-A systems with CPU cache +// +//#define SEGGER_RTT_CPU_CACHE_LINE_SIZE (32) // Largest cache line size (in bytes) in the current system +//#define SEGGER_RTT_UNCACHED_OFF (0xFB000000) // Address alias where RTT CB and buffers can be accessed uncached +// +// Most common case: +// Up-channel 0: RTT +// Up-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) +#endif +// +// Most common case: +// Down-channel 0: RTT +// Down-channel 1: SystemView +// +#ifndef SEGGER_RTT_MAX_NUM_DOWN_BUFFERS + #define SEGGER_RTT_MAX_NUM_DOWN_BUFFERS (3) // Max. number of down-buffers (H->T) available on this target (Default: 3) +#endif + +#ifndef BUFFER_SIZE_UP + #define BUFFER_SIZE_UP (1024) // Size of the buffer for terminal output of target, up to host (Default: 1k) +#endif + +#ifndef BUFFER_SIZE_DOWN + #define BUFFER_SIZE_DOWN (16) // Size of the buffer for terminal input to target from host (Usually keyboard input) (Default: 16) +#endif + +#ifndef SEGGER_RTT_PRINTF_BUFFER_SIZE + #define SEGGER_RTT_PRINTF_BUFFER_SIZE (64u) // Size of buffer for RTT printf to bulk-send chars via RTT (Default: 64) +#endif + +#ifndef SEGGER_RTT_MODE_DEFAULT + #define SEGGER_RTT_MODE_DEFAULT SEGGER_RTT_MODE_NO_BLOCK_SKIP // Mode for pre-initialized terminal channel (buffer 0) +#endif + +/********************************************************************* +* +* RTT memcpy configuration +* +* memcpy() is good for large amounts of data, +* but the overhead is big for small amounts, which are usually stored via RTT. +* With SEGGER_RTT_MEMCPY_USE_BYTELOOP a simple byte loop can be used instead. +* +* SEGGER_RTT_MEMCPY() can be used to replace standard memcpy() in RTT functions. +* This is may be required with memory access restrictions, +* such as on Cortex-A devices with MMU. +*/ +#ifndef SEGGER_RTT_MEMCPY_USE_BYTELOOP + #define SEGGER_RTT_MEMCPY_USE_BYTELOOP 0 // 0: Use memcpy/SEGGER_RTT_MEMCPY, 1: Use a simple byte-loop +#endif +// +// Example definition of SEGGER_RTT_MEMCPY to external memcpy with GCC toolchains and Cortex-A targets +// +//#if ((defined __SES_ARM) || (defined __CROSSWORKS_ARM) || (defined __GNUC__)) && (defined (__ARM_ARCH_7A__)) +// #define SEGGER_RTT_MEMCPY(pDest, pSrc, NumBytes) SEGGER_memcpy((pDest), (pSrc), (NumBytes)) +//#endif + +// +// Target is not allowed to perform other RTT operations while string still has not been stored completely. +// Otherwise we would probably end up with a mixed string in the buffer. +// If using RTT from within interrupts, multiple tasks or multi processors, define the SEGGER_RTT_LOCK() and SEGGER_RTT_UNLOCK() function here. +// +// SEGGER_RTT_MAX_INTERRUPT_PRIORITY can be used in the sample lock routines on Cortex-M3/4. +// Make sure to mask all interrupts which can send RTT data, i.e. generate SystemView events, or cause task switches. +// When high-priority interrupts must not be masked while sending RTT data, SEGGER_RTT_MAX_INTERRUPT_PRIORITY needs to be adjusted accordingly. +// (Higher priority = lower priority number) +// Default value for embOS: 128u +// Default configuration in FreeRTOS: configMAX_SYSCALL_INTERRUPT_PRIORITY: ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) +// In case of doubt mask all interrupts: 1 << (8 - BASEPRI_PRIO_BITS) i.e. 1 << 5 when 3 bits are implemented in NVIC +// or define SEGGER_RTT_LOCK() to completely disable interrupts. +// +#ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) // Interrupt priority to lock on SEGGER_RTT_LOCK on Cortex-M3/4 (Default: 0x20) +#endif + +/********************************************************************* +* +* RTT lock configuration for SEGGER Embedded Studio, +* Rowley CrossStudio and GCC +*/ +#if ((defined(__SES_ARM) || defined(__SES_RISCV) || defined(__CROSSWORKS_ARM) || defined(__GNUC__) || defined(__clang__)) && !defined (__CC_ARM) && !defined(WIN32)) + #if (defined(__ARM_ARCH_6M__) || defined(__ARM_ARCH_8M_BASE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, primask \n\t" \ + "movs r1, #1 \n\t" \ + "msr primask, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr primask, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs %0, basepri \n\t" \ + "mov r1, %1 \n\t" \ + "msr basepri, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : "i"(SEGGER_RTT_MAX_INTERRUPT_PRIORITY) \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("msr basepri, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : \ + ); \ + } + + #elif (defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #elif defined(__riscv) || defined(__riscv_xlen) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("csrr %0, mstatus \n\t" \ + "csrci mstatus, 8 \n\t" \ + "andi %0, %0, 8 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("csrr a1, mstatus \n\t" \ + "or %0, %0, a1 \n\t" \ + "csrs mstatus, %0 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "a1" \ + ); \ + } + #else + #define SEGGER_RTT_LOCK() + #define SEGGER_RTT_UNLOCK() + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR EWARM +*/ +#ifdef __ICCARM__ + #if (defined (__ARM6M__) && (__CORE__ == __ARM6M__)) || \ + (defined (__ARM8M_BASELINE__) && (__CORE__ == __ARM8M_BASELINE__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7EM__) && (__CORE__ == __ARM7EM__)) || \ + (defined (__ARM7M__) && (__CORE__ == __ARM7M__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) || \ + (defined (__ARM8M_MAINLINE__) && (__CORE__ == __ARM8M_MAINLINE__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_BASEPRI(); \ + __set_BASEPRI(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() __set_BASEPRI(_SEGGER_RTT__LockState); \ + } + #elif (defined (__ARM7A__) && (__CORE__ == __ARM7A__)) || \ + (defined (__ARM7R__) && (__CORE__ == __ARM7R__)) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + __asm volatile ("mrs r1, CPSR \n\t" \ + "mov %0, r1 \n\t" \ + "orr r1, r1, #0xC0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : "=r" (_SEGGER_RTT__LockState) \ + : \ + : "r1", "cc" \ + ); + + #define SEGGER_RTT_UNLOCK() __asm volatile ("mov r0, %0 \n\t" \ + "mrs r1, CPSR \n\t" \ + "bic r1, r1, #0xC0 \n\t" \ + "and r0, r0, #0xC0 \n\t" \ + "orr r1, r1, r0 \n\t" \ + "msr CPSR_c, r1 \n\t" \ + : \ + : "r" (_SEGGER_RTT__LockState) \ + : "r0", "r1", "cc" \ + ); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RX +*/ +#ifdef __ICCRX__ + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for IAR RL78 +*/ +#ifdef __ICCRL78__ + #define SEGGER_RTT_LOCK() { \ + __istate_t _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_interrupt_state(); \ + __disable_interrupt(); + + #define SEGGER_RTT_UNLOCK() __set_interrupt_state(_SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for KEIL ARM +*/ +#ifdef __CC_ARM + #if (defined __TARGET_ARCH_6S_M) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char _SEGGER_RTT__PRIMASK __asm( "primask"); \ + _SEGGER_RTT__LockState = _SEGGER_RTT__PRIMASK; \ + _SEGGER_RTT__PRIMASK = 1u; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + register unsigned char BASEPRI __asm( "basepri"); \ + _SEGGER_RTT__LockState = BASEPRI; \ + BASEPRI = SEGGER_RTT_MAX_INTERRUPT_PRIORITY; \ + __schedule_barrier(); + + #define SEGGER_RTT_UNLOCK() BASEPRI = _SEGGER_RTT__LockState; \ + __schedule_barrier(); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for TI ARM +*/ +#ifdef __TI_ARM__ + #if defined (__TI_ARM_V6M0__) + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = __get_PRIMASK(); \ + __set_PRIMASK(1); + + #define SEGGER_RTT_UNLOCK() __set_PRIMASK(_SEGGER_RTT__LockState); \ + } + #elif (defined (__TI_ARM_V7M3__) || defined (__TI_ARM_V7M4__)) + #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY + #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) + #endif + #define SEGGER_RTT_LOCK() { \ + unsigned int _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = _set_interrupt_priority(SEGGER_RTT_MAX_INTERRUPT_PRIORITY); + + #define SEGGER_RTT_UNLOCK() _set_interrupt_priority(_SEGGER_RTT__LockState); \ + } + #endif +#endif + +/********************************************************************* +* +* RTT lock configuration for CCRX +*/ +#ifdef __RX + #include + #define SEGGER_RTT_LOCK() { \ + unsigned long _SEGGER_RTT__LockState; \ + _SEGGER_RTT__LockState = get_psw() & 0x010000; \ + clrpsw_i(); + + #define SEGGER_RTT_UNLOCK() set_psw(get_psw() | _SEGGER_RTT__LockState); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration for embOS Simulation on Windows +* (Can also be used for generic RTT locking with embOS) +*/ +#if defined(WIN32) || defined(SEGGER_RTT_LOCK_EMBOS) + +void OS_SIM_EnterCriticalSection(void); +void OS_SIM_LeaveCriticalSection(void); + +#define SEGGER_RTT_LOCK() { \ + OS_SIM_EnterCriticalSection(); + +#define SEGGER_RTT_UNLOCK() OS_SIM_LeaveCriticalSection(); \ + } +#endif + +/********************************************************************* +* +* RTT lock configuration fallback +*/ +#ifndef SEGGER_RTT_LOCK + #define SEGGER_RTT_LOCK() // Lock RTT (nestable) (i.e. disable interrupts) +#endif + +#ifndef SEGGER_RTT_UNLOCK + #define SEGGER_RTT_UNLOCK() // Unlock RTT (nestable) (i.e. enable previous interrupt lock state) +#endif + +#endif +/*************************** End of file ****************************/ diff --git a/_test/staticB_di_nopf_aux8/cgo_test.go b/_test/staticB_di_nopf_aux8/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/staticB_di_nopf_aux8/cgo_test.go +++ b/_test/staticB_di_nopf_aux8/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_nopf_aux8/generated_cgoPackage.go b/_test/staticB_di_nopf_aux8/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_nopf_aux8/generated_cgoPackage.go +++ b/_test/staticB_di_nopf_aux8/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_nopf_aux8/triceConfig.h b/_test/staticB_di_nopf_aux8/triceConfig.h index fdc3d78c3..7083cfea4 100644 --- a/_test/staticB_di_nopf_aux8/triceConfig.h +++ b/_test/staticB_di_nopf_aux8/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STATIC_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_AUXILIARY8 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_nopf_rtt32/SEGGER_RTT_Conf.h b/_test/staticB_di_nopf_rtt32/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/staticB_di_nopf_rtt32/SEGGER_RTT_Conf.h +++ b/_test/staticB_di_nopf_rtt32/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/staticB_di_nopf_rtt32/cgo_test.go b/_test/staticB_di_nopf_rtt32/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/staticB_di_nopf_rtt32/cgo_test.go +++ b/_test/staticB_di_nopf_rtt32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_nopf_rtt32/generated_cgoPackage.go b/_test/staticB_di_nopf_rtt32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_nopf_rtt32/generated_cgoPackage.go +++ b/_test/staticB_di_nopf_rtt32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_nopf_rtt32/triceConfig.h b/_test/staticB_di_nopf_rtt32/triceConfig.h index 82d26bfc3..3f03326c9 100644 --- a/_test/staticB_di_nopf_rtt32/triceConfig.h +++ b/_test/staticB_di_nopf_rtt32/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STATIC_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_nopf_rtt8/SEGGER_RTT_Conf.h b/_test/staticB_di_nopf_rtt8/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/staticB_di_nopf_rtt8/SEGGER_RTT_Conf.h +++ b/_test/staticB_di_nopf_rtt8/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/staticB_di_nopf_rtt8/cgo_test.go b/_test/staticB_di_nopf_rtt8/cgo_test.go index 00d8a117f..dfd14ed39 100644 --- a/_test/staticB_di_nopf_rtt8/cgo_test.go +++ b/_test/staticB_di_nopf_rtt8/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=NONE", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_nopf_rtt8/generated_cgoPackage.go b/_test/staticB_di_nopf_rtt8/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_nopf_rtt8/generated_cgoPackage.go +++ b/_test/staticB_di_nopf_rtt8/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_nopf_rtt8/triceConfig.h b/_test/staticB_di_nopf_rtt8/triceConfig.h index 3a3f581d8..6fbab1e29 100644 --- a/_test/staticB_di_nopf_rtt8/triceConfig.h +++ b/_test/staticB_di_nopf_rtt8/triceConfig.h @@ -12,7 +12,6 @@ extern "C" { #define TRICE_BUFFER TRICE_STATIC_BUFFER #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_tcobs_rtt32/SEGGER_RTT_Conf.h b/_test/staticB_di_tcobs_rtt32/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/staticB_di_tcobs_rtt32/SEGGER_RTT_Conf.h +++ b/_test/staticB_di_tcobs_rtt32/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/staticB_di_tcobs_rtt32/cgo_test.go b/_test/staticB_di_tcobs_rtt32/cgo_test.go index 8f29d3cf1..1e091b0fd 100644 --- a/_test/staticB_di_tcobs_rtt32/cgo_test.go +++ b/_test/staticB_di_tcobs_rtt32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log" /*"-singleFraming",*/, "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log" /*"-singleFraming",*/, "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_tcobs_rtt32/generated_cgoPackage.go b/_test/staticB_di_tcobs_rtt32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_tcobs_rtt32/generated_cgoPackage.go +++ b/_test/staticB_di_tcobs_rtt32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_tcobs_rtt32/triceConfig.h b/_test/staticB_di_tcobs_rtt32/triceConfig.h index 762e217e6..2dc90240f 100644 --- a/_test/staticB_di_tcobs_rtt32/triceConfig.h +++ b/_test/staticB_di_tcobs_rtt32/triceConfig.h @@ -13,7 +13,6 @@ extern "C" { #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_TCOBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_tcobs_rtt8/SEGGER_RTT_Conf.h b/_test/staticB_di_tcobs_rtt8/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/staticB_di_tcobs_rtt8/SEGGER_RTT_Conf.h +++ b/_test/staticB_di_tcobs_rtt8/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/staticB_di_tcobs_rtt8/cgo_test.go b/_test/staticB_di_tcobs_rtt8/cgo_test.go index bb61e645c..be8f8c4f2 100644 --- a/_test/staticB_di_tcobs_rtt8/cgo_test.go +++ b/_test/staticB_di_tcobs_rtt8/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pf=TCOBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_tcobs_rtt8/generated_cgoPackage.go b/_test/staticB_di_tcobs_rtt8/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_tcobs_rtt8/generated_cgoPackage.go +++ b/_test/staticB_di_tcobs_rtt8/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_tcobs_rtt8/triceConfig.h b/_test/staticB_di_tcobs_rtt8/triceConfig.h index 12434c6d1..156a807b2 100644 --- a/_test/staticB_di_tcobs_rtt8/triceConfig.h +++ b/_test/staticB_di_tcobs_rtt8/triceConfig.h @@ -13,7 +13,6 @@ extern "C" { #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_TCOBS #define TRICE_DIRECT_SEGGER_RTT_8BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h b/_test/staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h index 12941094c..dc37b31e9 100644 --- a/_test/staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h +++ b/_test/staticB_di_xtea_cobs_rtt32/SEGGER_RTT_Conf.h @@ -42,7 +42,7 @@ * * ********************************************************************** * * -* RTT version: 7.60g * +* RTT version: 8.12a * * * ********************************************************************** @@ -80,7 +80,7 @@ Revision: $Rev: 24316 $ // Up-channel 1: SystemView // #ifndef SEGGER_RTT_MAX_NUM_UP_BUFFERS - #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (1) // Max. number of up-buffers (T->H) available on this target (Default: 3) + #define SEGGER_RTT_MAX_NUM_UP_BUFFERS (3) // Max. number of up-buffers (T->H) available on this target (Default: 3) #endif // // Most common case: @@ -170,7 +170,7 @@ Revision: $Rev: 24316 $ : \ ); \ } - #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__)) + #elif (defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_8M_MAIN__) || defined(__ARM_ARCH_8_1M_MAIN__)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif @@ -338,7 +338,7 @@ Revision: $Rev: 24316 $ #define SEGGER_RTT_UNLOCK() _SEGGER_RTT__PRIMASK = _SEGGER_RTT__LockState; \ __schedule_barrier(); \ } - #elif (defined(__TARGET_ARCHM_7) || defined(__TARGET_ARCH_7E_M)) + #elif (defined(__TARGET_ARCH_7_M) || defined(__TARGET_ARCH_7E_M)) #ifndef SEGGER_RTT_MAX_INTERRUPT_PRIORITY #define SEGGER_RTT_MAX_INTERRUPT_PRIORITY (0x20) #endif diff --git a/_test/staticB_di_xtea_cobs_rtt32/cgo_test.go b/_test/staticB_di_xtea_cobs_rtt32/cgo_test.go index e8d292c8b..9009e9cbb 100644 --- a/_test/staticB_di_xtea_cobs_rtt32/cgo_test.go +++ b/_test/staticB_di_xtea_cobs_rtt32/cgo_test.go @@ -17,7 +17,7 @@ func TestLogs(t *testing.T) { // It uses the inside fSys specified til.json and returns the log output. triceLog := func(t *testing.T, fSys *afero.Afero, buffer string) string { var o bytes.Buffer - assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/_test/testdata/til.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16", "-ts16", "time: %04x", "-ts32", "time:%08x"})) + assert.Nil(t, args.Handler(io.Writer(&o), fSys, []string{"trice", "log", "-i", path.Join(triceDir, "/demoTIL.json"), "-p=BUFFER", "-args", buffer, "-hs=off", "-prefix=off", "-li=off", "-color=off", "-pw=MySecret", "-pf=COBS", "-d16", "-ts0", "time: ", "-ts16", "time: %04x", "-ts32", "time:%08x"})) return o.String() } diff --git a/_test/staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go b/_test/staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go +++ b/_test/staticB_di_xtea_cobs_rtt32/generated_cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/staticB_di_xtea_cobs_rtt32/triceConfig.h b/_test/staticB_di_xtea_cobs_rtt32/triceConfig.h index 32d4aad07..ab10396c2 100644 --- a/_test/staticB_di_xtea_cobs_rtt32/triceConfig.h +++ b/_test/staticB_di_xtea_cobs_rtt32/triceConfig.h @@ -10,12 +10,10 @@ extern "C" { #endif #define TRICE_BUFFER TRICE_STATIC_BUFFER - #define TRICE_DIRECT_OUTPUT 1 #define TRICE_DIRECT_XTEA_ENCRYPT 1 #define TRICE_DIRECT_OUT_FRAMING TRICE_FRAMING_COBS #define TRICE_DIRECT_SEGGER_RTT_32BIT_WRITE 1 - #define TRICE_CGO 1 #define TRICE_CYCLE_COUNTER 0 diff --git a/_test/testdata/cgoPackage.go b/_test/testdata/cgoPackage.go index 93f924427..ac954638b 100644 --- a/_test/testdata/cgoPackage.go +++ b/_test/testdata/cgoPackage.go @@ -8,7 +8,7 @@ // The Go functions defined here are not exported. They are called by the Go test functions in this package. // This way the test functions are executing the trice C-code compiled with the triceConfig.h here. // Inside ./testdata this file is named cgoPackage.go where it is maintained. -// The test/updateTestData.sh script copied this file under the name generated_cgoPackage.go into various +// The ../renewIDs_in_examples_and_test_folder.sh script copies this file under the name generated_cgoPackage.go into various // package folders, where it is used separately. package cgot @@ -18,7 +18,7 @@ package cgot // unsigned TriceOutDepth( void ); // void CgoSetTriceBuffer( uint8_t* buf ); // void CgoClearTriceBuffer( void ); -// #cgo CFLAGS: -g -I../../src +// #cgo CFLAGS: -g -I../../src -Wshadow -Wno-format-security // #include "../../src/trice.c" // #include "../../src/trice8.c" // #include "../../src/trice16.c" @@ -127,7 +127,7 @@ func getExpectedResults(fSys *afero.Afero, filename string) (result []results) { if index >= 0 { var r results r.line = i + 1 // 1st line number is 1 and not 0 - r.exps = strings.TrimSpace(lineEnd[index+len(subStr) : len(lineEnd)]) + r.exps = strings.TrimSpace(lineEnd[index+len(subStr):]) result = append(result, r) } } diff --git a/_test/testdata/li.json b/_test/testdata/li.json deleted file mode 100644 index 4189f2055..000000000 --- a/_test/testdata/li.json +++ /dev/null @@ -1,8726 +0,0 @@ -{ - "14000": { - "File": "triceCheck.c", - "Line": 50 - }, - "14001": { - "File": "triceCheck.c", - "Line": 52 - }, - "14002": { - "File": "triceCheck.c", - "Line": 54 - }, - "14003": { - "File": "triceCheck.c", - "Line": 55 - }, - "14004": { - "File": "triceCheck.c", - "Line": 56 - }, - "14005": { - "File": "triceCheck.c", - "Line": 132 - }, - "14006": { - "File": "triceCheck.c", - "Line": 134 - }, - "14007": { - "File": "triceCheck.c", - "Line": 135 - }, - "14008": { - "File": "triceCheck.c", - "Line": 136 - }, - "14009": { - "File": "triceCheck.c", - "Line": 137 - }, - "14010": { - "File": "triceCheck.c", - "Line": 138 - }, - "14011": { - "File": "triceCheck.c", - "Line": 139 - }, - "14012": { - "File": "triceCheck.c", - "Line": 140 - }, - "14013": { - "File": "triceCheck.c", - "Line": 141 - }, - "14014": { - "File": "triceCheck.c", - "Line": 142 - }, - "14015": { - "File": "triceCheck.c", - "Line": 143 - }, - "14016": { - "File": "triceCheck.c", - "Line": 144 - }, - "14017": { - "File": "triceCheck.c", - "Line": 145 - }, - "14018": { - "File": "triceCheck.c", - "Line": 147 - }, - "14019": { - "File": "triceCheck.c", - "Line": 148 - }, - "14020": { - "File": "triceCheck.c", - "Line": 150 - }, - "14021": { - "File": "triceCheck.c", - "Line": 152 - }, - "14022": { - "File": "triceCheck.c", - "Line": 153 - }, - "14023": { - "File": "triceCheck.c", - "Line": 154 - }, - "14024": { - "File": "triceCheck.c", - "Line": 155 - }, - "14025": { - "File": "triceCheck.c", - "Line": 156 - }, - "14026": { - "File": "triceCheck.c", - "Line": 157 - }, - "14027": { - "File": "triceCheck.c", - "Line": 158 - }, - "14028": { - "File": "triceCheck.c", - "Line": 159 - }, - "14029": { - "File": "triceCheck.c", - "Line": 160 - }, - "14030": { - "File": "triceCheck.c", - "Line": 161 - }, - "14031": { - "File": "triceCheck.c", - "Line": 162 - }, - "14032": { - "File": "triceCheck.c", - "Line": 163 - }, - "14033": { - "File": "triceCheck.c", - "Line": 165 - }, - "14034": { - "File": "triceCheck.c", - "Line": 166 - }, - "14035": { - "File": "triceCheck.c", - "Line": 168 - }, - "14036": { - "File": "triceCheck.c", - "Line": 172 - }, - "14037": { - "File": "triceCheck.c", - "Line": 176 - }, - "14038": { - "File": "triceCheck.c", - "Line": 177 - }, - "14039": { - "File": "triceCheck.c", - "Line": 179 - }, - "14040": { - "File": "triceCheck.c", - "Line": 180 - }, - "14041": { - "File": "triceCheck.c", - "Line": 182 - }, - "14042": { - "File": "triceCheck.c", - "Line": 184 - }, - "14043": { - "File": "triceCheck.c", - "Line": 186 - }, - "14044": { - "File": "triceCheck.c", - "Line": 188 - }, - "14045": { - "File": "triceCheck.c", - "Line": 191 - }, - "14046": { - "File": "triceCheck.c", - "Line": 193 - }, - "14047": { - "File": "triceCheck.c", - "Line": 194 - }, - "14048": { - "File": "triceCheck.c", - "Line": 196 - }, - "14049": { - "File": "triceCheck.c", - "Line": 197 - }, - "14050": { - "File": "triceCheck.c", - "Line": 198 - }, - "14051": { - "File": "triceCheck.c", - "Line": 199 - }, - "14052": { - "File": "triceCheck.c", - "Line": 200 - }, - "14053": { - "File": "triceCheck.c", - "Line": 202 - }, - "14054": { - "File": "triceCheck.c", - "Line": 203 - }, - "14055": { - "File": "triceCheck.c", - "Line": 204 - }, - "14056": { - "File": "triceCheck.c", - "Line": 205 - }, - "14057": { - "File": "triceCheck.c", - "Line": 207 - }, - "14058": { - "File": "triceCheck.c", - "Line": 208 - }, - "14059": { - "File": "triceCheck.c", - "Line": 209 - }, - "14060": { - "File": "triceCheck.c", - "Line": 210 - }, - "14061": { - "File": "triceCheck.c", - "Line": 212 - }, - "14062": { - "File": "triceCheck.c", - "Line": 213 - }, - "14063": { - "File": "triceCheck.c", - "Line": 214 - }, - "14064": { - "File": "triceCheck.c", - "Line": 215 - }, - "14065": { - "File": "triceCheck.c", - "Line": 217 - }, - "14066": { - "File": "triceCheck.c", - "Line": 218 - }, - "14067": { - "File": "triceCheck.c", - "Line": 219 - }, - "14068": { - "File": "triceCheck.c", - "Line": 220 - }, - "14069": { - "File": "triceCheck.c", - "Line": 222 - }, - "14070": { - "File": "triceCheck.c", - "Line": 223 - }, - "14071": { - "File": "triceCheck.c", - "Line": 224 - }, - "14072": { - "File": "triceCheck.c", - "Line": 225 - }, - "14073": { - "File": "triceCheck.c", - "Line": 226 - }, - "14074": { - "File": "triceCheck.c", - "Line": 227 - }, - "14075": { - "File": "triceCheck.c", - "Line": 228 - }, - "14076": { - "File": "triceCheck.c", - "Line": 230 - }, - "14077": { - "File": "triceCheck.c", - "Line": 231 - }, - "14078": { - "File": "triceCheck.c", - "Line": 232 - }, - "14079": { - "File": "triceCheck.c", - "Line": 233 - }, - "14080": { - "File": "triceCheck.c", - "Line": 234 - }, - "14081": { - "File": "triceCheck.c", - "Line": 235 - }, - "14082": { - "File": "triceCheck.c", - "Line": 236 - }, - "14083": { - "File": "triceCheck.c", - "Line": 238 - }, - "14084": { - "File": "triceCheck.c", - "Line": 239 - }, - "14085": { - "File": "triceCheck.c", - "Line": 240 - }, - "14086": { - "File": "triceCheck.c", - "Line": 241 - }, - "14087": { - "File": "triceCheck.c", - "Line": 242 - }, - "14088": { - "File": "triceCheck.c", - "Line": 243 - }, - "14089": { - "File": "triceCheck.c", - "Line": 244 - }, - "14090": { - "File": "triceCheck.c", - "Line": 245 - }, - "14091": { - "File": "triceCheck.c", - "Line": 246 - }, - "14092": { - "File": "triceCheck.c", - "Line": 247 - }, - "14093": { - "File": "triceCheck.c", - "Line": 250 - }, - "14094": { - "File": "triceCheck.c", - "Line": 251 - }, - "14095": { - "File": "triceCheck.c", - "Line": 252 - }, - "14096": { - "File": "triceCheck.c", - "Line": 253 - }, - "14097": { - "File": "triceCheck.c", - "Line": 254 - }, - "14098": { - "File": "triceCheck.c", - "Line": 255 - }, - "14099": { - "File": "triceCheck.c", - "Line": 256 - }, - "14100": { - "File": "triceCheck.c", - "Line": 257 - }, - "14101": { - "File": "triceCheck.c", - "Line": 258 - }, - "14102": { - "File": "triceCheck.c", - "Line": 259 - }, - "14103": { - "File": "triceCheck.c", - "Line": 260 - }, - "14104": { - "File": "triceCheck.c", - "Line": 261 - }, - "14105": { - "File": "triceCheck.c", - "Line": 263 - }, - "14106": { - "File": "triceCheck.c", - "Line": 265 - }, - "14107": { - "File": "triceCheck.c", - "Line": 266 - }, - "14108": { - "File": "triceCheck.c", - "Line": 267 - }, - "14109": { - "File": "triceCheck.c", - "Line": 270 - }, - "14110": { - "File": "triceCheck.c", - "Line": 272 - }, - "14111": { - "File": "triceCheck.c", - "Line": 273 - }, - "14112": { - "File": "triceCheck.c", - "Line": 275 - }, - "14113": { - "File": "triceCheck.c", - "Line": 276 - }, - "14114": { - "File": "triceCheck.c", - "Line": 277 - }, - "14115": { - "File": "triceCheck.c", - "Line": 278 - }, - "14116": { - "File": "triceCheck.c", - "Line": 279 - }, - "14117": { - "File": "triceCheck.c", - "Line": 280 - }, - "14118": { - "File": "triceCheck.c", - "Line": 281 - }, - "14119": { - "File": "triceCheck.c", - "Line": 282 - }, - "14120": { - "File": "triceCheck.c", - "Line": 283 - }, - "14121": { - "File": "triceCheck.c", - "Line": 284 - }, - "14122": { - "File": "triceCheck.c", - "Line": 285 - }, - "14123": { - "File": "triceCheck.c", - "Line": 286 - }, - "14124": { - "File": "triceCheck.c", - "Line": 287 - }, - "14125": { - "File": "triceCheck.c", - "Line": 288 - }, - "14126": { - "File": "triceCheck.c", - "Line": 290 - }, - "14127": { - "File": "triceCheck.c", - "Line": 292 - }, - "14128": { - "File": "triceCheck.c", - "Line": 293 - }, - "14129": { - "File": "triceCheck.c", - "Line": 294 - }, - "14130": { - "File": "triceCheck.c", - "Line": 295 - }, - "14131": { - "File": "triceCheck.c", - "Line": 296 - }, - "14132": { - "File": "triceCheck.c", - "Line": 297 - }, - "14133": { - "File": "triceCheck.c", - "Line": 299 - }, - "14134": { - "File": "triceCheck.c", - "Line": 300 - }, - "14135": { - "File": "triceCheck.c", - "Line": 301 - }, - "14136": { - "File": "triceCheck.c", - "Line": 302 - }, - "14137": { - "File": "triceCheck.c", - "Line": 303 - }, - "14138": { - "File": "triceCheck.c", - "Line": 304 - }, - "14139": { - "File": "triceCheck.c", - "Line": 306 - }, - "14140": { - "File": "triceCheck.c", - "Line": 307 - }, - "14141": { - "File": "triceCheck.c", - "Line": 308 - }, - "14142": { - "File": "triceCheck.c", - "Line": 309 - }, - "14143": { - "File": "triceCheck.c", - "Line": 310 - }, - "14144": { - "File": "triceCheck.c", - "Line": 311 - }, - "14145": { - "File": "triceCheck.c", - "Line": 312 - }, - "14146": { - "File": "triceCheck.c", - "Line": 314 - }, - "14147": { - "File": "triceCheck.c", - "Line": 315 - }, - "14148": { - "File": "triceCheck.c", - "Line": 316 - }, - "14149": { - "File": "triceCheck.c", - "Line": 317 - }, - "14150": { - "File": "triceCheck.c", - "Line": 318 - }, - "14151": { - "File": "triceCheck.c", - "Line": 319 - }, - "14152": { - "File": "triceCheck.c", - "Line": 321 - }, - "14153": { - "File": "triceCheck.c", - "Line": 322 - }, - "14154": { - "File": "triceCheck.c", - "Line": 323 - }, - "14155": { - "File": "triceCheck.c", - "Line": 324 - }, - "14156": { - "File": "triceCheck.c", - "Line": 326 - }, - "14157": { - "File": "triceCheck.c", - "Line": 327 - }, - "14158": { - "File": "triceCheck.c", - "Line": 328 - }, - "14159": { - "File": "triceCheck.c", - "Line": 329 - }, - "14160": { - "File": "triceCheck.c", - "Line": 330 - }, - "14161": { - "File": "triceCheck.c", - "Line": 331 - }, - "14162": { - "File": "triceCheck.c", - "Line": 332 - }, - "14163": { - "File": "triceCheck.c", - "Line": 333 - }, - "14164": { - "File": "triceCheck.c", - "Line": 334 - }, - "14165": { - "File": "triceCheck.c", - "Line": 336 - }, - "14166": { - "File": "triceCheck.c", - "Line": 337 - }, - "14167": { - "File": "triceCheck.c", - "Line": 338 - }, - "14168": { - "File": "triceCheck.c", - "Line": 339 - }, - "14169": { - "File": "triceCheck.c", - "Line": 340 - }, - "14170": { - "File": "triceCheck.c", - "Line": 341 - }, - "14171": { - "File": "triceCheck.c", - "Line": 342 - }, - "14172": { - "File": "triceCheck.c", - "Line": 343 - }, - "14173": { - "File": "triceCheck.c", - "Line": 344 - }, - "14174": { - "File": "triceCheck.c", - "Line": 346 - }, - "14175": { - "File": "triceCheck.c", - "Line": 347 - }, - "14176": { - "File": "triceCheck.c", - "Line": 348 - }, - "14177": { - "File": "triceCheck.c", - "Line": 349 - }, - "14178": { - "File": "triceCheck.c", - "Line": 350 - }, - "14179": { - "File": "triceCheck.c", - "Line": 351 - }, - "14180": { - "File": "triceCheck.c", - "Line": 352 - }, - "14181": { - "File": "triceCheck.c", - "Line": 353 - }, - "14182": { - "File": "triceCheck.c", - "Line": 354 - }, - "14183": { - "File": "triceCheck.c", - "Line": 356 - }, - "14184": { - "File": "triceCheck.c", - "Line": 357 - }, - "14185": { - "File": "triceCheck.c", - "Line": 358 - }, - "14186": { - "File": "triceCheck.c", - "Line": 359 - }, - "14187": { - "File": "triceCheck.c", - "Line": 360 - }, - "14188": { - "File": "triceCheck.c", - "Line": 361 - }, - "14189": { - "File": "triceCheck.c", - "Line": 362 - }, - "14190": { - "File": "triceCheck.c", - "Line": 363 - }, - "14191": { - "File": "triceCheck.c", - "Line": 364 - }, - "14192": { - "File": "triceCheck.c", - "Line": 365 - }, - "14193": { - "File": "triceCheck.c", - "Line": 366 - }, - "14194": { - "File": "triceCheck.c", - "Line": 367 - }, - "14195": { - "File": "triceCheck.c", - "Line": 368 - }, - "14196": { - "File": "triceCheck.c", - "Line": 369 - }, - "14197": { - "File": "triceCheck.c", - "Line": 370 - }, - "14198": { - "File": "triceCheck.c", - "Line": 371 - }, - "14199": { - "File": "triceCheck.c", - "Line": 372 - }, - "14200": { - "File": "triceCheck.c", - "Line": 373 - }, - "14201": { - "File": "triceCheck.c", - "Line": 374 - }, - "14202": { - "File": "triceCheck.c", - "Line": 375 - }, - "14203": { - "File": "triceCheck.c", - "Line": 376 - }, - "14204": { - "File": "triceCheck.c", - "Line": 377 - }, - "14205": { - "File": "triceCheck.c", - "Line": 379 - }, - "14206": { - "File": "triceCheck.c", - "Line": 380 - }, - "14207": { - "File": "triceCheck.c", - "Line": 381 - }, - "14208": { - "File": "triceCheck.c", - "Line": 382 - }, - "14209": { - "File": "triceCheck.c", - "Line": 383 - }, - "14210": { - "File": "triceCheck.c", - "Line": 384 - }, - "14211": { - "File": "triceCheck.c", - "Line": 385 - }, - "14212": { - "File": "triceCheck.c", - "Line": 386 - }, - "14213": { - "File": "triceCheck.c", - "Line": 387 - }, - "14214": { - "File": "triceCheck.c", - "Line": 388 - }, - "14215": { - "File": "triceCheck.c", - "Line": 389 - }, - "14216": { - "File": "triceCheck.c", - "Line": 390 - }, - "14217": { - "File": "triceCheck.c", - "Line": 392 - }, - "14218": { - "File": "triceCheck.c", - "Line": 395 - }, - "14219": { - "File": "triceCheck.c", - "Line": 403 - }, - "14220": { - "File": "triceCheck.c", - "Line": 407 - }, - "14221": { - "File": "triceCheck.c", - "Line": 409 - }, - "14222": { - "File": "triceCheck.c", - "Line": 410 - }, - "14223": { - "File": "triceCheck.c", - "Line": 411 - }, - "14224": { - "File": "triceCheck.c", - "Line": 412 - }, - "14225": { - "File": "triceCheck.c", - "Line": 413 - }, - "14226": { - "File": "triceCheck.c", - "Line": 414 - }, - "14227": { - "File": "triceCheck.c", - "Line": 415 - }, - "14228": { - "File": "triceCheck.c", - "Line": 416 - }, - "14229": { - "File": "triceCheck.c", - "Line": 417 - }, - "14230": { - "File": "triceCheck.c", - "Line": 418 - }, - "14231": { - "File": "triceCheck.c", - "Line": 419 - }, - "14232": { - "File": "triceCheck.c", - "Line": 421 - }, - "14233": { - "File": "triceCheck.c", - "Line": 423 - }, - "14234": { - "File": "triceCheck.c", - "Line": 424 - }, - "14235": { - "File": "triceCheck.c", - "Line": 425 - }, - "14236": { - "File": "triceCheck.c", - "Line": 426 - }, - "14237": { - "File": "triceCheck.c", - "Line": 427 - }, - "14238": { - "File": "triceCheck.c", - "Line": 429 - }, - "14239": { - "File": "triceCheck.c", - "Line": 430 - }, - "14240": { - "File": "triceCheck.c", - "Line": 432 - }, - "14241": { - "File": "triceCheck.c", - "Line": 433 - }, - "14242": { - "File": "triceCheck.c", - "Line": 434 - }, - "14243": { - "File": "triceCheck.c", - "Line": 435 - }, - "14244": { - "File": "triceCheck.c", - "Line": 436 - }, - "14245": { - "File": "triceCheck.c", - "Line": 437 - }, - "14246": { - "File": "triceCheck.c", - "Line": 439 - }, - "14247": { - "File": "triceCheck.c", - "Line": 441 - }, - "14248": { - "File": "triceCheck.c", - "Line": 442 - }, - "14249": { - "File": "triceCheck.c", - "Line": 443 - }, - "14250": { - "File": "triceCheck.c", - "Line": 444 - }, - "14251": { - "File": "triceCheck.c", - "Line": 445 - }, - "14252": { - "File": "triceCheck.c", - "Line": 446 - }, - "14253": { - "File": "triceCheck.c", - "Line": 448 - }, - "14254": { - "File": "triceCheck.c", - "Line": 449 - }, - "14255": { - "File": "triceCheck.c", - "Line": 450 - }, - "14256": { - "File": "triceCheck.c", - "Line": 451 - }, - "14257": { - "File": "triceCheck.c", - "Line": 452 - }, - "14258": { - "File": "triceCheck.c", - "Line": 453 - }, - "14259": { - "File": "triceCheck.c", - "Line": 455 - }, - "14260": { - "File": "triceCheck.c", - "Line": 456 - }, - "14261": { - "File": "triceCheck.c", - "Line": 457 - }, - "14262": { - "File": "triceCheck.c", - "Line": 458 - }, - "14263": { - "File": "triceCheck.c", - "Line": 459 - }, - "14264": { - "File": "triceCheck.c", - "Line": 460 - }, - "14265": { - "File": "triceCheck.c", - "Line": 461 - }, - "14266": { - "File": "triceCheck.c", - "Line": 463 - }, - "14267": { - "File": "triceCheck.c", - "Line": 467 - }, - "14268": { - "File": "triceCheck.c", - "Line": 468 - }, - "14269": { - "File": "triceCheck.c", - "Line": 469 - }, - "14270": { - "File": "triceCheck.c", - "Line": 471 - }, - "14271": { - "File": "triceCheck.c", - "Line": 473 - }, - "14272": { - "File": "triceCheck.c", - "Line": 479 - }, - "14273": { - "File": "triceCheck.c", - "Line": 480 - }, - "14274": { - "File": "triceCheck.c", - "Line": 489 - }, - "14275": { - "File": "triceCheck.c", - "Line": 490 - }, - "14276": { - "File": "triceCheck.c", - "Line": 503 - }, - "14277": { - "File": "triceCheck.c", - "Line": 504 - }, - "14278": { - "File": "triceCheck.c", - "Line": 520 - }, - "14279": { - "File": "triceCheck.c", - "Line": 521 - }, - "14280": { - "File": "triceCheck.c", - "Line": 545 - }, - "14281": { - "File": "triceCheck.c", - "Line": 546 - }, - "14282": { - "File": "triceCheck.c", - "Line": 552 - }, - "14283": { - "File": "triceCheck.c", - "Line": 553 - }, - "14284": { - "File": "triceCheck.c", - "Line": 554 - }, - "14285": { - "File": "triceCheck.c", - "Line": 555 - }, - "14286": { - "File": "triceCheck.c", - "Line": 556 - }, - "14287": { - "File": "triceCheck.c", - "Line": 557 - }, - "14288": { - "File": "triceCheck.c", - "Line": 559 - }, - "14289": { - "File": "triceCheck.c", - "Line": 560 - }, - "14290": { - "File": "triceCheck.c", - "Line": 561 - }, - "14291": { - "File": "triceCheck.c", - "Line": 562 - }, - "14292": { - "File": "triceCheck.c", - "Line": 563 - }, - "14293": { - "File": "triceCheck.c", - "Line": 564 - }, - "14294": { - "File": "triceCheck.c", - "Line": 566 - }, - "14295": { - "File": "triceCheck.c", - "Line": 567 - }, - "14296": { - "File": "triceCheck.c", - "Line": 568 - }, - "14297": { - "File": "triceCheck.c", - "Line": 569 - }, - "14298": { - "File": "triceCheck.c", - "Line": 570 - }, - "14299": { - "File": "triceCheck.c", - "Line": 571 - }, - "14300": { - "File": "triceCheck.c", - "Line": 572 - }, - "14301": { - "File": "triceCheck.c", - "Line": 573 - }, - "14302": { - "File": "triceCheck.c", - "Line": 574 - }, - "14303": { - "File": "triceCheck.c", - "Line": 575 - }, - "14304": { - "File": "triceCheck.c", - "Line": 576 - }, - "14305": { - "File": "triceCheck.c", - "Line": 577 - }, - "14306": { - "File": "triceCheck.c", - "Line": 578 - }, - "14307": { - "File": "triceCheck.c", - "Line": 580 - }, - "14308": { - "File": "triceCheck.c", - "Line": 581 - }, - "14309": { - "File": "triceCheck.c", - "Line": 582 - }, - "14310": { - "File": "triceCheck.c", - "Line": 583 - }, - "14311": { - "File": "triceCheck.c", - "Line": 584 - }, - "14312": { - "File": "triceCheck.c", - "Line": 585 - }, - "14313": { - "File": "triceCheck.c", - "Line": 586 - }, - "14314": { - "File": "triceCheck.c", - "Line": 587 - }, - "14315": { - "File": "triceCheck.c", - "Line": 588 - }, - "14316": { - "File": "triceCheck.c", - "Line": 589 - }, - "14317": { - "File": "triceCheck.c", - "Line": 590 - }, - "14318": { - "File": "triceCheck.c", - "Line": 591 - }, - "14319": { - "File": "triceCheck.c", - "Line": 592 - }, - "14320": { - "File": "triceCheck.c", - "Line": 593 - }, - "14321": { - "File": "triceCheck.c", - "Line": 594 - }, - "14322": { - "File": "triceCheck.c", - "Line": 596 - }, - "14323": { - "File": "triceCheck.c", - "Line": 597 - }, - "14324": { - "File": "triceCheck.c", - "Line": 598 - }, - "14325": { - "File": "triceCheck.c", - "Line": 599 - }, - "14326": { - "File": "triceCheck.c", - "Line": 600 - }, - "14327": { - "File": "triceCheck.c", - "Line": 601 - }, - "14328": { - "File": "triceCheck.c", - "Line": 602 - }, - "14329": { - "File": "triceCheck.c", - "Line": 603 - }, - "14330": { - "File": "triceCheck.c", - "Line": 604 - }, - "14331": { - "File": "triceCheck.c", - "Line": 605 - }, - "14332": { - "File": "triceCheck.c", - "Line": 606 - }, - "14333": { - "File": "triceCheck.c", - "Line": 607 - }, - "14334": { - "File": "triceCheck.c", - "Line": 608 - }, - "14335": { - "File": "triceCheck.c", - "Line": 609 - }, - "14336": { - "File": "triceCheck.c", - "Line": 610 - }, - "14337": { - "File": "triceCheck.c", - "Line": 612 - }, - "14338": { - "File": "triceCheck.c", - "Line": 613 - }, - "14339": { - "File": "triceCheck.c", - "Line": 614 - }, - "14340": { - "File": "triceCheck.c", - "Line": 615 - }, - "14341": { - "File": "triceCheck.c", - "Line": 616 - }, - "14342": { - "File": "triceCheck.c", - "Line": 617 - }, - "14343": { - "File": "triceCheck.c", - "Line": 618 - }, - "14344": { - "File": "triceCheck.c", - "Line": 619 - }, - "14345": { - "File": "triceCheck.c", - "Line": 620 - }, - "14346": { - "File": "triceCheck.c", - "Line": 621 - }, - "14347": { - "File": "triceCheck.c", - "Line": 622 - }, - "14348": { - "File": "triceCheck.c", - "Line": 623 - }, - "14349": { - "File": "triceCheck.c", - "Line": 624 - }, - "14350": { - "File": "triceCheck.c", - "Line": 625 - }, - "14351": { - "File": "triceCheck.c", - "Line": 626 - }, - "14352": { - "File": "triceCheck.c", - "Line": 628 - }, - "14353": { - "File": "triceCheck.c", - "Line": 629 - }, - "14354": { - "File": "triceCheck.c", - "Line": 630 - }, - "14355": { - "File": "triceCheck.c", - "Line": 631 - }, - "14356": { - "File": "triceCheck.c", - "Line": 632 - }, - "14357": { - "File": "triceCheck.c", - "Line": 633 - }, - "14358": { - "File": "triceCheck.c", - "Line": 634 - }, - "14359": { - "File": "triceCheck.c", - "Line": 635 - }, - "14360": { - "File": "triceCheck.c", - "Line": 636 - }, - "14361": { - "File": "triceCheck.c", - "Line": 637 - }, - "14362": { - "File": "triceCheck.c", - "Line": 638 - }, - "14363": { - "File": "triceCheck.c", - "Line": 639 - }, - "14364": { - "File": "triceCheck.c", - "Line": 640 - }, - "14365": { - "File": "triceCheck.c", - "Line": 641 - }, - "14366": { - "File": "triceCheck.c", - "Line": 642 - }, - "14367": { - "File": "triceCheck.c", - "Line": 643 - }, - "14368": { - "File": "triceCheck.c", - "Line": 644 - }, - "14369": { - "File": "triceCheck.c", - "Line": 645 - }, - "14370": { - "File": "triceCheck.c", - "Line": 646 - }, - "14371": { - "File": "triceCheck.c", - "Line": 647 - }, - "14372": { - "File": "triceCheck.c", - "Line": 648 - }, - "14373": { - "File": "triceCheck.c", - "Line": 650 - }, - "14374": { - "File": "triceCheck.c", - "Line": 651 - }, - "14375": { - "File": "triceCheck.c", - "Line": 652 - }, - "14376": { - "File": "triceCheck.c", - "Line": 654 - }, - "14377": { - "File": "triceCheck.c", - "Line": 655 - }, - "14378": { - "File": "triceCheck.c", - "Line": 656 - }, - "14379": { - "File": "triceCheck.c", - "Line": 658 - }, - "14380": { - "File": "triceCheck.c", - "Line": 659 - }, - "14381": { - "File": "triceCheck.c", - "Line": 660 - }, - "14382": { - "File": "triceCheck.c", - "Line": 662 - }, - "14383": { - "File": "triceCheck.c", - "Line": 663 - }, - "14384": { - "File": "triceCheck.c", - "Line": 664 - }, - "14385": { - "File": "triceCheck.c", - "Line": 666 - }, - "14386": { - "File": "triceCheck.c", - "Line": 667 - }, - "14387": { - "File": "triceCheck.c", - "Line": 668 - }, - "14388": { - "File": "triceCheck.c", - "Line": 670 - }, - "14389": { - "File": "triceCheck.c", - "Line": 671 - }, - "14390": { - "File": "triceCheck.c", - "Line": 672 - }, - "14391": { - "File": "triceCheck.c", - "Line": 673 - }, - "14392": { - "File": "triceCheck.c", - "Line": 674 - }, - "14393": { - "File": "triceCheck.c", - "Line": 675 - }, - "14394": { - "File": "triceCheck.c", - "Line": 676 - }, - "14395": { - "File": "triceCheck.c", - "Line": 677 - }, - "14396": { - "File": "triceCheck.c", - "Line": 678 - }, - "14397": { - "File": "triceCheck.c", - "Line": 679 - }, - "14398": { - "File": "triceCheck.c", - "Line": 680 - }, - "14399": { - "File": "triceCheck.c", - "Line": 681 - }, - "14400": { - "File": "triceCheck.c", - "Line": 683 - }, - "14401": { - "File": "triceCheck.c", - "Line": 684 - }, - "14402": { - "File": "triceCheck.c", - "Line": 685 - }, - "14403": { - "File": "triceCheck.c", - "Line": 686 - }, - "14404": { - "File": "triceCheck.c", - "Line": 687 - }, - "14405": { - "File": "triceCheck.c", - "Line": 688 - }, - "14406": { - "File": "triceCheck.c", - "Line": 689 - }, - "14407": { - "File": "triceCheck.c", - "Line": 690 - }, - "14408": { - "File": "triceCheck.c", - "Line": 691 - }, - "14409": { - "File": "triceCheck.c", - "Line": 692 - }, - "14410": { - "File": "triceCheck.c", - "Line": 693 - }, - "14411": { - "File": "triceCheck.c", - "Line": 694 - }, - "14412": { - "File": "triceCheck.c", - "Line": 696 - }, - "14413": { - "File": "triceCheck.c", - "Line": 697 - }, - "14414": { - "File": "triceCheck.c", - "Line": 698 - }, - "14415": { - "File": "triceCheck.c", - "Line": 699 - }, - "14416": { - "File": "triceCheck.c", - "Line": 700 - }, - "14417": { - "File": "triceCheck.c", - "Line": 701 - }, - "14418": { - "File": "triceCheck.c", - "Line": 702 - }, - "14419": { - "File": "triceCheck.c", - "Line": 703 - }, - "14420": { - "File": "triceCheck.c", - "Line": 704 - }, - "14421": { - "File": "triceCheck.c", - "Line": 705 - }, - "14422": { - "File": "triceCheck.c", - "Line": 706 - }, - "14423": { - "File": "triceCheck.c", - "Line": 707 - }, - "14424": { - "File": "triceCheck.c", - "Line": 709 - }, - "14425": { - "File": "triceCheck.c", - "Line": 710 - }, - "14426": { - "File": "triceCheck.c", - "Line": 711 - }, - "14427": { - "File": "triceCheck.c", - "Line": 712 - }, - "14428": { - "File": "triceCheck.c", - "Line": 713 - }, - "14429": { - "File": "triceCheck.c", - "Line": 714 - }, - "14430": { - "File": "triceCheck.c", - "Line": 715 - }, - "14431": { - "File": "triceCheck.c", - "Line": 716 - }, - "14432": { - "File": "triceCheck.c", - "Line": 717 - }, - "14433": { - "File": "triceCheck.c", - "Line": 718 - }, - "14434": { - "File": "triceCheck.c", - "Line": 719 - }, - "14435": { - "File": "triceCheck.c", - "Line": 720 - }, - "14436": { - "File": "triceCheck.c", - "Line": 724 - }, - "14437": { - "File": "triceCheck.c", - "Line": 725 - }, - "14438": { - "File": "triceCheck.c", - "Line": 726 - }, - "14439": { - "File": "triceCheck.c", - "Line": 727 - }, - "14440": { - "File": "triceCheck.c", - "Line": 728 - }, - "14441": { - "File": "triceCheck.c", - "Line": 729 - }, - "14442": { - "File": "triceCheck.c", - "Line": 730 - }, - "14443": { - "File": "triceCheck.c", - "Line": 731 - }, - "14444": { - "File": "triceCheck.c", - "Line": 732 - }, - "14445": { - "File": "triceCheck.c", - "Line": 733 - }, - "14446": { - "File": "triceCheck.c", - "Line": 734 - }, - "14447": { - "File": "triceCheck.c", - "Line": 735 - }, - "14448": { - "File": "triceCheck.c", - "Line": 737 - }, - "14449": { - "File": "triceCheck.c", - "Line": 738 - }, - "14450": { - "File": "triceCheck.c", - "Line": 739 - }, - "14451": { - "File": "triceCheck.c", - "Line": 740 - }, - "14452": { - "File": "triceCheck.c", - "Line": 741 - }, - "14453": { - "File": "triceCheck.c", - "Line": 742 - }, - "14454": { - "File": "triceCheck.c", - "Line": 743 - }, - "14455": { - "File": "triceCheck.c", - "Line": 744 - }, - "14456": { - "File": "triceCheck.c", - "Line": 745 - }, - "14457": { - "File": "triceCheck.c", - "Line": 746 - }, - "14458": { - "File": "triceCheck.c", - "Line": 747 - }, - "14459": { - "File": "triceCheck.c", - "Line": 748 - }, - "14460": { - "File": "triceCheck.c", - "Line": 750 - }, - "14461": { - "File": "triceCheck.c", - "Line": 751 - }, - "14462": { - "File": "triceCheck.c", - "Line": 752 - }, - "14463": { - "File": "triceCheck.c", - "Line": 753 - }, - "14464": { - "File": "triceCheck.c", - "Line": 754 - }, - "14465": { - "File": "triceCheck.c", - "Line": 755 - }, - "14466": { - "File": "triceCheck.c", - "Line": 756 - }, - "14467": { - "File": "triceCheck.c", - "Line": 757 - }, - "14468": { - "File": "triceCheck.c", - "Line": 758 - }, - "14469": { - "File": "triceCheck.c", - "Line": 759 - }, - "14470": { - "File": "triceCheck.c", - "Line": 760 - }, - "14471": { - "File": "triceCheck.c", - "Line": 761 - }, - "14472": { - "File": "triceCheck.c", - "Line": 763 - }, - "14473": { - "File": "triceCheck.c", - "Line": 764 - }, - "14474": { - "File": "triceCheck.c", - "Line": 765 - }, - "14475": { - "File": "triceCheck.c", - "Line": 766 - }, - "14476": { - "File": "triceCheck.c", - "Line": 767 - }, - "14477": { - "File": "triceCheck.c", - "Line": 768 - }, - "14478": { - "File": "triceCheck.c", - "Line": 769 - }, - "14479": { - "File": "triceCheck.c", - "Line": 770 - }, - "14480": { - "File": "triceCheck.c", - "Line": 771 - }, - "14481": { - "File": "triceCheck.c", - "Line": 772 - }, - "14482": { - "File": "triceCheck.c", - "Line": 773 - }, - "14483": { - "File": "triceCheck.c", - "Line": 774 - }, - "14484": { - "File": "triceCheck.c", - "Line": 776 - }, - "14485": { - "File": "triceCheck.c", - "Line": 777 - }, - "14486": { - "File": "triceCheck.c", - "Line": 778 - }, - "14487": { - "File": "triceCheck.c", - "Line": 779 - }, - "14488": { - "File": "triceCheck.c", - "Line": 780 - }, - "14489": { - "File": "triceCheck.c", - "Line": 781 - }, - "14490": { - "File": "triceCheck.c", - "Line": 782 - }, - "14491": { - "File": "triceCheck.c", - "Line": 783 - }, - "14492": { - "File": "triceCheck.c", - "Line": 784 - }, - "14493": { - "File": "triceCheck.c", - "Line": 785 - }, - "14494": { - "File": "triceCheck.c", - "Line": 786 - }, - "14495": { - "File": "triceCheck.c", - "Line": 787 - }, - "14496": { - "File": "triceCheck.c", - "Line": 789 - }, - "14497": { - "File": "triceCheck.c", - "Line": 790 - }, - "14498": { - "File": "triceCheck.c", - "Line": 791 - }, - "14499": { - "File": "triceCheck.c", - "Line": 792 - }, - "14500": { - "File": "triceCheck.c", - "Line": 793 - }, - "14501": { - "File": "triceCheck.c", - "Line": 794 - }, - "14502": { - "File": "triceCheck.c", - "Line": 795 - }, - "14503": { - "File": "triceCheck.c", - "Line": 796 - }, - "14504": { - "File": "triceCheck.c", - "Line": 797 - }, - "14505": { - "File": "triceCheck.c", - "Line": 798 - }, - "14506": { - "File": "triceCheck.c", - "Line": 799 - }, - "14507": { - "File": "triceCheck.c", - "Line": 800 - }, - "14508": { - "File": "triceCheck.c", - "Line": 802 - }, - "14509": { - "File": "triceCheck.c", - "Line": 803 - }, - "14510": { - "File": "triceCheck.c", - "Line": 804 - }, - "14511": { - "File": "triceCheck.c", - "Line": 805 - }, - "14512": { - "File": "triceCheck.c", - "Line": 806 - }, - "14513": { - "File": "triceCheck.c", - "Line": 807 - }, - "14514": { - "File": "triceCheck.c", - "Line": 808 - }, - "14515": { - "File": "triceCheck.c", - "Line": 809 - }, - "14516": { - "File": "triceCheck.c", - "Line": 810 - }, - "14517": { - "File": "triceCheck.c", - "Line": 811 - }, - "14518": { - "File": "triceCheck.c", - "Line": 812 - }, - "14519": { - "File": "triceCheck.c", - "Line": 813 - }, - "14520": { - "File": "triceCheck.c", - "Line": 815 - }, - "14521": { - "File": "triceCheck.c", - "Line": 816 - }, - "14522": { - "File": "triceCheck.c", - "Line": 817 - }, - "14523": { - "File": "triceCheck.c", - "Line": 818 - }, - "14524": { - "File": "triceCheck.c", - "Line": 819 - }, - "14525": { - "File": "triceCheck.c", - "Line": 820 - }, - "14526": { - "File": "triceCheck.c", - "Line": 821 - }, - "14527": { - "File": "triceCheck.c", - "Line": 822 - }, - "14528": { - "File": "triceCheck.c", - "Line": 823 - }, - "14529": { - "File": "triceCheck.c", - "Line": 824 - }, - "14530": { - "File": "triceCheck.c", - "Line": 825 - }, - "14531": { - "File": "triceCheck.c", - "Line": 826 - }, - "14532": { - "File": "triceCheck.c", - "Line": 829 - }, - "14533": { - "File": "triceCheck.c", - "Line": 830 - }, - "14534": { - "File": "triceCheck.c", - "Line": 831 - }, - "14535": { - "File": "triceCheck.c", - "Line": 832 - }, - "14536": { - "File": "triceCheck.c", - "Line": 833 - }, - "14537": { - "File": "triceCheck.c", - "Line": 834 - }, - "14538": { - "File": "triceCheck.c", - "Line": 837 - }, - "14539": { - "File": "triceCheck.c", - "Line": 838 - }, - "14540": { - "File": "triceCheck.c", - "Line": 839 - }, - "14541": { - "File": "triceCheck.c", - "Line": 840 - }, - "14542": { - "File": "triceCheck.c", - "Line": 841 - }, - "14543": { - "File": "triceCheck.c", - "Line": 842 - }, - "14544": { - "File": "triceCheck.c", - "Line": 845 - }, - "14545": { - "File": "triceCheck.c", - "Line": 846 - }, - "14546": { - "File": "triceCheck.c", - "Line": 847 - }, - "14547": { - "File": "triceCheck.c", - "Line": 848 - }, - "14548": { - "File": "triceCheck.c", - "Line": 849 - }, - "14549": { - "File": "triceCheck.c", - "Line": 850 - }, - "14550": { - "File": "triceCheck.c", - "Line": 853 - }, - "14551": { - "File": "triceCheck.c", - "Line": 854 - }, - "14552": { - "File": "triceCheck.c", - "Line": 855 - }, - "14553": { - "File": "triceCheck.c", - "Line": 856 - }, - "14554": { - "File": "triceCheck.c", - "Line": 857 - }, - "14555": { - "File": "triceCheck.c", - "Line": 858 - }, - "14556": { - "File": "triceCheck.c", - "Line": 861 - }, - "14557": { - "File": "triceCheck.c", - "Line": 862 - }, - "14558": { - "File": "triceCheck.c", - "Line": 863 - }, - "14559": { - "File": "triceCheck.c", - "Line": 864 - }, - "14560": { - "File": "triceCheck.c", - "Line": 867 - }, - "14561": { - "File": "triceCheck.c", - "Line": 868 - }, - "14562": { - "File": "triceCheck.c", - "Line": 871 - }, - "14563": { - "File": "triceCheck.c", - "Line": 872 - }, - "14564": { - "File": "triceCheck.c", - "Line": 873 - }, - "14565": { - "File": "triceCheck.c", - "Line": 874 - }, - "14566": { - "File": "triceCheck.c", - "Line": 877 - }, - "14567": { - "File": "triceCheck.c", - "Line": 878 - }, - "14568": { - "File": "triceCheck.c", - "Line": 879 - }, - "14569": { - "File": "triceCheck.c", - "Line": 880 - }, - "14570": { - "File": "triceCheck.c", - "Line": 883 - }, - "14571": { - "File": "triceCheck.c", - "Line": 884 - }, - "14572": { - "File": "triceCheck.c", - "Line": 885 - }, - "14573": { - "File": "triceCheck.c", - "Line": 886 - }, - "14574": { - "File": "triceCheck.c", - "Line": 889 - }, - "14575": { - "File": "triceCheck.c", - "Line": 890 - }, - "14576": { - "File": "triceCheck.c", - "Line": 891 - }, - "14577": { - "File": "triceCheck.c", - "Line": 892 - }, - "14578": { - "File": "triceCheck.c", - "Line": 893 - }, - "14579": { - "File": "triceCheck.c", - "Line": 894 - }, - "14580": { - "File": "triceCheck.c", - "Line": 895 - }, - "14581": { - "File": "triceCheck.c", - "Line": 896 - }, - "14582": { - "File": "triceCheck.c", - "Line": 897 - }, - "14583": { - "File": "triceCheck.c", - "Line": 898 - }, - "14584": { - "File": "triceCheck.c", - "Line": 899 - }, - "14585": { - "File": "triceCheck.c", - "Line": 900 - }, - "14586": { - "File": "triceCheck.c", - "Line": 901 - }, - "14587": { - "File": "triceCheck.c", - "Line": 902 - }, - "14588": { - "File": "triceCheck.c", - "Line": 903 - }, - "14589": { - "File": "triceCheck.c", - "Line": 904 - }, - "14590": { - "File": "triceCheck.c", - "Line": 905 - }, - "14591": { - "File": "triceCheck.c", - "Line": 906 - }, - "14592": { - "File": "triceCheck.c", - "Line": 907 - }, - "14593": { - "File": "triceCheck.c", - "Line": 908 - }, - "14594": { - "File": "triceCheck.c", - "Line": 909 - }, - "14595": { - "File": "triceCheck.c", - "Line": 910 - }, - "14596": { - "File": "triceCheck.c", - "Line": 911 - }, - "14597": { - "File": "triceCheck.c", - "Line": 912 - }, - "14598": { - "File": "triceCheck.c", - "Line": 913 - }, - "14599": { - "File": "triceCheck.c", - "Line": 914 - }, - "14600": { - "File": "triceCheck.c", - "Line": 915 - }, - "14601": { - "File": "triceCheck.c", - "Line": 916 - }, - "14602": { - "File": "triceCheck.c", - "Line": 917 - }, - "14603": { - "File": "triceCheck.c", - "Line": 918 - }, - "14604": { - "File": "triceCheck.c", - "Line": 919 - }, - "14605": { - "File": "triceCheck.c", - "Line": 920 - }, - "14606": { - "File": "triceCheck.c", - "Line": 921 - }, - "14607": { - "File": "triceCheck.c", - "Line": 922 - }, - "14608": { - "File": "triceCheck.c", - "Line": 923 - }, - "14609": { - "File": "triceCheck.c", - "Line": 924 - }, - "14610": { - "File": "triceCheck.c", - "Line": 925 - }, - "14611": { - "File": "triceCheck.c", - "Line": 926 - }, - "14612": { - "File": "triceCheck.c", - "Line": 927 - }, - "14613": { - "File": "triceCheck.c", - "Line": 928 - }, - "14614": { - "File": "triceCheck.c", - "Line": 929 - }, - "14615": { - "File": "triceCheck.c", - "Line": 930 - }, - "14616": { - "File": "triceCheck.c", - "Line": 931 - }, - "14617": { - "File": "triceCheck.c", - "Line": 932 - }, - "14618": { - "File": "triceCheck.c", - "Line": 933 - }, - "14619": { - "File": "triceCheck.c", - "Line": 934 - }, - "14620": { - "File": "triceCheck.c", - "Line": 935 - }, - "14621": { - "File": "triceCheck.c", - "Line": 936 - }, - "14622": { - "File": "triceCheck.c", - "Line": 937 - }, - "14623": { - "File": "triceCheck.c", - "Line": 938 - }, - "14624": { - "File": "triceCheck.c", - "Line": 939 - }, - "14625": { - "File": "triceCheck.c", - "Line": 940 - }, - "14626": { - "File": "triceCheck.c", - "Line": 942 - }, - "14627": { - "File": "triceCheck.c", - "Line": 943 - }, - "14628": { - "File": "triceCheck.c", - "Line": 944 - }, - "14629": { - "File": "triceCheck.c", - "Line": 945 - }, - "14630": { - "File": "triceCheck.c", - "Line": 946 - }, - "14631": { - "File": "triceCheck.c", - "Line": 947 - }, - "14632": { - "File": "triceCheck.c", - "Line": 948 - }, - "14633": { - "File": "triceCheck.c", - "Line": 949 - }, - "14634": { - "File": "triceCheck.c", - "Line": 950 - }, - "14635": { - "File": "triceCheck.c", - "Line": 951 - }, - "14636": { - "File": "triceCheck.c", - "Line": 952 - }, - "14637": { - "File": "triceCheck.c", - "Line": 953 - }, - "14638": { - "File": "triceCheck.c", - "Line": 954 - }, - "14639": { - "File": "triceCheck.c", - "Line": 955 - }, - "14640": { - "File": "triceCheck.c", - "Line": 956 - }, - "14641": { - "File": "triceCheck.c", - "Line": 957 - }, - "14642": { - "File": "triceCheck.c", - "Line": 958 - }, - "14643": { - "File": "triceCheck.c", - "Line": 959 - }, - "14644": { - "File": "triceCheck.c", - "Line": 960 - }, - "14645": { - "File": "triceCheck.c", - "Line": 961 - }, - "14646": { - "File": "triceCheck.c", - "Line": 962 - }, - "14647": { - "File": "triceCheck.c", - "Line": 963 - }, - "14648": { - "File": "triceCheck.c", - "Line": 964 - }, - "14649": { - "File": "triceCheck.c", - "Line": 965 - }, - "14650": { - "File": "triceCheck.c", - "Line": 966 - }, - "14651": { - "File": "triceCheck.c", - "Line": 967 - }, - "14652": { - "File": "triceCheck.c", - "Line": 968 - }, - "14653": { - "File": "triceCheck.c", - "Line": 969 - }, - "14654": { - "File": "triceCheck.c", - "Line": 970 - }, - "14655": { - "File": "triceCheck.c", - "Line": 971 - }, - "14656": { - "File": "triceCheck.c", - "Line": 972 - }, - "14657": { - "File": "triceCheck.c", - "Line": 973 - }, - "14658": { - "File": "triceCheck.c", - "Line": 974 - }, - "14659": { - "File": "triceCheck.c", - "Line": 975 - }, - "14660": { - "File": "triceCheck.c", - "Line": 976 - }, - "14661": { - "File": "triceCheck.c", - "Line": 977 - }, - "14662": { - "File": "triceCheck.c", - "Line": 978 - }, - "14663": { - "File": "triceCheck.c", - "Line": 979 - }, - "14664": { - "File": "triceCheck.c", - "Line": 980 - }, - "14665": { - "File": "triceCheck.c", - "Line": 981 - }, - "14666": { - "File": "triceCheck.c", - "Line": 982 - }, - "14667": { - "File": "triceCheck.c", - "Line": 983 - }, - "14668": { - "File": "triceCheck.c", - "Line": 984 - }, - "14669": { - "File": "triceCheck.c", - "Line": 985 - }, - "14670": { - "File": "triceCheck.c", - "Line": 986 - }, - "14671": { - "File": "triceCheck.c", - "Line": 987 - }, - "14672": { - "File": "triceCheck.c", - "Line": 988 - }, - "14673": { - "File": "triceCheck.c", - "Line": 989 - }, - "14674": { - "File": "triceCheck.c", - "Line": 990 - }, - "14675": { - "File": "triceCheck.c", - "Line": 991 - }, - "14676": { - "File": "triceCheck.c", - "Line": 992 - }, - "14677": { - "File": "triceCheck.c", - "Line": 993 - }, - "14678": { - "File": "triceCheck.c", - "Line": 995 - }, - "14679": { - "File": "triceCheck.c", - "Line": 996 - }, - "14680": { - "File": "triceCheck.c", - "Line": 997 - }, - "14681": { - "File": "triceCheck.c", - "Line": 998 - }, - "14682": { - "File": "triceCheck.c", - "Line": 999 - }, - "14683": { - "File": "triceCheck.c", - "Line": 1000 - }, - "14684": { - "File": "triceCheck.c", - "Line": 1001 - }, - "14685": { - "File": "triceCheck.c", - "Line": 1002 - }, - "14686": { - "File": "triceCheck.c", - "Line": 1003 - }, - "14687": { - "File": "triceCheck.c", - "Line": 1004 - }, - "14688": { - "File": "triceCheck.c", - "Line": 1005 - }, - "14689": { - "File": "triceCheck.c", - "Line": 1006 - }, - "14690": { - "File": "triceCheck.c", - "Line": 1007 - }, - "14691": { - "File": "triceCheck.c", - "Line": 1008 - }, - "14692": { - "File": "triceCheck.c", - "Line": 1009 - }, - "14693": { - "File": "triceCheck.c", - "Line": 1010 - }, - "14694": { - "File": "triceCheck.c", - "Line": 1011 - }, - "14695": { - "File": "triceCheck.c", - "Line": 1012 - }, - "14696": { - "File": "triceCheck.c", - "Line": 1013 - }, - "14697": { - "File": "triceCheck.c", - "Line": 1014 - }, - "14698": { - "File": "triceCheck.c", - "Line": 1015 - }, - "14699": { - "File": "triceCheck.c", - "Line": 1016 - }, - "14700": { - "File": "triceCheck.c", - "Line": 1017 - }, - "14701": { - "File": "triceCheck.c", - "Line": 1018 - }, - "14702": { - "File": "triceCheck.c", - "Line": 1019 - }, - "14703": { - "File": "triceCheck.c", - "Line": 1020 - }, - "14704": { - "File": "triceCheck.c", - "Line": 1021 - }, - "14705": { - "File": "triceCheck.c", - "Line": 1022 - }, - "14706": { - "File": "triceCheck.c", - "Line": 1023 - }, - "14707": { - "File": "triceCheck.c", - "Line": 1024 - }, - "14708": { - "File": "triceCheck.c", - "Line": 1025 - }, - "14709": { - "File": "triceCheck.c", - "Line": 1026 - }, - "14710": { - "File": "triceCheck.c", - "Line": 1027 - }, - "14711": { - "File": "triceCheck.c", - "Line": 1028 - }, - "14712": { - "File": "triceCheck.c", - "Line": 1029 - }, - "14713": { - "File": "triceCheck.c", - "Line": 1030 - }, - "14714": { - "File": "triceCheck.c", - "Line": 1031 - }, - "14715": { - "File": "triceCheck.c", - "Line": 1032 - }, - "14716": { - "File": "triceCheck.c", - "Line": 1033 - }, - "14717": { - "File": "triceCheck.c", - "Line": 1034 - }, - "14718": { - "File": "triceCheck.c", - "Line": 1035 - }, - "14719": { - "File": "triceCheck.c", - "Line": 1036 - }, - "14720": { - "File": "triceCheck.c", - "Line": 1037 - }, - "14721": { - "File": "triceCheck.c", - "Line": 1038 - }, - "14722": { - "File": "triceCheck.c", - "Line": 1039 - }, - "14723": { - "File": "triceCheck.c", - "Line": 1040 - }, - "14724": { - "File": "triceCheck.c", - "Line": 1041 - }, - "14725": { - "File": "triceCheck.c", - "Line": 1042 - }, - "14726": { - "File": "triceCheck.c", - "Line": 1043 - }, - "14727": { - "File": "triceCheck.c", - "Line": 1044 - }, - "14728": { - "File": "triceCheck.c", - "Line": 1045 - }, - "14729": { - "File": "triceCheck.c", - "Line": 1046 - }, - "14730": { - "File": "triceCheck.c", - "Line": 1048 - }, - "14731": { - "File": "triceCheck.c", - "Line": 1049 - }, - "14732": { - "File": "triceCheck.c", - "Line": 1050 - }, - "14733": { - "File": "triceCheck.c", - "Line": 1051 - }, - "14734": { - "File": "triceCheck.c", - "Line": 1052 - }, - "14735": { - "File": "triceCheck.c", - "Line": 1053 - }, - "14736": { - "File": "triceCheck.c", - "Line": 1054 - }, - "14737": { - "File": "triceCheck.c", - "Line": 1055 - }, - "14738": { - "File": "triceCheck.c", - "Line": 1056 - }, - "14739": { - "File": "triceCheck.c", - "Line": 1057 - }, - "14740": { - "File": "triceCheck.c", - "Line": 1058 - }, - "14741": { - "File": "triceCheck.c", - "Line": 1059 - }, - "14742": { - "File": "triceCheck.c", - "Line": 1060 - }, - "14743": { - "File": "triceCheck.c", - "Line": 1061 - }, - "14744": { - "File": "triceCheck.c", - "Line": 1062 - }, - "14745": { - "File": "triceCheck.c", - "Line": 1063 - }, - "14746": { - "File": "triceCheck.c", - "Line": 1064 - }, - "14747": { - "File": "triceCheck.c", - "Line": 1065 - }, - "14748": { - "File": "triceCheck.c", - "Line": 1066 - }, - "14749": { - "File": "triceCheck.c", - "Line": 1067 - }, - "14750": { - "File": "triceCheck.c", - "Line": 1068 - }, - "14751": { - "File": "triceCheck.c", - "Line": 1069 - }, - "14752": { - "File": "triceCheck.c", - "Line": 1070 - }, - "14753": { - "File": "triceCheck.c", - "Line": 1071 - }, - "14754": { - "File": "triceCheck.c", - "Line": 1072 - }, - "14755": { - "File": "triceCheck.c", - "Line": 1073 - }, - "14756": { - "File": "triceCheck.c", - "Line": 1074 - }, - "14757": { - "File": "triceCheck.c", - "Line": 1075 - }, - "14758": { - "File": "triceCheck.c", - "Line": 1076 - }, - "14759": { - "File": "triceCheck.c", - "Line": 1077 - }, - "14760": { - "File": "triceCheck.c", - "Line": 1078 - }, - "14761": { - "File": "triceCheck.c", - "Line": 1079 - }, - "14762": { - "File": "triceCheck.c", - "Line": 1080 - }, - "14763": { - "File": "triceCheck.c", - "Line": 1081 - }, - "14764": { - "File": "triceCheck.c", - "Line": 1082 - }, - "14765": { - "File": "triceCheck.c", - "Line": 1083 - }, - "14766": { - "File": "triceCheck.c", - "Line": 1084 - }, - "14767": { - "File": "triceCheck.c", - "Line": 1085 - }, - "14768": { - "File": "triceCheck.c", - "Line": 1086 - }, - "14769": { - "File": "triceCheck.c", - "Line": 1087 - }, - "14770": { - "File": "triceCheck.c", - "Line": 1088 - }, - "14771": { - "File": "triceCheck.c", - "Line": 1089 - }, - "14772": { - "File": "triceCheck.c", - "Line": 1090 - }, - "14773": { - "File": "triceCheck.c", - "Line": 1091 - }, - "14774": { - "File": "triceCheck.c", - "Line": 1092 - }, - "14775": { - "File": "triceCheck.c", - "Line": 1093 - }, - "14776": { - "File": "triceCheck.c", - "Line": 1094 - }, - "14777": { - "File": "triceCheck.c", - "Line": 1095 - }, - "14778": { - "File": "triceCheck.c", - "Line": 1096 - }, - "14779": { - "File": "triceCheck.c", - "Line": 1097 - }, - "14780": { - "File": "triceCheck.c", - "Line": 1098 - }, - "14781": { - "File": "triceCheck.c", - "Line": 1099 - }, - "14782": { - "File": "triceCheck.c", - "Line": 1101 - }, - "14783": { - "File": "triceCheck.c", - "Line": 1102 - }, - "14784": { - "File": "triceCheck.c", - "Line": 1103 - }, - "14785": { - "File": "triceCheck.c", - "Line": 1104 - }, - "14786": { - "File": "triceCheck.c", - "Line": 1105 - }, - "14787": { - "File": "triceCheck.c", - "Line": 1106 - }, - "14788": { - "File": "triceCheck.c", - "Line": 1107 - }, - "14789": { - "File": "triceCheck.c", - "Line": 1108 - }, - "14790": { - "File": "triceCheck.c", - "Line": 1109 - }, - "14791": { - "File": "triceCheck.c", - "Line": 1110 - }, - "14792": { - "File": "triceCheck.c", - "Line": 1111 - }, - "14793": { - "File": "triceCheck.c", - "Line": 1112 - }, - "14794": { - "File": "triceCheck.c", - "Line": 1113 - }, - "14795": { - "File": "triceCheck.c", - "Line": 1114 - }, - "14796": { - "File": "triceCheck.c", - "Line": 1115 - }, - "14797": { - "File": "triceCheck.c", - "Line": 1116 - }, - "14798": { - "File": "triceCheck.c", - "Line": 1117 - }, - "14799": { - "File": "triceCheck.c", - "Line": 1118 - }, - "14800": { - "File": "triceCheck.c", - "Line": 1119 - }, - "14801": { - "File": "triceCheck.c", - "Line": 1120 - }, - "14802": { - "File": "triceCheck.c", - "Line": 1121 - }, - "14803": { - "File": "triceCheck.c", - "Line": 1122 - }, - "14804": { - "File": "triceCheck.c", - "Line": 1123 - }, - "14805": { - "File": "triceCheck.c", - "Line": 1124 - }, - "14806": { - "File": "triceCheck.c", - "Line": 1125 - }, - "14807": { - "File": "triceCheck.c", - "Line": 1126 - }, - "14808": { - "File": "triceCheck.c", - "Line": 1127 - }, - "14809": { - "File": "triceCheck.c", - "Line": 1128 - }, - "14810": { - "File": "triceCheck.c", - "Line": 1129 - }, - "14811": { - "File": "triceCheck.c", - "Line": 1130 - }, - "14812": { - "File": "triceCheck.c", - "Line": 1131 - }, - "14813": { - "File": "triceCheck.c", - "Line": 1132 - }, - "14814": { - "File": "triceCheck.c", - "Line": 1133 - }, - "14815": { - "File": "triceCheck.c", - "Line": 1134 - }, - "14816": { - "File": "triceCheck.c", - "Line": 1135 - }, - "14817": { - "File": "triceCheck.c", - "Line": 1136 - }, - "14818": { - "File": "triceCheck.c", - "Line": 1137 - }, - "14819": { - "File": "triceCheck.c", - "Line": 1138 - }, - "14820": { - "File": "triceCheck.c", - "Line": 1139 - }, - "14821": { - "File": "triceCheck.c", - "Line": 1140 - }, - "14822": { - "File": "triceCheck.c", - "Line": 1141 - }, - "14823": { - "File": "triceCheck.c", - "Line": 1142 - }, - "14824": { - "File": "triceCheck.c", - "Line": 1143 - }, - "14825": { - "File": "triceCheck.c", - "Line": 1144 - }, - "14826": { - "File": "triceCheck.c", - "Line": 1145 - }, - "14827": { - "File": "triceCheck.c", - "Line": 1146 - }, - "14828": { - "File": "triceCheck.c", - "Line": 1147 - }, - "14829": { - "File": "triceCheck.c", - "Line": 1148 - }, - "14830": { - "File": "triceCheck.c", - "Line": 1149 - }, - "14831": { - "File": "triceCheck.c", - "Line": 1150 - }, - "14832": { - "File": "triceCheck.c", - "Line": 1151 - }, - "14833": { - "File": "triceCheck.c", - "Line": 1152 - }, - "14834": { - "File": "triceCheck.c", - "Line": 1154 - }, - "14835": { - "File": "triceCheck.c", - "Line": 1155 - }, - "14836": { - "File": "triceCheck.c", - "Line": 1156 - }, - "14837": { - "File": "triceCheck.c", - "Line": 1157 - }, - "14838": { - "File": "triceCheck.c", - "Line": 1158 - }, - "14839": { - "File": "triceCheck.c", - "Line": 1159 - }, - "14840": { - "File": "triceCheck.c", - "Line": 1160 - }, - "14841": { - "File": "triceCheck.c", - "Line": 1161 - }, - "14842": { - "File": "triceCheck.c", - "Line": 1162 - }, - "14843": { - "File": "triceCheck.c", - "Line": 1163 - }, - "14844": { - "File": "triceCheck.c", - "Line": 1164 - }, - "14845": { - "File": "triceCheck.c", - "Line": 1165 - }, - "14846": { - "File": "triceCheck.c", - "Line": 1166 - }, - "14847": { - "File": "triceCheck.c", - "Line": 1167 - }, - "14848": { - "File": "triceCheck.c", - "Line": 1168 - }, - "14849": { - "File": "triceCheck.c", - "Line": 1169 - }, - "14850": { - "File": "triceCheck.c", - "Line": 1170 - }, - "14851": { - "File": "triceCheck.c", - "Line": 1171 - }, - "14852": { - "File": "triceCheck.c", - "Line": 1172 - }, - "14853": { - "File": "triceCheck.c", - "Line": 1173 - }, - "14854": { - "File": "triceCheck.c", - "Line": 1174 - }, - "14855": { - "File": "triceCheck.c", - "Line": 1175 - }, - "14856": { - "File": "triceCheck.c", - "Line": 1176 - }, - "14857": { - "File": "triceCheck.c", - "Line": 1177 - }, - "14858": { - "File": "triceCheck.c", - "Line": 1178 - }, - "14859": { - "File": "triceCheck.c", - "Line": 1179 - }, - "14860": { - "File": "triceCheck.c", - "Line": 1180 - }, - "14861": { - "File": "triceCheck.c", - "Line": 1181 - }, - "14862": { - "File": "triceCheck.c", - "Line": 1182 - }, - "14863": { - "File": "triceCheck.c", - "Line": 1183 - }, - "14864": { - "File": "triceCheck.c", - "Line": 1184 - }, - "14865": { - "File": "triceCheck.c", - "Line": 1185 - }, - "14866": { - "File": "triceCheck.c", - "Line": 1186 - }, - "14867": { - "File": "triceCheck.c", - "Line": 1187 - }, - "14868": { - "File": "triceCheck.c", - "Line": 1188 - }, - "14869": { - "File": "triceCheck.c", - "Line": 1189 - }, - "14870": { - "File": "triceCheck.c", - "Line": 1190 - }, - "14871": { - "File": "triceCheck.c", - "Line": 1191 - }, - "14872": { - "File": "triceCheck.c", - "Line": 1192 - }, - "14873": { - "File": "triceCheck.c", - "Line": 1193 - }, - "14874": { - "File": "triceCheck.c", - "Line": 1194 - }, - "14875": { - "File": "triceCheck.c", - "Line": 1195 - }, - "14876": { - "File": "triceCheck.c", - "Line": 1196 - }, - "14877": { - "File": "triceCheck.c", - "Line": 1197 - }, - "14878": { - "File": "triceCheck.c", - "Line": 1198 - }, - "14879": { - "File": "triceCheck.c", - "Line": 1199 - }, - "14880": { - "File": "triceCheck.c", - "Line": 1200 - }, - "14881": { - "File": "triceCheck.c", - "Line": 1201 - }, - "14882": { - "File": "triceCheck.c", - "Line": 1202 - }, - "14883": { - "File": "triceCheck.c", - "Line": 1203 - }, - "14884": { - "File": "triceCheck.c", - "Line": 1204 - }, - "14885": { - "File": "triceCheck.c", - "Line": 1205 - }, - "14886": { - "File": "triceCheck.c", - "Line": 1209 - }, - "14887": { - "File": "triceCheck.c", - "Line": 1211 - }, - "14888": { - "File": "triceCheck.c", - "Line": 1213 - }, - "14889": { - "File": "triceCheck.c", - "Line": 1214 - }, - "14890": { - "File": "triceCheck.c", - "Line": 1215 - }, - "14891": { - "File": "triceCheck.c", - "Line": 1216 - }, - "14892": { - "File": "triceCheck.c", - "Line": 1217 - }, - "14893": { - "File": "triceCheck.c", - "Line": 1218 - }, - "14894": { - "File": "triceCheck.c", - "Line": 1219 - }, - "14895": { - "File": "triceCheck.c", - "Line": 1220 - }, - "14896": { - "File": "triceCheck.c", - "Line": 1221 - }, - "14897": { - "File": "triceCheck.c", - "Line": 1222 - }, - "14898": { - "File": "triceCheck.c", - "Line": 1223 - }, - "14899": { - "File": "triceCheck.c", - "Line": 1224 - }, - "14900": { - "File": "triceCheck.c", - "Line": 1225 - }, - "14901": { - "File": "triceCheck.c", - "Line": 1226 - }, - "14902": { - "File": "triceCheck.c", - "Line": 1227 - }, - "14903": { - "File": "triceCheck.c", - "Line": 1228 - }, - "14904": { - "File": "triceCheck.c", - "Line": 1229 - }, - "14905": { - "File": "triceCheck.c", - "Line": 1230 - }, - "14906": { - "File": "triceCheck.c", - "Line": 1231 - }, - "14907": { - "File": "triceCheck.c", - "Line": 1232 - }, - "14908": { - "File": "triceCheck.c", - "Line": 1233 - }, - "14909": { - "File": "triceCheck.c", - "Line": 1234 - }, - "14910": { - "File": "triceCheck.c", - "Line": 1235 - }, - "14911": { - "File": "triceCheck.c", - "Line": 1236 - }, - "14912": { - "File": "triceCheck.c", - "Line": 1237 - }, - "14913": { - "File": "triceCheck.c", - "Line": 1238 - }, - "14914": { - "File": "triceCheck.c", - "Line": 1239 - }, - "14915": { - "File": "triceCheck.c", - "Line": 1240 - }, - "14916": { - "File": "triceCheck.c", - "Line": 1241 - }, - "14917": { - "File": "triceCheck.c", - "Line": 1242 - }, - "14918": { - "File": "triceCheck.c", - "Line": 1243 - }, - "14919": { - "File": "triceCheck.c", - "Line": 1244 - }, - "14920": { - "File": "triceCheck.c", - "Line": 1245 - }, - "14921": { - "File": "triceCheck.c", - "Line": 1246 - }, - "14922": { - "File": "triceCheck.c", - "Line": 1247 - }, - "14923": { - "File": "triceCheck.c", - "Line": 1248 - }, - "14924": { - "File": "triceCheck.c", - "Line": 1250 - }, - "14925": { - "File": "triceCheck.c", - "Line": 1252 - }, - "14926": { - "File": "triceCheck.c", - "Line": 1253 - }, - "14927": { - "File": "triceCheck.c", - "Line": 1254 - }, - "14928": { - "File": "triceCheck.c", - "Line": 1255 - }, - "14929": { - "File": "triceCheck.c", - "Line": 1256 - }, - "14930": { - "File": "triceCheck.c", - "Line": 1257 - }, - "14931": { - "File": "triceCheck.c", - "Line": 1258 - }, - "14932": { - "File": "triceCheck.c", - "Line": 1259 - }, - "14933": { - "File": "triceCheck.c", - "Line": 1260 - }, - "14934": { - "File": "triceCheck.c", - "Line": 1261 - }, - "14935": { - "File": "triceCheck.c", - "Line": 1262 - }, - "14936": { - "File": "triceCheck.c", - "Line": 1263 - }, - "14937": { - "File": "triceCheck.c", - "Line": 1264 - }, - "14938": { - "File": "triceCheck.c", - "Line": 1265 - }, - "14939": { - "File": "triceCheck.c", - "Line": 1266 - }, - "14940": { - "File": "triceCheck.c", - "Line": 1267 - }, - "14941": { - "File": "triceCheck.c", - "Line": 1268 - }, - "14942": { - "File": "triceCheck.c", - "Line": 1269 - }, - "14943": { - "File": "triceCheck.c", - "Line": 1270 - }, - "14944": { - "File": "triceCheck.c", - "Line": 1271 - }, - "14945": { - "File": "triceCheck.c", - "Line": 1272 - }, - "14946": { - "File": "triceCheck.c", - "Line": 1273 - }, - "14947": { - "File": "triceCheck.c", - "Line": 1274 - }, - "14948": { - "File": "triceCheck.c", - "Line": 1275 - }, - "14949": { - "File": "triceCheck.c", - "Line": 1276 - }, - "14950": { - "File": "triceCheck.c", - "Line": 1277 - }, - "14951": { - "File": "triceCheck.c", - "Line": 1278 - }, - "14952": { - "File": "triceCheck.c", - "Line": 1279 - }, - "14953": { - "File": "triceCheck.c", - "Line": 1280 - }, - "14954": { - "File": "triceCheck.c", - "Line": 1281 - }, - "14955": { - "File": "triceCheck.c", - "Line": 1282 - }, - "14956": { - "File": "triceCheck.c", - "Line": 1283 - }, - "14957": { - "File": "triceCheck.c", - "Line": 1284 - }, - "14958": { - "File": "triceCheck.c", - "Line": 1285 - }, - "14959": { - "File": "triceCheck.c", - "Line": 1286 - }, - "14960": { - "File": "triceCheck.c", - "Line": 1287 - }, - "14961": { - "File": "triceCheck.c", - "Line": 1289 - }, - "14962": { - "File": "triceCheck.c", - "Line": 1291 - }, - "14963": { - "File": "triceCheck.c", - "Line": 1292 - }, - "14964": { - "File": "triceCheck.c", - "Line": 1293 - }, - "14965": { - "File": "triceCheck.c", - "Line": 1294 - }, - "14966": { - "File": "triceCheck.c", - "Line": 1295 - }, - "14967": { - "File": "triceCheck.c", - "Line": 1296 - }, - "14968": { - "File": "triceCheck.c", - "Line": 1297 - }, - "14969": { - "File": "triceCheck.c", - "Line": 1298 - }, - "14970": { - "File": "triceCheck.c", - "Line": 1299 - }, - "14971": { - "File": "triceCheck.c", - "Line": 1300 - }, - "14972": { - "File": "triceCheck.c", - "Line": 1301 - }, - "14973": { - "File": "triceCheck.c", - "Line": 1302 - }, - "14974": { - "File": "triceCheck.c", - "Line": 1303 - }, - "14975": { - "File": "triceCheck.c", - "Line": 1304 - }, - "14976": { - "File": "triceCheck.c", - "Line": 1305 - }, - "14977": { - "File": "triceCheck.c", - "Line": 1306 - }, - "14978": { - "File": "triceCheck.c", - "Line": 1307 - }, - "14979": { - "File": "triceCheck.c", - "Line": 1308 - }, - "14980": { - "File": "triceCheck.c", - "Line": 1309 - }, - "14981": { - "File": "triceCheck.c", - "Line": 1310 - }, - "14982": { - "File": "triceCheck.c", - "Line": 1311 - }, - "14983": { - "File": "triceCheck.c", - "Line": 1312 - }, - "14984": { - "File": "triceCheck.c", - "Line": 1313 - }, - "14985": { - "File": "triceCheck.c", - "Line": 1314 - }, - "14986": { - "File": "triceCheck.c", - "Line": 1315 - }, - "14987": { - "File": "triceCheck.c", - "Line": 1316 - }, - "14988": { - "File": "triceCheck.c", - "Line": 1317 - }, - "14989": { - "File": "triceCheck.c", - "Line": 1318 - }, - "14990": { - "File": "triceCheck.c", - "Line": 1319 - }, - "14991": { - "File": "triceCheck.c", - "Line": 1320 - }, - "14992": { - "File": "triceCheck.c", - "Line": 1321 - }, - "14993": { - "File": "triceCheck.c", - "Line": 1322 - }, - "14994": { - "File": "triceCheck.c", - "Line": 1323 - }, - "14995": { - "File": "triceCheck.c", - "Line": 1324 - }, - "14996": { - "File": "triceCheck.c", - "Line": 1325 - }, - "14997": { - "File": "triceCheck.c", - "Line": 1326 - }, - "14998": { - "File": "triceCheck.c", - "Line": 1328 - }, - "14999": { - "File": "triceCheck.c", - "Line": 1330 - }, - "15000": { - "File": "triceCheck.c", - "Line": 1331 - }, - "15001": { - "File": "triceCheck.c", - "Line": 1332 - }, - "15002": { - "File": "triceCheck.c", - "Line": 1333 - }, - "15003": { - "File": "triceCheck.c", - "Line": 1334 - }, - "15004": { - "File": "triceCheck.c", - "Line": 1335 - }, - "15005": { - "File": "triceCheck.c", - "Line": 1336 - }, - "15006": { - "File": "triceCheck.c", - "Line": 1337 - }, - "15007": { - "File": "triceCheck.c", - "Line": 1338 - }, - "15008": { - "File": "triceCheck.c", - "Line": 1339 - }, - "15009": { - "File": "triceCheck.c", - "Line": 1340 - }, - "15010": { - "File": "triceCheck.c", - "Line": 1341 - }, - "15011": { - "File": "triceCheck.c", - "Line": 1342 - }, - "15012": { - "File": "triceCheck.c", - "Line": 1343 - }, - "15013": { - "File": "triceCheck.c", - "Line": 1344 - }, - "15014": { - "File": "triceCheck.c", - "Line": 1345 - }, - "15015": { - "File": "triceCheck.c", - "Line": 1346 - }, - "15016": { - "File": "triceCheck.c", - "Line": 1347 - }, - "15017": { - "File": "triceCheck.c", - "Line": 1348 - }, - "15018": { - "File": "triceCheck.c", - "Line": 1349 - }, - "15019": { - "File": "triceCheck.c", - "Line": 1350 - }, - "15020": { - "File": "triceCheck.c", - "Line": 1351 - }, - "15021": { - "File": "triceCheck.c", - "Line": 1352 - }, - "15022": { - "File": "triceCheck.c", - "Line": 1353 - }, - "15023": { - "File": "triceCheck.c", - "Line": 1354 - }, - "15024": { - "File": "triceCheck.c", - "Line": 1355 - }, - "15025": { - "File": "triceCheck.c", - "Line": 1356 - }, - "15026": { - "File": "triceCheck.c", - "Line": 1357 - }, - "15027": { - "File": "triceCheck.c", - "Line": 1358 - }, - "15028": { - "File": "triceCheck.c", - "Line": 1359 - }, - "15029": { - "File": "triceCheck.c", - "Line": 1360 - }, - "15030": { - "File": "triceCheck.c", - "Line": 1361 - }, - "15031": { - "File": "triceCheck.c", - "Line": 1362 - }, - "15032": { - "File": "triceCheck.c", - "Line": 1363 - }, - "15033": { - "File": "triceCheck.c", - "Line": 1364 - }, - "15034": { - "File": "triceCheck.c", - "Line": 1365 - }, - "15035": { - "File": "triceCheck.c", - "Line": 1367 - }, - "15036": { - "File": "triceCheck.c", - "Line": 1369 - }, - "15037": { - "File": "triceCheck.c", - "Line": 1370 - }, - "15038": { - "File": "triceCheck.c", - "Line": 1371 - }, - "15039": { - "File": "triceCheck.c", - "Line": 1372 - }, - "15040": { - "File": "triceCheck.c", - "Line": 1373 - }, - "15041": { - "File": "triceCheck.c", - "Line": 1374 - }, - "15042": { - "File": "triceCheck.c", - "Line": 1375 - }, - "15043": { - "File": "triceCheck.c", - "Line": 1376 - }, - "15044": { - "File": "triceCheck.c", - "Line": 1377 - }, - "15045": { - "File": "triceCheck.c", - "Line": 1378 - }, - "15046": { - "File": "triceCheck.c", - "Line": 1379 - }, - "15047": { - "File": "triceCheck.c", - "Line": 1380 - }, - "15048": { - "File": "triceCheck.c", - "Line": 1381 - }, - "15049": { - "File": "triceCheck.c", - "Line": 1382 - }, - "15050": { - "File": "triceCheck.c", - "Line": 1383 - }, - "15051": { - "File": "triceCheck.c", - "Line": 1384 - }, - "15052": { - "File": "triceCheck.c", - "Line": 1385 - }, - "15053": { - "File": "triceCheck.c", - "Line": 1386 - }, - "15054": { - "File": "triceCheck.c", - "Line": 1387 - }, - "15055": { - "File": "triceCheck.c", - "Line": 1388 - }, - "15056": { - "File": "triceCheck.c", - "Line": 1389 - }, - "15057": { - "File": "triceCheck.c", - "Line": 1390 - }, - "15058": { - "File": "triceCheck.c", - "Line": 1391 - }, - "15059": { - "File": "triceCheck.c", - "Line": 1392 - }, - "15060": { - "File": "triceCheck.c", - "Line": 1393 - }, - "15061": { - "File": "triceCheck.c", - "Line": 1394 - }, - "15062": { - "File": "triceCheck.c", - "Line": 1395 - }, - "15063": { - "File": "triceCheck.c", - "Line": 1396 - }, - "15064": { - "File": "triceCheck.c", - "Line": 1397 - }, - "15065": { - "File": "triceCheck.c", - "Line": 1398 - }, - "15066": { - "File": "triceCheck.c", - "Line": 1399 - }, - "15067": { - "File": "triceCheck.c", - "Line": 1400 - }, - "15068": { - "File": "triceCheck.c", - "Line": 1401 - }, - "15069": { - "File": "triceCheck.c", - "Line": 1402 - }, - "15070": { - "File": "triceCheck.c", - "Line": 1403 - }, - "15071": { - "File": "triceCheck.c", - "Line": 1404 - }, - "15072": { - "File": "triceCheck.c", - "Line": 1406 - }, - "15073": { - "File": "triceCheck.c", - "Line": 1408 - }, - "15074": { - "File": "triceCheck.c", - "Line": 1409 - }, - "15075": { - "File": "triceCheck.c", - "Line": 1410 - }, - "15076": { - "File": "triceCheck.c", - "Line": 1411 - }, - "15077": { - "File": "triceCheck.c", - "Line": 1412 - }, - "15078": { - "File": "triceCheck.c", - "Line": 1413 - }, - "15079": { - "File": "triceCheck.c", - "Line": 1414 - }, - "15080": { - "File": "triceCheck.c", - "Line": 1415 - }, - "15081": { - "File": "triceCheck.c", - "Line": 1416 - }, - "15082": { - "File": "triceCheck.c", - "Line": 1417 - }, - "15083": { - "File": "triceCheck.c", - "Line": 1418 - }, - "15084": { - "File": "triceCheck.c", - "Line": 1419 - }, - "15085": { - "File": "triceCheck.c", - "Line": 1420 - }, - "15086": { - "File": "triceCheck.c", - "Line": 1421 - }, - "15087": { - "File": "triceCheck.c", - "Line": 1422 - }, - "15088": { - "File": "triceCheck.c", - "Line": 1423 - }, - "15089": { - "File": "triceCheck.c", - "Line": 1424 - }, - "15090": { - "File": "triceCheck.c", - "Line": 1425 - }, - "15091": { - "File": "triceCheck.c", - "Line": 1426 - }, - "15092": { - "File": "triceCheck.c", - "Line": 1427 - }, - "15093": { - "File": "triceCheck.c", - "Line": 1428 - }, - "15094": { - "File": "triceCheck.c", - "Line": 1429 - }, - "15095": { - "File": "triceCheck.c", - "Line": 1430 - }, - "15096": { - "File": "triceCheck.c", - "Line": 1431 - }, - "15097": { - "File": "triceCheck.c", - "Line": 1432 - }, - "15098": { - "File": "triceCheck.c", - "Line": 1433 - }, - "15099": { - "File": "triceCheck.c", - "Line": 1434 - }, - "15100": { - "File": "triceCheck.c", - "Line": 1435 - }, - "15101": { - "File": "triceCheck.c", - "Line": 1436 - }, - "15102": { - "File": "triceCheck.c", - "Line": 1437 - }, - "15103": { - "File": "triceCheck.c", - "Line": 1438 - }, - "15104": { - "File": "triceCheck.c", - "Line": 1439 - }, - "15105": { - "File": "triceCheck.c", - "Line": 1440 - }, - "15106": { - "File": "triceCheck.c", - "Line": 1441 - }, - "15107": { - "File": "triceCheck.c", - "Line": 1442 - }, - "15108": { - "File": "triceCheck.c", - "Line": 1443 - }, - "15109": { - "File": "triceCheck.c", - "Line": 1445 - }, - "15110": { - "File": "triceCheck.c", - "Line": 1447 - }, - "15111": { - "File": "triceCheck.c", - "Line": 1448 - }, - "15112": { - "File": "triceCheck.c", - "Line": 1449 - }, - "15113": { - "File": "triceCheck.c", - "Line": 1450 - }, - "15114": { - "File": "triceCheck.c", - "Line": 1451 - }, - "15115": { - "File": "triceCheck.c", - "Line": 1452 - }, - "15116": { - "File": "triceCheck.c", - "Line": 1453 - }, - "15117": { - "File": "triceCheck.c", - "Line": 1454 - }, - "15118": { - "File": "triceCheck.c", - "Line": 1455 - }, - "15119": { - "File": "triceCheck.c", - "Line": 1456 - }, - "15120": { - "File": "triceCheck.c", - "Line": 1457 - }, - "15121": { - "File": "triceCheck.c", - "Line": 1458 - }, - "15122": { - "File": "triceCheck.c", - "Line": 1459 - }, - "15123": { - "File": "triceCheck.c", - "Line": 1460 - }, - "15124": { - "File": "triceCheck.c", - "Line": 1461 - }, - "15125": { - "File": "triceCheck.c", - "Line": 1462 - }, - "15126": { - "File": "triceCheck.c", - "Line": 1463 - }, - "15127": { - "File": "triceCheck.c", - "Line": 1464 - }, - "15128": { - "File": "triceCheck.c", - "Line": 1465 - }, - "15129": { - "File": "triceCheck.c", - "Line": 1466 - }, - "15130": { - "File": "triceCheck.c", - "Line": 1467 - }, - "15131": { - "File": "triceCheck.c", - "Line": 1468 - }, - "15132": { - "File": "triceCheck.c", - "Line": 1469 - }, - "15133": { - "File": "triceCheck.c", - "Line": 1470 - }, - "15134": { - "File": "triceCheck.c", - "Line": 1471 - }, - "15135": { - "File": "triceCheck.c", - "Line": 1472 - }, - "15136": { - "File": "triceCheck.c", - "Line": 1473 - }, - "15137": { - "File": "triceCheck.c", - "Line": 1474 - }, - "15138": { - "File": "triceCheck.c", - "Line": 1475 - }, - "15139": { - "File": "triceCheck.c", - "Line": 1476 - }, - "15140": { - "File": "triceCheck.c", - "Line": 1477 - }, - "15141": { - "File": "triceCheck.c", - "Line": 1478 - }, - "15142": { - "File": "triceCheck.c", - "Line": 1479 - }, - "15143": { - "File": "triceCheck.c", - "Line": 1480 - }, - "15144": { - "File": "triceCheck.c", - "Line": 1481 - }, - "15145": { - "File": "triceCheck.c", - "Line": 1482 - }, - "15146": { - "File": "triceCheck.c", - "Line": 1484 - }, - "15147": { - "File": "triceCheck.c", - "Line": 1486 - }, - "15148": { - "File": "triceCheck.c", - "Line": 1487 - }, - "15149": { - "File": "triceCheck.c", - "Line": 1488 - }, - "15150": { - "File": "triceCheck.c", - "Line": 1489 - }, - "15151": { - "File": "triceCheck.c", - "Line": 1490 - }, - "15152": { - "File": "triceCheck.c", - "Line": 1491 - }, - "15153": { - "File": "triceCheck.c", - "Line": 1492 - }, - "15154": { - "File": "triceCheck.c", - "Line": 1493 - }, - "15155": { - "File": "triceCheck.c", - "Line": 1494 - }, - "15156": { - "File": "triceCheck.c", - "Line": 1495 - }, - "15157": { - "File": "triceCheck.c", - "Line": 1496 - }, - "15158": { - "File": "triceCheck.c", - "Line": 1497 - }, - "15159": { - "File": "triceCheck.c", - "Line": 1498 - }, - "15160": { - "File": "triceCheck.c", - "Line": 1499 - }, - "15161": { - "File": "triceCheck.c", - "Line": 1500 - }, - "15162": { - "File": "triceCheck.c", - "Line": 1501 - }, - "15163": { - "File": "triceCheck.c", - "Line": 1502 - }, - "15164": { - "File": "triceCheck.c", - "Line": 1503 - }, - "15165": { - "File": "triceCheck.c", - "Line": 1504 - }, - "15166": { - "File": "triceCheck.c", - "Line": 1505 - }, - "15167": { - "File": "triceCheck.c", - "Line": 1506 - }, - "15168": { - "File": "triceCheck.c", - "Line": 1507 - }, - "15169": { - "File": "triceCheck.c", - "Line": 1508 - }, - "15170": { - "File": "triceCheck.c", - "Line": 1509 - }, - "15171": { - "File": "triceCheck.c", - "Line": 1510 - }, - "15172": { - "File": "triceCheck.c", - "Line": 1511 - }, - "15173": { - "File": "triceCheck.c", - "Line": 1512 - }, - "15174": { - "File": "triceCheck.c", - "Line": 1513 - }, - "15175": { - "File": "triceCheck.c", - "Line": 1514 - }, - "15176": { - "File": "triceCheck.c", - "Line": 1515 - }, - "15177": { - "File": "triceCheck.c", - "Line": 1516 - }, - "15178": { - "File": "triceCheck.c", - "Line": 1517 - }, - "15179": { - "File": "triceCheck.c", - "Line": 1518 - }, - "15180": { - "File": "triceCheck.c", - "Line": 1519 - }, - "15181": { - "File": "triceCheck.c", - "Line": 1520 - }, - "15182": { - "File": "triceCheck.c", - "Line": 1521 - }, - "15183": { - "File": "triceCheck.c", - "Line": 1523 - }, - "15184": { - "File": "triceCheck.c", - "Line": 1525 - }, - "15185": { - "File": "triceCheck.c", - "Line": 1526 - }, - "15186": { - "File": "triceCheck.c", - "Line": 1527 - }, - "15187": { - "File": "triceCheck.c", - "Line": 1528 - }, - "15188": { - "File": "triceCheck.c", - "Line": 1529 - }, - "15189": { - "File": "triceCheck.c", - "Line": 1530 - }, - "15190": { - "File": "triceCheck.c", - "Line": 1531 - }, - "15191": { - "File": "triceCheck.c", - "Line": 1532 - }, - "15192": { - "File": "triceCheck.c", - "Line": 1533 - }, - "15193": { - "File": "triceCheck.c", - "Line": 1534 - }, - "15194": { - "File": "triceCheck.c", - "Line": 1535 - }, - "15195": { - "File": "triceCheck.c", - "Line": 1536 - }, - "15196": { - "File": "triceCheck.c", - "Line": 1537 - }, - "15197": { - "File": "triceCheck.c", - "Line": 1538 - }, - "15198": { - "File": "triceCheck.c", - "Line": 1539 - }, - "15199": { - "File": "triceCheck.c", - "Line": 1540 - }, - "15200": { - "File": "triceCheck.c", - "Line": 1541 - }, - "15201": { - "File": "triceCheck.c", - "Line": 1542 - }, - "15202": { - "File": "triceCheck.c", - "Line": 1543 - }, - "15203": { - "File": "triceCheck.c", - "Line": 1544 - }, - "15204": { - "File": "triceCheck.c", - "Line": 1545 - }, - "15205": { - "File": "triceCheck.c", - "Line": 1546 - }, - "15206": { - "File": "triceCheck.c", - "Line": 1547 - }, - "15207": { - "File": "triceCheck.c", - "Line": 1548 - }, - "15208": { - "File": "triceCheck.c", - "Line": 1549 - }, - "15209": { - "File": "triceCheck.c", - "Line": 1550 - }, - "15210": { - "File": "triceCheck.c", - "Line": 1551 - }, - "15211": { - "File": "triceCheck.c", - "Line": 1552 - }, - "15212": { - "File": "triceCheck.c", - "Line": 1553 - }, - "15213": { - "File": "triceCheck.c", - "Line": 1554 - }, - "15214": { - "File": "triceCheck.c", - "Line": 1555 - }, - "15215": { - "File": "triceCheck.c", - "Line": 1556 - }, - "15216": { - "File": "triceCheck.c", - "Line": 1557 - }, - "15217": { - "File": "triceCheck.c", - "Line": 1558 - }, - "15218": { - "File": "triceCheck.c", - "Line": 1559 - }, - "15219": { - "File": "triceCheck.c", - "Line": 1560 - }, - "15220": { - "File": "triceCheck.c", - "Line": 1562 - }, - "15221": { - "File": "triceCheck.c", - "Line": 1564 - }, - "15222": { - "File": "triceCheck.c", - "Line": 1565 - }, - "15223": { - "File": "triceCheck.c", - "Line": 1566 - }, - "15224": { - "File": "triceCheck.c", - "Line": 1567 - }, - "15225": { - "File": "triceCheck.c", - "Line": 1568 - }, - "15226": { - "File": "triceCheck.c", - "Line": 1569 - }, - "15227": { - "File": "triceCheck.c", - "Line": 1570 - }, - "15228": { - "File": "triceCheck.c", - "Line": 1571 - }, - "15229": { - "File": "triceCheck.c", - "Line": 1572 - }, - "15230": { - "File": "triceCheck.c", - "Line": 1573 - }, - "15231": { - "File": "triceCheck.c", - "Line": 1574 - }, - "15232": { - "File": "triceCheck.c", - "Line": 1575 - }, - "15233": { - "File": "triceCheck.c", - "Line": 1576 - }, - "15234": { - "File": "triceCheck.c", - "Line": 1577 - }, - "15235": { - "File": "triceCheck.c", - "Line": 1578 - }, - "15236": { - "File": "triceCheck.c", - "Line": 1579 - }, - "15237": { - "File": "triceCheck.c", - "Line": 1580 - }, - "15238": { - "File": "triceCheck.c", - "Line": 1581 - }, - "15239": { - "File": "triceCheck.c", - "Line": 1582 - }, - "15240": { - "File": "triceCheck.c", - "Line": 1583 - }, - "15241": { - "File": "triceCheck.c", - "Line": 1584 - }, - "15242": { - "File": "triceCheck.c", - "Line": 1585 - }, - "15243": { - "File": "triceCheck.c", - "Line": 1586 - }, - "15244": { - "File": "triceCheck.c", - "Line": 1587 - }, - "15245": { - "File": "triceCheck.c", - "Line": 1588 - }, - "15246": { - "File": "triceCheck.c", - "Line": 1589 - }, - "15247": { - "File": "triceCheck.c", - "Line": 1590 - }, - "15248": { - "File": "triceCheck.c", - "Line": 1591 - }, - "15249": { - "File": "triceCheck.c", - "Line": 1592 - }, - "15250": { - "File": "triceCheck.c", - "Line": 1593 - }, - "15251": { - "File": "triceCheck.c", - "Line": 1594 - }, - "15252": { - "File": "triceCheck.c", - "Line": 1595 - }, - "15253": { - "File": "triceCheck.c", - "Line": 1596 - }, - "15254": { - "File": "triceCheck.c", - "Line": 1597 - }, - "15255": { - "File": "triceCheck.c", - "Line": 1598 - }, - "15256": { - "File": "triceCheck.c", - "Line": 1599 - }, - "15257": { - "File": "triceCheck.c", - "Line": 1601 - }, - "15258": { - "File": "triceCheck.c", - "Line": 1603 - }, - "15259": { - "File": "triceCheck.c", - "Line": 1604 - }, - "15260": { - "File": "triceCheck.c", - "Line": 1605 - }, - "15261": { - "File": "triceCheck.c", - "Line": 1606 - }, - "15262": { - "File": "triceCheck.c", - "Line": 1607 - }, - "15263": { - "File": "triceCheck.c", - "Line": 1608 - }, - "15264": { - "File": "triceCheck.c", - "Line": 1609 - }, - "15265": { - "File": "triceCheck.c", - "Line": 1610 - }, - "15266": { - "File": "triceCheck.c", - "Line": 1611 - }, - "15267": { - "File": "triceCheck.c", - "Line": 1612 - }, - "15268": { - "File": "triceCheck.c", - "Line": 1613 - }, - "15269": { - "File": "triceCheck.c", - "Line": 1614 - }, - "15270": { - "File": "triceCheck.c", - "Line": 1615 - }, - "15271": { - "File": "triceCheck.c", - "Line": 1616 - }, - "15272": { - "File": "triceCheck.c", - "Line": 1617 - }, - "15273": { - "File": "triceCheck.c", - "Line": 1618 - }, - "15274": { - "File": "triceCheck.c", - "Line": 1619 - }, - "15275": { - "File": "triceCheck.c", - "Line": 1620 - }, - "15276": { - "File": "triceCheck.c", - "Line": 1621 - }, - "15277": { - "File": "triceCheck.c", - "Line": 1622 - }, - "15278": { - "File": "triceCheck.c", - "Line": 1623 - }, - "15279": { - "File": "triceCheck.c", - "Line": 1624 - }, - "15280": { - "File": "triceCheck.c", - "Line": 1625 - }, - "15281": { - "File": "triceCheck.c", - "Line": 1626 - }, - "15282": { - "File": "triceCheck.c", - "Line": 1627 - }, - "15283": { - "File": "triceCheck.c", - "Line": 1628 - }, - "15284": { - "File": "triceCheck.c", - "Line": 1629 - }, - "15285": { - "File": "triceCheck.c", - "Line": 1630 - }, - "15286": { - "File": "triceCheck.c", - "Line": 1631 - }, - "15287": { - "File": "triceCheck.c", - "Line": 1632 - }, - "15288": { - "File": "triceCheck.c", - "Line": 1633 - }, - "15289": { - "File": "triceCheck.c", - "Line": 1634 - }, - "15290": { - "File": "triceCheck.c", - "Line": 1635 - }, - "15291": { - "File": "triceCheck.c", - "Line": 1636 - }, - "15292": { - "File": "triceCheck.c", - "Line": 1637 - }, - "15293": { - "File": "triceCheck.c", - "Line": 1638 - }, - "15294": { - "File": "triceCheck.c", - "Line": 1640 - }, - "15295": { - "File": "triceCheck.c", - "Line": 1642 - }, - "15296": { - "File": "triceCheck.c", - "Line": 1643 - }, - "15297": { - "File": "triceCheck.c", - "Line": 1644 - }, - "15298": { - "File": "triceCheck.c", - "Line": 1645 - }, - "15299": { - "File": "triceCheck.c", - "Line": 1646 - }, - "15300": { - "File": "triceCheck.c", - "Line": 1647 - }, - "15301": { - "File": "triceCheck.c", - "Line": 1648 - }, - "15302": { - "File": "triceCheck.c", - "Line": 1649 - }, - "15303": { - "File": "triceCheck.c", - "Line": 1650 - }, - "15304": { - "File": "triceCheck.c", - "Line": 1651 - }, - "15305": { - "File": "triceCheck.c", - "Line": 1652 - }, - "15306": { - "File": "triceCheck.c", - "Line": 1653 - }, - "15307": { - "File": "triceCheck.c", - "Line": 1654 - }, - "15308": { - "File": "triceCheck.c", - "Line": 1655 - }, - "15309": { - "File": "triceCheck.c", - "Line": 1656 - }, - "15310": { - "File": "triceCheck.c", - "Line": 1657 - }, - "15311": { - "File": "triceCheck.c", - "Line": 1658 - }, - "15312": { - "File": "triceCheck.c", - "Line": 1659 - }, - "15313": { - "File": "triceCheck.c", - "Line": 1660 - }, - "15314": { - "File": "triceCheck.c", - "Line": 1661 - }, - "15315": { - "File": "triceCheck.c", - "Line": 1662 - }, - "15316": { - "File": "triceCheck.c", - "Line": 1663 - }, - "15317": { - "File": "triceCheck.c", - "Line": 1664 - }, - "15318": { - "File": "triceCheck.c", - "Line": 1665 - }, - "15319": { - "File": "triceCheck.c", - "Line": 1666 - }, - "15320": { - "File": "triceCheck.c", - "Line": 1667 - }, - "15321": { - "File": "triceCheck.c", - "Line": 1668 - }, - "15322": { - "File": "triceCheck.c", - "Line": 1669 - }, - "15323": { - "File": "triceCheck.c", - "Line": 1670 - }, - "15324": { - "File": "triceCheck.c", - "Line": 1671 - }, - "15325": { - "File": "triceCheck.c", - "Line": 1672 - }, - "15326": { - "File": "triceCheck.c", - "Line": 1673 - }, - "15327": { - "File": "triceCheck.c", - "Line": 1674 - }, - "15328": { - "File": "triceCheck.c", - "Line": 1675 - }, - "15329": { - "File": "triceCheck.c", - "Line": 1676 - }, - "15330": { - "File": "triceCheck.c", - "Line": 1677 - }, - "15331": { - "File": "triceCheck.c", - "Line": 1679 - }, - "15332": { - "File": "triceCheck.c", - "Line": 1681 - }, - "15333": { - "File": "triceCheck.c", - "Line": 1682 - }, - "15334": { - "File": "triceCheck.c", - "Line": 1683 - }, - "15335": { - "File": "triceCheck.c", - "Line": 1684 - }, - "15336": { - "File": "triceCheck.c", - "Line": 1685 - }, - "15337": { - "File": "triceCheck.c", - "Line": 1686 - }, - "15338": { - "File": "triceCheck.c", - "Line": 1687 - }, - "15339": { - "File": "triceCheck.c", - "Line": 1688 - }, - "15340": { - "File": "triceCheck.c", - "Line": 1689 - }, - "15341": { - "File": "triceCheck.c", - "Line": 1690 - }, - "15342": { - "File": "triceCheck.c", - "Line": 1691 - }, - "15343": { - "File": "triceCheck.c", - "Line": 1692 - }, - "15344": { - "File": "triceCheck.c", - "Line": 1693 - }, - "15345": { - "File": "triceCheck.c", - "Line": 1694 - }, - "15346": { - "File": "triceCheck.c", - "Line": 1695 - }, - "15347": { - "File": "triceCheck.c", - "Line": 1696 - }, - "15348": { - "File": "triceCheck.c", - "Line": 1697 - }, - "15349": { - "File": "triceCheck.c", - "Line": 1698 - }, - "15350": { - "File": "triceCheck.c", - "Line": 1699 - }, - "15351": { - "File": "triceCheck.c", - "Line": 1700 - }, - "15352": { - "File": "triceCheck.c", - "Line": 1701 - }, - "15353": { - "File": "triceCheck.c", - "Line": 1702 - }, - "15354": { - "File": "triceCheck.c", - "Line": 1703 - }, - "15355": { - "File": "triceCheck.c", - "Line": 1704 - }, - "15356": { - "File": "triceCheck.c", - "Line": 1705 - }, - "15357": { - "File": "triceCheck.c", - "Line": 1706 - }, - "15358": { - "File": "triceCheck.c", - "Line": 1707 - }, - "15359": { - "File": "triceCheck.c", - "Line": 1708 - }, - "15360": { - "File": "triceCheck.c", - "Line": 1709 - }, - "15361": { - "File": "triceCheck.c", - "Line": 1710 - }, - "15362": { - "File": "triceCheck.c", - "Line": 1711 - }, - "15363": { - "File": "triceCheck.c", - "Line": 1712 - }, - "15364": { - "File": "triceCheck.c", - "Line": 1713 - }, - "15365": { - "File": "triceCheck.c", - "Line": 1714 - }, - "15366": { - "File": "triceCheck.c", - "Line": 1715 - }, - "15367": { - "File": "triceCheck.c", - "Line": 1716 - }, - "15368": { - "File": "triceCheck.c", - "Line": 1718 - }, - "15369": { - "File": "triceCheck.c", - "Line": 1720 - }, - "15370": { - "File": "triceCheck.c", - "Line": 1721 - }, - "15371": { - "File": "triceCheck.c", - "Line": 1722 - }, - "15372": { - "File": "triceCheck.c", - "Line": 1723 - }, - "15373": { - "File": "triceCheck.c", - "Line": 1724 - }, - "15374": { - "File": "triceCheck.c", - "Line": 1725 - }, - "15375": { - "File": "triceCheck.c", - "Line": 1726 - }, - "15376": { - "File": "triceCheck.c", - "Line": 1727 - }, - "15377": { - "File": "triceCheck.c", - "Line": 1728 - }, - "15378": { - "File": "triceCheck.c", - "Line": 1729 - }, - "15379": { - "File": "triceCheck.c", - "Line": 1730 - }, - "15380": { - "File": "triceCheck.c", - "Line": 1731 - }, - "15381": { - "File": "triceCheck.c", - "Line": 1732 - }, - "15382": { - "File": "triceCheck.c", - "Line": 1733 - }, - "15383": { - "File": "triceCheck.c", - "Line": 1734 - }, - "15384": { - "File": "triceCheck.c", - "Line": 1735 - }, - "15385": { - "File": "triceCheck.c", - "Line": 1736 - }, - "15386": { - "File": "triceCheck.c", - "Line": 1737 - }, - "15387": { - "File": "triceCheck.c", - "Line": 1738 - }, - "15388": { - "File": "triceCheck.c", - "Line": 1739 - }, - "15389": { - "File": "triceCheck.c", - "Line": 1740 - }, - "15390": { - "File": "triceCheck.c", - "Line": 1741 - }, - "15391": { - "File": "triceCheck.c", - "Line": 1742 - }, - "15392": { - "File": "triceCheck.c", - "Line": 1743 - }, - "15393": { - "File": "triceCheck.c", - "Line": 1744 - }, - "15394": { - "File": "triceCheck.c", - "Line": 1745 - }, - "15395": { - "File": "triceCheck.c", - "Line": 1746 - }, - "15396": { - "File": "triceCheck.c", - "Line": 1747 - }, - "15397": { - "File": "triceCheck.c", - "Line": 1748 - }, - "15398": { - "File": "triceCheck.c", - "Line": 1749 - }, - "15399": { - "File": "triceCheck.c", - "Line": 1750 - }, - "15400": { - "File": "triceCheck.c", - "Line": 1751 - }, - "15401": { - "File": "triceCheck.c", - "Line": 1752 - }, - "15402": { - "File": "triceCheck.c", - "Line": 1753 - }, - "15403": { - "File": "triceCheck.c", - "Line": 1754 - }, - "15404": { - "File": "triceCheck.c", - "Line": 1755 - }, - "15405": { - "File": "triceCheck.c", - "Line": 1757 - }, - "15406": { - "File": "triceCheck.c", - "Line": 1759 - }, - "15407": { - "File": "triceCheck.c", - "Line": 1760 - }, - "15408": { - "File": "triceCheck.c", - "Line": 1761 - }, - "15409": { - "File": "triceCheck.c", - "Line": 1762 - }, - "15410": { - "File": "triceCheck.c", - "Line": 1763 - }, - "15411": { - "File": "triceCheck.c", - "Line": 1764 - }, - "15412": { - "File": "triceCheck.c", - "Line": 1765 - }, - "15413": { - "File": "triceCheck.c", - "Line": 1766 - }, - "15414": { - "File": "triceCheck.c", - "Line": 1767 - }, - "15415": { - "File": "triceCheck.c", - "Line": 1768 - }, - "15416": { - "File": "triceCheck.c", - "Line": 1769 - }, - "15417": { - "File": "triceCheck.c", - "Line": 1770 - }, - "15418": { - "File": "triceCheck.c", - "Line": 1771 - }, - "15419": { - "File": "triceCheck.c", - "Line": 1772 - }, - "15420": { - "File": "triceCheck.c", - "Line": 1773 - }, - "15421": { - "File": "triceCheck.c", - "Line": 1774 - }, - "15422": { - "File": "triceCheck.c", - "Line": 1775 - }, - "15423": { - "File": "triceCheck.c", - "Line": 1776 - }, - "15424": { - "File": "triceCheck.c", - "Line": 1777 - }, - "15425": { - "File": "triceCheck.c", - "Line": 1778 - }, - "15426": { - "File": "triceCheck.c", - "Line": 1779 - }, - "15427": { - "File": "triceCheck.c", - "Line": 1780 - }, - "15428": { - "File": "triceCheck.c", - "Line": 1781 - }, - "15429": { - "File": "triceCheck.c", - "Line": 1782 - }, - "15430": { - "File": "triceCheck.c", - "Line": 1783 - }, - "15431": { - "File": "triceCheck.c", - "Line": 1784 - }, - "15432": { - "File": "triceCheck.c", - "Line": 1785 - }, - "15433": { - "File": "triceCheck.c", - "Line": 1786 - }, - "15434": { - "File": "triceCheck.c", - "Line": 1787 - }, - "15435": { - "File": "triceCheck.c", - "Line": 1788 - }, - "15436": { - "File": "triceCheck.c", - "Line": 1789 - }, - "15437": { - "File": "triceCheck.c", - "Line": 1790 - }, - "15438": { - "File": "triceCheck.c", - "Line": 1791 - }, - "15439": { - "File": "triceCheck.c", - "Line": 1792 - }, - "15440": { - "File": "triceCheck.c", - "Line": 1793 - }, - "15441": { - "File": "triceCheck.c", - "Line": 1794 - }, - "15442": { - "File": "triceCheck.c", - "Line": 1796 - }, - "15443": { - "File": "triceCheck.c", - "Line": 1798 - }, - "15444": { - "File": "triceCheck.c", - "Line": 1799 - }, - "15445": { - "File": "triceCheck.c", - "Line": 1800 - }, - "15446": { - "File": "triceCheck.c", - "Line": 1801 - }, - "15447": { - "File": "triceCheck.c", - "Line": 1802 - }, - "15448": { - "File": "triceCheck.c", - "Line": 1803 - }, - "15449": { - "File": "triceCheck.c", - "Line": 1804 - }, - "15450": { - "File": "triceCheck.c", - "Line": 1805 - }, - "15451": { - "File": "triceCheck.c", - "Line": 1806 - }, - "15452": { - "File": "triceCheck.c", - "Line": 1807 - }, - "15453": { - "File": "triceCheck.c", - "Line": 1808 - }, - "15454": { - "File": "triceCheck.c", - "Line": 1809 - }, - "15455": { - "File": "triceCheck.c", - "Line": 1810 - }, - "15456": { - "File": "triceCheck.c", - "Line": 1811 - }, - "15457": { - "File": "triceCheck.c", - "Line": 1812 - }, - "15458": { - "File": "triceCheck.c", - "Line": 1813 - }, - "15459": { - "File": "triceCheck.c", - "Line": 1814 - }, - "15460": { - "File": "triceCheck.c", - "Line": 1815 - }, - "15461": { - "File": "triceCheck.c", - "Line": 1816 - }, - "15462": { - "File": "triceCheck.c", - "Line": 1817 - }, - "15463": { - "File": "triceCheck.c", - "Line": 1818 - }, - "15464": { - "File": "triceCheck.c", - "Line": 1819 - }, - "15465": { - "File": "triceCheck.c", - "Line": 1820 - }, - "15466": { - "File": "triceCheck.c", - "Line": 1821 - }, - "15467": { - "File": "triceCheck.c", - "Line": 1822 - }, - "15468": { - "File": "triceCheck.c", - "Line": 1823 - }, - "15469": { - "File": "triceCheck.c", - "Line": 1824 - }, - "15470": { - "File": "triceCheck.c", - "Line": 1825 - }, - "15471": { - "File": "triceCheck.c", - "Line": 1826 - }, - "15472": { - "File": "triceCheck.c", - "Line": 1827 - }, - "15473": { - "File": "triceCheck.c", - "Line": 1828 - }, - "15474": { - "File": "triceCheck.c", - "Line": 1829 - }, - "15475": { - "File": "triceCheck.c", - "Line": 1830 - }, - "15476": { - "File": "triceCheck.c", - "Line": 1831 - }, - "15477": { - "File": "triceCheck.c", - "Line": 1832 - }, - "15478": { - "File": "triceCheck.c", - "Line": 1833 - }, - "15479": { - "File": "triceCheck.c", - "Line": 1835 - }, - "15480": { - "File": "triceCheck.c", - "Line": 1837 - }, - "15481": { - "File": "triceCheck.c", - "Line": 1838 - }, - "15482": { - "File": "triceCheck.c", - "Line": 1839 - }, - "15483": { - "File": "triceCheck.c", - "Line": 1840 - }, - "15484": { - "File": "triceCheck.c", - "Line": 1841 - }, - "15485": { - "File": "triceCheck.c", - "Line": 1842 - }, - "15486": { - "File": "triceCheck.c", - "Line": 1843 - }, - "15487": { - "File": "triceCheck.c", - "Line": 1844 - }, - "15488": { - "File": "triceCheck.c", - "Line": 1845 - }, - "15489": { - "File": "triceCheck.c", - "Line": 1846 - }, - "15490": { - "File": "triceCheck.c", - "Line": 1847 - }, - "15491": { - "File": "triceCheck.c", - "Line": 1848 - }, - "15492": { - "File": "triceCheck.c", - "Line": 1849 - }, - "15493": { - "File": "triceCheck.c", - "Line": 1850 - }, - "15494": { - "File": "triceCheck.c", - "Line": 1851 - }, - "15495": { - "File": "triceCheck.c", - "Line": 1852 - }, - "15496": { - "File": "triceCheck.c", - "Line": 1853 - }, - "15497": { - "File": "triceCheck.c", - "Line": 1854 - }, - "15498": { - "File": "triceCheck.c", - "Line": 1855 - }, - "15499": { - "File": "triceCheck.c", - "Line": 1856 - }, - "15500": { - "File": "triceCheck.c", - "Line": 1857 - }, - "15501": { - "File": "triceCheck.c", - "Line": 1858 - }, - "15502": { - "File": "triceCheck.c", - "Line": 1859 - }, - "15503": { - "File": "triceCheck.c", - "Line": 1860 - }, - "15504": { - "File": "triceCheck.c", - "Line": 1861 - }, - "15505": { - "File": "triceCheck.c", - "Line": 1862 - }, - "15506": { - "File": "triceCheck.c", - "Line": 1863 - }, - "15507": { - "File": "triceCheck.c", - "Line": 1864 - }, - "15508": { - "File": "triceCheck.c", - "Line": 1865 - }, - "15509": { - "File": "triceCheck.c", - "Line": 1866 - }, - "15510": { - "File": "triceCheck.c", - "Line": 1867 - }, - "15511": { - "File": "triceCheck.c", - "Line": 1868 - }, - "15512": { - "File": "triceCheck.c", - "Line": 1869 - }, - "15513": { - "File": "triceCheck.c", - "Line": 1870 - }, - "15514": { - "File": "triceCheck.c", - "Line": 1871 - }, - "15515": { - "File": "triceCheck.c", - "Line": 1872 - }, - "15516": { - "File": "triceCheck.c", - "Line": 1874 - }, - "15517": { - "File": "triceCheck.c", - "Line": 1876 - }, - "15518": { - "File": "triceCheck.c", - "Line": 1877 - }, - "15519": { - "File": "triceCheck.c", - "Line": 1878 - }, - "15520": { - "File": "triceCheck.c", - "Line": 1879 - }, - "15521": { - "File": "triceCheck.c", - "Line": 1880 - }, - "15522": { - "File": "triceCheck.c", - "Line": 1881 - }, - "15523": { - "File": "triceCheck.c", - "Line": 1882 - }, - "15524": { - "File": "triceCheck.c", - "Line": 1883 - }, - "15525": { - "File": "triceCheck.c", - "Line": 1884 - }, - "15526": { - "File": "triceCheck.c", - "Line": 1885 - }, - "15527": { - "File": "triceCheck.c", - "Line": 1886 - }, - "15528": { - "File": "triceCheck.c", - "Line": 1887 - }, - "15529": { - "File": "triceCheck.c", - "Line": 1888 - }, - "15530": { - "File": "triceCheck.c", - "Line": 1889 - }, - "15531": { - "File": "triceCheck.c", - "Line": 1890 - }, - "15532": { - "File": "triceCheck.c", - "Line": 1891 - }, - "15533": { - "File": "triceCheck.c", - "Line": 1892 - }, - "15534": { - "File": "triceCheck.c", - "Line": 1893 - }, - "15535": { - "File": "triceCheck.c", - "Line": 1894 - }, - "15536": { - "File": "triceCheck.c", - "Line": 1895 - }, - "15537": { - "File": "triceCheck.c", - "Line": 1896 - }, - "15538": { - "File": "triceCheck.c", - "Line": 1897 - }, - "15539": { - "File": "triceCheck.c", - "Line": 1898 - }, - "15540": { - "File": "triceCheck.c", - "Line": 1899 - }, - "15541": { - "File": "triceCheck.c", - "Line": 1900 - }, - "15542": { - "File": "triceCheck.c", - "Line": 1901 - }, - "15543": { - "File": "triceCheck.c", - "Line": 1902 - }, - "15544": { - "File": "triceCheck.c", - "Line": 1903 - }, - "15545": { - "File": "triceCheck.c", - "Line": 1904 - }, - "15546": { - "File": "triceCheck.c", - "Line": 1905 - }, - "15547": { - "File": "triceCheck.c", - "Line": 1906 - }, - "15548": { - "File": "triceCheck.c", - "Line": 1907 - }, - "15549": { - "File": "triceCheck.c", - "Line": 1908 - }, - "15550": { - "File": "triceCheck.c", - "Line": 1909 - }, - "15551": { - "File": "triceCheck.c", - "Line": 1910 - }, - "15552": { - "File": "triceCheck.c", - "Line": 1911 - }, - "15553": { - "File": "triceCheck.c", - "Line": 1913 - }, - "15554": { - "File": "triceCheck.c", - "Line": 1915 - }, - "15555": { - "File": "triceCheck.c", - "Line": 1916 - }, - "15556": { - "File": "triceCheck.c", - "Line": 1917 - }, - "15557": { - "File": "triceCheck.c", - "Line": 1918 - }, - "15558": { - "File": "triceCheck.c", - "Line": 1919 - }, - "15559": { - "File": "triceCheck.c", - "Line": 1920 - }, - "15560": { - "File": "triceCheck.c", - "Line": 1921 - }, - "15561": { - "File": "triceCheck.c", - "Line": 1922 - }, - "15562": { - "File": "triceCheck.c", - "Line": 1923 - }, - "15563": { - "File": "triceCheck.c", - "Line": 1924 - }, - "15564": { - "File": "triceCheck.c", - "Line": 1925 - }, - "15565": { - "File": "triceCheck.c", - "Line": 1926 - }, - "15566": { - "File": "triceCheck.c", - "Line": 1927 - }, - "15567": { - "File": "triceCheck.c", - "Line": 1928 - }, - "15568": { - "File": "triceCheck.c", - "Line": 1929 - }, - "15569": { - "File": "triceCheck.c", - "Line": 1930 - }, - "15570": { - "File": "triceCheck.c", - "Line": 1931 - }, - "15571": { - "File": "triceCheck.c", - "Line": 1932 - }, - "15572": { - "File": "triceCheck.c", - "Line": 1933 - }, - "15573": { - "File": "triceCheck.c", - "Line": 1934 - }, - "15574": { - "File": "triceCheck.c", - "Line": 1935 - }, - "15575": { - "File": "triceCheck.c", - "Line": 1936 - }, - "15576": { - "File": "triceCheck.c", - "Line": 1937 - }, - "15577": { - "File": "triceCheck.c", - "Line": 1938 - }, - "15578": { - "File": "triceCheck.c", - "Line": 1939 - }, - "15579": { - "File": "triceCheck.c", - "Line": 1940 - }, - "15580": { - "File": "triceCheck.c", - "Line": 1941 - }, - "15581": { - "File": "triceCheck.c", - "Line": 1942 - }, - "15582": { - "File": "triceCheck.c", - "Line": 1943 - }, - "15583": { - "File": "triceCheck.c", - "Line": 1944 - }, - "15584": { - "File": "triceCheck.c", - "Line": 1945 - }, - "15585": { - "File": "triceCheck.c", - "Line": 1946 - }, - "15586": { - "File": "triceCheck.c", - "Line": 1947 - }, - "15587": { - "File": "triceCheck.c", - "Line": 1948 - }, - "15588": { - "File": "triceCheck.c", - "Line": 1949 - }, - "15589": { - "File": "triceCheck.c", - "Line": 1950 - }, - "15590": { - "File": "triceCheck.c", - "Line": 1952 - }, - "15591": { - "File": "triceCheck.c", - "Line": 1954 - }, - "15592": { - "File": "triceCheck.c", - "Line": 1955 - }, - "15593": { - "File": "triceCheck.c", - "Line": 1956 - }, - "15594": { - "File": "triceCheck.c", - "Line": 1957 - }, - "15595": { - "File": "triceCheck.c", - "Line": 1958 - }, - "15596": { - "File": "triceCheck.c", - "Line": 1959 - }, - "15597": { - "File": "triceCheck.c", - "Line": 1960 - }, - "15598": { - "File": "triceCheck.c", - "Line": 1961 - }, - "15599": { - "File": "triceCheck.c", - "Line": 1962 - }, - "15600": { - "File": "triceCheck.c", - "Line": 1963 - }, - "15601": { - "File": "triceCheck.c", - "Line": 1964 - }, - "15602": { - "File": "triceCheck.c", - "Line": 1965 - }, - "15603": { - "File": "triceCheck.c", - "Line": 1966 - }, - "15604": { - "File": "triceCheck.c", - "Line": 1967 - }, - "15605": { - "File": "triceCheck.c", - "Line": 1968 - }, - "15606": { - "File": "triceCheck.c", - "Line": 1969 - }, - "15607": { - "File": "triceCheck.c", - "Line": 1970 - }, - "15608": { - "File": "triceCheck.c", - "Line": 1971 - }, - "15609": { - "File": "triceCheck.c", - "Line": 1972 - }, - "15610": { - "File": "triceCheck.c", - "Line": 1973 - }, - "15611": { - "File": "triceCheck.c", - "Line": 1974 - }, - "15612": { - "File": "triceCheck.c", - "Line": 1975 - }, - "15613": { - "File": "triceCheck.c", - "Line": 1976 - }, - "15614": { - "File": "triceCheck.c", - "Line": 1977 - }, - "15615": { - "File": "triceCheck.c", - "Line": 1978 - }, - "15616": { - "File": "triceCheck.c", - "Line": 1979 - }, - "15617": { - "File": "triceCheck.c", - "Line": 1980 - }, - "15618": { - "File": "triceCheck.c", - "Line": 1981 - }, - "15619": { - "File": "triceCheck.c", - "Line": 1982 - }, - "15620": { - "File": "triceCheck.c", - "Line": 1983 - }, - "15621": { - "File": "triceCheck.c", - "Line": 1984 - }, - "15622": { - "File": "triceCheck.c", - "Line": 1985 - }, - "15623": { - "File": "triceCheck.c", - "Line": 1986 - }, - "15624": { - "File": "triceCheck.c", - "Line": 1987 - }, - "15625": { - "File": "triceCheck.c", - "Line": 1988 - }, - "15626": { - "File": "triceCheck.c", - "Line": 1989 - }, - "15627": { - "File": "triceCheck.c", - "Line": 1991 - }, - "15628": { - "File": "triceCheck.c", - "Line": 1992 - }, - "15629": { - "File": "triceCheck.c", - "Line": 1993 - }, - "15630": { - "File": "triceCheck.c", - "Line": 1994 - }, - "15631": { - "File": "triceCheck.c", - "Line": 1995 - }, - "15632": { - "File": "triceCheck.c", - "Line": 1996 - }, - "15633": { - "File": "triceCheck.c", - "Line": 1997 - }, - "15634": { - "File": "triceCheck.c", - "Line": 1998 - }, - "15635": { - "File": "triceCheck.c", - "Line": 1999 - }, - "15636": { - "File": "triceCheck.c", - "Line": 2000 - }, - "15637": { - "File": "triceCheck.c", - "Line": 2001 - }, - "15638": { - "File": "triceCheck.c", - "Line": 2002 - }, - "15639": { - "File": "triceCheck.c", - "Line": 2003 - }, - "15640": { - "File": "triceCheck.c", - "Line": 2004 - }, - "15641": { - "File": "triceCheck.c", - "Line": 2005 - }, - "15642": { - "File": "triceCheck.c", - "Line": 2006 - }, - "15643": { - "File": "triceCheck.c", - "Line": 2007 - }, - "15644": { - "File": "triceCheck.c", - "Line": 2008 - }, - "15645": { - "File": "triceCheck.c", - "Line": 2009 - }, - "15646": { - "File": "triceCheck.c", - "Line": 2010 - }, - "15647": { - "File": "triceCheck.c", - "Line": 2012 - }, - "15648": { - "File": "triceCheck.c", - "Line": 2013 - }, - "15649": { - "File": "triceCheck.c", - "Line": 2014 - }, - "15650": { - "File": "triceCheck.c", - "Line": 2015 - }, - "15651": { - "File": "triceCheck.c", - "Line": 2016 - }, - "15652": { - "File": "triceCheck.c", - "Line": 2017 - }, - "15653": { - "File": "triceCheck.c", - "Line": 2018 - }, - "15654": { - "File": "triceCheck.c", - "Line": 2019 - }, - "15655": { - "File": "triceCheck.c", - "Line": 2020 - }, - "15656": { - "File": "triceCheck.c", - "Line": 2021 - }, - "15657": { - "File": "triceCheck.c", - "Line": 2022 - }, - "15658": { - "File": "triceCheck.c", - "Line": 2023 - }, - "15659": { - "File": "triceCheck.c", - "Line": 2024 - }, - "15660": { - "File": "triceCheck.c", - "Line": 2025 - }, - "15661": { - "File": "triceCheck.c", - "Line": 2026 - }, - "15662": { - "File": "triceCheck.c", - "Line": 2027 - }, - "15663": { - "File": "triceCheck.c", - "Line": 2028 - }, - "15664": { - "File": "triceCheck.c", - "Line": 2029 - }, - "15665": { - "File": "triceCheck.c", - "Line": 2030 - }, - "15666": { - "File": "triceCheck.c", - "Line": 2031 - }, - "15667": { - "File": "triceCheck.c", - "Line": 2032 - }, - "15668": { - "File": "triceCheck.c", - "Line": 2033 - }, - "15669": { - "File": "triceCheck.c", - "Line": 2034 - }, - "15670": { - "File": "triceCheck.c", - "Line": 2035 - }, - "15671": { - "File": "triceCheck.c", - "Line": 2036 - }, - "15672": { - "File": "triceCheck.c", - "Line": 2037 - }, - "15673": { - "File": "triceCheck.c", - "Line": 2038 - }, - "15674": { - "File": "triceCheck.c", - "Line": 2039 - }, - "15675": { - "File": "triceCheck.c", - "Line": 2040 - }, - "15676": { - "File": "triceCheck.c", - "Line": 2041 - }, - "15677": { - "File": "triceCheck.c", - "Line": 2042 - }, - "15678": { - "File": "triceCheck.c", - "Line": 2043 - }, - "15679": { - "File": "triceCheck.c", - "Line": 2044 - }, - "15680": { - "File": "triceCheck.c", - "Line": 2045 - }, - "15681": { - "File": "triceCheck.c", - "Line": 2046 - }, - "15682": { - "File": "triceCheck.c", - "Line": 2047 - }, - "15683": { - "File": "triceCheck.c", - "Line": 2048 - }, - "15684": { - "File": "triceCheck.c", - "Line": 2049 - }, - "15685": { - "File": "triceCheck.c", - "Line": 2050 - }, - "15686": { - "File": "triceCheck.c", - "Line": 2051 - }, - "15687": { - "File": "triceCheck.c", - "Line": 2052 - }, - "15688": { - "File": "triceCheck.c", - "Line": 2053 - }, - "15689": { - "File": "triceCheck.c", - "Line": 2054 - }, - "15690": { - "File": "triceCheck.c", - "Line": 2055 - }, - "15691": { - "File": "triceCheck.c", - "Line": 2056 - }, - "15692": { - "File": "triceCheck.c", - "Line": 2057 - }, - "15693": { - "File": "triceCheck.c", - "Line": 2058 - }, - "15694": { - "File": "triceCheck.c", - "Line": 2059 - }, - "15695": { - "File": "triceCheck.c", - "Line": 2060 - }, - "15696": { - "File": "triceCheck.c", - "Line": 2061 - }, - "15697": { - "File": "triceCheck.c", - "Line": 2062 - }, - "15698": { - "File": "triceCheck.c", - "Line": 2063 - }, - "15699": { - "File": "triceCheck.c", - "Line": 2064 - }, - "15700": { - "File": "triceCheck.c", - "Line": 2066 - }, - "15701": { - "File": "triceCheck.c", - "Line": 2067 - }, - "15702": { - "File": "triceCheck.c", - "Line": 2068 - }, - "15703": { - "File": "triceCheck.c", - "Line": 2069 - }, - "15704": { - "File": "triceCheck.c", - "Line": 2070 - }, - "15705": { - "File": "triceCheck.c", - "Line": 2071 - }, - "15706": { - "File": "triceCheck.c", - "Line": 2072 - }, - "15707": { - "File": "triceCheck.c", - "Line": 2073 - }, - "15708": { - "File": "triceCheck.c", - "Line": 2074 - }, - "15709": { - "File": "triceCheck.c", - "Line": 2075 - }, - "15710": { - "File": "triceCheck.c", - "Line": 2076 - }, - "15711": { - "File": "triceCheck.c", - "Line": 2077 - }, - "15712": { - "File": "triceCheck.c", - "Line": 2078 - }, - "15713": { - "File": "triceCheck.c", - "Line": 2079 - }, - "15714": { - "File": "triceCheck.c", - "Line": 2080 - }, - "15715": { - "File": "triceCheck.c", - "Line": 2081 - }, - "15716": { - "File": "triceCheck.c", - "Line": 2082 - }, - "15717": { - "File": "triceCheck.c", - "Line": 2083 - }, - "15718": { - "File": "triceCheck.c", - "Line": 2084 - }, - "15719": { - "File": "triceCheck.c", - "Line": 2085 - }, - "15720": { - "File": "triceCheck.c", - "Line": 2086 - }, - "15721": { - "File": "triceCheck.c", - "Line": 2087 - }, - "15722": { - "File": "triceCheck.c", - "Line": 2088 - }, - "15723": { - "File": "triceCheck.c", - "Line": 2089 - }, - "15724": { - "File": "triceCheck.c", - "Line": 2090 - }, - "15725": { - "File": "triceCheck.c", - "Line": 2091 - }, - "15726": { - "File": "triceCheck.c", - "Line": 2092 - }, - "15727": { - "File": "triceCheck.c", - "Line": 2094 - }, - "15728": { - "File": "triceCheck.c", - "Line": 2095 - }, - "15729": { - "File": "triceCheck.c", - "Line": 2096 - }, - "15730": { - "File": "triceCheck.c", - "Line": 2097 - }, - "15731": { - "File": "triceCheck.c", - "Line": 2098 - }, - "15732": { - "File": "triceCheck.c", - "Line": 2099 - }, - "15733": { - "File": "triceCheck.c", - "Line": 2100 - }, - "15734": { - "File": "triceCheck.c", - "Line": 2101 - }, - "15735": { - "File": "triceCheck.c", - "Line": 2102 - }, - "15736": { - "File": "triceCheck.c", - "Line": 2103 - }, - "15737": { - "File": "triceCheck.c", - "Line": 2104 - }, - "15738": { - "File": "triceCheck.c", - "Line": 2105 - }, - "15739": { - "File": "triceCheck.c", - "Line": 2106 - }, - "15740": { - "File": "triceCheck.c", - "Line": 2107 - }, - "15741": { - "File": "triceCheck.c", - "Line": 2108 - }, - "15742": { - "File": "triceCheck.c", - "Line": 2109 - }, - "15743": { - "File": "triceCheck.c", - "Line": 2110 - }, - "15744": { - "File": "triceCheck.c", - "Line": 2111 - }, - "15745": { - "File": "triceCheck.c", - "Line": 2112 - }, - "15746": { - "File": "triceCheck.c", - "Line": 2113 - }, - "15747": { - "File": "triceCheck.c", - "Line": 2113 - }, - "15748": { - "File": "triceCheck.c", - "Line": 2113 - }, - "15749": { - "File": "triceCheck.c", - "Line": 2114 - }, - "15750": { - "File": "triceCheck.c", - "Line": 2114 - }, - "15751": { - "File": "triceCheck.c", - "Line": 2114 - }, - "15752": { - "File": "triceCheck.c", - "Line": 2116 - }, - "15753": { - "File": "triceCheck.c", - "Line": 2117 - }, - "15754": { - "File": "triceCheck.c", - "Line": 2118 - }, - "15755": { - "File": "triceCheck.c", - "Line": 2119 - }, - "15756": { - "File": "triceCheck.c", - "Line": 2120 - }, - "15757": { - "File": "triceCheck.c", - "Line": 2121 - }, - "15758": { - "File": "triceCheck.c", - "Line": 2122 - }, - "15759": { - "File": "triceCheck.c", - "Line": 2123 - }, - "15760": { - "File": "triceCheck.c", - "Line": 2124 - }, - "15761": { - "File": "triceCheck.c", - "Line": 2125 - }, - "15762": { - "File": "triceCheck.c", - "Line": 2126 - }, - "15763": { - "File": "triceCheck.c", - "Line": 2127 - }, - "15764": { - "File": "triceCheck.c", - "Line": 2128 - }, - "15765": { - "File": "triceCheck.c", - "Line": 2129 - }, - "15766": { - "File": "triceCheck.c", - "Line": 2130 - }, - "15767": { - "File": "triceCheck.c", - "Line": 2131 - }, - "15768": { - "File": "triceCheck.c", - "Line": 2132 - }, - "15769": { - "File": "triceCheck.c", - "Line": 2133 - }, - "15770": { - "File": "triceCheck.c", - "Line": 2134 - }, - "15771": { - "File": "triceCheck.c", - "Line": 2135 - }, - "15772": { - "File": "triceCheck.c", - "Line": 2136 - }, - "15773": { - "File": "triceCheck.c", - "Line": 2137 - }, - "15774": { - "File": "triceCheck.c", - "Line": 2138 - }, - "15775": { - "File": "triceCheck.c", - "Line": 2139 - }, - "15776": { - "File": "triceCheck.c", - "Line": 2140 - }, - "15777": { - "File": "triceCheck.c", - "Line": 2141 - }, - "15778": { - "File": "triceCheck.c", - "Line": 2142 - }, - "15779": { - "File": "triceCheck.c", - "Line": 2143 - }, - "15780": { - "File": "triceCheck.c", - "Line": 2145 - }, - "15781": { - "File": "triceCheck.c", - "Line": 2146 - }, - "15782": { - "File": "triceCheck.c", - "Line": 2147 - }, - "15783": { - "File": "triceCheck.c", - "Line": 2148 - }, - "15784": { - "File": "triceCheck.c", - "Line": 2149 - }, - "15785": { - "File": "triceCheck.c", - "Line": 2150 - }, - "15786": { - "File": "triceCheck.c", - "Line": 2151 - }, - "15787": { - "File": "triceCheck.c", - "Line": 2152 - }, - "15788": { - "File": "triceCheck.c", - "Line": 2153 - }, - "15789": { - "File": "triceCheck.c", - "Line": 2154 - }, - "15790": { - "File": "triceCheck.c", - "Line": 2155 - }, - "15791": { - "File": "triceCheck.c", - "Line": 2156 - }, - "15792": { - "File": "triceCheck.c", - "Line": 2157 - }, - "15793": { - "File": "triceCheck.c", - "Line": 2158 - }, - "15794": { - "File": "triceCheck.c", - "Line": 2159 - }, - "15795": { - "File": "triceCheck.c", - "Line": 2160 - }, - "15796": { - "File": "triceCheck.c", - "Line": 2161 - }, - "15797": { - "File": "triceCheck.c", - "Line": 2162 - }, - "15798": { - "File": "triceCheck.c", - "Line": 2163 - }, - "15799": { - "File": "triceCheck.c", - "Line": 2164 - }, - "15800": { - "File": "triceCheck.c", - "Line": 2165 - }, - "15801": { - "File": "triceCheck.c", - "Line": 2166 - }, - "15802": { - "File": "triceCheck.c", - "Line": 2167 - }, - "15803": { - "File": "triceCheck.c", - "Line": 2168 - }, - "15804": { - "File": "triceCheck.c", - "Line": 2169 - }, - "15805": { - "File": "triceCheck.c", - "Line": 2170 - }, - "15806": { - "File": "triceCheck.c", - "Line": 2171 - }, - "15807": { - "File": "triceCheck.c", - "Line": 2173 - }, - "15808": { - "File": "triceCheck.c", - "Line": 2174 - }, - "15809": { - "File": "triceCheck.c", - "Line": 2175 - }, - "15810": { - "File": "triceCheck.c", - "Line": 2176 - }, - "15811": { - "File": "triceCheck.c", - "Line": 2177 - }, - "15812": { - "File": "triceCheck.c", - "Line": 2178 - }, - "15813": { - "File": "triceCheck.c", - "Line": 2179 - }, - "15814": { - "File": "triceCheck.c", - "Line": 2180 - }, - "15815": { - "File": "triceCheck.c", - "Line": 2181 - }, - "15816": { - "File": "triceCheck.c", - "Line": 2182 - }, - "15817": { - "File": "triceCheck.c", - "Line": 2183 - }, - "15818": { - "File": "triceCheck.c", - "Line": 2184 - }, - "15819": { - "File": "triceCheck.c", - "Line": 2185 - }, - "15820": { - "File": "triceCheck.c", - "Line": 2186 - }, - "15821": { - "File": "triceCheck.c", - "Line": 2187 - }, - "15822": { - "File": "triceCheck.c", - "Line": 2188 - }, - "15823": { - "File": "triceCheck.c", - "Line": 2189 - }, - "15824": { - "File": "triceCheck.c", - "Line": 2190 - }, - "15825": { - "File": "triceCheck.c", - "Line": 2191 - }, - "15826": { - "File": "triceCheck.c", - "Line": 2192 - }, - "15827": { - "File": "triceCheck.c", - "Line": 2193 - }, - "15828": { - "File": "triceCheck.c", - "Line": 2194 - }, - "15829": { - "File": "triceCheck.c", - "Line": 2195 - }, - "15830": { - "File": "triceCheck.c", - "Line": 2196 - }, - "15831": { - "File": "triceCheck.c", - "Line": 2197 - }, - "15832": { - "File": "triceCheck.c", - "Line": 2198 - }, - "15833": { - "File": "triceCheck.c", - "Line": 2199 - }, - "15834": { - "File": "triceCheck.c", - "Line": 2200 - }, - "15835": { - "File": "triceCheck.c", - "Line": 2202 - }, - "15836": { - "File": "triceCheck.c", - "Line": 2203 - }, - "15837": { - "File": "triceCheck.c", - "Line": 2204 - }, - "15838": { - "File": "triceCheck.c", - "Line": 2205 - }, - "15839": { - "File": "triceCheck.c", - "Line": 2206 - }, - "15840": { - "File": "triceCheck.c", - "Line": 2207 - }, - "15841": { - "File": "triceCheck.c", - "Line": 2208 - }, - "15842": { - "File": "triceCheck.c", - "Line": 2209 - }, - "15843": { - "File": "triceCheck.c", - "Line": 2210 - }, - "15844": { - "File": "triceCheck.c", - "Line": 2211 - }, - "15845": { - "File": "triceCheck.c", - "Line": 2212 - }, - "15846": { - "File": "triceCheck.c", - "Line": 2213 - }, - "15847": { - "File": "triceCheck.c", - "Line": 2214 - }, - "15848": { - "File": "triceCheck.c", - "Line": 2215 - }, - "15849": { - "File": "triceCheck.c", - "Line": 2216 - }, - "15850": { - "File": "triceCheck.c", - "Line": 2217 - }, - "15851": { - "File": "triceCheck.c", - "Line": 2218 - }, - "15852": { - "File": "triceCheck.c", - "Line": 2219 - }, - "15853": { - "File": "triceCheck.c", - "Line": 2220 - }, - "15854": { - "File": "triceCheck.c", - "Line": 2221 - }, - "15855": { - "File": "triceCheck.c", - "Line": 2222 - }, - "15856": { - "File": "triceCheck.c", - "Line": 2223 - }, - "15857": { - "File": "triceCheck.c", - "Line": 2224 - }, - "15858": { - "File": "triceCheck.c", - "Line": 2225 - }, - "15859": { - "File": "triceCheck.c", - "Line": 2226 - }, - "15860": { - "File": "triceCheck.c", - "Line": 2227 - }, - "15861": { - "File": "triceCheck.c", - "Line": 2228 - }, - "15862": { - "File": "triceCheck.c", - "Line": 2230 - }, - "15863": { - "File": "triceCheck.c", - "Line": 2231 - }, - "15864": { - "File": "triceCheck.c", - "Line": 2232 - }, - "15865": { - "File": "triceCheck.c", - "Line": 2233 - }, - "15866": { - "File": "triceCheck.c", - "Line": 2234 - }, - "15867": { - "File": "triceCheck.c", - "Line": 2235 - }, - "15868": { - "File": "triceCheck.c", - "Line": 2236 - }, - "15869": { - "File": "triceCheck.c", - "Line": 2237 - }, - "15870": { - "File": "triceCheck.c", - "Line": 2238 - }, - "15871": { - "File": "triceCheck.c", - "Line": 2239 - }, - "15872": { - "File": "triceCheck.c", - "Line": 2240 - }, - "15873": { - "File": "triceCheck.c", - "Line": 2241 - }, - "15874": { - "File": "triceCheck.c", - "Line": 2242 - }, - "15875": { - "File": "triceCheck.c", - "Line": 2243 - }, - "15876": { - "File": "triceCheck.c", - "Line": 2244 - }, - "15877": { - "File": "triceCheck.c", - "Line": 2245 - }, - "15878": { - "File": "triceCheck.c", - "Line": 2246 - }, - "15879": { - "File": "triceCheck.c", - "Line": 2247 - }, - "15880": { - "File": "triceCheck.c", - "Line": 2248 - }, - "15881": { - "File": "triceCheck.c", - "Line": 2249 - }, - "15882": { - "File": "triceCheck.c", - "Line": 2250 - }, - "15883": { - "File": "triceCheck.c", - "Line": 2251 - }, - "15884": { - "File": "triceCheck.c", - "Line": 2252 - }, - "15885": { - "File": "triceCheck.c", - "Line": 2253 - }, - "15886": { - "File": "triceCheck.c", - "Line": 2254 - }, - "15887": { - "File": "triceCheck.c", - "Line": 2255 - }, - "15888": { - "File": "triceCheck.c", - "Line": 2256 - }, - "15889": { - "File": "triceCheck.c", - "Line": 2257 - }, - "15890": { - "File": "triceCheck.c", - "Line": 2258 - }, - "15891": { - "File": "triceCheck.c", - "Line": 2259 - }, - "15892": { - "File": "triceCheck.c", - "Line": 2260 - }, - "15893": { - "File": "triceCheck.c", - "Line": 2261 - }, - "15894": { - "File": "triceCheck.c", - "Line": 2262 - }, - "15895": { - "File": "triceCheck.c", - "Line": 2263 - }, - "15896": { - "File": "triceCheck.c", - "Line": 2264 - }, - "15897": { - "File": "triceCheck.c", - "Line": 2265 - }, - "15898": { - "File": "triceCheck.c", - "Line": 2266 - }, - "15899": { - "File": "triceCheck.c", - "Line": 2267 - }, - "15900": { - "File": "triceCheck.c", - "Line": 2268 - }, - "15901": { - "File": "triceCheck.c", - "Line": 2269 - }, - "15902": { - "File": "triceCheck.c", - "Line": 2270 - }, - "15903": { - "File": "triceCheck.c", - "Line": 2271 - }, - "15904": { - "File": "triceCheck.c", - "Line": 2272 - }, - "15905": { - "File": "triceCheck.c", - "Line": 2273 - }, - "15906": { - "File": "triceCheck.c", - "Line": 2274 - }, - "15907": { - "File": "triceCheck.c", - "Line": 2275 - }, - "15908": { - "File": "triceCheck.c", - "Line": 2276 - }, - "15909": { - "File": "triceCheck.c", - "Line": 2277 - }, - "15910": { - "File": "triceCheck.c", - "Line": 2278 - }, - "15911": { - "File": "triceCheck.c", - "Line": 2279 - }, - "15912": { - "File": "triceCheck.c", - "Line": 2280 - }, - "15913": { - "File": "triceCheck.c", - "Line": 2281 - }, - "15914": { - "File": "triceCheck.c", - "Line": 2282 - }, - "15915": { - "File": "triceCheck.c", - "Line": 2283 - }, - "15916": { - "File": "triceCheck.c", - "Line": 2284 - }, - "15917": { - "File": "triceCheck.c", - "Line": 2285 - }, - "15918": { - "File": "triceCheck.c", - "Line": 2286 - }, - "15919": { - "File": "triceCheck.c", - "Line": 2287 - }, - "15920": { - "File": "triceCheck.c", - "Line": 2288 - }, - "15921": { - "File": "triceCheck.c", - "Line": 2289 - }, - "15922": { - "File": "triceCheck.c", - "Line": 2290 - }, - "15923": { - "File": "triceCheck.c", - "Line": 2291 - }, - "15924": { - "File": "triceCheck.c", - "Line": 2292 - }, - "15925": { - "File": "triceCheck.c", - "Line": 2293 - }, - "15926": { - "File": "triceCheck.c", - "Line": 2294 - }, - "15927": { - "File": "triceCheck.c", - "Line": 2295 - }, - "15928": { - "File": "triceCheck.c", - "Line": 2296 - }, - "15929": { - "File": "triceCheck.c", - "Line": 2297 - }, - "15930": { - "File": "triceCheck.c", - "Line": 2298 - }, - "15931": { - "File": "triceCheck.c", - "Line": 2299 - }, - "15932": { - "File": "triceCheck.c", - "Line": 2300 - }, - "15933": { - "File": "triceCheck.c", - "Line": 2301 - }, - "15934": { - "File": "triceCheck.c", - "Line": 2302 - }, - "15935": { - "File": "triceCheck.c", - "Line": 2303 - }, - "15936": { - "File": "triceCheck.c", - "Line": 2304 - }, - "15937": { - "File": "triceCheck.c", - "Line": 2306 - }, - "15938": { - "File": "triceCheck.c", - "Line": 2307 - }, - "15939": { - "File": "triceCheck.c", - "Line": 2308 - }, - "15940": { - "File": "triceCheck.c", - "Line": 2309 - }, - "15941": { - "File": "triceCheck.c", - "Line": 2310 - }, - "15942": { - "File": "triceCheck.c", - "Line": 2311 - }, - "15943": { - "File": "triceCheck.c", - "Line": 2312 - }, - "15944": { - "File": "triceCheck.c", - "Line": 2313 - }, - "15945": { - "File": "triceCheck.c", - "Line": 2314 - }, - "15946": { - "File": "triceCheck.c", - "Line": 2315 - }, - "15947": { - "File": "triceCheck.c", - "Line": 2316 - }, - "15948": { - "File": "triceCheck.c", - "Line": 2317 - }, - "15949": { - "File": "triceCheck.c", - "Line": 2318 - }, - "15950": { - "File": "triceCheck.c", - "Line": 2320 - }, - "15951": { - "File": "triceCheck.c", - "Line": 2321 - }, - "15952": { - "File": "triceCheck.c", - "Line": 2322 - }, - "15953": { - "File": "triceCheck.c", - "Line": 2323 - }, - "15954": { - "File": "triceCheck.c", - "Line": 2324 - }, - "15955": { - "File": "triceCheck.c", - "Line": 2325 - }, - "15956": { - "File": "triceCheck.c", - "Line": 2326 - }, - "15957": { - "File": "triceCheck.c", - "Line": 2327 - }, - "15958": { - "File": "triceCheck.c", - "Line": 2328 - }, - "15959": { - "File": "triceCheck.c", - "Line": 2329 - }, - "15960": { - "File": "triceCheck.c", - "Line": 2330 - }, - "15961": { - "File": "triceCheck.c", - "Line": 2331 - }, - "15962": { - "File": "triceCheck.c", - "Line": 2332 - }, - "15963": { - "File": "triceCheck.c", - "Line": 2333 - }, - "15964": { - "File": "triceCheck.c", - "Line": 2334 - }, - "15965": { - "File": "triceCheck.c", - "Line": 2335 - }, - "15966": { - "File": "triceCheck.c", - "Line": 2336 - }, - "15967": { - "File": "triceCheck.c", - "Line": 2337 - }, - "15968": { - "File": "triceCheck.c", - "Line": 2338 - }, - "15969": { - "File": "triceCheck.c", - "Line": 2339 - }, - "15970": { - "File": "triceCheck.c", - "Line": 2340 - }, - "15971": { - "File": "triceCheck.c", - "Line": 2341 - }, - "15972": { - "File": "triceCheck.c", - "Line": 2342 - }, - "15973": { - "File": "triceCheck.c", - "Line": 2343 - }, - "15974": { - "File": "triceCheck.c", - "Line": 2345 - }, - "15975": { - "File": "triceCheck.c", - "Line": 2346 - }, - "15976": { - "File": "triceCheck.c", - "Line": 2347 - }, - "15977": { - "File": "triceCheck.c", - "Line": 2348 - }, - "15978": { - "File": "triceCheck.c", - "Line": 2349 - }, - "15979": { - "File": "triceCheck.c", - "Line": 2350 - }, - "15980": { - "File": "triceCheck.c", - "Line": 2351 - }, - "15981": { - "File": "triceCheck.c", - "Line": 2352 - }, - "15982": { - "File": "triceCheck.c", - "Line": 2353 - }, - "15983": { - "File": "triceCheck.c", - "Line": 2354 - }, - "15984": { - "File": "triceCheck.c", - "Line": 2355 - }, - "15985": { - "File": "triceCheck.c", - "Line": 2356 - }, - "15986": { - "File": "triceCheck.c", - "Line": 2357 - }, - "15987": { - "File": "triceCheck.c", - "Line": 2358 - }, - "15988": { - "File": "triceCheck.c", - "Line": 2359 - }, - "15989": { - "File": "triceCheck.c", - "Line": 2360 - }, - "15990": { - "File": "triceCheck.c", - "Line": 2361 - }, - "15991": { - "File": "triceCheck.c", - "Line": 2362 - }, - "15992": { - "File": "triceCheck.c", - "Line": 2363 - }, - "15993": { - "File": "triceCheck.c", - "Line": 2364 - }, - "15994": { - "File": "triceCheck.c", - "Line": 2365 - }, - "15995": { - "File": "triceCheck.c", - "Line": 2366 - }, - "15996": { - "File": "triceCheck.c", - "Line": 2367 - }, - "15997": { - "File": "triceCheck.c", - "Line": 2368 - }, - "15998": { - "File": "triceCheck.c", - "Line": 2369 - }, - "15999": { - "File": "triceCheck.c", - "Line": 2370 - }, - "16000": { - "File": "triceCheck.c", - "Line": 2371 - }, - "16001": { - "File": "triceCheck.c", - "Line": 2372 - }, - "16002": { - "File": "triceCheck.c", - "Line": 2373 - }, - "16003": { - "File": "triceCheck.c", - "Line": 2374 - }, - "16004": { - "File": "triceCheck.c", - "Line": 2377 - }, - "16005": { - "File": "triceCheck.c", - "Line": 2379 - }, - "16006": { - "File": "triceCheck.c", - "Line": 2380 - }, - "16007": { - "File": "triceCheck.c", - "Line": 2381 - }, - "16008": { - "File": "triceCheck.c", - "Line": 2382 - }, - "16009": { - "File": "triceCheck.c", - "Line": 2383 - }, - "16010": { - "File": "triceCheck.c", - "Line": 2384 - }, - "16011": { - "File": "triceCheck.c", - "Line": 2385 - }, - "16012": { - "File": "triceCheck.c", - "Line": 2386 - }, - "16013": { - "File": "triceCheck.c", - "Line": 2387 - }, - "16014": { - "File": "triceCheck.c", - "Line": 2388 - }, - "16015": { - "File": "triceCheck.c", - "Line": 2389 - }, - "16016": { - "File": "triceCheck.c", - "Line": 2390 - }, - "16017": { - "File": "triceCheck.c", - "Line": 2392 - }, - "16018": { - "File": "triceCheck.c", - "Line": 2393 - }, - "16019": { - "File": "triceCheck.c", - "Line": 2394 - }, - "16020": { - "File": "triceCheck.c", - "Line": 2395 - }, - "16021": { - "File": "triceCheck.c", - "Line": 2396 - }, - "16022": { - "File": "triceCheck.c", - "Line": 2397 - }, - "16023": { - "File": "triceCheck.c", - "Line": 2398 - }, - "16024": { - "File": "triceCheck.c", - "Line": 2399 - }, - "16025": { - "File": "triceCheck.c", - "Line": 2400 - }, - "16026": { - "File": "triceCheck.c", - "Line": 2401 - }, - "16027": { - "File": "triceCheck.c", - "Line": 2402 - }, - "16028": { - "File": "triceCheck.c", - "Line": 2403 - }, - "16029": { - "File": "triceCheck.c", - "Line": 2404 - }, - "16030": { - "File": "triceCheck.c", - "Line": 2407 - }, - "16031": { - "File": "triceCheck.c", - "Line": 2408 - }, - "16032": { - "File": "triceCheck.c", - "Line": 2409 - }, - "16033": { - "File": "triceCheck.c", - "Line": 2410 - }, - "16034": { - "File": "triceCheck.c", - "Line": 2411 - }, - "16035": { - "File": "triceCheck.c", - "Line": 2412 - }, - "16036": { - "File": "triceCheck.c", - "Line": 2413 - }, - "16037": { - "File": "triceCheck.c", - "Line": 2414 - }, - "16038": { - "File": "triceCheck.c", - "Line": 2415 - }, - "16039": { - "File": "triceCheck.c", - "Line": 2416 - }, - "16040": { - "File": "triceCheck.c", - "Line": 2417 - }, - "16041": { - "File": "triceCheck.c", - "Line": 2418 - }, - "16042": { - "File": "triceCheck.c", - "Line": 2419 - }, - "16043": { - "File": "triceCheck.c", - "Line": 2421 - }, - "16044": { - "File": "triceCheck.c", - "Line": 2422 - }, - "16045": { - "File": "triceCheck.c", - "Line": 2423 - }, - "16046": { - "File": "triceCheck.c", - "Line": 2424 - }, - "16047": { - "File": "triceCheck.c", - "Line": 2425 - }, - "16048": { - "File": "triceCheck.c", - "Line": 2426 - }, - "16049": { - "File": "triceCheck.c", - "Line": 2427 - }, - "16050": { - "File": "triceCheck.c", - "Line": 2428 - }, - "16051": { - "File": "triceCheck.c", - "Line": 2429 - }, - "16052": { - "File": "triceCheck.c", - "Line": 2430 - }, - "16053": { - "File": "triceCheck.c", - "Line": 2431 - }, - "16054": { - "File": "triceCheck.c", - "Line": 2432 - }, - "16055": { - "File": "triceCheck.c", - "Line": 2433 - }, - "16056": { - "File": "triceCheck.c", - "Line": 2435 - }, - "16057": { - "File": "triceCheck.c", - "Line": 2436 - }, - "16058": { - "File": "triceCheck.c", - "Line": 2437 - }, - "16059": { - "File": "triceCheck.c", - "Line": 2438 - }, - "16060": { - "File": "triceCheck.c", - "Line": 2439 - }, - "16061": { - "File": "triceCheck.c", - "Line": 2440 - }, - "16062": { - "File": "triceCheck.c", - "Line": 2441 - }, - "16063": { - "File": "triceCheck.c", - "Line": 2443 - }, - "16064": { - "File": "triceCheck.c", - "Line": 2444 - }, - "16065": { - "File": "triceCheck.c", - "Line": 2445 - }, - "16066": { - "File": "triceCheck.c", - "Line": 2446 - }, - "16067": { - "File": "triceCheck.c", - "Line": 2447 - }, - "16068": { - "File": "triceCheck.c", - "Line": 2448 - }, - "16069": { - "File": "triceCheck.c", - "Line": 2449 - }, - "16070": { - "File": "triceCheck.c", - "Line": 2451 - }, - "16071": { - "File": "triceCheck.c", - "Line": 2452 - }, - "16072": { - "File": "triceCheck.c", - "Line": 2453 - }, - "16073": { - "File": "triceCheck.c", - "Line": 2454 - }, - "16074": { - "File": "triceCheck.c", - "Line": 2455 - }, - "16075": { - "File": "triceCheck.c", - "Line": 2456 - }, - "16076": { - "File": "triceCheck.c", - "Line": 2457 - }, - "16077": { - "File": "triceCheck.c", - "Line": 2459 - }, - "16078": { - "File": "triceCheck.c", - "Line": 2460 - }, - "16079": { - "File": "triceCheck.c", - "Line": 2461 - }, - "16080": { - "File": "triceCheck.c", - "Line": 2462 - }, - "16081": { - "File": "triceCheck.c", - "Line": 2463 - }, - "16082": { - "File": "triceCheck.c", - "Line": 2464 - }, - "16083": { - "File": "triceCheck.c", - "Line": 2465 - }, - "16084": { - "File": "triceCheck.c", - "Line": 2467 - }, - "16085": { - "File": "triceCheck.c", - "Line": 2468 - }, - "16086": { - "File": "triceCheck.c", - "Line": 2469 - }, - "16087": { - "File": "triceCheck.c", - "Line": 2470 - }, - "16088": { - "File": "triceCheck.c", - "Line": 2471 - }, - "16089": { - "File": "triceCheck.c", - "Line": 2472 - }, - "16090": { - "File": "triceCheck.c", - "Line": 2473 - }, - "16091": { - "File": "triceCheck.c", - "Line": 2475 - }, - "16092": { - "File": "triceCheck.c", - "Line": 2476 - }, - "16093": { - "File": "triceCheck.c", - "Line": 2477 - }, - "16094": { - "File": "triceCheck.c", - "Line": 2478 - }, - "16095": { - "File": "triceCheck.c", - "Line": 2479 - }, - "16096": { - "File": "triceCheck.c", - "Line": 2480 - }, - "16097": { - "File": "triceCheck.c", - "Line": 2481 - }, - "16098": { - "File": "triceCheck.c", - "Line": 2483 - }, - "16099": { - "File": "triceCheck.c", - "Line": 2484 - }, - "16100": { - "File": "triceCheck.c", - "Line": 2485 - }, - "16101": { - "File": "triceCheck.c", - "Line": 2486 - }, - "16102": { - "File": "triceCheck.c", - "Line": 2487 - }, - "16103": { - "File": "triceCheck.c", - "Line": 2488 - }, - "16104": { - "File": "triceCheck.c", - "Line": 2489 - }, - "16105": { - "File": "triceCheck.c", - "Line": 2491 - }, - "16106": { - "File": "triceCheck.c", - "Line": 2492 - }, - "16107": { - "File": "triceCheck.c", - "Line": 2493 - }, - "16108": { - "File": "triceCheck.c", - "Line": 2494 - }, - "16109": { - "File": "triceCheck.c", - "Line": 2495 - }, - "16110": { - "File": "triceCheck.c", - "Line": 2496 - }, - "16111": { - "File": "triceCheck.c", - "Line": 2497 - }, - "16112": { - "File": "triceCheck.c", - "Line": 2499 - }, - "16113": { - "File": "triceCheck.c", - "Line": 2500 - }, - "16114": { - "File": "triceCheck.c", - "Line": 2501 - }, - "16115": { - "File": "triceCheck.c", - "Line": 2502 - }, - "16116": { - "File": "triceCheck.c", - "Line": 2503 - }, - "16117": { - "File": "triceCheck.c", - "Line": 2504 - }, - "16118": { - "File": "triceCheck.c", - "Line": 2505 - }, - "16119": { - "File": "triceCheck.c", - "Line": 2507 - }, - "16120": { - "File": "triceCheck.c", - "Line": 2508 - }, - "16121": { - "File": "triceCheck.c", - "Line": 2509 - }, - "16122": { - "File": "triceCheck.c", - "Line": 2510 - }, - "16123": { - "File": "triceCheck.c", - "Line": 2511 - }, - "16124": { - "File": "triceCheck.c", - "Line": 2512 - }, - "16125": { - "File": "triceCheck.c", - "Line": 2513 - }, - "16126": { - "File": "triceCheck.c", - "Line": 2515 - }, - "16127": { - "File": "triceCheck.c", - "Line": 2516 - }, - "16128": { - "File": "triceCheck.c", - "Line": 2517 - }, - "16129": { - "File": "triceCheck.c", - "Line": 2518 - }, - "16130": { - "File": "triceCheck.c", - "Line": 2519 - }, - "16131": { - "File": "triceCheck.c", - "Line": 2520 - }, - "16132": { - "File": "triceCheck.c", - "Line": 2521 - }, - "16133": { - "File": "triceCheck.c", - "Line": 2523 - }, - "16134": { - "File": "triceCheck.c", - "Line": 2524 - }, - "16135": { - "File": "triceCheck.c", - "Line": 2525 - }, - "16136": { - "File": "triceCheck.c", - "Line": 2526 - }, - "16137": { - "File": "triceCheck.c", - "Line": 2527 - }, - "16138": { - "File": "triceCheck.c", - "Line": 2528 - }, - "16139": { - "File": "triceCheck.c", - "Line": 2529 - }, - "16140": { - "File": "triceCheck.c", - "Line": 2562 - }, - "16141": { - "File": "triceCheck.c", - "Line": 2563 - }, - "16142": { - "File": "triceCheck.c", - "Line": 2573 - }, - "16143": { - "File": "triceCheck.c", - "Line": 2574 - }, - "16144": { - "File": "triceCheck.c", - "Line": 2692 - }, - "16145": { - "File": "triceCheck.c", - "Line": 2693 - }, - "16146": { - "File": "triceCheck.c", - "Line": 2694 - }, - "16147": { - "File": "triceCheck.c", - "Line": 2696 - }, - "16148": { - "File": "triceCheck.c", - "Line": 2697 - }, - "16149": { - "File": "triceCheck.c", - "Line": 2698 - }, - "16150": { - "File": "triceCheck.c", - "Line": 2704 - }, - "16151": { - "File": "triceCheck.c", - "Line": 2705 - }, - "16152": { - "File": "triceCheck.c", - "Line": 2706 - }, - "16153": { - "File": "triceCheck.c", - "Line": 2708 - }, - "16154": { - "File": "triceCheck.c", - "Line": 2709 - }, - "16155": { - "File": "triceCheck.c", - "Line": 2710 - }, - "16156": { - "File": "triceCheck.c", - "Line": 2721 - }, - "16157": { - "File": "triceCheck.c", - "Line": 2728 - }, - "16158": { - "File": "triceCheck.c", - "Line": 2729 - }, - "16200": { - "File": "TargetActivity.c", - "Line": 7 - }, - "16201": { - "File": "TargetActivity.c", - "Line": 8 - }, - "16202": { - "File": "TargetActivity.c", - "Line": 9 - }, - "16203": { - "File": "TargetActivity.c", - "Line": 11 - }, - "16204": { - "File": "TargetActivity.c", - "Line": 6 - }, - "16205": { - "File": "TargetActivity.c", - "Line": 7 - }, - "16206": { - "File": "TargetActivity.c", - "Line": 8 - }, - "16207": { - "File": "TargetActivity.c", - "Line": 10 - }, - "16370": { - "File": "triceLogDiagData.c", - "Line": 72 - }, - "16371": { - "File": "triceLogDiagData.c", - "Line": 70 - }, - "16372": { - "File": "triceLogDiagData.c", - "Line": 64 - }, - "16373": { - "File": "triceLogDiagData.c", - "Line": 62 - }, - "16374": { - "File": "triceLogDiagData.c", - "Line": 51 - }, - "16375": { - "File": "triceLogDiagData.c", - "Line": 47 - }, - "16376": { - "File": "triceLogDiagData.c", - "Line": 45 - }, - "16377": { - "File": "triceLogDiagData.c", - "Line": 41 - }, - "16378": { - "File": "triceLogDiagData.c", - "Line": 39 - }, - "16379": { - "File": "triceLogDiagData.c", - "Line": 33 - }, - "16380": { - "File": "triceLogDiagData.c", - "Line": 30 - }, - "16381": { - "File": "triceLogDiagData.c", - "Line": 26 - }, - "16382": { - "File": "triceLogDiagData.c", - "Line": 21 - }, - "16383": { - "File": "triceLogDiagData.c", - "Line": 19 - } -} \ No newline at end of file diff --git a/_test/testdata/triceCheck.c b/_test/testdata/triceCheck.c index e702c2cdb..7e1509632 100644 --- a/_test/testdata/triceCheck.c +++ b/_test/testdata/triceCheck.c @@ -8,6 +8,7 @@ // The strings behind "//exp:" are the expected result for each line (-color=none) +#ifndef TRICE_CHECK_MIN #if !TRICE_OFF static int32_t FloatToInt32(float f); @@ -18,9 +19,12 @@ static int64_t DoubleToInt64(double f); static void exampleOfManualSerialization(void); static void exampleOfManualJSONencoding(void); static void dynString(int n); +#endif // #ifndef TRICE_CHECK_MIN // clang-format off +void TriceCheck(int index); // Avoid noise with option -Wmissing-prototypes. + //! TriceCheck performs trice code sequence n. TriceCheck writes out all types of trices with fixed values for testing //! \details One trice has one subtrace, if param size max 2 bytes. //! Traces with more bytes as parameter consist of several subtraces. @@ -28,456 +32,505 @@ static void dynString(int n); //! The ID values must be in file triceCheck.c, because it is compiled first and trice update runs later. // This function is also called from Go for tests. void TriceCheck(int n) { - char* sABCDE = "abcde 12345"; -#if !TRICE_OFF +#ifdef TRICE_CHECK_MIN + TRice("\rTriceCheck %4d", n); +#else // #ifdef TRICE_CHECK_MIN + char * sABCDE = "abcde 12345"; uint32_t lenABCDE = strlen(sABCDE); - float x = (float)1089.6082763671875; // 0x44883377 - double y = 518.0547492508867; // 0x4080307020601050 - #if TRICE_CGO == 1 + float x = (float)1089.6082763671875; // 0x44883377 + double y = 518.0547492508867; // 0x4080307020601050 +#if TRICE_OFF + TRICE_UNUSED(x) + TRICE_UNUSED(y) +#endif +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) char* A = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; - #endif // #if TRICE_CGO == 1 -#endif // #if !TRICE_OFF +#endif char* s = "AAAAAAAAAAAA"; char * five = "five"; static int8_t b8[24] = { 0, -1, -2, 0x33, 4, 5, 6, 7, 8, 9, 10, 11, 0, -1, -2, 0x33, 4, 5, 6, 7, 8, 9, 10, 11 }; static int16_t b16[] = { 0, -1, -2, 0x3344 }; static int32_t b32[] = { 0, -1, -2, 0x33445555}; static int64_t b64[4] = { 0, -1, -2, 0x3344555566666666 }; - unsigned anchorLine = __LINE__ + 20; // The offset value here must point to the first test line containing `anchorLine`. + int anchorLine = __LINE__ + 20; // The offset value here must point to the first test line containing `anchorLine`. switch( n ){ default: - break; case __LINE__: trice16(iD(14000), "att: line %u\n", __LINE__ ); + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + // Lines ending with a comment starting with `//exp:` are executed during trhe automatic Go tests. - break; case __LINE__: TRice(iD(14001), "Hello World!\n" ); //exp: time:feed3322default: Hello World! + break; case __LINE__: TRice("Hello World!\n" ); //exp: time:feed3322default: Hello World! // normal use cases - break; case __LINE__: TRice(iD(14002), "info:This is a message without values and a 32-bit stamp.\n" ); //exp: time:feed3322default: info:This is a message without values and a 32-bit stamp. - break; case __LINE__: Trice(iD(14003), "info:This is a message without values and a 16-bit stamp.\n" ); //exp: time: be16default: info:This is a message without values and a 16-bit stamp. - break; case __LINE__: trice(iD(14004), "info:This is a message without values and without stamp.\n" ); //exp: time: default: info:This is a message without values and without stamp. + break; case __LINE__: TRice("info:This is a message without values and a 32-bit stamp.\n" ); //exp: time:feed3322default: info:This is a message without values and a 32-bit stamp. + break; case __LINE__: Trice("info:This is a message without values and a 16-bit stamp.\n" ); //exp: time: be16default: info:This is a message without values and a 16-bit stamp. + break; case __LINE__: trice("info:This is a message without values and without stamp.\n" ); //exp: time: default: info:This is a message without values and without stamp. break; case __LINE__: for( int i = 126; i < 130; i++ ){ dynString(i); } + - - - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr: - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:01 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:012 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:01234 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:012345 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:01234567 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:012345678 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789 - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789a - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789ab - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abc - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcd - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcde - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdef - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefg - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefgh - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghi - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghij - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijk - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijkl - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklm - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmn - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmno - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnop - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopq - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqr - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrs - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrst - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstu - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuv - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvw - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwx - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxy - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyz - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzA - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzAB - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABC - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCD - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDE - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEF - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFG - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGH - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHI - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJ - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJK - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKL - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLM - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMN - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNO - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQ - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQR - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRST - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXY - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ. - break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ., - - break; case __LINE__: trice (iD(14005), "sig:trice16 with 1 to 12 pointer\n" ); - - break; case __LINE__: trice16(iD(14006), "rd:trice16 %p\n", -1 ); //exp: time: default: rd:trice16 ffff - break; case __LINE__: trice16(iD(14007), "rd:trice16 %p, %p\n", -1, -2 ); //exp: time: default: rd:trice16 ffff, fffe - break; case __LINE__: trice16(iD(14008), "rd:trice16 %p, %p, %p\n", -1, -2, -3 ); //exp: time: default: rd:trice16 ffff, fffe, fffd - break; case __LINE__: trice16(iD(14009), "rd:trice16 %p, %p, %p, %p\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc - break; case __LINE__: trice16(iD(14010), "rd:trice16 %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb - break; case __LINE__: trice16(iD(14011), "rd:trice16 %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa - break; case __LINE__: trice16(iD(14012), "rd:trice16 %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9 - break; case __LINE__: trice16(iD(14013), "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8 - break; case __LINE__: trice16(iD(14014), "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7 - break; case __LINE__: trice16(iD(14015), "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7, fff6 - break; case __LINE__: trice16(iD(14016), "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7, fff6, fff5 - break; case __LINE__: trice16(iD(14017), "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7, fff6, fff5, fff4 - - break; case __LINE__: trice8 (iD(14018), "rd:trice8 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8 ff, fe, fd, fc, fb, fa, f9, f8, f7, f6, f5, f4 - break; case __LINE__: trice32(iD(14019), "rd:trice32 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32 ffffffff, fffffffe, fffffffd, fffffffc, fffffffb, fffffffa, fffffff9, fffffff8, fffffff7, fffffff6, fffffff5, fffffff4 - - break; case __LINE__: trice (iD(14020), "sig:trice16 with 1 to 12 hex\n" ); - - break; case __LINE__: trice16(iD(14021), "rd:trice16 %X\n", -1 ); //exp: time: default: rd:trice16 FFFF - break; case __LINE__: trice16(iD(14022), "rd:trice16 %X, %X\n", -1, -2 ); //exp: time: default: rd:trice16 FFFF, FFFE - break; case __LINE__: trice16(iD(14023), "rd:trice16 %X, %X, %X\n", -1, -2, -3 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD - break; case __LINE__: trice16(iD(14024), "rd:trice16 %X, %X, %X, %X\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC - break; case __LINE__: trice16(iD(14025), "rd:trice16 %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB - break; case __LINE__: trice16(iD(14026), "rd:trice16 %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA - break; case __LINE__: trice16(iD(14027), "rd:trice16 %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9 - break; case __LINE__: trice16(iD(14028), "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8 - break; case __LINE__: trice16(iD(14029), "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7 - break; case __LINE__: trice16(iD(14030), "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7, FFF6 - break; case __LINE__: trice16(iD(14031), "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7, FFF6, FFF5 - break; case __LINE__: trice16(iD(14032), "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7, FFF6, FFF5, FFF4 - - break; case __LINE__: trice8 (iD(14033), "rd:trice8 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8 FF, FE, FD, FC, FB, FA, F9, F8, F7, F6, F5, F4 - break; case __LINE__: trice32(iD(14034), "rd:trice32 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32 FFFFFFFF, FFFFFFFE, FFFFFFFD, FFFFFFFC, FFFFFFFB, FFFFFFFA, FFFFFFF9, FFFFFFF8, FFFFFFF7, FFFFFFF6, FFFFFFF5, FFFFFFF4 - - break; case __LINE__: trice16(iD(14035), "att: line %u\n", __LINE__ ); + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr: + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:01 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:012 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:01234 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:012345 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:01234567 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:012345678 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789 + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789a + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789ab + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abc + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcd + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcde + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdef + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefg + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefgh + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghi + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghij + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijk + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijkl + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklm + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmn + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmno + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnop + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopq + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqr + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrs + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrst + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstu + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuv + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvw + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwx + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxy + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyz + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzA + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzAB + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABC + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCD + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDE + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEF + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFG + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGH + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHI + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJ + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJK + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKL + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLM + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMN + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNO + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQ + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQR + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRST + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXY + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ. + break; case __LINE__: dynString(__LINE__ - anchorLine); //exp: time: default: wr:0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ., + + break; case __LINE__: triceAssertTrue("ASSERT:flag not true!\n", 0 ); //exp: time: default: ASSERT:flag not true! + break; case __LINE__: TriceAssertTrue("ASSERT:flag not true!\n", 0 ); //exp: time: be16default: ASSERT:flag not true! + break; case __LINE__: TRiceAssertTrue("ASSERT:flag not true!\n", 0 ); //exp: time:feed3322default: ASSERT:flag not true! + break; case __LINE__: triceAssertFalse("ASSERT:flag not false!\n", !0 ); //exp: time: default: ASSERT:flag not false! + break; case __LINE__: TriceAssertFalse("ASSERT:flag not false!\n", !0 ); //exp: time: be16default: ASSERT:flag not false! + break; case __LINE__: TRiceAssertFalse("ASSERT:flag not false!\n", !0 ); //exp: time:feed3322default: ASSERT:flag not false! + + // The following 6 asserts are expected to be silent, so we add some output just for the testing here. + break; case __LINE__: triceAssertTrue("ASSERT:flag not true!\n", !0 ); TRice("ok\n"); //exp: time:feed3322default: ok + break; case __LINE__: TriceAssertTrue("ASSERT:flag not true!\n", !0 ); TRice("ok\n"); //exp: time:feed3322default: ok + break; case __LINE__: TRiceAssertTrue("ASSERT:flag not true!\n", !0 ); TRice("ok\n"); //exp: time:feed3322default: ok + break; case __LINE__: triceAssertFalse("ASSERT:flag not false!\n", 0 ); TRice("ok\n"); //exp: time:feed3322default: ok + break; case __LINE__: TriceAssertFalse("ASSERT:flag not false!\n", 0 ); TRice("ok\n"); //exp: time:feed3322default: ok + break; case __LINE__: TRiceAssertFalse("ASSERT:flag not false!\n", 0 ); TRice("ok\n"); //exp: time:feed3322default: ok + + break; case __LINE__: trice("sig:trice without stamp and with 0 to 12 values (most common use cases)\n" ); + break; case __LINE__: trice("rd:trice\n" ); //exp: time: default: rd:trice + break; case __LINE__: trice("rd:trice %d\n", -1 ); //exp: time: default: rd:trice -1 + break; case __LINE__: trice("rd:trice %d, %d\n", -1, -2 ); //exp: time: default: rd:trice -1, -2 + break; case __LINE__: trice("rd:trice %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice -1, -2, -3 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice -1, -2, -3, -4 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice("rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: Trice("sig:Trice with 16-bit stamp and with 0 to 12 values (common use cases)\n" ); + break; case __LINE__: Trice("rd:Trice\n" ); //exp: time: be16default: rd:Trice + break; case __LINE__: Trice("rd:Trice %d\n", -1 ); //exp: time: be16default: rd:Trice -1 + break; case __LINE__: Trice("rd:Trice %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice -1, -2 + break; case __LINE__: Trice("rd:Trice %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice -1, -2, -3 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice("rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice("sig:TRice with 32-bit stamp and with 0 to 12 values (common use cases)\n" ); + break; case __LINE__: TRice("rd:TRice\n" ); //exp: time:feed3322default: rd:TRice + break; case __LINE__: TRice("rd:TRice %d\n", -1 ); //exp: time:feed3322default: rd:TRice -1 + break; case __LINE__: TRice("rd:TRice %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice -1, -2 + break; case __LINE__: TRice("rd:TRice %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice -1, -2, -3 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice("rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice ("sig:trice16 with 1 to 12 pointer\n" ); + break; case __LINE__: trice16("rd:trice16 %p\n", -1 ); //exp: time: default: rd:trice16 ffff + break; case __LINE__: trice16("rd:trice16 %p, %p\n", -1, -2 ); //exp: time: default: rd:trice16 ffff, fffe + break; case __LINE__: trice16("rd:trice16 %p, %p, %p\n", -1, -2, -3 ); //exp: time: default: rd:trice16 ffff, fffe, fffd + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9 + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8 + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7 + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7, fff6 + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7, fff6, fff5 + break; case __LINE__: trice16("rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16 ffff, fffe, fffd, fffc, fffb, fffa, fff9, fff8, fff7, fff6, fff5, fff4 + break; case __LINE__: trice8 ("rd:trice8 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8 ff, fe, fd, fc, fb, fa, f9, f8, f7, f6, f5, f4 + break; case __LINE__: trice32("rd:trice32 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32 ffffffff, fffffffe, fffffffd, fffffffc, fffffffb, fffffffa, fffffff9, fffffff8, fffffff7, fffffff6, fffffff5, fffffff4 + + break; case __LINE__: trice ("sig:trice16 with 1 to 12 hex\n" ); + break; case __LINE__: trice16("rd:trice16 %X\n", -1 ); //exp: time: default: rd:trice16 FFFF + break; case __LINE__: trice16("rd:trice16 %X, %X\n", -1, -2 ); //exp: time: default: rd:trice16 FFFF, FFFE + break; case __LINE__: trice16("rd:trice16 %X, %X, %X\n", -1, -2, -3 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9 + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8 + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7 + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7, FFF6 + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7, FFF6, FFF5 + break; case __LINE__: trice16("rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16 FFFF, FFFE, FFFD, FFFC, FFFB, FFFA, FFF9, FFF8, FFF7, FFF6, FFF5, FFF4 + break; case __LINE__: trice8 ("rd:trice8 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8 FF, FE, FD, FC, FB, FA, F9, F8, F7, F6, F5, F4 + break; case __LINE__: trice32("rd:trice32 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32 FFFFFFFF, FFFFFFFE, FFFFFFFD, FFFFFFFC, FFFFFFFB, FFFFFFFA, FFFFFFF9, FFFFFFF8, FFFFFFF7, FFFFFFF6, FFFFFFF5, FFFFFFF4 + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); break; case __LINE__: #if TRICE_DEFERRED_XTEA_ENCRYPT == 1 || TRICE_DIRECT_XTEA_ENCRYPT == 1 - trice(iD(14036), "--------------------------------------------------\n" ); + trice("--------------------------------------------------\n" ); { uint32_t by[8] = {1,2,3,4,5,6}; int count = (sizeof(by) + 7) & ~7; // only multiple of 8 encryptable - trice32(iD(14037), "msg: message = %08x %08x %08x %08x %08x %08x\n", by[0], by[1], by[2], by[3], by[4], by[5] ); - trice32(iD(14038), "tim: pre TriceEncryption SysTick=%d\n", SYSTICKVAL ); + trice32("msg: message = %08x %08x %08x %08x %08x %08x\n", by[0], by[1], by[2], by[3], by[4], by[5] ); + trice32("tim: pre TriceEncryption SysTick=%d\n", SYSTICKVAL ); XTEAEncrypt(by, count>>2); - trice32(iD(14039), "tim: post TriceEncryption SysTick=%d\n", SYSTICKVAL ); - trice32(iD(14040), "att: TriceEncrypted = %08x %08x %08x %08x %08x %08x\n", by[0], by[1], by[2], by[3], by[4], by[5] ); + trice32("tim: post TriceEncryption SysTick=%d\n", SYSTICKVAL ); + trice32("att: TriceEncrypted = %08x %08x %08x %08x %08x %08x\n", by[0], by[1], by[2], by[3], by[4], by[5] ); #if XTEA_DECRYPT == 1 - trice16_1(iD(14041), "tim: pre TriceDecryption SysTick=%d\n", SYSTICKVAL ); + trice16_1("tim: pre TriceDecryption SysTick=%d\n", SYSTICKVAL ); XTEADecrypt(by, count>>2); - trice16_1(iD(14042), "tim: post TriceDecryption SysTick=%d\n", SYSTICKVAL ); + trice16_1("tim: post TriceDecryption SysTick=%d\n", SYSTICKVAL ); #endif - trice32(iD(14043), "msg: messge = %08x %08x %08x %08x %08x %08x\n", by[0], by[1], by[2], by[3], by[4], by[5] ); + trice32("msg: messge = %08x %08x %08x %08x %08x %08x\n", by[0], by[1], by[2], by[3], by[4], by[5] ); } - trice(iD(14044), "--------------------------------------------------\n" ); + trice("--------------------------------------------------\n" ); #endif - break; case __LINE__: trice16(iD(14045), "att: line %u\n", __LINE__ ); - - break; case __LINE__: trice(iD(14046), "dbg:Hi!\n" ); //exp: time: default: dbg:Hi! - break; case __LINE__: trice(iD(14047), "dbg: Hi!\n" ); //exp: time: default: dbg: Hi! - - break; case __LINE__: trice(iD(14048), "sig:Some time measurements\n" ); - break; case __LINE__: trice(iD(14049), "isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 - break; case __LINE__: trice(iD(14050), "isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 - break; case __LINE__: trice(iD(14051), "isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 - break; case __LINE__: trice(iD(14052), "isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 - - break; case __LINE__: trice_1(iD(14053), "isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 - break; case __LINE__: trice_1(iD(14054), "isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 - break; case __LINE__: trice_1(iD(14055), "isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 - break; case __LINE__: trice_1(iD(14056), "isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 - - break; case __LINE__: TRICE16_1(id(14057), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 - break; case __LINE__: TRICE16_1(id(14058), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 - break; case __LINE__: TRICE16_1(id(14059), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 - break; case __LINE__: TRICE16_1(id(14060), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 - - break; case __LINE__: TRICE_1(id(14061), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 - break; case __LINE__: TRICE_1(id(14062), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 - break; case __LINE__: TRICE_1(id(14063), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 - break; case __LINE__: TRICE_1(id(14064), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 - - break; case __LINE__: TRICE(id(14065), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 - break; case __LINE__: TRICE(id(14066), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 - break; case __LINE__: TRICE(id(14067), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 - break; case __LINE__: TRICE(id(14068), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 - - break; case __LINE__: trice(iD(14069), "tim:trice START time message\n"); //exp: time: default: tim:trice START time message - break; case __LINE__: trice(iD(14070), "tim:trice STOP time message\n"); //exp: time: default: tim:trice STOP time message - break; case __LINE__: trice(iD(14071), "tim:trice START time message\n"); //exp: time: default: tim:trice START time message - break; case __LINE__: trice(iD(14072), "tim:trice STOP time message\n"); //exp: time: default: tim:trice STOP time message - break; case __LINE__: trice(iD(14073), "tim:trice START time message\n"); //exp: time: default: tim:trice START time message - break; case __LINE__: trice64(iD(14074), "rd:trice64 %d, %d\n", 1, 2 ); //exp: time: default: rd:trice64 1, 2 - break; case __LINE__: trice(iD(14075), "tim:trice STOP time message\n"); //exp: time: default: tim:trice STOP time message - - break; case __LINE__: TRICE(id(14076), "tim:TRICE START time message\n"); //exp: time: default: tim:TRICE START time message - break; case __LINE__: TRICE(id(14077), "tim:TRICE STOP time message\n"); //exp: time: default: tim:TRICE STOP time message - break; case __LINE__: TRICE(id(14078), "tim:TRICE START time message\n"); //exp: time: default: tim:TRICE START time message - break; case __LINE__: TRICE(id(14079), "tim:TRICE STOP time message\n"); //exp: time: default: tim:TRICE STOP time message - break; case __LINE__: TRICE(id(14080), "tim:TRICE START time message\n"); //exp: time: default: tim:TRICE START time message - break; case __LINE__: TRICE64(id(14081), "rd:TRICE64 %d, %d\n", 1, 2 ); //exp: time: default: rd:TRICE64 1, 2 - break; case __LINE__: TRICE(id(14082), "tim:TRICE STOP time message\n"); //exp: time: default: tim:TRICE STOP time message - - break; case __LINE__: trice (iD(14083), "tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- - break; case __LINE__: trice (iD(14084), "tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- - break; case __LINE__: trice64(iD(14085), "rd:trice64 %d, %d\n", 1, 2 ); //exp: time: default: rd:trice64 1, 2 - break; case __LINE__: trice (iD(14086), "tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- - break; case __LINE__: trice (iD(14087), "tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- - break; case __LINE__: trice64(iD(14088), "rd:trice64 %d, %d\n", 1, 2 ); //exp: time: default: rd:trice64 1, 2 - break; case __LINE__: trice32_1(iD(14089), "rd:trice32_1 %d\n", -1 ); //exp: time: default: rd:trice32_1 -1 - break; case __LINE__: trice64_1(iD(14090), "rd:trice64_1 %d\n", -2 ); //exp: time: default: rd:trice64_1 -2 - break; case __LINE__: trice32_2(iD(14091), "rd:trice32_2 %d,%d\n", -1, 2 ); //exp: time: default: rd:trice32_2 -1,2 - break; case __LINE__: trice64_2(iD(14092), "rd:trice64_2 %d,%d\n", -1, 2 ); //exp: time: default: rd:trice64_2 -1,2 + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + break; case __LINE__: trice("dbg:Hi!\n" ); //exp: time: default: dbg:Hi! + break; case __LINE__: trice("dbg: Hi!\n" ); //exp: time: default: dbg: Hi! + break; case __LINE__: trice("sig:Some time measurements\n" ); + break; case __LINE__: trice("isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 + break; case __LINE__: trice("isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 + break; case __LINE__: trice("isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 + break; case __LINE__: trice("isr:trice isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice isr message, SysTick is 0 + break; case __LINE__: trice_1("isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 + break; case __LINE__: trice_1("isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 + break; case __LINE__: trice_1("isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 + break; case __LINE__: trice_1("isr:trice_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:trice_1 isr message, SysTick is 0 + break; case __LINE__: TRICE16_1(id(0), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 + break; case __LINE__: TRICE16_1(id(0), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 + break; case __LINE__: TRICE16_1(id(0), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 + break; case __LINE__: TRICE16_1(id(0), "isr:TRICE16_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE16_1 isr message, SysTick is 0 + break; case __LINE__: TRICE_1(id(0), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 + break; case __LINE__: TRICE_1(id(0), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 + break; case __LINE__: TRICE_1(id(0), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 + break; case __LINE__: TRICE_1(id(0), "isr:TRICE_1 isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE_1 isr message, SysTick is 0 + break; case __LINE__: TRICE(id(0), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 + break; case __LINE__: TRICE(id(0), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 + break; case __LINE__: TRICE(id(0), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 + break; case __LINE__: TRICE(id(0), "isr:TRICE isr message, SysTick is %6d\n", SYSTICKVAL); //exp: time: default: isr:TRICE isr message, SysTick is 0 + + break; case __LINE__: trice("tim:trice START time message\n"); //exp: time: default: tim:trice START time message + break; case __LINE__: trice("tim:trice STOP time message\n"); //exp: time: default: tim:trice STOP time message + break; case __LINE__: trice("tim:trice START time message\n"); //exp: time: default: tim:trice START time message + break; case __LINE__: trice("tim:trice STOP time message\n"); //exp: time: default: tim:trice STOP time message + break; case __LINE__: trice("tim:trice START time message\n"); //exp: time: default: tim:trice START time message + break; case __LINE__: trice64("rd:trice64 %d, %d\n", 1, 2 ); //exp: time: default: rd:trice64 1, 2 + break; case __LINE__: trice("tim:trice STOP time message\n"); //exp: time: default: tim:trice STOP time message + break; case __LINE__: TRICE(id(0), "tim:TRICE START time message\n"); //exp: time: default: tim:TRICE START time message + break; case __LINE__: TRICE(id(0), "tim:TRICE STOP time message\n"); //exp: time: default: tim:TRICE STOP time message + break; case __LINE__: TRICE(id(0), "tim:TRICE START time message\n"); //exp: time: default: tim:TRICE START time message + break; case __LINE__: TRICE(id(0), "tim:TRICE STOP time message\n"); //exp: time: default: tim:TRICE STOP time message + break; case __LINE__: TRICE(id(0), "tim:TRICE START time message\n"); //exp: time: default: tim:TRICE START time message + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d\n", 1, 2 ); //exp: time: default: rd:TRICE64 1, 2 + break; case __LINE__: TRICE(id(0), "tim:TRICE STOP time message\n"); //exp: time: default: tim:TRICE STOP time message + break; case __LINE__: trice ("tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- + break; case __LINE__: trice ("tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- + break; case __LINE__: trice64("rd:trice64 %d, %d\n", 1, 2 ); //exp: time: default: rd:trice64 1, 2 + break; case __LINE__: trice ("tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- + break; case __LINE__: trice ("tim:trice --------------------------------------------------\n"); //exp: time: default: tim:trice -------------------------------------------------- + break; case __LINE__: trice64("rd:trice64 %d, %d\n", 1, 2 ); //exp: time: default: rd:trice64 1, 2 + break; case __LINE__: trice32_1("rd:trice32_1 %d\n", -1 ); //exp: time: default: rd:trice32_1 -1 + break; case __LINE__: trice64_1("rd:trice64_1 %d\n", -2 ); //exp: time: default: rd:trice64_1 -2 + break; case __LINE__: trice32_2("rd:trice32_2 %d,%d\n", -1, 2 ); //exp: time: default: rd:trice32_2 -1,2 + break; case __LINE__: trice64_2("rd:trice64_2 %d,%d\n", -1, 2 ); //exp: time: default: rd:trice64_2 -1,2 // special use cases - break; case __LINE__: TRice64(iD(14093), "info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 0, aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), -8 ); //exp: time:feed3322default: info:12 64-bit values -3, 18446744073709551612, fffffffffffffffb, FFFFFFFFFFFFFFFA, false, -7.123457e+00, -7.123457, -7.123456789, -7.123457E+00, -7.123457, -7.123456789, 0xb1111111111111111111111111111111111111111111111111111111111111000 and a 32-bit stamp. - break; case __LINE__: Trice64(iD(14094), "info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 0, aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), -8 ); //exp: time: be16default: info:12 64-bit values -3, 18446744073709551612, fffffffffffffffb, FFFFFFFFFFFFFFFA, false, -7.123457e+00, -7.123457, -7.123456789, -7.123457E+00, -7.123457, -7.123456789, 0xb1111111111111111111111111111111111111111111111111111111111111000 and a 16-bit stamp. - break; case __LINE__: trice64(iD(14095), "info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 0, aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), -8 ); //exp: time: default: info:12 64-bit values -3, 18446744073709551612, fffffffffffffffb, FFFFFFFFFFFFFFFA, false, -7.123457e+00, -7.123457, -7.123456789, -7.123457E+00, -7.123457, -7.123456789, 0xb1111111111111111111111111111111111111111111111111111111111111000 and without stamp. - break; case __LINE__: TRice32(iD(14096), "info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: info:12 32-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 32-bit stamp. - break; case __LINE__: Trice32(iD(14097), "info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: info:12 32-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 16-bit stamp. - break; case __LINE__: trice32(iD(14098), "info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\n" , -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: info:12 32-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and without stamp. - break; case __LINE__: TRice16(iD(14099), "info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: info:12 16-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 32-bit stamp. - break; case __LINE__: Trice16(iD(14100), "info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: info:12 16-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 16-bit stamp. - break; case __LINE__: trice16(iD(14101), "info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\n" , -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: info:12 16-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and without stamp. - break; case __LINE__: TRice8 (iD(14102), "info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: info:12 8-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 32-bit stamp. - break; case __LINE__: Trice8 (iD(14103), "info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: info:12 8-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 16-bit stamp. - break; case __LINE__: trice8 (iD(14104), "info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\n" , -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: info:12 8-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and without stamp. - - break; case __LINE__: trice16(iD(14105), "att: line %u\n", __LINE__ ); - - break; case __LINE__: TRice16(iD(14106), "att: 0x8888 == %04xh\n", 0x8888 ); //exp: time:feed3322default: att: 0x8888 == 8888h - break; case __LINE__: Trice16(iD(14107), "att: 0x8888 == %04xh\n", 0x8888 ); //exp: time: be16default: att: 0x8888 == 8888h - break; case __LINE__: trice16(iD(14108), "att: 0x8888 == %04xh\n", 0x8888 ); //exp: time: default: att: 0x8888 == 8888h - - - break; case __LINE__: trice16(iD(14109), "att: line %u\n", __LINE__ ); - - break; case __LINE__: trice8 (iD(14110), "value=%x\n", 0x55 ); //exp: time: default: value=55 - break; case __LINE__: trice8 (iD(14111), "value=%x\n", 0x88 ); //exp: time: default: value=88 - - break; case __LINE__: trice(iD(14112), "att:mixed int & float & double & bits\n" ); - break; case __LINE__: TRice32(iD(14113), "rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", FloatToInt32(x), aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 1089, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 - break; case __LINE__: TRice32(iD(14114), "rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", (int32_t)(x), aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 1089, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 - break; case __LINE__: TRice32(iD(14115), "rd:TRice32 int %x, float %f (%%f), %08x, %032b\n", 0x44883377, aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 44883377, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 - break; case __LINE__: TRice32(iD(14116), "rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", x, aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 1089, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 - break; case __LINE__: TRice32(iD(14117), "rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", FloatToInt32(-x), aFloat(-x), aFloat(-x), aFloat(-x) ); //exp: time:feed3322default: rd:TRice32 int -1089, float -1089.608276 (%f), c4883377, 11000100100010000011001101110111 - break; case __LINE__: TRice32(iD(14118), "rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", (int32_t)(-x), aFloat(-x), aFloat(-x), aFloat(-x) ); //exp: time:feed3322default: rd:TRice32 int -1089, float -1089.608276 (%f), c4883377, 11000100100010000011001101110111 - break; case __LINE__: TRice32(iD(14119), "rd:TRice32 int %X, float %f (%%f), %08x, %032b\n", -0x44883377, aFloat(-x), aFloat(-x), aFloat(-x) ); //exp: time:feed3322default: rd:TRice32 int BB77CC89, float -1089.608276 (%f), c4883377, 11000100100010000011001101110111 - break; case __LINE__: TRice64(iD(14120), "rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", DoubleToInt64(y), aDouble(y), aDouble(y), aDouble(y) ); //exp: time:feed3322default: rd:TRice64 int 518, double 518.054749 (%f), 4080307020601050, 0100000010000000001100000111000000100000011000000001000001010000 - break; case __LINE__: TRice64(iD(14121), "rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", (int64_t)(y), aDouble(y), aDouble(y), aDouble(y) ); //exp: time:feed3322default: rd:TRice64 int 518, double 518.054749 (%f), 4080307020601050, 0100000010000000001100000111000000100000011000000001000001010000 - break; case __LINE__: TRice64(iD(14122), "rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", y, aDouble(y), aDouble(y), aDouble(y) ); //exp: time:feed3322default: rd:TRice64 int 518, double 518.054749 (%f), 4080307020601050, 0100000010000000001100000111000000100000011000000001000001010000 - break; case __LINE__: TRice64(iD(14123), "rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", DoubleToInt64(-y), aDouble(-y), aDouble(-y), aDouble(-y) ); //exp: time:feed3322default: rd:TRice64 int -518, double -518.054749 (%f), c080307020601050, 1100000010000000001100000111000000100000011000000001000001010000 - break; case __LINE__: TRice64(iD(14124), "rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", (int64_t)(-y), aDouble(-y), aDouble(-y), aDouble(-y) ); //exp: time:feed3322default: rd:TRice64 int -518, double -518.054749 (%f), c080307020601050, 1100000010000000001100000111000000100000011000000001000001010000 - break; case __LINE__: TRice64(iD(14125), "rd:TRice64 int %X, double %f (%%f), %016x, %064b\n", -0x4080307020601050, aDouble(-y), aDouble(-y), aDouble(-y) ); //exp: time:feed3322default: rd:TRice64 int BF7FCF8FDF9FEFB0, double -518.054749 (%f), c080307020601050, 1100000010000000001100000111000000100000011000000001000001010000 - - break; case __LINE__: trice16(iD(14126), "att: line %u\n", __LINE__ ); - - break; case __LINE__: triceS(iD(14127), "msg:With triceS:%s\n", sABCDE ); //exp: time: default: msg:With triceS:abcde 12345 - break; case __LINE__: triceN(iD(14128), "sig:With triceN:%s\n", sABCDE, lenABCDE ); //exp: time: default: sig:With triceN:abcde 12345 - break; case __LINE__: TriceS(iD(14129), "msg:With TriceS:%s\n", sABCDE ); //exp: time: be16default: msg:With TriceS:abcde 12345 - break; case __LINE__: TriceN(iD(14130), "sig:With TriceN:%s\n", sABCDE, lenABCDE ); //exp: time: be16default: sig:With TriceN:abcde 12345 - break; case __LINE__: TRiceS(iD(14131), "msg:With TRiceS:%s\n", sABCDE ); //exp: time:feed3322default: msg:With TRiceS:abcde 12345 - break; case __LINE__: TRiceN(iD(14132), "sig:With TRiceN:%s\n", sABCDE, lenABCDE ); //exp: time:feed3322default: sig:With TRiceN:abcde 12345 - - break; case __LINE__: TRICE_S(id(14133), "msg:With TRICE_S:%s\n", sABCDE ); //exp: time: default: msg:With TRICE_S:abcde 12345 - break; case __LINE__: TRICE_N(id(14134), "sig:With TRICE_N:%s\n", sABCDE, lenABCDE ); //exp: time: default: sig:With TRICE_N:abcde 12345 - break; case __LINE__: TRICE_S(Id(14135), "msg:With TRICE_S:%s\n", sABCDE ); //exp: time: be16default: msg:With TRICE_S:abcde 12345 - break; case __LINE__: TRICE_N(Id(14136), "sig:With TRICE_N:%s\n", sABCDE, lenABCDE ); //exp: time: be16default: sig:With TRICE_N:abcde 12345 - break; case __LINE__: TRICE_S(ID(14137), "msg:With TRICE_S:%s\n", sABCDE ); //exp: time:feed3322default: msg:With TRICE_S:abcde 12345 - break; case __LINE__: TRICE_N(ID(14138), "sig:With TRICE_N:%s\n", sABCDE, lenABCDE ); //exp: time:feed3322default: sig:With TRICE_N:abcde 12345 - - break; case __LINE__: TRICE8_B(ID(14139), " %02x", sABCDE, lenABCDE ); //exp: time:feed3322default: 61 62 63 64 65 20 31 32 33 34 35 - break; case __LINE__: trice(iD(14140), "\n" ); - break; case __LINE__: TRICE8_B(ID(14141), "BUF: %02x\n", sABCDE, lenABCDE ); //exp: time:feed3322default: BUF: 61 62 63 64 65 20 31 32 33 34 35 - break; case __LINE__: TRICE8_B(ID(14142), "%4d", sABCDE, lenABCDE ); //exp: time:feed3322default: 97 98 99 100 101 32 49 50 51 52 53 - break; case __LINE__: trice(iD(14143), "\n" ); - break; case __LINE__: TRICE8_B(ID(14144), " %02x", b8, sizeof(b8)/sizeof(int8_t) ); //exp: time:feed3322default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - break; case __LINE__: trice(iD(14145), "\n" ); - - break; case __LINE__: TRice8B(iD(14146), " %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time:feed3322default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - break; case __LINE__: trice(iD(14147), "\n" ); - break; case __LINE__: Trice8B(iD(14148), " %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: be16default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - break; case __LINE__: trice(iD(14149), "\n" ); - break; case __LINE__: trice8B(iD(14150), " %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - break; case __LINE__: trice(iD(14151), "\n" ); - - break; case __LINE__: trice8B(iD(14152), "att: %02x\n", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: att: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - break; case __LINE__: trice8B(iD(14153), "rd: %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: rd: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - break; case __LINE__: trice(iD(14154), "\n" ); - break; case __LINE__: trice8B(iD(14155), " %02x\n", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b - - break; case __LINE__: TRICE16_B(ID(14156), " %04x", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time:feed3322default: 0000 ffff fffe 3344 - break; case __LINE__: trice(iD(14157), "\n" ); - break; case __LINE__: TRice16B(iD(14158), " %04x", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time:feed3322default: 0000 ffff fffe 3344 - break; case __LINE__: trice(iD(14159), "\n" ); - break; case __LINE__: Trice16B(iD(14160), " %04x", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time: be16default: 0000 ffff fffe 3344 - break; case __LINE__: trice(iD(14161), "\n" ); - break; case __LINE__: trice16B(iD(14162), " %04x", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time: default: 0000 ffff fffe 3344 - break; case __LINE__: trice(iD(14163), "\n" ); - break; case __LINE__: trice16B(iD(14164), "msg: %04x\n", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time: default: msg: 0000 ffff fffe 3344 - - break; case __LINE__: TRICE32_B(ID(14165), " %08x", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time:feed3322default: 00000000 ffffffff fffffffe 33445555 - break; case __LINE__: trice(iD(14166), "\n" ); - break; case __LINE__: TRice32B(iD(14167), " %08x", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time:feed3322default: 00000000 ffffffff fffffffe 33445555 - break; case __LINE__: trice(iD(14168), "\n" ); - break; case __LINE__: Trice32B(iD(14169), " %08x", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time: be16default: 00000000 ffffffff fffffffe 33445555 - break; case __LINE__: trice(iD(14170), "\n" ); - break; case __LINE__: trice32B(iD(14171), " %08x", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time: default: 00000000 ffffffff fffffffe 33445555 - break; case __LINE__: trice(iD(14172), "\n" ); - break; case __LINE__: trice32B(iD(14173), "att: %08x\n", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time: default: att: 00000000 ffffffff fffffffe 33445555 - - break; case __LINE__: TRICE64_B(ID(14174), " %016x", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time:feed3322default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 - break; case __LINE__: trice(iD(14175), "\n" ); - break; case __LINE__: TRice64B(iD(14176), " %016x", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time:feed3322default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 - break; case __LINE__: trice(iD(14177), "\n" ); - break; case __LINE__: Trice64B(iD(14178), " %016x", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time: be16default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 - break; case __LINE__: trice(iD(14179), "\n" ); - break; case __LINE__: trice64B(iD(14180), " %016x", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time: default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 - break; case __LINE__: trice(iD(14181), "\n" ); - break; case __LINE__: trice64B(iD(14182), "SIG: %016x\n", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time: default: SIG: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 - - break; case __LINE__: TRICE8_F(ID(14183), "info:FunctionNameW", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time:feed3322default: info:FunctionNameW(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) - break; case __LINE__: TRice8F(iD(14184), "call:FunctionNameW", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time:feed3322default: call:FunctionNameW(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) - break; case __LINE__: Trice8F(iD(14185), "call:FunctionNameW", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: be16default: call:FunctionNameW(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) - break; case __LINE__: trice8F(iD(14186), "call:FunctionNameW", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: call:FunctionNameW(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) - break; case __LINE__: TRICE16_F(ID(14187), "info:FunctionNameX", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time:feed3322default: info:FunctionNameX(0000)(ffff)(fffe)(3344) - break; case __LINE__: TRice16F(iD(14188), "call:FunctionNameX", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time:feed3322default: call:FunctionNameX(0000)(ffff)(fffe)(3344) - break; case __LINE__: Trice16F(iD(14189), "call:FunctionNameX", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time: be16default: call:FunctionNameX(0000)(ffff)(fffe)(3344) - break; case __LINE__: trice16F(iD(14190), "call:FunctionNameX", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time: default: call:FunctionNameX(0000)(ffff)(fffe)(3344) - break; case __LINE__: TRICE32_F(ID(14191), "info:FunctionNameY", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time:feed3322default: info:FunctionNameY(00000000)(ffffffff)(fffffffe)(33445555) - break; case __LINE__: TRice32F(iD(14192), "call:FunctionNameY", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time:feed3322default: call:FunctionNameY(00000000)(ffffffff)(fffffffe)(33445555) - break; case __LINE__: Trice32F(iD(14193), "call:FunctionNameY", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time: be16default: call:FunctionNameY(00000000)(ffffffff)(fffffffe)(33445555) - break; case __LINE__: trice32F(iD(14194), "call:FunctionNameY", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time: default: call:FunctionNameY(00000000)(ffffffff)(fffffffe)(33445555) - break; case __LINE__: TRICE64_F(ID(14195), "info:FunctionNameZ", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time:feed3322default: info:FunctionNameZ(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) - break; case __LINE__: TRice64F(iD(14196), "call:FunctionNameZ", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time:feed3322default: call:FunctionNameZ(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) - break; case __LINE__: Trice64F(iD(14197), "call:FunctionNameZ", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time: be16default: call:FunctionNameZ(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) - break; case __LINE__: trice64F(iD(14198), "call:FunctionNameZ", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time: default: call:FunctionNameZ(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) - break; case __LINE__: TRiceS(iD(14199), "msg:Hi %s!\n", five ); //exp: time:feed3322default: msg:Hi five! - break; case __LINE__: TriceS(iD(14200), "msg:Hi %s!\n", five ); //exp: time: be16default: msg:Hi five! - break; case __LINE__: triceS(iD(14201), "msg:Hi %s!\n", five ); //exp: time: default: msg:Hi five! - break; case __LINE__: TRiceN(iD(14202), "msg:Hi %s!\n", five, strlen(five) ); //exp: time:feed3322default: msg:Hi five! - break; case __LINE__: TriceN(iD(14203), "msg:Hi %s!\n", five, strlen(five) ); //exp: time: be16default: msg:Hi five! - break; case __LINE__: triceN(iD(14204), "msg:Hi %s!\n", five, strlen(five) ); //exp: time: default: msg:Hi five! - - break; case __LINE__: TRICE_S(id(14205), "sig:TRICE_S=%s\n", s ); //exp: time: default: sig:TRICE_S=AAAAAAAAAAAA - break; case __LINE__: TRICE_N(id(14206), "sig:TRICE_N=%s\n", s, strlen(s) ); //exp: time: default: sig:TRICE_N=AAAAAAAAAAAA - break; case __LINE__: TRICE_S(Id(14207), "sig:TRICE_S=%s\n", s ); //exp: time: be16default: sig:TRICE_S=AAAAAAAAAAAA - break; case __LINE__: TRICE_N(Id(14208), "sig:TRICE_N=%s\n", s, strlen(s) ); //exp: time: be16default: sig:TRICE_N=AAAAAAAAAAAA - break; case __LINE__: TRICE_S(ID(14209), "sig:TRICE_S=%s\n", s ); //exp: time:feed3322default: sig:TRICE_S=AAAAAAAAAAAA - break; case __LINE__: TRICE_N(ID(14210), "sig:TRICE_N=%s\n", s, strlen(s) ); //exp: time:feed3322default: sig:TRICE_N=AAAAAAAAAAAA - break; case __LINE__: triceS(iD(14211), "sig:triceS=%s\n", s ); //exp: time: default: sig:triceS=AAAAAAAAAAAA - break; case __LINE__: triceN(iD(14212), "sig:triceN=%s\n", s, strlen(s) ); //exp: time: default: sig:triceN=AAAAAAAAAAAA - break; case __LINE__: TriceS(iD(14213), "sig:TriceS=%s\n", s ); //exp: time: be16default: sig:TriceS=AAAAAAAAAAAA - break; case __LINE__: TriceN(iD(14214), "sig:TriceN=%s\n", s, strlen(s) ); //exp: time: be16default: sig:TriceN=AAAAAAAAAAAA - break; case __LINE__: TRiceS(iD(14215), "sig:TRiceS=%s\n", s ); //exp: time:feed3322default: sig:TRiceS=AAAAAAAAAAAA - break; case __LINE__: TRiceN(iD(14216), "sig:TRiceN=%s\n", s, strlen(s) ); //exp: time:feed3322default: sig:TRiceN=AAAAAAAAAAAA - - break; case __LINE__: trice16(iD(14217), "att: line %u\n", __LINE__ ); - - break; case __LINE__: exampleOfManualJSONencoding(); //exp: time: be16default: att:MyStructEvaluationFunction(json:ExA{Apple:-1, Birn:2, Fisch:2.781000} - break; case __LINE__: TRICE(Id(14218), "MSG:1/11 = %g\n", aFloat( 1.0/11 ) ); //exp: time: be16default: MSG:1/11 = 0.09090909 + break; case __LINE__: TRice64("info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 0, aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), -8 ); //exp: time:feed3322default: info:12 64-bit values -3, 18446744073709551612, fffffffffffffffb, FFFFFFFFFFFFFFFA, false, -7.123457e+00, -7.123457, -7.123456789, -7.123457E+00, -7.123457, -7.123456789, 0xb1111111111111111111111111111111111111111111111111111111111111000 and a 32-bit stamp. + break; case __LINE__: Trice64("info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 0, aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), -8 ); //exp: time: be16default: info:12 64-bit values -3, 18446744073709551612, fffffffffffffffb, FFFFFFFFFFFFFFFA, false, -7.123457e+00, -7.123457, -7.123456789, -7.123457E+00, -7.123457, -7.123456789, 0xb1111111111111111111111111111111111111111111111111111111111111000 and a 16-bit stamp. + break; case __LINE__: trice64("info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 0, aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), aDouble(-7.123456789), -8 ); //exp: time: default: info:12 64-bit values -3, 18446744073709551612, fffffffffffffffb, FFFFFFFFFFFFFFFA, false, -7.123457e+00, -7.123457, -7.123456789, -7.123457E+00, -7.123457, -7.123456789, 0xb1111111111111111111111111111111111111111111111111111111111111000 and without stamp. + + break; case __LINE__: TRice32("info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: info:12 32-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 32-bit stamp. + break; case __LINE__: Trice32("info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: info:12 32-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 16-bit stamp. + break; case __LINE__: trice32("info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\n" , -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: info:12 32-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and without stamp. + break; case __LINE__: TRice16("info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: info:12 16-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 32-bit stamp. + break; case __LINE__: Trice16("info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: info:12 16-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 16-bit stamp. + break; case __LINE__: trice16("info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\n" , -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: info:12 16-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and without stamp. + break; case __LINE__: TRice8 ("info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: info:12 8-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 32-bit stamp. + break; case __LINE__: Trice8 ("info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: info:12 8-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and a 16-bit stamp. + break; case __LINE__: trice8 ("info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\n" , -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: info:12 8-bit values -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 and without stamp. + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + + break; case __LINE__: TRice16("att: 0x8888 == %04xh\n", 0x8888 ); //exp: time:feed3322default: att: 0x8888 == 8888h + break; case __LINE__: Trice16("att: 0x8888 == %04xh\n", 0x8888 ); //exp: time: be16default: att: 0x8888 == 8888h + break; case __LINE__: trice16("att: 0x8888 == %04xh\n", 0x8888 ); //exp: time: default: att: 0x8888 == 8888h + + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + break; case __LINE__: trice8 ("value=%x\n", 0x55 ); //exp: time: default: value=55 + break; case __LINE__: trice8 ("value=%x\n", 0x88 ); //exp: time: default: value=88 + + break; case __LINE__: trice("att:mixed int & float & double & bits\n" ); + break; case __LINE__: TRice32("rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", FloatToInt32(x), aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 1089, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 + break; case __LINE__: TRice32("rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", (int32_t)(x), aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 1089, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 + break; case __LINE__: TRice32("rd:TRice32 int %x, float %f (%%f), %08x, %032b\n", 0x44883377, aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 44883377, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 + break; case __LINE__: TRice32("rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", x, aFloat(x), aFloat(x), aFloat(x) ); //exp: time:feed3322default: rd:TRice32 int 1089, float 1089.608276 (%f), 44883377, 01000100100010000011001101110111 + break; case __LINE__: TRice32("rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", FloatToInt32(-x), aFloat(-x), aFloat(-x), aFloat(-x) ); //exp: time:feed3322default: rd:TRice32 int -1089, float -1089.608276 (%f), c4883377, 11000100100010000011001101110111 + break; case __LINE__: TRice32("rd:TRice32 int %d, float %f (%%f), %08x, %032b\n", (int32_t)(-x), aFloat(-x), aFloat(-x), aFloat(-x) ); //exp: time:feed3322default: rd:TRice32 int -1089, float -1089.608276 (%f), c4883377, 11000100100010000011001101110111 + break; case __LINE__: TRice32("rd:TRice32 int %X, float %f (%%f), %08x, %032b\n", -0x44883377, aFloat(-x), aFloat(-x), aFloat(-x) ); //exp: time:feed3322default: rd:TRice32 int BB77CC89, float -1089.608276 (%f), c4883377, 11000100100010000011001101110111 + break; case __LINE__: TRice64("rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", DoubleToInt64(y), aDouble(y), aDouble(y), aDouble(y) ); //exp: time:feed3322default: rd:TRice64 int 518, double 518.054749 (%f), 4080307020601050, 0100000010000000001100000111000000100000011000000001000001010000 + break; case __LINE__: TRice64("rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", (int64_t)(y), aDouble(y), aDouble(y), aDouble(y) ); //exp: time:feed3322default: rd:TRice64 int 518, double 518.054749 (%f), 4080307020601050, 0100000010000000001100000111000000100000011000000001000001010000 + break; case __LINE__: TRice64("rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", y, aDouble(y), aDouble(y), aDouble(y) ); //exp: time:feed3322default: rd:TRice64 int 518, double 518.054749 (%f), 4080307020601050, 0100000010000000001100000111000000100000011000000001000001010000 + break; case __LINE__: TRice64("rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", DoubleToInt64(-y), aDouble(-y), aDouble(-y), aDouble(-y) ); //exp: time:feed3322default: rd:TRice64 int -518, double -518.054749 (%f), c080307020601050, 1100000010000000001100000111000000100000011000000001000001010000 + break; case __LINE__: TRice64("rd:TRice64 int %d, double %f (%%f), %016x, %064b\n", (int64_t)(-y), aDouble(-y), aDouble(-y), aDouble(-y) ); //exp: time:feed3322default: rd:TRice64 int -518, double -518.054749 (%f), c080307020601050, 1100000010000000001100000111000000100000011000000001000001010000 + break; case __LINE__: TRice64("rd:TRice64 int %X, double %f (%%f), %016x, %064b\n", -0x4080307020601050, aDouble(-y), aDouble(-y), aDouble(-y) ); //exp: time:feed3322default: rd:TRice64 int BF7FCF8FDF9FEFB0, double -518.054749 (%f), c080307020601050, 1100000010000000001100000111000000100000011000000001000001010000 + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + break; case __LINE__: triceS("msg:With triceS:%s\n", sABCDE ); //exp: time: default: msg:With triceS:abcde 12345 + break; case __LINE__: triceN("sig:With triceN:%s\n", sABCDE, lenABCDE ); //exp: time: default: sig:With triceN:abcde 12345 + break; case __LINE__: TriceS("msg:With TriceS:%s\n", sABCDE ); //exp: time: be16default: msg:With TriceS:abcde 12345 + break; case __LINE__: TriceN("sig:With TriceN:%s\n", sABCDE, lenABCDE ); //exp: time: be16default: sig:With TriceN:abcde 12345 + break; case __LINE__: TRiceS("msg:With TRiceS:%s\n", sABCDE ); //exp: time:feed3322default: msg:With TRiceS:abcde 12345 + break; case __LINE__: TRiceN("sig:With TRiceN:%s\n", sABCDE, lenABCDE ); //exp: time:feed3322default: sig:With TRiceN:abcde 12345 + break; case __LINE__: TRICE_S(id(0), "msg:With TRICE_S:%s\n", sABCDE ); //exp: time: default: msg:With TRICE_S:abcde 12345 + break; case __LINE__: TRICE_N(id(0), "sig:With TRICE_N:%s\n", sABCDE, lenABCDE ); //exp: time: default: sig:With TRICE_N:abcde 12345 + break; case __LINE__: TRICE_S(Id(0), "msg:With TRICE_S:%s\n", sABCDE ); //exp: time: be16default: msg:With TRICE_S:abcde 12345 + break; case __LINE__: TRICE_N(Id(0), "sig:With TRICE_N:%s\n", sABCDE, lenABCDE ); //exp: time: be16default: sig:With TRICE_N:abcde 12345 + break; case __LINE__: TRICE_S(ID(0), "msg:With TRICE_S:%s\n", sABCDE ); //exp: time:feed3322default: msg:With TRICE_S:abcde 12345 + break; case __LINE__: TRICE_N(ID(0), "sig:With TRICE_N:%s\n", sABCDE, lenABCDE ); //exp: time:feed3322default: sig:With TRICE_N:abcde 12345 + + break; case __LINE__: TRICE8_B(ID(0), " %02x", sABCDE, lenABCDE ); //exp: time:feed3322default: 61 62 63 64 65 20 31 32 33 34 35 + break; case __LINE__: trice("\n" ); + break; case __LINE__: TRICE8_B(ID(0), "BUF: %02x\n", sABCDE, lenABCDE ); //exp: time:feed3322default: BUF: 61 62 63 64 65 20 31 32 33 34 35 + break; case __LINE__: TRICE8_B(ID(0), "%4d", sABCDE, lenABCDE ); //exp: time:feed3322default: 97 98 99 100 101 32 49 50 51 52 53 + break; case __LINE__: trice("\n" ); + break; case __LINE__: TRICE8_B(ID(0), " %02x", b8, sizeof(b8)/sizeof(int8_t) ); //exp: time:feed3322default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + break; case __LINE__: trice("\n" ); + + break; case __LINE__: TRice8B(" %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time:feed3322default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + break; case __LINE__: trice("\n" ); + break; case __LINE__: Trice8B(" %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: be16default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice8B(" %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + break; case __LINE__: trice("\n" ); + + break; case __LINE__: trice8B("att: %02x\n", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: att: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + break; case __LINE__: trice8B("rd: %02x", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: rd: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice8B(" %02x\n", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: 00 ff fe 33 04 05 06 07 08 09 0a 0b 00 ff fe 33 04 05 06 07 08 09 0a 0b + + break; case __LINE__: TRICE16_B(ID(0), " %04x", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time:feed3322default: 0000 ffff fffe 3344 + break; case __LINE__: trice("\n" ); + break; case __LINE__: TRice16B(" %04x", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time:feed3322default: 0000 ffff fffe 3344 + break; case __LINE__: trice("\n" ); + break; case __LINE__: Trice16B(" %04x", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time: be16default: 0000 ffff fffe 3344 + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice16B(" %04x", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time: default: 0000 ffff fffe 3344 + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice16B("msg: %04x\n", b16, sizeof(b16) /sizeof(int16_t) ); //exp: time: default: msg: 0000 ffff fffe 3344 + + break; case __LINE__: TRICE32_B(ID(0), " %08x", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time:feed3322default: 00000000 ffffffff fffffffe 33445555 + break; case __LINE__: trice("\n" ); + break; case __LINE__: TRice32B(" %08x", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time:feed3322default: 00000000 ffffffff fffffffe 33445555 + break; case __LINE__: trice("\n" ); + break; case __LINE__: Trice32B(" %08x", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time: be16default: 00000000 ffffffff fffffffe 33445555 + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice32B(" %08x", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time: default: 00000000 ffffffff fffffffe 33445555 + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice32B("att: %08x\n", b32, sizeof(b32) /sizeof(int32_t) ); //exp: time: default: att: 00000000 ffffffff fffffffe 33445555 + + break; case __LINE__: TRICE64_B(ID(0), " %016x", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time:feed3322default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 + break; case __LINE__: trice("\n" ); + break; case __LINE__: TRice64B(" %016x", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time:feed3322default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 + break; case __LINE__: trice("\n" ); + break; case __LINE__: Trice64B(" %016x", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time: be16default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice64B(" %016x", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time: default: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 + break; case __LINE__: trice("\n" ); + break; case __LINE__: trice64B("SIG: %016x\n", b64, sizeof(b64) /sizeof(int64_t) ); //exp: time: default: SIG: 0000000000000000 ffffffffffffffff fffffffffffffffe 3344555566666666 + + break; case __LINE__: TRICE8_F(ID(0), "info:FunctionNameWa", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time:feed3322default: info:FunctionNameWa(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: TRice8F("call:FunctionNameWb", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time:feed3322default: call:FunctionNameWb(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: Trice8F("call:FunctionNameWc", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: be16default: call:FunctionNameWc(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: trice8F("call:FunctionNameWd", b8, sizeof(b8) /sizeof(int8_t) ); //exp: time: default: call:FunctionNameWd(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b)(00)(ff)(fe)(33)(04)(05)(06)(07)(08)(09)(0a)(0b) + break; case __LINE__: TRICE16_F(ID(0), "info:FunctionNameXa", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time:feed3322default: info:FunctionNameXa(0000)(ffff)(fffe)(3344) + break; case __LINE__: TRice16F("call:FunctionNameXb", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time:feed3322default: call:FunctionNameXb(0000)(ffff)(fffe)(3344) + break; case __LINE__: Trice16F("call:FunctionNameXc", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time: be16default: call:FunctionNameXc(0000)(ffff)(fffe)(3344) + break; case __LINE__: trice16F("call:FunctionNameXd", b16, sizeof(b16)/sizeof(int16_t) ); //exp: time: default: call:FunctionNameXd(0000)(ffff)(fffe)(3344) + break; case __LINE__: TRICE32_F(ID(0), "info:FunctionNameYa", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time:feed3322default: info:FunctionNameYa(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: TRice32F("rpc:FunctionNameYb", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time:feed3322default: rpc:FunctionNameYb(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: Trice32F("rpc:FunctionNameYc", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time: be16default: rpc:FunctionNameYc(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: trice32F("call:FunctionNameYd", b32, sizeof(b32)/sizeof(int32_t) ); //exp: time: default: call:FunctionNameYd(00000000)(ffffffff)(fffffffe)(33445555) + break; case __LINE__: TRICE64_F(ID(0), "info:FunctionNameZa", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time:feed3322default: info:FunctionNameZa(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + break; case __LINE__: TRice64F("call:FunctionNameZb", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time:feed3322default: call:FunctionNameZb(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + break; case __LINE__: Trice64F("RPC:FunctionNameZc", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time: be16default: RPC:FunctionNameZc(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + break; case __LINE__: trice64F("RPC:FunctionNameZd", b64, sizeof(b64)/sizeof(int64_t) ); //exp: time: default: RPC:FunctionNameZd(0000000000000000)(ffffffffffffffff)(fffffffffffffffe)(3344555566666666) + + break; case __LINE__: TRiceS("msg:Hi %s!\n", five ); //exp: time:feed3322default: msg:Hi five! + break; case __LINE__: TriceS("msg:Hi %s!\n", five ); //exp: time: be16default: msg:Hi five! + break; case __LINE__: triceS("msg:Hi %s!\n", five ); //exp: time: default: msg:Hi five! + break; case __LINE__: TRiceN("msg:Hi %s!\n", five, strlen(five) ); //exp: time:feed3322default: msg:Hi five! + break; case __LINE__: TriceN("msg:Hi %s!\n", five, strlen(five) ); //exp: time: be16default: msg:Hi five! + break; case __LINE__: triceN("msg:Hi %s!\n", five, strlen(five) ); //exp: time: default: msg:Hi five! + break; case __LINE__: TRICE_S(id(0), "sig:TRICE_S=%s\n", s ); //exp: time: default: sig:TRICE_S=AAAAAAAAAAAA + break; case __LINE__: TRICE_N(id(0), "sig:TRICE_N=%s\n", s, strlen(s) ); //exp: time: default: sig:TRICE_N=AAAAAAAAAAAA + break; case __LINE__: TRICE_S(Id(0), "sig:TRICE_S=%s\n", s ); //exp: time: be16default: sig:TRICE_S=AAAAAAAAAAAA + break; case __LINE__: TRICE_N(Id(0), "sig:TRICE_N=%s\n", s, strlen(s) ); //exp: time: be16default: sig:TRICE_N=AAAAAAAAAAAA + break; case __LINE__: TRICE_S(ID(0), "sig:TRICE_S=%s\n", s ); //exp: time:feed3322default: sig:TRICE_S=AAAAAAAAAAAA + break; case __LINE__: TRICE_N(ID(0), "sig:TRICE_N=%s\n", s, strlen(s) ); //exp: time:feed3322default: sig:TRICE_N=AAAAAAAAAAAA + break; case __LINE__: triceS("sig:triceS=%s\n", s ); //exp: time: default: sig:triceS=AAAAAAAAAAAA + break; case __LINE__: triceN("sig:triceN=%s\n", s, strlen(s) ); //exp: time: default: sig:triceN=AAAAAAAAAAAA + break; case __LINE__: TriceS("sig:TriceS=%s\n", s ); //exp: time: be16default: sig:TriceS=AAAAAAAAAAAA + break; case __LINE__: TriceN("sig:TriceN=%s\n", s, strlen(s) ); //exp: time: be16default: sig:TriceN=AAAAAAAAAAAA + break; case __LINE__: TRiceS("sig:TRiceS=%s\n", s ); //exp: time:feed3322default: sig:TRiceS=AAAAAAAAAAAA + break; case __LINE__: TRiceN("sig:TRiceN=%s\n", s, strlen(s) ); //exp: time:feed3322default: sig:TRiceN=AAAAAAAAAAAA + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + + break; case __LINE__: exampleOfManualJSONencoding(); //exp: time: be16default: att:MyStructEvaluationFunction(json:ExA{Apple:-1, Birn:2, Fisch:2.781000}) + break; case __LINE__: TRICE(Id(0), "MSG:1/11 = %g\n", aFloat( 1.0f/11 ) ); //exp: time: be16default: MSG:1/11 = 0.09090909 break; case __LINE__: { //exp: time:feed3322default: msg:x = 5.934 = 5.934, 5.934 #if !TRICE_OFF - float a = (float)5.934; + float a = 5.934f; float b = a + ((a > 0) ? 0.0005f : -0.0005f); int c = (int)b; int d = (int)(b * 1000) % 1000; - int e = (int)(1000 * (float)(a - c)); - TRice(iD(14219), "msg:x = %g = %d.%03d, %d.%03d\n", aFloat(a), c, d, c, e ); + int e = (int)(1000 * (a - (float)c)); + TRice("msg:x = %g = %d.%03d, %d.%03d\n", aFloat(a), c, d, c, e ); #endif } - break; case __LINE__: trice16(iD(14220), "att: line %u\n", __LINE__ ); - - break; case __LINE__: TRice(iD(14221), "sig:Integer (indent, base, sign) - see https://yourbasic.org/golang/fmt-printf-reference-cheat-sheet/\n" ); - break; case __LINE__: TRice(iD(14222), "rd: 15 %d Base 10\n", 15 ); //exp: time:feed3322default: rd: 15 15 Base 10 - break; case __LINE__: TRice(iD(14223), "rd: +15 %+d Always show sign\n", 15 ); //exp: time:feed3322default: rd: +15 +15 Always show sign - break; case __LINE__: TRice(iD(14224), "rd: 15 %4d Pad with spaces (width 4, right justified)\n", 15 ); //exp: time:feed3322default: rd: 15 15 Pad with spaces (width 4, right justified) - break; case __LINE__: TRice(iD(14225), "rd: 15 %-4d Pad with spaces (width 4, left justified)\n", 15 ); //exp: time:feed3322default: rd: 15 15 Pad with spaces (width 4, left justified) - break; case __LINE__: TRice(iD(14226), "rd: 0015 %04d Pad with zeroes (width 4)\n", 15 ); //exp: time:feed3322default: rd: 0015 0015 Pad with zeroes (width 4) - break; case __LINE__: TRice(iD(14227), "rd: 1111 %b Base 2\n", 15 ); //exp: time:feed3322default: rd: 1111 1111 Base 2 - break; case __LINE__: TRice(iD(14228), "rd: 17 %o Base 8\n", 15 ); //exp: time:feed3322default: rd: 17 17 Base 8 - break; case __LINE__: TRice(iD(14229), "rd: f %x Base 16, lowercase\n", 15 ); //exp: time:feed3322default: rd: f f Base 16, lowercase - break; case __LINE__: TRice(iD(14230), "rd: F %X Base 16, uppercase\n", 15 ); //exp: time:feed3322default: rd: F F Base 16, uppercase - break; case __LINE__: TRice(iD(14231), "rd: 0xf %#x Base 16, with leading 0x\n", 15 ); //exp: time:feed3322default: rd: 0xf 0xf Base 16, with leading 0x - - break; case __LINE__: trice16(iD(14232), "att: line %u\n", __LINE__ ); - - break; case __LINE__: TRICE(ID(14233), "sig:Character (quoted, Unicode)\n" ); - break; case __LINE__: TRICE(ID(14234), "rd: A %c Character\n", 'A' ); //exp: time:feed3322default: rd: A A Character - break; case __LINE__: TRICE(ID(14235), "rd: 'A' %q Quoted character\n", 'A' ); //exp: time:feed3322default: rd: 'A' 'A' Quoted character - // break; case __LINE__: TRICE(ID(14236), "rd: U+0041 %U Unicode\n", 'A' ); // todo: detect %U to avoid message triceType = TRICE0 ParamSpace = 4 not matching with bitWidth 0 and paramCount 0 - ignoring package - // break; case __LINE__: TRICE(ID(14237), "rd: U+0041 'A' %#U Unicode with character\n", 'A' ); // todo: detect %#U to avoid message triceType = TRICE0 ParamSpace = 4 not matching with bitWidth 0 and paramCount 0 - ignoring package - - break; case __LINE__: TRICE(ID(14238), "sig:Boolean (true/false)\n" ); - break; case __LINE__: TRICE(ID(14239), "rd:Use %%t to format a boolean as true (%t) or false (%t).\n", 1, 0 ); //exp: time:feed3322default: rd:Use %t to format a boolean as true (true) or false (false). - - break; case __LINE__: TRICE(ID(14240), "sig:Pointer (hex)\n" ); - break; case __LINE__: TRICE8 (ID(14241), "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0x84 ); //exp: time:feed3322default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (84) - break; case __LINE__: TRICE16(ID(14242), "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0x1234 ); //exp: time:feed3322default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (1234) - break; case __LINE__: TRICE32(ID(14243), "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0xaabbccdd ); //exp: time:feed3322default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (aabbccdd) - break; case __LINE__: TRICE64(ID(14244), "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0x1122334455667788 ); //exp: time:feed3322default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (1122334455667788) - break; case __LINE__: TRICE (ID(14245), "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0xaabbccdd); //exp: time:feed3322default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (aabbccdd) - - break; case __LINE__: trice16(iD(14246), "att: line %u\n", __LINE__ ); - - break; case __LINE__: TRICE(ID(14247), "sig:Float (indent, precision, scientific notation)\n" ); - break; case __LINE__: TRICE(ID(14248), "rd: 1.234560e+02 %e %%e Scientific notation\n", aFloat(123.456) ); //exp: time:feed3322default: rd: 1.234560e+02 1.234560e+02 %e Scientific notation - break; case __LINE__: TRICE(ID(14249), "rd: 123.456000 %f %%f Decimal point, no exponent\n", aFloat(123.456) ); //exp: time:feed3322default: rd: 123.456000 123.456001 %f Decimal point, no exponent - break; case __LINE__: TRICE(ID(14250), "rd: 123.46 %.2f %%.2f Default width, precision 2\n", aFloat(123.456) ); //exp: time:feed3322default: rd: 123.46 123.46 %.2f Default width, precision 2 - break; case __LINE__: TRICE(ID(14251), "rd: ␣␣123.46 %8.2f %%8.2f Width 8, precision 2\n", aFloat(123.456) ); //exp: time:feed3322default: rd: ␣␣123.46 123.46 %8.2f Width 8, precision 2 - break; case __LINE__: TRICE(ID(14252), "rd: 123.456 %g %%g Exponent as needed, necessary digits only\n", aFloat(123.456) ); //exp: time:feed3322default: rd: 123.456 123.456 %g Exponent as needed, necessary digits only - - break; case __LINE__: TRICE(ID(14253), "sig:Double (indent, precision, scientific notation)\n" ); - break; case __LINE__: TRICE64(ID(14254), "rd: 1.234560e+02 %e %%e Scientific notation\n", aDouble(123.456) ); //exp: time:feed3322default: rd: 1.234560e+02 1.234560e+02 %e Scientific notation - break; case __LINE__: TRICE64(ID(14255), "rd: 123.456000 %f %%f Decimal point, no exponent\n", aDouble(123.456) ); //exp: time:feed3322default: rd: 123.456000 123.456000 %f Decimal point, no exponent - break; case __LINE__: TRICE64(ID(14256), "rd: 123.46 %.2f %%.2f Default width, precision 2\n", aDouble(123.456) ); //exp: time:feed3322default: rd: 123.46 123.46 %.2f Default width, precision 2 - break; case __LINE__: TRICE64(ID(14257), "rd: ␣␣123.46 %8.2f %%8.2f Width 8, precision 2\n", aDouble(123.456) ); //exp: time:feed3322default: rd: ␣␣123.46 123.46 %8.2f Width 8, precision 2 - break; case __LINE__: TRICE64(ID(14258), "rd: 123.456 %g %%g Exponent as needed, necessary digits only\n", aDouble(123.456) ); //exp: time:feed3322default: rd: 123.456 123.456 %g Exponent as needed, necessary digits only - - break; case __LINE__: TRICE(ID(14259), "sig:String or byte slice (quote, indent, hex)\n" ); - break; case __LINE__: s = "café"; TRICE_S(ID(14260), "rd: café %s Plain string\n", s ); //exp: time:feed3322default: rd: café café Plain string - break; case __LINE__: s = "café"; TRICE_S(ID(14261), "rd: ␣␣café %6s Width 6, right justify\n", s ); //exp: time:feed3322default: rd: ␣␣café café Width 6, right justify - break; case __LINE__: s = "café"; TRICE_S(ID(14262), "rd: café␣␣ %-6s Width 6, left justify\n", s ); //exp: time:feed3322default: rd: café␣␣ café Width 6, left justify - break; case __LINE__: s = "café"; TRICE_S(ID(14263), "rd: \"café\" %q Quoted string\n", s ); //exp: time:feed3322default: rd: \"café\" "café" Quoted string - break; case __LINE__: s = "café"; TRICE_S(ID(14264), "rd: 636166c3a9 %x Hex dump of byte values\n", s ); //exp: time:feed3322default: rd: 636166c3a9 636166c3a9 Hex dump of byte values - break; case __LINE__: s = "café"; TRICE_S(ID(14265), "rd: 63 61 66 c3 a9 % x Hex dump with spaces\n", s ); //exp: time:feed3322default: rd: 63 61 66 c3 a9 63 61 66 c3 a9 Hex dump with spaces - - break; case __LINE__: trice16(iD(14266), "att: line %u\n", __LINE__ ); + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + + break; case __LINE__: TRice("sig:Integer (indent, base, sign) - see https://yourbasic.org/golang/fmt-printf-reference-cheat-sheet/\n" ); + break; case __LINE__: TRice("rd: 15 %d Base 10\n", 15 ); //exp: time:feed3322default: rd: 15 15 Base 10 + break; case __LINE__: TRice("rd: +15 %+d Always show sign\n", 15 ); //exp: time:feed3322default: rd: +15 +15 Always show sign + break; case __LINE__: TRice("rd: 15 %4d Pad with spaces (width 4, right justified)\n", 15 ); //exp: time:feed3322default: rd: 15 15 Pad with spaces (width 4, right justified) + break; case __LINE__: TRice("rd: 15 %-4d Pad with spaces (width 4, left justified)\n", 15 ); //exp: time:feed3322default: rd: 15 15 Pad with spaces (width 4, left justified) + break; case __LINE__: TRice("rd: 0015 %04d Pad with zeroes (width 4)\n", 15 ); //exp: time:feed3322default: rd: 0015 0015 Pad with zeroes (width 4) + break; case __LINE__: TRice("rd: 1111 %b Base 2\n", 15 ); //exp: time:feed3322default: rd: 1111 1111 Base 2 + break; case __LINE__: TRice("rd: 17 %o Base 8\n", 15 ); //exp: time:feed3322default: rd: 17 17 Base 8 + break; case __LINE__: TRice("rd: f %x Base 16, lowercase\n", 15 ); //exp: time:feed3322default: rd: f f Base 16, lowercase + break; case __LINE__: TRice("rd: F %X Base 16, uppercase\n", 15 ); //exp: time:feed3322default: rd: F F Base 16, uppercase + break; case __LINE__: TRice("rd: 0xf %#x Base 16, with leading 0x\n", 15 ); //exp: time:feed3322default: rd: 0xf 0xf Base 16, with leading 0x + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + + break; case __LINE__: trice("sig:Character (quoted, Unicode)\n" ); + break; case __LINE__: trice("rd: A %c Character\n", 'A' ); //exp: time: default: rd: A A Character + break; case __LINE__: trice("rd: 'A' %q Quoted character\n", 'A' ); //exp: time: default: rd: 'A' 'A' Quoted character + // break; case __LINE__: trice("rd: U+0041 %U Unicode\n", 'A' ); // todo: detect %U to avoid message triceType = TRICE0 ParamSpace = 4 not matching with bitWidth 0 and paramCount 0 - ignoring package + // break; case __LINE__: trice("rd: U+0041 'A' %#U Unicode with character\n", 'A' ); // todo: detect %#U to avoid message triceType = TRICE0 ParamSpace = 4 not matching with bitWidth 0 and paramCount 0 - ignoring package + + break; case __LINE__: trice("sig:Boolean (true/false)\n" ); + break; case __LINE__: trice("rd:Use %%t to format a boolean as true (%t) or false (%t).\n", 1, 0 ); //exp: time: default: rd:Use %t to format a boolean as true (true) or false (false). + + break; case __LINE__: trice("sig:Pointer (hex)\n" ); + break; case __LINE__: trice8 ("rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0x84 ); //exp: time: default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (84) + break; case __LINE__: trice16("rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0x1234 ); //exp: time: default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (1234) + break; case __LINE__: trice32("rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0xaabbccdd ); //exp: time: default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (aabbccdd) + break; case __LINE__: trice64("rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0x1122334455667788 ); //exp: time: default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (1122334455667788) + break; case __LINE__: trice ("rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\n", 0xaabbccdd); //exp: time: default: rd:Use %p to format a pointer in base 16 notation with leading 0x. (aabbccdd) + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); + break; case __LINE__: trice("sig:Float (indent, precision, scientific notation)\n" ); + break; case __LINE__: trice("rd: 1.234560e+02 %e %%e Scientific notation\n", aFloat(123.456f) ); //exp: time: default: rd: 1.234560e+02 1.234560e+02 %e Scientific notation + break; case __LINE__: trice("rd: 123.456000 %f %%f Decimal point, no exponent\n", aFloat(123.456f) ); //exp: time: default: rd: 123.456000 123.456001 %f Decimal point, no exponent + break; case __LINE__: trice("rd: 123.46 %.2f %%.2f Default width, precision 2\n", aFloat(123.456f) ); //exp: time: default: rd: 123.46 123.46 %.2f Default width, precision 2 + break; case __LINE__: trice("rd: ␣␣123.46 %8.2f %%8.2f Width 8, precision 2\n", aFloat(123.456f) ); //exp: time: default: rd: ␣␣123.46 123.46 %8.2f Width 8, precision 2 + break; case __LINE__: trice("rd: 123.456 %g %%g Exponent as needed, necessary digits only\n", aFloat(123.456f) ); //exp: time: default: rd: 123.456 123.456 %g Exponent as needed, necessary digits only + break; case __LINE__: trice("sig:Double (indent, precision, scientific notation)\n" ); + break; case __LINE__: trice64("rd: 1.234560e+02 %e %%e Scientific notation\n", aDouble(123.456) ); //exp: time: default: rd: 1.234560e+02 1.234560e+02 %e Scientific notation + break; case __LINE__: trice64("rd: 123.456000 %f %%f Decimal point, no exponent\n", aDouble(123.456) ); //exp: time: default: rd: 123.456000 123.456000 %f Decimal point, no exponent + break; case __LINE__: trice64("rd: 123.46 %.2f %%.2f Default width, precision 2\n", aDouble(123.456) ); //exp: time: default: rd: 123.46 123.46 %.2f Default width, precision 2 + break; case __LINE__: trice64("rd: ␣␣123.46 %8.2f %%8.2f Width 8, precision 2\n", aDouble(123.456) ); //exp: time: default: rd: ␣␣123.46 123.46 %8.2f Width 8, precision 2 + break; case __LINE__: trice64("rd: 123.456 %g %%g Exponent as needed, necessary digits only\n", aDouble(123.456) ); //exp: time: default: rd: 123.456 123.456 %g Exponent as needed, necessary digits only + + break; case __LINE__: trice("sig:String or byte slice (quote, indent, hex)\n" ); + break; case __LINE__: s = "café"; triceS("rd: café %s Plain string\n", s ); //exp: time: default: rd: café café Plain string + break; case __LINE__: s = "café"; triceS("rd: ␣␣café %6s Width 6, right justify\n", s ); //exp: time: default: rd: ␣␣café café Width 6, right justify + break; case __LINE__: s = "café"; triceS("rd: café␣␣ %-6s Width 6, left justify\n", s ); //exp: time: default: rd: café␣␣ café Width 6, left justify + break; case __LINE__: s = "café"; triceS("rd: \"café\" %q Quoted string\n", s ); //exp: time: default: rd: \"café\" "café" Quoted string + break; case __LINE__: s = "café"; triceS("rd: 636166c3a9 %x Hex dump of byte values\n", s ); //exp: time: default: rd: 636166c3a9 636166c3a9 Hex dump of byte values + break; case __LINE__: s = "café"; triceS("rd: 63 61 66 c3 a9 % x Hex dump with spaces\n", s ); //exp: time: default: rd: 63 61 66 c3 a9 63 61 66 c3 a9 Hex dump with spaces + + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); break; case __LINE__: exampleOfManualSerialization(); // ATTENTION: This occupies ~1024 bytes in one half buffer when double buffer ist used! // This was a CGO compiler issue: - break; case __LINE__: TRice(iD(14267), "info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time:feed3322default: info:12 default bit width values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 32-bit stamp. - break; case __LINE__: Trice(iD(14268), "info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time: be16default: info:12 default bit width values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 16-bit stamp. - break; case __LINE__: trice(iD(14269), "info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time: default: info:12 default bit width values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and without stamp. + break; case __LINE__: TRice("info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time:feed3322default: info:12 default bit width values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 32-bit stamp. + break; case __LINE__: Trice("info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time: be16default: info:12 default bit width values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 16-bit stamp. + break; case __LINE__: trice("info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time: default: info:12 default bit width values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and without stamp. - break; case __LINE__: trice16(iD(14270), "att: line %u\n", __LINE__ ); + break; case __LINE__: trice16("att: line %u\n", __LINE__ ); - break; case __LINE__: TRICE(ID(14271), "sig:Runtime generated strings\n" ); + break; case __LINE__: trice("sig:Runtime generated strings\n" ); break; case __LINE__: { #if !TRICE_OFF char* s0 = "AAAAAAAAAAAA"; #endif - TRICE32(ID(14272), "dbg:len=%u:", strlen(s0) ); - TRICE_S(ID(14273), "sig:%s\n", s0 ); + TRICE32(ID(0), "dbg:len=%u:", strlen(s0) ); + TRICE_S(ID(0), "sig:%s\n", s0 ); } break; case __LINE__: { @@ -486,8 +539,8 @@ void TriceCheck(int n) { AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBCCCCCCCC\ "; #endif - TRICE32(ID(14274), "dbg:len=%u:", strlen(s1) ); - TRICE_S(ID(14275), "sig:%s\n", s1 ); + TRICE32(ID(0), "dbg:len=%u:", strlen(s1) ); + TRICE_S(ID(0), "sig:%s\n", s1 ); } break; case __LINE__: { @@ -500,8 +553,8 @@ DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE\ "; #endif - TRICE32(ID(14276), "dbg:len=%u: ", strlen(s2) ); - TRICE_S(ID(14277), "sig:%s\n", s2 ); + TRICE32(ID(0), "dbg:len=%u: ", strlen(s2) ); + TRICE_S(ID(0), "sig:%s\n", s2 ); } break; case __LINE__: { @@ -517,8 +570,8 @@ BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC\ "; #endif - TRICE32(ID(14278), "dbg:len=%u: ", strlen(s3) ); - TRICE_S(ID(14279), "sig:%s\n", s3 ); + TRICE32(ID(0), "dbg:len=%u: ", strlen(s3) ); + TRICE_S(ID(0), "sig:%s\n", s3 ); } break; case __LINE__: { @@ -542,1998 +595,1998 @@ DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE\ "; #endif - TRICE32(ID(14280), "dbg:len=%u: ", strlen(s4) ); - TRICE_S(ID(14281), "sig:%s\n", s4 ); + TRICE32(ID(0), "dbg:len=%u: ", strlen(s4) ); + TRICE_S(ID(0), "sig:%s\n", s4 ); } -#if TRICE_CGO == 1 +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) - break; case __LINE__: TRICE (ID(14282), "rd:%E (%%E)\n", aFloat(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555556E+08 (%E) - break; case __LINE__: TRICE (ID(14283), "rd:%F (%%F)\n", aFloat(-555555555.5555555555) ); //exp: time:feed3322default: rd:-555555584.000000 (%F) - break; case __LINE__: TRICE (ID(14284), "rd:%G (%%G)\n", aFloat(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555556E+08 (%G) - break; case __LINE__: TRICE64(ID(14285), "rd:%E (%%E)\n", aDouble(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555556E+08 (%E) - break; case __LINE__: TRICE64(ID(14286), "rd:%F (%%F)\n", aDouble(-555555555.5555555555) ); //exp: time:feed3322default: rd:-555555555.555556 (%F) - break; case __LINE__: TRICE64(ID(14287), "rd:%G (%%G)\n", aDouble(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555555555555556E+08 (%G) + break; case __LINE__: trice ("rd:%E (%%E)\n", aFloat(-555555555.5555555555f) ); //exp: time: default: rd:-5.555556E+08 (%E) + break; case __LINE__: trice ("rd:%F (%%F)\n", aFloat(-555555555.5555555555f) ); //exp: time: default: rd:-555555584.000000 (%F) + break; case __LINE__: trice ("rd:%G (%%G)\n", aFloat(-555555555.5555555555f) ); //exp: time: default: rd:-5.555556E+08 (%G) + break; case __LINE__: trice64("rd:%E (%%E)\n", aDouble(-555555555.5555555555) ); //exp: time: default: rd:-5.555556E+08 (%E) + break; case __LINE__: trice64("rd:%F (%%F)\n", aDouble(-555555555.5555555555) ); //exp: time: default: rd:-555555555.555556 (%F) + break; case __LINE__: trice64("rd:%G (%%G)\n", aDouble(-555555555.5555555555) ); //exp: time: default: rd:-5.555555555555556E+08 (%G) - break; case __LINE__: TRICE (ID(14288), "rd:%e (%%e)\n", aFloat(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555556e+08 (%e) - break; case __LINE__: TRICE (ID(14289), "rd:%f (%%f)\n", aFloat(-555555555.5555555555) ); //exp: time:feed3322default: rd:-555555584.000000 (%f) - break; case __LINE__: TRICE (ID(14290), "rd:%g (%%g)\n", aFloat(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555556e+08 (%g) - break; case __LINE__: TRICE64(ID(14291), "rd:%e (%%e)\n", aDouble(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555556e+08 (%e) - break; case __LINE__: TRICE64(ID(14292), "rd:%f (%%f)\n", aDouble(-555555555.5555555555) ); //exp: time:feed3322default: rd:-555555555.555556 (%f) - break; case __LINE__: TRICE64(ID(14293), "rd:%g (%%g)\n", aDouble(-555555555.5555555555) ); //exp: time:feed3322default: rd:-5.555555555555556e+08 (%g) - - break; case __LINE__: TRICE32(ID(14294), "msg:%u (%%u)\n", -1 ); //exp: time:feed3322default: msg:4294967295 (%u) - break; case __LINE__: TRICE32(ID(14295), "msg:%b (%%b)\n", -1 ); //exp: time:feed3322default: msg:11111111111111111111111111111111 (%b) - break; case __LINE__: TRICE32(ID(14296), "msg:%o (%%o)\n", -1 ); //exp: time:feed3322default: msg:37777777777 (%o) - break; case __LINE__: TRICE32(ID(14297), "msg:%O (%%O)\n", -1 ); //exp: time:feed3322default: msg:0o37777777777 (%O) - break; case __LINE__: TRICE32(ID(14298), "msg:%X (%%X)\n", -1 ); //exp: time:feed3322default: msg:FFFFFFFF (%X) - break; case __LINE__: TRICE32(ID(14299), "msg:%x (%%x)\n", -1 ); //exp: time:feed3322default: msg:ffffffff (%x) - break; case __LINE__: TRICE32(ID(14300), "msg:%d (%%d)\n", -1 ); //exp: time:feed3322default: msg:-1 (%d) - break; case __LINE__: TRICE64(ID(14301), "msg:%u (%%u)\n", -1 ); //exp: time:feed3322default: msg:18446744073709551615 (%u) - break; case __LINE__: TRICE64(ID(14302), "msg:%b (%%b)\n", -1 ); //exp: time:feed3322default: msg:1111111111111111111111111111111111111111111111111111111111111111 (%b) - break; case __LINE__: TRICE64(ID(14303), "msg:%o (%%o)\n", -1 ); //exp: time:feed3322default: msg:1777777777777777777777 (%o) - break; case __LINE__: TRICE64(ID(14304), "msg:%O (%%O)\n", -1 ); //exp: time:feed3322default: msg:0o1777777777777777777777 (%O) - break; case __LINE__: TRICE64(ID(14305), "msg:%X (%%X)\n", -1 ); //exp: time:feed3322default: msg:FFFFFFFFFFFFFFFF (%X) - break; case __LINE__: TRICE64(ID(14306), "msg:%x (%%x)\n", -1 ); //exp: time:feed3322default: msg:ffffffffffffffff (%x) - - /**/break; case __LINE__: TRice (iD(14307), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - /**/break; case __LINE__: Trice (iD(14308), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - /**/break; case __LINE__: trice (iD(14309), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice8 (iD(14310), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice8 (iD(14311), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice8 (iD(14312), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice16 (iD(14313), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice16 (iD(14314), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice16 (iD(14315), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice32 (iD(14316), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice32 (iD(14317), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice32 (iD(14318), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice64 (iD(14319), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice64 (iD(14320), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice64 (iD(14321), "value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: trice ("rd:%e (%%e)\n", aFloat(-555555555.5555555555f) ); //exp: time: default: rd:-5.555556e+08 (%e) + break; case __LINE__: trice ("rd:%f (%%f)\n", aFloat(-555555555.5555555555f) ); //exp: time: default: rd:-555555584.000000 (%f) + break; case __LINE__: trice ("rd:%g (%%g)\n", aFloat(-555555555.5555555555f) ); //exp: time: default: rd:-5.555556e+08 (%g) + break; case __LINE__: trice64("rd:%e (%%e)\n", aDouble(-555555555.5555555555) ); //exp: time: default: rd:-5.555556e+08 (%e) + break; case __LINE__: trice64("rd:%f (%%f)\n", aDouble(-555555555.5555555555) ); //exp: time: default: rd:-555555555.555556 (%f) + break; case __LINE__: trice64("rd:%g (%%g)\n", aDouble(-555555555.5555555555) ); //exp: time: default: rd:-5.555555555555556e+08 (%g) + + break; case __LINE__: trice32("msg:%u (%%u)\n", -1 ); //exp: time: default: msg:4294967295 (%u) + break; case __LINE__: trice32("msg:%b (%%b)\n", -1 ); //exp: time: default: msg:11111111111111111111111111111111 (%b) + break; case __LINE__: trice32("msg:%o (%%o)\n", -1 ); //exp: time: default: msg:37777777777 (%o) + break; case __LINE__: trice32("msg:%O (%%O)\n", -1 ); //exp: time: default: msg:0o37777777777 (%O) + break; case __LINE__: trice32("msg:%X (%%X)\n", -1 ); //exp: time: default: msg:FFFFFFFF (%X) + break; case __LINE__: trice32("msg:%x (%%x)\n", -1 ); //exp: time: default: msg:ffffffff (%x) + break; case __LINE__: trice32("msg:%d (%%d)\n", -1 ); //exp: time: default: msg:-1 (%d) + break; case __LINE__: trice64("msg:%u (%%u)\n", -1 ); //exp: time: default: msg:18446744073709551615 (%u) + break; case __LINE__: trice64("msg:%b (%%b)\n", -1 ); //exp: time: default: msg:1111111111111111111111111111111111111111111111111111111111111111 (%b) + break; case __LINE__: trice64("msg:%o (%%o)\n", -1 ); //exp: time: default: msg:1777777777777777777777 (%o) + break; case __LINE__: trice64("msg:%O (%%O)\n", -1 ); //exp: time: default: msg:0o1777777777777777777777 (%O) + break; case __LINE__: trice64("msg:%X (%%X)\n", -1 ); //exp: time: default: msg:FFFFFFFFFFFFFFFF (%X) + break; case __LINE__: trice64("msg:%x (%%x)\n", -1 ); //exp: time: default: msg:ffffffffffffffff (%x) + + /**/break; case __LINE__: TRice ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + /**/break; case __LINE__: Trice ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + /**/break; case __LINE__: trice ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice8 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice8 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice8 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice16 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice16 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice16 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice32 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice32 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice32 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice64 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice64 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice64 ("value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice_1 (iD(14322), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice_1 (iD(14323), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice_1 (iD(14324), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice8_1 (iD(14325), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice8_1 (iD(14326), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice8_1 (iD(14327), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice16_1 (iD(14328), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice16_1 (iD(14329), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice16_1 (iD(14330), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice32_1 (iD(14331), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice32_1 (iD(14332), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice32_1 (iD(14333), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice64_1 (iD(14334), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: Trice64_1 (iD(14335), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: trice64_1 (iD(14336), "value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice8_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice8_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice8_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice16_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice16_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice16_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice32_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice32_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice32_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRice64_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: Trice64_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: trice64_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRice (iD(14337), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice (iD(14338), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice (iD(14339), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice8 (iD(14340), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice8 (iD(14341), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice8 (iD(14342), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice16 (iD(14343), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice16 (iD(14344), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice16 (iD(14345), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice32 (iD(14346), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice32 (iD(14347), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice32 (iD(14348), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice64 (iD(14349), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice64 (iD(14350), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice64 (iD(14351), "no value" ); //exp: time: default: no value + break; case __LINE__: TRice ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice8 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice8 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice8 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice16 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice16 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice16 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice32 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice32 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice32 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice64 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice64 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice64 ("no value" ); //exp: time: default: no value - break; case __LINE__: TRice_0 (iD(14352), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice_0 (iD(14353), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice_0 (iD(14354), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice8_0 (iD(14355), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice8_0 (iD(14356), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice8_0 (iD(14357), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice16_0 (iD(14358), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice16_0 (iD(14359), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice16_0 (iD(14360), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice32_0 (iD(14361), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice32_0 (iD(14362), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice32_0 (iD(14363), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice64_0 (iD(14364), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice64_0 (iD(14365), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice64_0 (iD(14366), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice0 (iD(14367), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice0 (iD(14368), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice0 (iD(14369), "no value" ); //exp: time: default: no value - break; case __LINE__: TRice (iD(14370), "no value" ); //exp: time:feed3322default: no value - break; case __LINE__: Trice (iD(14371), "no value" ); //exp: time: be16default: no value - break; case __LINE__: trice (iD(14372), "no value" ); //exp: time: default: no value - - break; case __LINE__: TRice(iD(14373), "info:This is a message with one value %d and a 32-bit stamp.\n", -2 ); //exp: time:feed3322default: info:This is a message with one value -2 and a 32-bit stamp. - break; case __LINE__: Trice(iD(14374), "info:This is a message with one value %d and a 16-bit stamp.\n", -2 ); //exp: time: be16default: info:This is a message with one value -2 and a 16-bit stamp. - break; case __LINE__: trice(iD(14375), "info:This is a message with one value %d and without stamp.\n" , -2 ); //exp: time: default: info:This is a message with one value -2 and without stamp. - - break; case __LINE__: TRICE(ID(14376), "info:This is a message without values and a 32-bit stamp.\n" ); //exp: time:feed3322default: info:This is a message without values and a 32-bit stamp. - break; case __LINE__: TRICE(Id(14377), "info:This is a message without values and a 16-bit stamp.\n" ); //exp: time: be16default: info:This is a message without values and a 16-bit stamp. - break; case __LINE__: TRICE(id(14378), "info:This is a message without values and without stamp.\n" ); //exp: time: default: info:This is a message without values and without stamp. - - break; case __LINE__: TRICE(ID(14379), "info:This is a message with one value %d and a 32-bit stamp.\n", -2 ); //exp: time:feed3322default: info:This is a message with one value -2 and a 32-bit stamp. - break; case __LINE__: TRICE(Id(14380), "info:This is a message with one value %d and a 16-bit stamp.\n", -2 ); //exp: time: be16default: info:This is a message with one value -2 and a 16-bit stamp. - break; case __LINE__: TRICE(id(14381), "info:This is a message with one value %d and without stamp.\n" , -2 ); //exp: time: default: info:This is a message with one value -2 and without stamp. - - break; case __LINE__: TRICE(ID(14382), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time:feed3322default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 32-bit stamp. - break; case __LINE__: TRICE(Id(14383), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time: be16default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 16-bit stamp. - break; case __LINE__: TRICE(id(14384), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time: default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and without stamp. - - break; case __LINE__: TRICE32(ID(14385), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time:feed3322default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 32-bit stamp. - break; case __LINE__: TRICE32(Id(14386), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time: be16default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 16-bit stamp. - break; case __LINE__: TRICE32(id(14387), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 1, aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), aFloat(-7.123456789), -8 ); //exp: time: default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and without stamp. - - break; case __LINE__: TRICE8 (id(14388), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE8_1 (id(14389), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE8 (Id(14390), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE8_1 (Id(14391), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE8 (ID(14392), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRICE8_1 (ID(14393), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: trice8 (iD(14394), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: trice8_1 (iD(14395), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: Trice8 (iD(14396), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: Trice8_1 (iD(14397), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRice8 (iD(14398), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRice8_1 (iD(14399), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - - break; case __LINE__: TRICE16 (id(14400), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE16_1(id(14401), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE16 (Id(14402), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE16_1(Id(14403), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE16 (ID(14404), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRICE16_1(ID(14405), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: trice16 (iD(14406), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: trice16_1(iD(14407), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: Trice16 (iD(14408), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: Trice16_1(iD(14409), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRice16 (iD(14410), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRice16_1(iD(14411), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - - break; case __LINE__: TRICE32 (id(14412), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE32_1(id(14413), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE32 (Id(14414), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE32_1(Id(14415), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE32 (ID(14416), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRICE32_1(ID(14417), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: trice32 (iD(14418), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: trice32_1(iD(14419), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: Trice32 (iD(14420), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: Trice32_1(iD(14421), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRice32 (iD(14422), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRice32_1(iD(14423), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - - break; case __LINE__: TRICE64 (id(14424), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE64_1(id(14425), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: TRICE64 (Id(14426), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE64_1(Id(14427), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRICE64 (ID(14428), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRICE64_1(ID(14429), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: trice64 (iD(14430), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: trice64_1(iD(14431), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 - break; case __LINE__: Trice64 (iD(14432), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: Trice64_1(iD(14433), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 - break; case __LINE__: TRice64 (iD(14434), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 - break; case __LINE__: TRice64_1(iD(14435), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRice_0 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice_0 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice_0 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice8_0 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice8_0 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice8_0 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice16_0 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice16_0 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice16_0 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice32_0 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice32_0 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice32_0 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice64_0 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice64_0 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice64_0 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice0 ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice0 ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice0 ("no value" ); //exp: time: default: no value + break; case __LINE__: TRice ("no value" ); //exp: time:feed3322default: no value + break; case __LINE__: Trice ("no value" ); //exp: time: be16default: no value + break; case __LINE__: trice ("no value" ); //exp: time: default: no value + + break; case __LINE__: TRice("info:This is a message with one value %d and a 32-bit stamp.\n", -2 ); //exp: time:feed3322default: info:This is a message with one value -2 and a 32-bit stamp. + break; case __LINE__: Trice("info:This is a message with one value %d and a 16-bit stamp.\n", -2 ); //exp: time: be16default: info:This is a message with one value -2 and a 16-bit stamp. + break; case __LINE__: trice("info:This is a message with one value %d and without stamp.\n" , -2 ); //exp: time: default: info:This is a message with one value -2 and without stamp. + break; case __LINE__: TRICE(ID(0), "info:This is a message without values and a 32-bit stamp.\n" ); //exp: time:feed3322default: info:This is a message without values and a 32-bit stamp. + break; case __LINE__: TRICE(Id(0), "info:This is a message without values and a 16-bit stamp.\n" ); //exp: time: be16default: info:This is a message without values and a 16-bit stamp. + break; case __LINE__: TRICE(id(0), "info:This is a message without values and without stamp.\n" ); //exp: time: default: info:This is a message without values and without stamp. + break; case __LINE__: TRICE(ID(0), "info:This is a message with one value %d and a 32-bit stamp.\n", -2 ); //exp: time:feed3322default: info:This is a message with one value -2 and a 32-bit stamp. + break; case __LINE__: TRICE(Id(0), "info:This is a message with one value %d and a 16-bit stamp.\n", -2 ); //exp: time: be16default: info:This is a message with one value -2 and a 16-bit stamp. + break; case __LINE__: TRICE(id(0), "info:This is a message with one value %d and without stamp.\n" , -2 ); //exp: time: default: info:This is a message with one value -2 and without stamp. + + break; case __LINE__: TRICE(ID(0), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time:feed3322default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 32-bit stamp. + break; case __LINE__: TRICE(Id(0), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time: be16default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 16-bit stamp. + break; case __LINE__: TRICE(id(0), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time: default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and without stamp. + break; case __LINE__: TRICE32(ID(0), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time:feed3322default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 32-bit stamp. + break; case __LINE__: TRICE32(Id(0), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\n", -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time: be16default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and a 16-bit stamp. + break; case __LINE__: TRICE32(id(0), "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\n" , -3, -4, -5, -6, 1, aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), aFloat(-7.123456789f), -8 ); //exp: time: default: info:12 values -3, 4294967292, fffffffb, FFFFFFFA, true, -7.123457e+00, -7.123457, -7.123457, -7.123457E+00, -7.123457, -7.123457, 0xb11111111111111111111111111111000 and without stamp. + + break; case __LINE__: TRICE8 (id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE8_1 (id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE8 (Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE8_1 (Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE8 (ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRICE8_1 (ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: trice8 ("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: trice8_1 ("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: Trice8 ("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: Trice8_1 ("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRice8 ("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRice8_1 ("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + + break; case __LINE__: TRICE16 (id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE16_1(id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE16 (Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE16_1(Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE16 (ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRICE16_1(ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: trice16 ("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: trice16_1("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: Trice16 ("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: Trice16_1("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRice16 ("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRice16_1("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + + break; case __LINE__: TRICE32 (id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE32_1(id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE32 (Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE32_1(Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE32 (ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRICE32_1(ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: trice32 ("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: trice32_1("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: Trice32 ("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: Trice32_1("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRice32 ("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRice32_1("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + + break; case __LINE__: TRICE64 (id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE64_1(id(0), "msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: TRICE64 (Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE64_1(Id(0), "msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRICE64 (ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRICE64_1(ID(0), "msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: trice64 ("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: trice64_1("msg:value=%u\n", 200 ); //exp: time: default: msg:value=200 + break; case __LINE__: Trice64 ("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: Trice64_1("msg:value=%u\n", 200 ); //exp: time: be16default: msg:value=200 + break; case __LINE__: TRice64 ("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 + break; case __LINE__: TRice64_1("msg:value=%u\n", 200 ); //exp: time:feed3322default: msg:value=200 // mixed 16-bit and 32-bit timestamp - break; case __LINE__: TRice8(iD(14436), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice8(iD(14437), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice8(iD(14438), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice8(iD(14439), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice8(iD(14440), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice8(iD(14441), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice8(iD(14442), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice8(iD(14443), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice8(iD(14444), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice8(iD(14445), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice8(iD(14446), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice8(iD(14447), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice16(iD(14448), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice16(iD(14449), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice16(iD(14450), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice16(iD(14451), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice16(iD(14452), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice16(iD(14453), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice16(iD(14454), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice16(iD(14455), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice16(iD(14456), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice16(iD(14457), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice16(iD(14458), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice16(iD(14459), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice32(iD(14460), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice32(iD(14461), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice32(iD(14462), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice32(iD(14463), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice32(iD(14464), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice32(iD(14465), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice32(iD(14466), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice32(iD(14467), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice32(iD(14468), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice32(iD(14469), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice32(iD(14470), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice32(iD(14471), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice64(iD(14472), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice64(iD(14473), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice64(iD(14474), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice64(iD(14475), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice64(iD(14476), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice64(iD(14477), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice64(iD(14478), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice64(iD(14479), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice64(iD(14480), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice64(iD(14481), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice64(iD(14482), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice64(iD(14483), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice8_1 (iD(14484), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice8_2 (iD(14485), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice8_3 (iD(14486), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice8_4 (iD(14487), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice8_5 (iD(14488), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice8_6 (iD(14489), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice8_7 (iD(14490), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice8_8 (iD(14491), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice8_9 (iD(14492), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice8_10(iD(14493), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice8_11(iD(14494), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice8_12(iD(14495), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice16_1 (iD(14496), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice16_2 (iD(14497), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice16_3 (iD(14498), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice16_4 (iD(14499), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice16_5 (iD(14500), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice16_6 (iD(14501), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice16_7 (iD(14502), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice16_8 (iD(14503), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice16_9 (iD(14504), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice16_10(iD(14505), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice16_11(iD(14506), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice16_12(iD(14507), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice32_1 (iD(14508), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice32_2 (iD(14509), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice32_3 (iD(14510), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice32_4 (iD(14511), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice32_5 (iD(14512), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice32_6 (iD(14513), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice32_7 (iD(14514), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice32_8 (iD(14515), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice32_9 (iD(14516), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice32_10(iD(14517), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice32_11(iD(14518), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice32_12(iD(14519), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRice64_1 (iD(14520), "msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 - break; case __LINE__: Trice64_2 (iD(14521), "msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 - break; case __LINE__: trice64_3 (iD(14522), "msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 - break; case __LINE__: TRice64_4 (iD(14523), "msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 - break; case __LINE__: Trice64_5 (iD(14524), "msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 - break; case __LINE__: trice64_6 (iD(14525), "msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice64_7 (iD(14526), "msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice64_8 (iD(14527), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice64_9 (iD(14528), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice64_10(iD(14529), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice64_11(iD(14530), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice64_12(iD(14531), "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice8("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice8("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice8("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice8("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice8("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice8("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice8("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice8("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice8("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice8("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice8("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice8("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice16("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice16("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice16("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice16("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice16("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice16("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice16("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice16("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice16("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice16("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice32("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice32("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice32("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice32("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice32("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice32("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice32("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice32("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice32("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice32("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice32("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice32("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice64("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice64("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice64("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice64("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice64("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice64("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice64("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice64("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice64("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice64("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice64("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice64("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice8_1 ("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice8_2 ("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice8_3 ("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice8_4 ("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice8_5 ("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice8_6 ("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice8_7 ("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice8_8 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice8_9 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice8_10("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice8_11("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice8_12("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice16_1 ("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice16_2 ("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice16_3 ("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice16_4 ("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice16_5 ("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice16_6 ("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice16_7 ("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice16_8 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16_9 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice16_10("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice16_11("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16_12("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice32_1 ("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice32_2 ("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice32_3 ("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice32_4 ("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice32_5 ("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice32_6 ("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice32_7 ("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice32_8 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice32_9 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice32_10("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice32_11("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice32_12("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRice64_1 ("msg:value=%d\n", -1 ); //exp: time:feed3322default: msg:value=-1 + break; case __LINE__: Trice64_2 ("msg:value=%d, %d\n", -1, -2 ); //exp: time: be16default: msg:value=-1, -2 + break; case __LINE__: trice64_3 ("msg:value=%d, %d, %d\n", -1, -2, -3 ); //exp: time: default: msg:value=-1, -2, -3 + break; case __LINE__: TRice64_4 ("msg:value=%d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4 + break; case __LINE__: Trice64_5 ("msg:value=%d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5 + break; case __LINE__: trice64_6 ("msg:value=%d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice64_7 ("msg:value=%d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice64_8 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice64_9 ("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice64_10("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); //exp: time:feed3322default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice64_11("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice64_12("msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: msg:value=-1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 // use cases for 8-bit data - break; case __LINE__: trice8 (iD(14532), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice8 (iD(14533), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice8 (iD(14534), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: trice8_1 (iD(14535), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice8_1 (iD(14536), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice8_1 (iD(14537), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice8 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice8 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice8 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice8_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice8_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice8_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 // use cases for 16-bit data - break; case __LINE__: trice16 (iD(14538), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice16 (iD(14539), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice16 (iD(14540), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: trice16_1 (iD(14541), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice16_1 (iD(14542), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice16_1 (iD(14543), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice16 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice16 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice16 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice16_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice16_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice16_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 // use cases for 32-bit data - break; case __LINE__: trice32 (iD(14544), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice32 (iD(14545), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice32 (iD(14546), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: trice32_1 (iD(14547), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice32_1 (iD(14548), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice32_1 (iD(14549), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice32 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice32 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice32 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice32_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice32_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice32_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 // use cases for 64-bit data - break; case __LINE__: trice64 (iD(14550), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice64 (iD(14551), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice64 (iD(14552), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: trice64_1 (iD(14553), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: Trice64_1 (iD(14554), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRice64_1 (iD(14555), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice64 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice64 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice64 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: trice64_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: Trice64_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRice64_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 // legacy use cases - break; case __LINE__: TRICE (ID(14556), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: TRICE (id(14557), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRICE (Id(14558), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRICE (ID(14559), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRICE (ID(0), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRICE (id(0), "value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRICE (Id(0), "value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRICE (ID(0), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 // default stamp - break; case __LINE__: TRICE8 (ID(14560), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: TRICE8_1 (ID(14561), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRICE8 (ID(0), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRICE8_1 (ID(0), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 // no stamp - break; case __LINE__: trice8 (iD(14562), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: trice8_1 (iD(14563), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRICE8 (id(14564), "value=%d\n", -2 ); //exp: time: default: value=-2 - break; case __LINE__: TRICE8_1 (id(14565), "value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: trice8 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: trice8_1 ("value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRICE8 (id(0), "value=%d\n", -2 ); //exp: time: default: value=-2 + break; case __LINE__: TRICE8_1 (id(0), "value=%d\n", -2 ); //exp: time: default: value=-2 // 16-bit stamp: - break; case __LINE__: Trice8 (iD(14566), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: Trice8_1 (iD(14567), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRICE8 (Id(14568), "value=%d\n", -2 ); //exp: time: be16default: value=-2 - break; case __LINE__: TRICE8_1 (Id(14569), "value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: Trice8 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: Trice8_1 ("value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRICE8 (Id(0), "value=%d\n", -2 ); //exp: time: be16default: value=-2 + break; case __LINE__: TRICE8_1 (Id(0), "value=%d\n", -2 ); //exp: time: be16default: value=-2 // 32-bit stamp: - break; case __LINE__: TRice8 (iD(14570), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: TRice8_1 (iD(14571), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: TRICE8 (ID(14572), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - break; case __LINE__: TRICE8_1 (ID(14573), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 - - // channels - break; case __LINE__: TRICE(id(14574), "FATAL:magenta+b:red\n" ); //exp: time: default: FATAL:magenta+b:red - break; case __LINE__: TRICE(id(14575), "CRITICAL:red+i:default+h\n" ); //exp: time: default: CRITICAL:red+i:default+h - break; case __LINE__: TRICE(id(14576), "EMERGENCY:red+i:blue\n" ); //exp: time: default: EMERGENCY:red+i:blue - break; case __LINE__: TRICE(id(14577), "ERROR:11:red\n" ); //exp: time: default: ERROR:11:red - break; case __LINE__: TRICE(id(14578), "WARNING:11+i:red\n" ); //exp: time: default: WARNING:11+i:red - break; case __LINE__: TRICE(id(14579), "ATTENTION:11:green\n" ); //exp: time: default: ATTENTION:11:green - break; case __LINE__: TRICE(id(14580), "INFO:cyan+b:default+h\n" ); //exp: time: default: INFO:cyan+b:default+h - break; case __LINE__: TRICE(id(14581), "DEBUG:130+i\n" ); //exp: time: default: DEBUG:130+i - break; case __LINE__: TRICE(id(14582), "TRACE:default+i:default+h\n" ); //exp: time: default: TRACE:default+i:default+h - break; case __LINE__: TRICE(id(14583), "TIME:blue+i:blue+h\n" ); //exp: time: default: TIME:blue+i:blue+h - break; case __LINE__: TRICE(id(14584), "MESSAGE:green+h:black\n" ); //exp: time: default: MESSAGE:green+h:black - break; case __LINE__: TRICE(id(14585), "READ:black+i:yellow+h\n" ); //exp: time: default: READ:black+i:yellow+h - break; case __LINE__: TRICE(id(14586), "WRITE:black+u:yellow+h\n" ); //exp: time: default: WRITE:black+u:yellow+h - break; case __LINE__: TRICE(id(14587), "RECEIVE:black+h:black\n" ); //exp: time: default: RECEIVE:black+h:black - break; case __LINE__: TRICE(id(14588), "TRANSMIT:black:black+h\n" ); //exp: time: default: TRANSMIT:black:black+h - break; case __LINE__: TRICE(id(14589), "DIAG:yellow+i:default+h\n" ); //exp: time: default: DIAG:yellow+i:default+h - break; case __LINE__: TRICE(id(14590), "INTERRUPT:magenta+i:default+h\n" ); //exp: time: default: INTERRUPT:magenta+i:default+h - break; case __LINE__: TRICE(id(14591), "SIGNAL:118+i\n" ); //exp: time: default: SIGNAL:118+i - break; case __LINE__: TRICE(id(14592), "TEST:yellow+h:black\n" ); //exp: time: default: TEST:yellow+h:black - break; case __LINE__: TRICE(id(14593), "DEFAULT:off\n" ); //exp: time: default: DEFAULT:off - break; case __LINE__: TRICE(id(14594), "NOTICE:blue:white+h\n" ); //exp: time: default: NOTICE:blue:white+h - break; case __LINE__: TRICE(id(14595), "ALERT:magenta:magenta+h\n" ); //exp: time: default: ALERT:magenta:magenta+h - break; case __LINE__: TRICE(id(14596), "ASSERT:yellow+i:blue\n" ); //exp: time: default: ASSERT:yellow+i:blue - break; case __LINE__: TRICE(id(14597), "ALARM:red+i:white+h\n" ); //exp: time: default: ALARM:red+i:white+h - break; case __LINE__: TRICE(id(14598), "CYCLE:blue+i:default+h\n" ); //exp: time: default: CYCLE:blue+i:default+h - break; case __LINE__: TRICE(id(14599), "VERBOSE:blue:default\n" ); //exp: time: default: VERBOSE:blue:default - break; case __LINE__: TRICE(id(14600), "fatal:magenta+b:red\n" ); //exp: time: default: fatal:magenta+b:red - break; case __LINE__: TRICE(id(14601), "critical:red+i:default+h\n" ); //exp: time: default: critical:red+i:default+h - break; case __LINE__: TRICE(id(14602), "emergency:red+i:blue\n" ); //exp: time: default: emergency:red+i:blue - break; case __LINE__: TRICE(id(14603), "error:11:red\n" ); //exp: time: default: error:11:red - break; case __LINE__: TRICE(id(14604), "warning:11+i:red\n" ); //exp: time: default: warning:11+i:red - break; case __LINE__: TRICE(id(14605), "attention:11:green\n" ); //exp: time: default: attention:11:green - break; case __LINE__: TRICE(id(14606), "info:cyan+b:default+h\n" ); //exp: time: default: info:cyan+b:default+h - break; case __LINE__: TRICE(id(14607), "debug:130+i\n" ); //exp: time: default: debug:130+i - break; case __LINE__: TRICE(id(14608), "trace:default+i:default+h\n" ); //exp: time: default: trace:default+i:default+h - break; case __LINE__: TRICE(id(14609), "time:blue+i:blue+h\n" ); //exp: time: default: time:blue+i:blue+h - break; case __LINE__: TRICE(id(14610), "message:green+h:black\n" ); //exp: time: default: message:green+h:black - break; case __LINE__: TRICE(id(14611), "read:black+i:yellow+h\n" ); //exp: time: default: read:black+i:yellow+h - break; case __LINE__: TRICE(id(14612), "write:black+u:yellow+h\n" ); //exp: time: default: write:black+u:yellow+h - break; case __LINE__: TRICE(id(14613), "receive:black+h:black\n" ); //exp: time: default: receive:black+h:black - break; case __LINE__: TRICE(id(14614), "transmit:black:black+h\n" ); //exp: time: default: transmit:black:black+h - break; case __LINE__: TRICE(id(14615), "diag:yellow+i:default+h\n" ); //exp: time: default: diag:yellow+i:default+h - break; case __LINE__: TRICE(id(14616), "interrupt:magenta+i:default+h\n" ); //exp: time: default: interrupt:magenta+i:default+h - break; case __LINE__: TRICE(id(14617), "signal:118+i\n" ); //exp: time: default: signal:118+i - break; case __LINE__: TRICE(id(14618), "test:yellow+h:black\n" ); //exp: time: default: test:yellow+h:black - break; case __LINE__: TRICE(id(14619), "default:off\n" ); //exp: time: default: default:off - break; case __LINE__: TRICE(id(14620), "notice:blue:white+h\n" ); //exp: time: default: notice:blue:white+h - break; case __LINE__: TRICE(id(14621), "alert:magenta:magenta+h\n" ); //exp: time: default: alert:magenta:magenta+h - break; case __LINE__: TRICE(id(14622), "assert:yellow+i:blue\n" ); //exp: time: default: assert:yellow+i:blue - break; case __LINE__: TRICE(id(14623), "alarm:red+i:white+h\n" ); //exp: time: default: alarm:red+i:white+h - break; case __LINE__: TRICE(id(14624), "cycle:blue+i:default+h\n" ); //exp: time: default: cycle:blue+i:default+h - break; case __LINE__: TRICE(id(14625), "verbose:blue:default\n" ); //exp: time: default: verbose:blue:default - - break; case __LINE__: trice(iD(14626), "FATAL:magenta+b:red\n" ); //exp: time: default: FATAL:magenta+b:red - break; case __LINE__: trice(iD(14627), "CRITICAL:red+i:default+h\n" ); //exp: time: default: CRITICAL:red+i:default+h - break; case __LINE__: trice(iD(14628), "EMERGENCY:red+i:blue\n" ); //exp: time: default: EMERGENCY:red+i:blue - break; case __LINE__: trice(iD(14629), "ERROR:11:red\n" ); //exp: time: default: ERROR:11:red - break; case __LINE__: trice(iD(14630), "WARNING:11+i:red\n" ); //exp: time: default: WARNING:11+i:red - break; case __LINE__: trice(iD(14631), "ATTENTION:11:green\n" ); //exp: time: default: ATTENTION:11:green - break; case __LINE__: trice(iD(14632), "INFO:cyan+b:default+h\n" ); //exp: time: default: INFO:cyan+b:default+h - break; case __LINE__: trice(iD(14633), "DEBUG:130+i\n" ); //exp: time: default: DEBUG:130+i - break; case __LINE__: trice(iD(14634), "TRACE:default+i:default+h\n" ); //exp: time: default: TRACE:default+i:default+h - break; case __LINE__: trice(iD(14635), "TIME:blue+i:blue+h\n" ); //exp: time: default: TIME:blue+i:blue+h - break; case __LINE__: trice(iD(14636), "MESSAGE:green+h:black\n" ); //exp: time: default: MESSAGE:green+h:black - break; case __LINE__: trice(iD(14637), "READ:black+i:yellow+h\n" ); //exp: time: default: READ:black+i:yellow+h - break; case __LINE__: trice(iD(14638), "WRITE:black+u:yellow+h\n" ); //exp: time: default: WRITE:black+u:yellow+h - break; case __LINE__: trice(iD(14639), "RECEIVE:black+h:black\n" ); //exp: time: default: RECEIVE:black+h:black - break; case __LINE__: trice(iD(14640), "TRANSMIT:black:black+h\n" ); //exp: time: default: TRANSMIT:black:black+h - break; case __LINE__: trice(iD(14641), "DIAG:yellow+i:default+h\n" ); //exp: time: default: DIAG:yellow+i:default+h - break; case __LINE__: trice(iD(14642), "INTERRUPT:magenta+i:default+h\n" ); //exp: time: default: INTERRUPT:magenta+i:default+h - break; case __LINE__: trice(iD(14643), "SIGNAL:118+i\n" ); //exp: time: default: SIGNAL:118+i - break; case __LINE__: trice(iD(14644), "TEST:yellow+h:black\n" ); //exp: time: default: TEST:yellow+h:black - break; case __LINE__: trice(iD(14645), "DEFAULT:off\n" ); //exp: time: default: DEFAULT:off - break; case __LINE__: trice(iD(14646), "NOTICE:blue:white+h\n" ); //exp: time: default: NOTICE:blue:white+h - break; case __LINE__: trice(iD(14647), "ALERT:magenta:magenta+h\n" ); //exp: time: default: ALERT:magenta:magenta+h - break; case __LINE__: trice(iD(14648), "ASSERT:yellow+i:blue\n" ); //exp: time: default: ASSERT:yellow+i:blue - break; case __LINE__: trice(iD(14649), "ALARM:red+i:white+h\n" ); //exp: time: default: ALARM:red+i:white+h - break; case __LINE__: trice(iD(14650), "CYCLE:blue+i:default+h\n" ); //exp: time: default: CYCLE:blue+i:default+h - break; case __LINE__: trice(iD(14651), "VERBOSE:blue:default\n" ); //exp: time: default: VERBOSE:blue:default - break; case __LINE__: trice(iD(14652), "fatal:magenta+b:red\n" ); //exp: time: default: fatal:magenta+b:red - break; case __LINE__: trice(iD(14653), "critical:red+i:default+h\n" ); //exp: time: default: critical:red+i:default+h - break; case __LINE__: trice(iD(14654), "emergency:red+i:blue\n" ); //exp: time: default: emergency:red+i:blue - break; case __LINE__: trice(iD(14655), "error:11:red\n" ); //exp: time: default: error:11:red - break; case __LINE__: trice(iD(14656), "warning:11+i:red\n" ); //exp: time: default: warning:11+i:red - break; case __LINE__: trice(iD(14657), "attention:11:green\n" ); //exp: time: default: attention:11:green - break; case __LINE__: trice(iD(14658), "info:cyan+b:default+h\n" ); //exp: time: default: info:cyan+b:default+h - break; case __LINE__: trice(iD(14659), "debug:130+i\n" ); //exp: time: default: debug:130+i - break; case __LINE__: trice(iD(14660), "trace:default+i:default+h\n" ); //exp: time: default: trace:default+i:default+h - break; case __LINE__: trice(iD(14661), "time:blue+i:blue+h\n" ); //exp: time: default: time:blue+i:blue+h - break; case __LINE__: trice(iD(14662), "message:green+h:black\n" ); //exp: time: default: message:green+h:black - break; case __LINE__: trice(iD(14663), "read:black+i:yellow+h\n" ); //exp: time: default: read:black+i:yellow+h - break; case __LINE__: trice(iD(14664), "write:black+u:yellow+h\n" ); //exp: time: default: write:black+u:yellow+h - break; case __LINE__: trice(iD(14665), "receive:black+h:black\n" ); //exp: time: default: receive:black+h:black - break; case __LINE__: trice(iD(14666), "transmit:black:black+h\n" ); //exp: time: default: transmit:black:black+h - break; case __LINE__: trice(iD(14667), "diag:yellow+i:default+h\n" ); //exp: time: default: diag:yellow+i:default+h - break; case __LINE__: trice(iD(14668), "interrupt:magenta+i:default+h\n" ); //exp: time: default: interrupt:magenta+i:default+h - break; case __LINE__: trice(iD(14669), "signal:118+i\n" ); //exp: time: default: signal:118+i - break; case __LINE__: trice(iD(14670), "test:yellow+h:black\n" ); //exp: time: default: test:yellow+h:black - break; case __LINE__: trice(iD(14671), "default:off\n" ); //exp: time: default: default:off - break; case __LINE__: trice(iD(14672), "notice:blue:white+h\n" ); //exp: time: default: notice:blue:white+h - break; case __LINE__: trice(iD(14673), "alert:magenta:magenta+h\n" ); //exp: time: default: alert:magenta:magenta+h - break; case __LINE__: trice(iD(14674), "assert:yellow+i:blue\n" ); //exp: time: default: assert:yellow+i:blue - break; case __LINE__: trice(iD(14675), "alarm:red+i:white+h\n" ); //exp: time: default: alarm:red+i:white+h - break; case __LINE__: trice(iD(14676), "cycle:blue+i:default+h\n" ); //exp: time: default: cycle:blue+i:default+h - break; case __LINE__: trice(iD(14677), "verbose:blue:default\n" ); //exp: time: default: verbose:blue:default - - break; case __LINE__: TRICE(Id(14678), "FATAL:magenta+b:red\n" ); //exp: time: be16default: FATAL:magenta+b:red - break; case __LINE__: TRICE(Id(14679), "CRITICAL:red+i:default+h\n" ); //exp: time: be16default: CRITICAL:red+i:default+h - break; case __LINE__: TRICE(Id(14680), "EMERGENCY:red+i:blue\n" ); //exp: time: be16default: EMERGENCY:red+i:blue - break; case __LINE__: TRICE(Id(14681), "ERROR:11:red\n" ); //exp: time: be16default: ERROR:11:red - break; case __LINE__: TRICE(Id(14682), "WARNING:11+i:red\n" ); //exp: time: be16default: WARNING:11+i:red - break; case __LINE__: TRICE(Id(14683), "ATTENTION:11:green\n" ); //exp: time: be16default: ATTENTION:11:green - break; case __LINE__: TRICE(Id(14684), "INFO:cyan+b:default+h\n" ); //exp: time: be16default: INFO:cyan+b:default+h - break; case __LINE__: TRICE(Id(14685), "DEBUG:130+i\n" ); //exp: time: be16default: DEBUG:130+i - break; case __LINE__: TRICE(Id(14686), "TRACE:default+i:default+h\n" ); //exp: time: be16default: TRACE:default+i:default+h - break; case __LINE__: TRICE(Id(14687), "TIME:blue+i:blue+h\n" ); //exp: time: be16default: TIME:blue+i:blue+h - break; case __LINE__: TRICE(Id(14688), "MESSAGE:green+h:black\n" ); //exp: time: be16default: MESSAGE:green+h:black - break; case __LINE__: TRICE(Id(14689), "READ:black+i:yellow+h\n" ); //exp: time: be16default: READ:black+i:yellow+h - break; case __LINE__: TRICE(Id(14690), "WRITE:black+u:yellow+h\n" ); //exp: time: be16default: WRITE:black+u:yellow+h - break; case __LINE__: TRICE(Id(14691), "RECEIVE:black+h:black\n" ); //exp: time: be16default: RECEIVE:black+h:black - break; case __LINE__: TRICE(Id(14692), "TRANSMIT:black:black+h\n" ); //exp: time: be16default: TRANSMIT:black:black+h - break; case __LINE__: TRICE(Id(14693), "DIAG:yellow+i:default+h\n" ); //exp: time: be16default: DIAG:yellow+i:default+h - break; case __LINE__: TRICE(Id(14694), "INTERRUPT:magenta+i:default+h\n" ); //exp: time: be16default: INTERRUPT:magenta+i:default+h - break; case __LINE__: TRICE(Id(14695), "SIGNAL:118+i\n" ); //exp: time: be16default: SIGNAL:118+i - break; case __LINE__: TRICE(Id(14696), "TEST:yellow+h:black\n" ); //exp: time: be16default: TEST:yellow+h:black - break; case __LINE__: TRICE(Id(14697), "DEFAULT:off\n" ); //exp: time: be16default: DEFAULT:off - break; case __LINE__: TRICE(Id(14698), "NOTICE:blue:white+h\n" ); //exp: time: be16default: NOTICE:blue:white+h - break; case __LINE__: TRICE(Id(14699), "ALERT:magenta:magenta+h\n" ); //exp: time: be16default: ALERT:magenta:magenta+h - break; case __LINE__: TRICE(Id(14700), "ASSERT:yellow+i:blue\n" ); //exp: time: be16default: ASSERT:yellow+i:blue - break; case __LINE__: TRICE(Id(14701), "ALARM:red+i:white+h\n" ); //exp: time: be16default: ALARM:red+i:white+h - break; case __LINE__: TRICE(Id(14702), "CYCLE:blue+i:default+h\n" ); //exp: time: be16default: CYCLE:blue+i:default+h - break; case __LINE__: TRICE(Id(14703), "VERBOSE:blue:default\n" ); //exp: time: be16default: VERBOSE:blue:default - break; case __LINE__: TRICE(Id(14704), "fatal:magenta+b:red\n" ); //exp: time: be16default: fatal:magenta+b:red - break; case __LINE__: TRICE(Id(14705), "critical:red+i:default+h\n" ); //exp: time: be16default: critical:red+i:default+h - break; case __LINE__: TRICE(Id(14706), "emergency:red+i:blue\n" ); //exp: time: be16default: emergency:red+i:blue - break; case __LINE__: TRICE(Id(14707), "error:11:red\n" ); //exp: time: be16default: error:11:red - break; case __LINE__: TRICE(Id(14708), "warning:11+i:red\n" ); //exp: time: be16default: warning:11+i:red - break; case __LINE__: TRICE(Id(14709), "attention:11:green\n" ); //exp: time: be16default: attention:11:green - break; case __LINE__: TRICE(Id(14710), "info:cyan+b:default+h\n" ); //exp: time: be16default: info:cyan+b:default+h - break; case __LINE__: TRICE(Id(14711), "debug:130+i\n" ); //exp: time: be16default: debug:130+i - break; case __LINE__: TRICE(Id(14712), "trace:default+i:default+h\n" ); //exp: time: be16default: trace:default+i:default+h - break; case __LINE__: TRICE(Id(14713), "time:blue+i:blue+h\n" ); //exp: time: be16default: time:blue+i:blue+h - break; case __LINE__: TRICE(Id(14714), "message:green+h:black\n" ); //exp: time: be16default: message:green+h:black - break; case __LINE__: TRICE(Id(14715), "read:black+i:yellow+h\n" ); //exp: time: be16default: read:black+i:yellow+h - break; case __LINE__: TRICE(Id(14716), "write:black+u:yellow+h\n" ); //exp: time: be16default: write:black+u:yellow+h - break; case __LINE__: TRICE(Id(14717), "receive:black+h:black\n" ); //exp: time: be16default: receive:black+h:black - break; case __LINE__: TRICE(Id(14718), "transmit:black:black+h\n" ); //exp: time: be16default: transmit:black:black+h - break; case __LINE__: TRICE(Id(14719), "diag:yellow+i:default+h\n" ); //exp: time: be16default: diag:yellow+i:default+h - break; case __LINE__: TRICE(Id(14720), "interrupt:magenta+i:default+h\n" ); //exp: time: be16default: interrupt:magenta+i:default+h - break; case __LINE__: TRICE(Id(14721), "signal:118+i\n" ); //exp: time: be16default: signal:118+i - break; case __LINE__: TRICE(Id(14722), "test:yellow+h:black\n" ); //exp: time: be16default: test:yellow+h:black - break; case __LINE__: TRICE(Id(14723), "default:off\n" ); //exp: time: be16default: default:off - break; case __LINE__: TRICE(Id(14724), "notice:blue:white+h\n" ); //exp: time: be16default: notice:blue:white+h - break; case __LINE__: TRICE(Id(14725), "alert:magenta:magenta+h\n" ); //exp: time: be16default: alert:magenta:magenta+h - break; case __LINE__: TRICE(Id(14726), "assert:yellow+i:blue\n" ); //exp: time: be16default: assert:yellow+i:blue - break; case __LINE__: TRICE(Id(14727), "alarm:red+i:white+h\n" ); //exp: time: be16default: alarm:red+i:white+h - break; case __LINE__: TRICE(Id(14728), "cycle:blue+i:default+h\n" ); //exp: time: be16default: cycle:blue+i:default+h - break; case __LINE__: TRICE(Id(14729), "verbose:blue:default\n" ); //exp: time: be16default: verbose:blue:default - - break; case __LINE__: Trice(iD(14730), "FATAL:magenta+b:red\n" ); //exp: time: be16default: FATAL:magenta+b:red - break; case __LINE__: Trice(iD(14731), "CRITICAL:red+i:default+h\n" ); //exp: time: be16default: CRITICAL:red+i:default+h - break; case __LINE__: Trice(iD(14732), "EMERGENCY:red+i:blue\n" ); //exp: time: be16default: EMERGENCY:red+i:blue - break; case __LINE__: Trice(iD(14733), "ERROR:11:red\n" ); //exp: time: be16default: ERROR:11:red - break; case __LINE__: Trice(iD(14734), "WARNING:11+i:red\n" ); //exp: time: be16default: WARNING:11+i:red - break; case __LINE__: Trice(iD(14735), "ATTENTION:11:green\n" ); //exp: time: be16default: ATTENTION:11:green - break; case __LINE__: Trice(iD(14736), "INFO:cyan+b:default+h\n" ); //exp: time: be16default: INFO:cyan+b:default+h - break; case __LINE__: Trice(iD(14737), "DEBUG:130+i\n" ); //exp: time: be16default: DEBUG:130+i - break; case __LINE__: Trice(iD(14738), "TRACE:default+i:default+h\n" ); //exp: time: be16default: TRACE:default+i:default+h - break; case __LINE__: Trice(iD(14739), "TIME:blue+i:blue+h\n" ); //exp: time: be16default: TIME:blue+i:blue+h - break; case __LINE__: Trice(iD(14740), "MESSAGE:green+h:black\n" ); //exp: time: be16default: MESSAGE:green+h:black - break; case __LINE__: Trice(iD(14741), "READ:black+i:yellow+h\n" ); //exp: time: be16default: READ:black+i:yellow+h - break; case __LINE__: Trice(iD(14742), "WRITE:black+u:yellow+h\n" ); //exp: time: be16default: WRITE:black+u:yellow+h - break; case __LINE__: Trice(iD(14743), "RECEIVE:black+h:black\n" ); //exp: time: be16default: RECEIVE:black+h:black - break; case __LINE__: Trice(iD(14744), "TRANSMIT:black:black+h\n" ); //exp: time: be16default: TRANSMIT:black:black+h - break; case __LINE__: Trice(iD(14745), "DIAG:yellow+i:default+h\n" ); //exp: time: be16default: DIAG:yellow+i:default+h - break; case __LINE__: Trice(iD(14746), "INTERRUPT:magenta+i:default+h\n" ); //exp: time: be16default: INTERRUPT:magenta+i:default+h - break; case __LINE__: Trice(iD(14747), "SIGNAL:118+i\n" ); //exp: time: be16default: SIGNAL:118+i - break; case __LINE__: Trice(iD(14748), "TEST:yellow+h:black\n" ); //exp: time: be16default: TEST:yellow+h:black - break; case __LINE__: Trice(iD(14749), "DEFAULT:off\n" ); //exp: time: be16default: DEFAULT:off - break; case __LINE__: Trice(iD(14750), "NOTICE:blue:white+h\n" ); //exp: time: be16default: NOTICE:blue:white+h - break; case __LINE__: Trice(iD(14751), "ALERT:magenta:magenta+h\n" ); //exp: time: be16default: ALERT:magenta:magenta+h - break; case __LINE__: Trice(iD(14752), "ASSERT:yellow+i:blue\n" ); //exp: time: be16default: ASSERT:yellow+i:blue - break; case __LINE__: Trice(iD(14753), "ALARM:red+i:white+h\n" ); //exp: time: be16default: ALARM:red+i:white+h - break; case __LINE__: Trice(iD(14754), "CYCLE:blue+i:default+h\n" ); //exp: time: be16default: CYCLE:blue+i:default+h - break; case __LINE__: Trice(iD(14755), "VERBOSE:blue:default\n" ); //exp: time: be16default: VERBOSE:blue:default - break; case __LINE__: Trice(iD(14756), "fatal:magenta+b:red\n" ); //exp: time: be16default: fatal:magenta+b:red - break; case __LINE__: Trice(iD(14757), "critical:red+i:default+h\n" ); //exp: time: be16default: critical:red+i:default+h - break; case __LINE__: Trice(iD(14758), "emergency:red+i:blue\n" ); //exp: time: be16default: emergency:red+i:blue - break; case __LINE__: Trice(iD(14759), "error:11:red\n" ); //exp: time: be16default: error:11:red - break; case __LINE__: Trice(iD(14760), "warning:11+i:red\n" ); //exp: time: be16default: warning:11+i:red - break; case __LINE__: Trice(iD(14761), "attention:11:green\n" ); //exp: time: be16default: attention:11:green - break; case __LINE__: Trice(iD(14762), "info:cyan+b:default+h\n" ); //exp: time: be16default: info:cyan+b:default+h - break; case __LINE__: Trice(iD(14763), "debug:130+i\n" ); //exp: time: be16default: debug:130+i - break; case __LINE__: Trice(iD(14764), "trace:default+i:default+h\n" ); //exp: time: be16default: trace:default+i:default+h - break; case __LINE__: Trice(iD(14765), "time:blue+i:blue+h\n" ); //exp: time: be16default: time:blue+i:blue+h - break; case __LINE__: Trice(iD(14766), "message:green+h:black\n" ); //exp: time: be16default: message:green+h:black - break; case __LINE__: Trice(iD(14767), "read:black+i:yellow+h\n" ); //exp: time: be16default: read:black+i:yellow+h - break; case __LINE__: Trice(iD(14768), "write:black+u:yellow+h\n" ); //exp: time: be16default: write:black+u:yellow+h - break; case __LINE__: Trice(iD(14769), "receive:black+h:black\n" ); //exp: time: be16default: receive:black+h:black - break; case __LINE__: Trice(iD(14770), "transmit:black:black+h\n" ); //exp: time: be16default: transmit:black:black+h - break; case __LINE__: Trice(iD(14771), "diag:yellow+i:default+h\n" ); //exp: time: be16default: diag:yellow+i:default+h - break; case __LINE__: Trice(iD(14772), "interrupt:magenta+i:default+h\n" ); //exp: time: be16default: interrupt:magenta+i:default+h - break; case __LINE__: Trice(iD(14773), "signal:118+i\n" ); //exp: time: be16default: signal:118+i - break; case __LINE__: Trice(iD(14774), "test:yellow+h:black\n" ); //exp: time: be16default: test:yellow+h:black - break; case __LINE__: Trice(iD(14775), "default:off\n" ); //exp: time: be16default: default:off - break; case __LINE__: Trice(iD(14776), "notice:blue:white+h\n" ); //exp: time: be16default: notice:blue:white+h - break; case __LINE__: Trice(iD(14777), "alert:magenta:magenta+h\n" ); //exp: time: be16default: alert:magenta:magenta+h - break; case __LINE__: Trice(iD(14778), "assert:yellow+i:blue\n" ); //exp: time: be16default: assert:yellow+i:blue - break; case __LINE__: Trice(iD(14779), "alarm:red+i:white+h\n" ); //exp: time: be16default: alarm:red+i:white+h - break; case __LINE__: Trice(iD(14780), "cycle:blue+i:default+h\n" ); //exp: time: be16default: cycle:blue+i:default+h - break; case __LINE__: Trice(iD(14781), "verbose:blue:default\n" ); //exp: time: be16default: verbose:blue:default - - break; case __LINE__: TRICE(ID(14782), "FATAL:magenta+b:red\n" ); //exp: time:feed3322default: FATAL:magenta+b:red - break; case __LINE__: TRICE(ID(14783), "CRITICAL:red+i:default+h\n" ); //exp: time:feed3322default: CRITICAL:red+i:default+h - break; case __LINE__: TRICE(ID(14784), "EMERGENCY:red+i:blue\n" ); //exp: time:feed3322default: EMERGENCY:red+i:blue - break; case __LINE__: TRICE(ID(14785), "ERROR:11:red\n" ); //exp: time:feed3322default: ERROR:11:red - break; case __LINE__: TRICE(ID(14786), "WARNING:11+i:red\n" ); //exp: time:feed3322default: WARNING:11+i:red - break; case __LINE__: TRICE(ID(14787), "ATTENTION:11:green\n" ); //exp: time:feed3322default: ATTENTION:11:green - break; case __LINE__: TRICE(ID(14788), "INFO:cyan+b:default+h\n" ); //exp: time:feed3322default: INFO:cyan+b:default+h - break; case __LINE__: TRICE(ID(14789), "DEBUG:130+i\n" ); //exp: time:feed3322default: DEBUG:130+i - break; case __LINE__: TRICE(ID(14790), "TRACE:default+i:default+h\n" ); //exp: time:feed3322default: TRACE:default+i:default+h - break; case __LINE__: TRICE(ID(14791), "TIME:blue+i:blue+h\n" ); //exp: time:feed3322default: TIME:blue+i:blue+h - break; case __LINE__: TRICE(ID(14792), "MESSAGE:green+h:black\n" ); //exp: time:feed3322default: MESSAGE:green+h:black - break; case __LINE__: TRICE(ID(14793), "READ:black+i:yellow+h\n" ); //exp: time:feed3322default: READ:black+i:yellow+h - break; case __LINE__: TRICE(ID(14794), "WRITE:black+u:yellow+h\n" ); //exp: time:feed3322default: WRITE:black+u:yellow+h - break; case __LINE__: TRICE(ID(14795), "RECEIVE:black+h:black\n" ); //exp: time:feed3322default: RECEIVE:black+h:black - break; case __LINE__: TRICE(ID(14796), "TRANSMIT:black:black+h\n" ); //exp: time:feed3322default: TRANSMIT:black:black+h - break; case __LINE__: TRICE(ID(14797), "DIAG:yellow+i:default+h\n" ); //exp: time:feed3322default: DIAG:yellow+i:default+h - break; case __LINE__: TRICE(ID(14798), "INTERRUPT:magenta+i:default+h\n" ); //exp: time:feed3322default: INTERRUPT:magenta+i:default+h - break; case __LINE__: TRICE(ID(14799), "SIGNAL:118+i\n" ); //exp: time:feed3322default: SIGNAL:118+i - break; case __LINE__: TRICE(ID(14800), "TEST:yellow+h:black\n" ); //exp: time:feed3322default: TEST:yellow+h:black - break; case __LINE__: TRICE(ID(14801), "DEFAULT:off\n" ); //exp: time:feed3322default: DEFAULT:off - break; case __LINE__: TRICE(ID(14802), "NOTICE:blue:white+h\n" ); //exp: time:feed3322default: NOTICE:blue:white+h - break; case __LINE__: TRICE(ID(14803), "ALERT:magenta:magenta+h\n" ); //exp: time:feed3322default: ALERT:magenta:magenta+h - break; case __LINE__: TRICE(ID(14804), "ASSERT:yellow+i:blue\n" ); //exp: time:feed3322default: ASSERT:yellow+i:blue - break; case __LINE__: TRICE(ID(14805), "ALARM:red+i:white+h\n" ); //exp: time:feed3322default: ALARM:red+i:white+h - break; case __LINE__: TRICE(ID(14806), "CYCLE:blue+i:default+h\n" ); //exp: time:feed3322default: CYCLE:blue+i:default+h - break; case __LINE__: TRICE(ID(14807), "VERBOSE:blue:default\n" ); //exp: time:feed3322default: VERBOSE:blue:default - break; case __LINE__: TRICE(ID(14808), "fatal:magenta+b:red\n" ); //exp: time:feed3322default: fatal:magenta+b:red - break; case __LINE__: TRICE(ID(14809), "critical:red+i:default+h\n" ); //exp: time:feed3322default: critical:red+i:default+h - break; case __LINE__: TRICE(ID(14810), "emergency:red+i:blue\n" ); //exp: time:feed3322default: emergency:red+i:blue - break; case __LINE__: TRICE(ID(14811), "error:11:red\n" ); //exp: time:feed3322default: error:11:red - break; case __LINE__: TRICE(ID(14812), "warning:11+i:red\n" ); //exp: time:feed3322default: warning:11+i:red - break; case __LINE__: TRICE(ID(14813), "attention:11:green\n" ); //exp: time:feed3322default: attention:11:green - break; case __LINE__: TRICE(ID(14814), "info:cyan+b:default+h\n" ); //exp: time:feed3322default: info:cyan+b:default+h - break; case __LINE__: TRICE(ID(14815), "debug:130+i\n" ); //exp: time:feed3322default: debug:130+i - break; case __LINE__: TRICE(ID(14816), "trace:default+i:default+h\n" ); //exp: time:feed3322default: trace:default+i:default+h - break; case __LINE__: TRICE(ID(14817), "time:blue+i:blue+h\n" ); //exp: time:feed3322default: time:blue+i:blue+h - break; case __LINE__: TRICE(ID(14818), "message:green+h:black\n" ); //exp: time:feed3322default: message:green+h:black - break; case __LINE__: TRICE(ID(14819), "read:black+i:yellow+h\n" ); //exp: time:feed3322default: read:black+i:yellow+h - break; case __LINE__: TRICE(ID(14820), "write:black+u:yellow+h\n" ); //exp: time:feed3322default: write:black+u:yellow+h - break; case __LINE__: TRICE(ID(14821), "receive:black+h:black\n" ); //exp: time:feed3322default: receive:black+h:black - break; case __LINE__: TRICE(ID(14822), "transmit:black:black+h\n" ); //exp: time:feed3322default: transmit:black:black+h - break; case __LINE__: TRICE(ID(14823), "diag:yellow+i:default+h\n" ); //exp: time:feed3322default: diag:yellow+i:default+h - break; case __LINE__: TRICE(ID(14824), "interrupt:magenta+i:default+h\n" ); //exp: time:feed3322default: interrupt:magenta+i:default+h - break; case __LINE__: TRICE(ID(14825), "signal:118+i\n" ); //exp: time:feed3322default: signal:118+i - break; case __LINE__: TRICE(ID(14826), "test:yellow+h:black\n" ); //exp: time:feed3322default: test:yellow+h:black - break; case __LINE__: TRICE(ID(14827), "default:off\n" ); //exp: time:feed3322default: default:off - break; case __LINE__: TRICE(ID(14828), "notice:blue:white+h\n" ); //exp: time:feed3322default: notice:blue:white+h - break; case __LINE__: TRICE(ID(14829), "alert:magenta:magenta+h\n" ); //exp: time:feed3322default: alert:magenta:magenta+h - break; case __LINE__: TRICE(ID(14830), "assert:yellow+i:blue\n" ); //exp: time:feed3322default: assert:yellow+i:blue - break; case __LINE__: TRICE(ID(14831), "alarm:red+i:white+h\n" ); //exp: time:feed3322default: alarm:red+i:white+h - break; case __LINE__: TRICE(ID(14832), "cycle:blue+i:default+h\n" ); //exp: time:feed3322default: cycle:blue+i:default+h - break; case __LINE__: TRICE(ID(14833), "verbose:blue:default\n" ); //exp: time:feed3322default: verbose:blue:default + break; case __LINE__: TRice8 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRice8_1 ("value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRICE8 (ID(0), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + break; case __LINE__: TRICE8_1 (ID(0), "value=%d\n", -2 ); //exp: time:feed3322default: value=-2 + +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + // tags + break; case __LINE__: TRICE(id(0), "FATAL:magenta+b:red\n" ); //exp: time: default: FATAL:magenta+b:red + break; case __LINE__: TRICE(id(0), "CRITICAL:red+i:default+h\n" ); //exp: time: default: CRITICAL:red+i:default+h + break; case __LINE__: TRICE(id(0), "EMERGENCY:red+i:blue\n" ); //exp: time: default: EMERGENCY:red+i:blue + break; case __LINE__: TRICE(id(0), "ERROR:11:red\n" ); //exp: time: default: ERROR:11:red + break; case __LINE__: TRICE(id(0), "WARNING:11+i:red\n" ); //exp: time: default: WARNING:11+i:red + break; case __LINE__: TRICE(id(0), "ATTENTION:11:green\n" ); //exp: time: default: ATTENTION:11:green + break; case __LINE__: TRICE(id(0), "INFO:cyan+b:default+h\n" ); //exp: time: default: INFO:cyan+b:default+h + break; case __LINE__: TRICE(id(0), "DEBUG:130+i\n" ); //exp: time: default: DEBUG:130+i + break; case __LINE__: TRICE(id(0), "TRACE:default+i:default+h\n" ); //exp: time: default: TRACE:default+i:default+h + break; case __LINE__: TRICE(id(0), "TIME:blue+i:blue+h\n" ); //exp: time: default: TIME:blue+i:blue+h + break; case __LINE__: TRICE(id(0), "MESSAGE:green+h:black\n" ); //exp: time: default: MESSAGE:green+h:black + break; case __LINE__: TRICE(id(0), "READ:black+i:yellow+h\n" ); //exp: time: default: READ:black+i:yellow+h + break; case __LINE__: TRICE(id(0), "WRITE:black+u:yellow+h\n" ); //exp: time: default: WRITE:black+u:yellow+h + break; case __LINE__: TRICE(id(0), "RECEIVE:black+h:black\n" ); //exp: time: default: RECEIVE:black+h:black + break; case __LINE__: TRICE(id(0), "TRANSMIT:black:black+h\n" ); //exp: time: default: TRANSMIT:black:black+h + break; case __LINE__: TRICE(id(0), "DIAG:yellow+i:default+h\n" ); //exp: time: default: DIAG:yellow+i:default+h + break; case __LINE__: TRICE(id(0), "INTERRUPT:magenta+i:default+h\n" ); //exp: time: default: INTERRUPT:magenta+i:default+h + break; case __LINE__: TRICE(id(0), "SIGNAL:118+i\n" ); //exp: time: default: SIGNAL:118+i + break; case __LINE__: TRICE(id(0), "TEST:yellow+h:black\n" ); //exp: time: default: TEST:yellow+h:black + break; case __LINE__: TRICE(id(0), "DEFAULT:off\n" ); //exp: time: default: DEFAULT:off + break; case __LINE__: TRICE(id(0), "NOTICE:blue:white+h\n" ); //exp: time: default: NOTICE:blue:white+h + break; case __LINE__: TRICE(id(0), "ALERT:magenta:magenta+h\n" ); //exp: time: default: ALERT:magenta:magenta+h + break; case __LINE__: TRICE(id(0), "ASSERT:yellow+i:blue\n" ); //exp: time: default: ASSERT:yellow+i:blue + break; case __LINE__: TRICE(id(0), "ALARM:red+i:white+h\n" ); //exp: time: default: ALARM:red+i:white+h + break; case __LINE__: TRICE(id(0), "VERBOSE:blue:default\n" ); //exp: time: default: VERBOSE:blue:default + break; case __LINE__: TRICE(id(0), "fatal:magenta+b:red\n" ); //exp: time: default: fatal:magenta+b:red + break; case __LINE__: TRICE(id(0), "critical:red+i:default+h\n" ); //exp: time: default: critical:red+i:default+h + break; case __LINE__: TRICE(id(0), "emergency:red+i:blue\n" ); //exp: time: default: emergency:red+i:blue + break; case __LINE__: TRICE(id(0), "error:11:red\n" ); //exp: time: default: error:11:red + break; case __LINE__: TRICE(id(0), "warning:11+i:red\n" ); //exp: time: default: warning:11+i:red + break; case __LINE__: TRICE(id(0), "attention:11:green\n" ); //exp: time: default: attention:11:green + break; case __LINE__: TRICE(id(0), "info:cyan+b:default+h\n" ); //exp: time: default: info:cyan+b:default+h + break; case __LINE__: TRICE(id(0), "debug:130+i\n" ); //exp: time: default: debug:130+i + break; case __LINE__: TRICE(id(0), "trace:default+i:default+h\n" ); //exp: time: default: trace:default+i:default+h + break; case __LINE__: TRICE(id(0), "time:blue+i:blue+h\n" ); //exp: time: default: time:blue+i:blue+h + break; case __LINE__: TRICE(id(0), "message:green+h:black\n" ); //exp: time: default: message:green+h:black + break; case __LINE__: TRICE(id(0), "read:black+i:yellow+h\n" ); //exp: time: default: read:black+i:yellow+h + break; case __LINE__: TRICE(id(0), "write:black+u:yellow+h\n" ); //exp: time: default: write:black+u:yellow+h + break; case __LINE__: TRICE(id(0), "receive:black+h:black\n" ); //exp: time: default: receive:black+h:black + break; case __LINE__: TRICE(id(0), "transmit:black:black+h\n" ); //exp: time: default: transmit:black:black+h + break; case __LINE__: TRICE(id(0), "diag:yellow+i:default+h\n" ); //exp: time: default: diag:yellow+i:default+h + break; case __LINE__: TRICE(id(0), "interrupt:magenta+i:default+h\n" ); //exp: time: default: interrupt:magenta+i:default+h + break; case __LINE__: TRICE(id(0), "signal:118+i\n" ); //exp: time: default: signal:118+i + break; case __LINE__: TRICE(id(0), "test:yellow+h:black\n" ); //exp: time: default: test:yellow+h:black + break; case __LINE__: TRICE(id(0), "default:off\n" ); //exp: time: default: default:off + break; case __LINE__: TRICE(id(0), "notice:blue:white+h\n" ); //exp: time: default: notice:blue:white+h + break; case __LINE__: TRICE(id(0), "alert:magenta:magenta+h\n" ); //exp: time: default: alert:magenta:magenta+h + break; case __LINE__: TRICE(id(0), "assert:yellow+i:blue\n" ); //exp: time: default: assert:yellow+i:blue + break; case __LINE__: TRICE(id(0), "alarm:red+i:white+h\n" ); //exp: time: default: alarm:red+i:white+h + break; case __LINE__: TRICE(id(0), "verbose:blue:default\n" ); //exp: time: default: verbose:blue:default +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("FATAL:magenta+b:red\n" ); //exp: time: default: FATAL:magenta+b:red + break; case __LINE__: trice("CRITICAL:red+i:default+h\n" ); //exp: time: default: CRITICAL:red+i:default+h + break; case __LINE__: trice("EMERGENCY:red+i:blue\n" ); //exp: time: default: EMERGENCY:red+i:blue + break; case __LINE__: trice("ERROR:11:red\n" ); //exp: time: default: ERROR:11:red + break; case __LINE__: trice("WARNING:11+i:red\n" ); //exp: time: default: WARNING:11+i:red + break; case __LINE__: trice("ATTENTION:11:green\n" ); //exp: time: default: ATTENTION:11:green + break; case __LINE__: trice("INFO:cyan+b:default+h\n" ); //exp: time: default: INFO:cyan+b:default+h + break; case __LINE__: trice("DEBUG:130+i\n" ); //exp: time: default: DEBUG:130+i + break; case __LINE__: trice("TRACE:default+i:default+h\n" ); //exp: time: default: TRACE:default+i:default+h + break; case __LINE__: trice("TIME:blue+i:blue+h\n" ); //exp: time: default: TIME:blue+i:blue+h + break; case __LINE__: trice("MESSAGE:green+h:black\n" ); //exp: time: default: MESSAGE:green+h:black + break; case __LINE__: trice("READ:black+i:yellow+h\n" ); //exp: time: default: READ:black+i:yellow+h + break; case __LINE__: trice("WRITE:black+u:yellow+h\n" ); //exp: time: default: WRITE:black+u:yellow+h + break; case __LINE__: trice("RECEIVE:black+h:black\n" ); //exp: time: default: RECEIVE:black+h:black + break; case __LINE__: trice("TRANSMIT:black:black+h\n" ); //exp: time: default: TRANSMIT:black:black+h + break; case __LINE__: trice("DIAG:yellow+i:default+h\n" ); //exp: time: default: DIAG:yellow+i:default+h + break; case __LINE__: trice("INTERRUPT:magenta+i:default+h\n" ); //exp: time: default: INTERRUPT:magenta+i:default+h + break; case __LINE__: trice("SIGNAL:118+i\n" ); //exp: time: default: SIGNAL:118+i + break; case __LINE__: trice("TEST:yellow+h:black\n" ); //exp: time: default: TEST:yellow+h:black + break; case __LINE__: trice("DEFAULT:off\n" ); //exp: time: default: DEFAULT:off + break; case __LINE__: trice("NOTICE:blue:white+h\n" ); //exp: time: default: NOTICE:blue:white+h + break; case __LINE__: trice("ALERT:magenta:magenta+h\n" ); //exp: time: default: ALERT:magenta:magenta+h + break; case __LINE__: trice("ASSERT:yellow+i:blue\n" ); //exp: time: default: ASSERT:yellow+i:blue + break; case __LINE__: trice("ALARM:red+i:white+h\n" ); //exp: time: default: ALARM:red+i:white+h + break; case __LINE__: trice("VERBOSE:blue:default\n" ); //exp: time: default: VERBOSE:blue:default + break; case __LINE__: trice("fatal:magenta+b:red\n" ); //exp: time: default: fatal:magenta+b:red + break; case __LINE__: trice("critical:red+i:default+h\n" ); //exp: time: default: critical:red+i:default+h + break; case __LINE__: trice("emergency:red+i:blue\n" ); //exp: time: default: emergency:red+i:blue + break; case __LINE__: trice("error:11:red\n" ); //exp: time: default: error:11:red + break; case __LINE__: trice("warning:11+i:red\n" ); //exp: time: default: warning:11+i:red + break; case __LINE__: trice("attention:11:green\n" ); //exp: time: default: attention:11:green + break; case __LINE__: trice("info:cyan+b:default+h\n" ); //exp: time: default: info:cyan+b:default+h + break; case __LINE__: trice("debug:130+i\n" ); //exp: time: default: debug:130+i + break; case __LINE__: trice("trace:default+i:default+h\n" ); //exp: time: default: trace:default+i:default+h + break; case __LINE__: trice("time:blue+i:blue+h\n" ); //exp: time: default: time:blue+i:blue+h + break; case __LINE__: trice("message:green+h:black\n" ); //exp: time: default: message:green+h:black + break; case __LINE__: trice("read:black+i:yellow+h\n" ); //exp: time: default: read:black+i:yellow+h + break; case __LINE__: trice("write:black+u:yellow+h\n" ); //exp: time: default: write:black+u:yellow+h + break; case __LINE__: trice("receive:black+h:black\n" ); //exp: time: default: receive:black+h:black + break; case __LINE__: trice("transmit:black:black+h\n" ); //exp: time: default: transmit:black:black+h + break; case __LINE__: trice("diag:yellow+i:default+h\n" ); //exp: time: default: diag:yellow+i:default+h + break; case __LINE__: trice("interrupt:magenta+i:default+h\n" ); //exp: time: default: interrupt:magenta+i:default+h + break; case __LINE__: trice("signal:118+i\n" ); //exp: time: default: signal:118+i + break; case __LINE__: trice("test:yellow+h:black\n" ); //exp: time: default: test:yellow+h:black + break; case __LINE__: trice("default:off\n" ); //exp: time: default: default:off + break; case __LINE__: trice("notice:blue:white+h\n" ); //exp: time: default: notice:blue:white+h + break; case __LINE__: trice("alert:magenta:magenta+h\n" ); //exp: time: default: alert:magenta:magenta+h + break; case __LINE__: trice("assert:yellow+i:blue\n" ); //exp: time: default: assert:yellow+i:blue + break; case __LINE__: trice("alarm:red+i:white+h\n" ); //exp: time: default: alarm:red+i:white+h + break; case __LINE__: trice("verbose:blue:default\n" ); //exp: time: default: verbose:blue:default +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: TRICE(Id(0), "FATAL:magenta+b:red\n" ); //exp: time: be16default: FATAL:magenta+b:red + break; case __LINE__: TRICE(Id(0), "CRITICAL:red+i:default+h\n" ); //exp: time: be16default: CRITICAL:red+i:default+h + break; case __LINE__: TRICE(Id(0), "EMERGENCY:red+i:blue\n" ); //exp: time: be16default: EMERGENCY:red+i:blue + break; case __LINE__: TRICE(Id(0), "ERROR:11:red\n" ); //exp: time: be16default: ERROR:11:red + break; case __LINE__: TRICE(Id(0), "WARNING:11+i:red\n" ); //exp: time: be16default: WARNING:11+i:red + break; case __LINE__: TRICE(Id(0), "ATTENTION:11:green\n" ); //exp: time: be16default: ATTENTION:11:green + break; case __LINE__: TRICE(Id(0), "INFO:cyan+b:default+h\n" ); //exp: time: be16default: INFO:cyan+b:default+h + break; case __LINE__: TRICE(Id(0), "DEBUG:130+i\n" ); //exp: time: be16default: DEBUG:130+i + break; case __LINE__: TRICE(Id(0), "TRACE:default+i:default+h\n" ); //exp: time: be16default: TRACE:default+i:default+h + break; case __LINE__: TRICE(Id(0), "TIME:blue+i:blue+h\n" ); //exp: time: be16default: TIME:blue+i:blue+h + break; case __LINE__: TRICE(Id(0), "MESSAGE:green+h:black\n" ); //exp: time: be16default: MESSAGE:green+h:black + break; case __LINE__: TRICE(Id(0), "READ:black+i:yellow+h\n" ); //exp: time: be16default: READ:black+i:yellow+h + break; case __LINE__: TRICE(Id(0), "WRITE:black+u:yellow+h\n" ); //exp: time: be16default: WRITE:black+u:yellow+h + break; case __LINE__: TRICE(Id(0), "RECEIVE:black+h:black\n" ); //exp: time: be16default: RECEIVE:black+h:black + break; case __LINE__: TRICE(Id(0), "TRANSMIT:black:black+h\n" ); //exp: time: be16default: TRANSMIT:black:black+h + break; case __LINE__: TRICE(Id(0), "DIAG:yellow+i:default+h\n" ); //exp: time: be16default: DIAG:yellow+i:default+h + break; case __LINE__: TRICE(Id(0), "INTERRUPT:magenta+i:default+h\n" ); //exp: time: be16default: INTERRUPT:magenta+i:default+h + break; case __LINE__: TRICE(Id(0), "SIGNAL:118+i\n" ); //exp: time: be16default: SIGNAL:118+i + break; case __LINE__: TRICE(Id(0), "TEST:yellow+h:black\n" ); //exp: time: be16default: TEST:yellow+h:black + break; case __LINE__: TRICE(Id(0), "DEFAULT:off\n" ); //exp: time: be16default: DEFAULT:off + break; case __LINE__: TRICE(Id(0), "NOTICE:blue:white+h\n" ); //exp: time: be16default: NOTICE:blue:white+h + break; case __LINE__: TRICE(Id(0), "ALERT:magenta:magenta+h\n" ); //exp: time: be16default: ALERT:magenta:magenta+h + break; case __LINE__: TRICE(Id(0), "ASSERT:yellow+i:blue\n" ); //exp: time: be16default: ASSERT:yellow+i:blue + break; case __LINE__: TRICE(Id(0), "ALARM:red+i:white+h\n" ); //exp: time: be16default: ALARM:red+i:white+h + break; case __LINE__: TRICE(Id(0), "VERBOSE:blue:default\n" ); //exp: time: be16default: VERBOSE:blue:default + break; case __LINE__: TRICE(Id(0), "fatal:magenta+b:red\n" ); //exp: time: be16default: fatal:magenta+b:red + break; case __LINE__: TRICE(Id(0), "critical:red+i:default+h\n" ); //exp: time: be16default: critical:red+i:default+h + break; case __LINE__: TRICE(Id(0), "emergency:red+i:blue\n" ); //exp: time: be16default: emergency:red+i:blue + break; case __LINE__: TRICE(Id(0), "error:11:red\n" ); //exp: time: be16default: error:11:red + break; case __LINE__: TRICE(Id(0), "warning:11+i:red\n" ); //exp: time: be16default: warning:11+i:red + break; case __LINE__: TRICE(Id(0), "attention:11:green\n" ); //exp: time: be16default: attention:11:green + break; case __LINE__: TRICE(Id(0), "info:cyan+b:default+h\n" ); //exp: time: be16default: info:cyan+b:default+h + break; case __LINE__: TRICE(Id(0), "debug:130+i\n" ); //exp: time: be16default: debug:130+i + break; case __LINE__: TRICE(Id(0), "trace:default+i:default+h\n" ); //exp: time: be16default: trace:default+i:default+h + break; case __LINE__: TRICE(Id(0), "time:blue+i:blue+h\n" ); //exp: time: be16default: time:blue+i:blue+h + break; case __LINE__: TRICE(Id(0), "message:green+h:black\n" ); //exp: time: be16default: message:green+h:black + break; case __LINE__: TRICE(Id(0), "read:black+i:yellow+h\n" ); //exp: time: be16default: read:black+i:yellow+h + break; case __LINE__: TRICE(Id(0), "write:black+u:yellow+h\n" ); //exp: time: be16default: write:black+u:yellow+h + break; case __LINE__: TRICE(Id(0), "receive:black+h:black\n" ); //exp: time: be16default: receive:black+h:black + break; case __LINE__: TRICE(Id(0), "transmit:black:black+h\n" ); //exp: time: be16default: transmit:black:black+h + break; case __LINE__: TRICE(Id(0), "diag:yellow+i:default+h\n" ); //exp: time: be16default: diag:yellow+i:default+h + break; case __LINE__: TRICE(Id(0), "interrupt:magenta+i:default+h\n" ); //exp: time: be16default: interrupt:magenta+i:default+h + break; case __LINE__: TRICE(Id(0), "signal:118+i\n" ); //exp: time: be16default: signal:118+i + break; case __LINE__: TRICE(Id(0), "test:yellow+h:black\n" ); //exp: time: be16default: test:yellow+h:black + break; case __LINE__: TRICE(Id(0), "default:off\n" ); //exp: time: be16default: default:off + break; case __LINE__: TRICE(Id(0), "notice:blue:white+h\n" ); //exp: time: be16default: notice:blue:white+h + break; case __LINE__: TRICE(Id(0), "alert:magenta:magenta+h\n" ); //exp: time: be16default: alert:magenta:magenta+h + break; case __LINE__: TRICE(Id(0), "assert:yellow+i:blue\n" ); //exp: time: be16default: assert:yellow+i:blue + break; case __LINE__: TRICE(Id(0), "alarm:red+i:white+h\n" ); //exp: time: be16default: alarm:red+i:white+h + break; case __LINE__: TRICE(Id(0), "verbose:blue:default\n" ); //exp: time: be16default: verbose:blue:default + + break; case __LINE__: Trice("FATAL:magenta+b:red\n" ); //exp: time: be16default: FATAL:magenta+b:red + break; case __LINE__: Trice("CRITICAL:red+i:default+h\n" ); //exp: time: be16default: CRITICAL:red+i:default+h + break; case __LINE__: Trice("EMERGENCY:red+i:blue\n" ); //exp: time: be16default: EMERGENCY:red+i:blue + break; case __LINE__: Trice("ERROR:11:red\n" ); //exp: time: be16default: ERROR:11:red + break; case __LINE__: Trice("WARNING:11+i:red\n" ); //exp: time: be16default: WARNING:11+i:red + break; case __LINE__: Trice("ATTENTION:11:green\n" ); //exp: time: be16default: ATTENTION:11:green + break; case __LINE__: Trice("INFO:cyan+b:default+h\n" ); //exp: time: be16default: INFO:cyan+b:default+h + break; case __LINE__: Trice("DEBUG:130+i\n" ); //exp: time: be16default: DEBUG:130+i + break; case __LINE__: Trice("TRACE:default+i:default+h\n" ); //exp: time: be16default: TRACE:default+i:default+h + break; case __LINE__: Trice("TIME:blue+i:blue+h\n" ); //exp: time: be16default: TIME:blue+i:blue+h + break; case __LINE__: Trice("MESSAGE:green+h:black\n" ); //exp: time: be16default: MESSAGE:green+h:black + break; case __LINE__: Trice("READ:black+i:yellow+h\n" ); //exp: time: be16default: READ:black+i:yellow+h + break; case __LINE__: Trice("WRITE:black+u:yellow+h\n" ); //exp: time: be16default: WRITE:black+u:yellow+h + break; case __LINE__: Trice("RECEIVE:black+h:black\n" ); //exp: time: be16default: RECEIVE:black+h:black + break; case __LINE__: Trice("TRANSMIT:black:black+h\n" ); //exp: time: be16default: TRANSMIT:black:black+h + break; case __LINE__: Trice("DIAG:yellow+i:default+h\n" ); //exp: time: be16default: DIAG:yellow+i:default+h + break; case __LINE__: Trice("INTERRUPT:magenta+i:default+h\n" ); //exp: time: be16default: INTERRUPT:magenta+i:default+h + break; case __LINE__: Trice("SIGNAL:118+i\n" ); //exp: time: be16default: SIGNAL:118+i + break; case __LINE__: Trice("TEST:yellow+h:black\n" ); //exp: time: be16default: TEST:yellow+h:black + break; case __LINE__: Trice("DEFAULT:off\n" ); //exp: time: be16default: DEFAULT:off + break; case __LINE__: Trice("NOTICE:blue:white+h\n" ); //exp: time: be16default: NOTICE:blue:white+h + break; case __LINE__: Trice("ALERT:magenta:magenta+h\n" ); //exp: time: be16default: ALERT:magenta:magenta+h + break; case __LINE__: Trice("ASSERT:yellow+i:blue\n" ); //exp: time: be16default: ASSERT:yellow+i:blue + break; case __LINE__: Trice("ALARM:red+i:white+h\n" ); //exp: time: be16default: ALARM:red+i:white+h + break; case __LINE__: Trice("VERBOSE:blue:default\n" ); //exp: time: be16default: VERBOSE:blue:default + break; case __LINE__: Trice("fatal:magenta+b:red\n" ); //exp: time: be16default: fatal:magenta+b:red + break; case __LINE__: Trice("critical:red+i:default+h\n" ); //exp: time: be16default: critical:red+i:default+h + break; case __LINE__: Trice("emergency:red+i:blue\n" ); //exp: time: be16default: emergency:red+i:blue + break; case __LINE__: Trice("error:11:red\n" ); //exp: time: be16default: error:11:red + break; case __LINE__: Trice("warning:11+i:red\n" ); //exp: time: be16default: warning:11+i:red + break; case __LINE__: Trice("attention:11:green\n" ); //exp: time: be16default: attention:11:green + break; case __LINE__: Trice("info:cyan+b:default+h\n" ); //exp: time: be16default: info:cyan+b:default+h + break; case __LINE__: Trice("debug:130+i\n" ); //exp: time: be16default: debug:130+i + break; case __LINE__: Trice("trace:default+i:default+h\n" ); //exp: time: be16default: trace:default+i:default+h + break; case __LINE__: Trice("time:blue+i:blue+h\n" ); //exp: time: be16default: time:blue+i:blue+h + break; case __LINE__: Trice("message:green+h:black\n" ); //exp: time: be16default: message:green+h:black + break; case __LINE__: Trice("read:black+i:yellow+h\n" ); //exp: time: be16default: read:black+i:yellow+h + break; case __LINE__: Trice("write:black+u:yellow+h\n" ); //exp: time: be16default: write:black+u:yellow+h + break; case __LINE__: Trice("receive:black+h:black\n" ); //exp: time: be16default: receive:black+h:black + break; case __LINE__: Trice("transmit:black:black+h\n" ); //exp: time: be16default: transmit:black:black+h + break; case __LINE__: Trice("diag:yellow+i:default+h\n" ); //exp: time: be16default: diag:yellow+i:default+h + break; case __LINE__: Trice("interrupt:magenta+i:default+h\n" ); //exp: time: be16default: interrupt:magenta+i:default+h + break; case __LINE__: Trice("signal:118+i\n" ); //exp: time: be16default: signal:118+i + break; case __LINE__: Trice("test:yellow+h:black\n" ); //exp: time: be16default: test:yellow+h:black + break; case __LINE__: Trice("default:off\n" ); //exp: time: be16default: default:off + break; case __LINE__: Trice("notice:blue:white+h\n" ); //exp: time: be16default: notice:blue:white+h + break; case __LINE__: Trice("alert:magenta:magenta+h\n" ); //exp: time: be16default: alert:magenta:magenta+h + break; case __LINE__: Trice("assert:yellow+i:blue\n" ); //exp: time: be16default: assert:yellow+i:blue + break; case __LINE__: Trice("alarm:red+i:white+h\n" ); //exp: time: be16default: alarm:red+i:white+h + break; case __LINE__: Trice("verbose:blue:default\n" ); //exp: time: be16default: verbose:blue:default + + break; case __LINE__: TRICE(ID(0), "FATAL:magenta+b:red\n" ); //exp: time:feed3322default: FATAL:magenta+b:red + break; case __LINE__: TRICE(ID(0), "CRITICAL:red+i:default+h\n" ); //exp: time:feed3322default: CRITICAL:red+i:default+h + break; case __LINE__: TRICE(ID(0), "EMERGENCY:red+i:blue\n" ); //exp: time:feed3322default: EMERGENCY:red+i:blue + break; case __LINE__: TRICE(ID(0), "ERROR:11:red\n" ); //exp: time:feed3322default: ERROR:11:red + break; case __LINE__: TRICE(ID(0), "WARNING:11+i:red\n" ); //exp: time:feed3322default: WARNING:11+i:red + break; case __LINE__: TRICE(ID(0), "ATTENTION:11:green\n" ); //exp: time:feed3322default: ATTENTION:11:green + break; case __LINE__: TRICE(ID(0), "INFO:cyan+b:default+h\n" ); //exp: time:feed3322default: INFO:cyan+b:default+h + break; case __LINE__: TRICE(ID(0), "DEBUG:130+i\n" ); //exp: time:feed3322default: DEBUG:130+i + break; case __LINE__: TRICE(ID(0), "TRACE:default+i:default+h\n" ); //exp: time:feed3322default: TRACE:default+i:default+h + break; case __LINE__: TRICE(ID(0), "TIME:blue+i:blue+h\n" ); //exp: time:feed3322default: TIME:blue+i:blue+h + break; case __LINE__: TRICE(ID(0), "MESSAGE:green+h:black\n" ); //exp: time:feed3322default: MESSAGE:green+h:black + break; case __LINE__: TRICE(ID(0), "READ:black+i:yellow+h\n" ); //exp: time:feed3322default: READ:black+i:yellow+h + break; case __LINE__: TRICE(ID(0), "WRITE:black+u:yellow+h\n" ); //exp: time:feed3322default: WRITE:black+u:yellow+h + break; case __LINE__: TRICE(ID(0), "RECEIVE:black+h:black\n" ); //exp: time:feed3322default: RECEIVE:black+h:black + break; case __LINE__: TRICE(ID(0), "TRANSMIT:black:black+h\n" ); //exp: time:feed3322default: TRANSMIT:black:black+h + break; case __LINE__: TRICE(ID(0), "DIAG:yellow+i:default+h\n" ); //exp: time:feed3322default: DIAG:yellow+i:default+h + break; case __LINE__: TRICE(ID(0), "INTERRUPT:magenta+i:default+h\n" ); //exp: time:feed3322default: INTERRUPT:magenta+i:default+h + break; case __LINE__: TRICE(ID(0), "SIGNAL:118+i\n" ); //exp: time:feed3322default: SIGNAL:118+i + break; case __LINE__: TRICE(ID(0), "TEST:yellow+h:black\n" ); //exp: time:feed3322default: TEST:yellow+h:black + break; case __LINE__: TRICE(ID(0), "DEFAULT:off\n" ); //exp: time:feed3322default: DEFAULT:off + break; case __LINE__: TRICE(ID(0), "NOTICE:blue:white+h\n" ); //exp: time:feed3322default: NOTICE:blue:white+h + break; case __LINE__: TRICE(ID(0), "ALERT:magenta:magenta+h\n" ); //exp: time:feed3322default: ALERT:magenta:magenta+h + break; case __LINE__: TRICE(ID(0), "ASSERT:yellow+i:blue\n" ); //exp: time:feed3322default: ASSERT:yellow+i:blue + break; case __LINE__: TRICE(ID(0), "ALARM:red+i:white+h\n" ); //exp: time:feed3322default: ALARM:red+i:white+h + break; case __LINE__: TRICE(ID(0), "VERBOSE:blue:default\n" ); //exp: time:feed3322default: VERBOSE:blue:default + break; case __LINE__: TRICE(ID(0), "fatal:magenta+b:red\n" ); //exp: time:feed3322default: fatal:magenta+b:red + break; case __LINE__: TRICE(ID(0), "critical:red+i:default+h\n" ); //exp: time:feed3322default: critical:red+i:default+h + break; case __LINE__: TRICE(ID(0), "emergency:red+i:blue\n" ); //exp: time:feed3322default: emergency:red+i:blue + break; case __LINE__: TRICE(ID(0), "error:11:red\n" ); //exp: time:feed3322default: error:11:red + break; case __LINE__: TRICE(ID(0), "warning:11+i:red\n" ); //exp: time:feed3322default: warning:11+i:red + break; case __LINE__: TRICE(ID(0), "attention:11:green\n" ); //exp: time:feed3322default: attention:11:green + break; case __LINE__: TRICE(ID(0), "info:cyan+b:default+h\n" ); //exp: time:feed3322default: info:cyan+b:default+h + break; case __LINE__: TRICE(ID(0), "debug:130+i\n" ); //exp: time:feed3322default: debug:130+i + break; case __LINE__: TRICE(ID(0), "trace:default+i:default+h\n" ); //exp: time:feed3322default: trace:default+i:default+h + break; case __LINE__: TRICE(ID(0), "time:blue+i:blue+h\n" ); //exp: time:feed3322default: time:blue+i:blue+h + break; case __LINE__: TRICE(ID(0), "message:green+h:black\n" ); //exp: time:feed3322default: message:green+h:black + break; case __LINE__: TRICE(ID(0), "read:black+i:yellow+h\n" ); //exp: time:feed3322default: read:black+i:yellow+h + break; case __LINE__: TRICE(ID(0), "write:black+u:yellow+h\n" ); //exp: time:feed3322default: write:black+u:yellow+h + break; case __LINE__: TRICE(ID(0), "receive:black+h:black\n" ); //exp: time:feed3322default: receive:black+h:black + break; case __LINE__: TRICE(ID(0), "transmit:black:black+h\n" ); //exp: time:feed3322default: transmit:black:black+h + break; case __LINE__: TRICE(ID(0), "diag:yellow+i:default+h\n" ); //exp: time:feed3322default: diag:yellow+i:default+h + break; case __LINE__: TRICE(ID(0), "interrupt:magenta+i:default+h\n" ); //exp: time:feed3322default: interrupt:magenta+i:default+h + break; case __LINE__: TRICE(ID(0), "signal:118+i\n" ); //exp: time:feed3322default: signal:118+i + break; case __LINE__: TRICE(ID(0), "test:yellow+h:black\n" ); //exp: time:feed3322default: test:yellow+h:black + break; case __LINE__: TRICE(ID(0), "default:off\n" ); //exp: time:feed3322default: default:off + break; case __LINE__: TRICE(ID(0), "notice:blue:white+h\n" ); //exp: time:feed3322default: notice:blue:white+h + break; case __LINE__: TRICE(ID(0), "alert:magenta:magenta+h\n" ); //exp: time:feed3322default: alert:magenta:magenta+h + break; case __LINE__: TRICE(ID(0), "assert:yellow+i:blue\n" ); //exp: time:feed3322default: assert:yellow+i:blue + break; case __LINE__: TRICE(ID(0), "alarm:red+i:white+h\n" ); //exp: time:feed3322default: alarm:red+i:white+h + break; case __LINE__: TRICE(ID(0), "verbose:blue:default\n" ); //exp: time:feed3322default: verbose:blue:default - break; case __LINE__: TRice(iD(14834), "FATAL:magenta+b:red\n" ); //exp: time:feed3322default: FATAL:magenta+b:red - break; case __LINE__: TRice(iD(14835), "CRITICAL:red+i:default+h\n" ); //exp: time:feed3322default: CRITICAL:red+i:default+h - break; case __LINE__: TRice(iD(14836), "EMERGENCY:red+i:blue\n" ); //exp: time:feed3322default: EMERGENCY:red+i:blue - break; case __LINE__: TRice(iD(14837), "ERROR:11:red\n" ); //exp: time:feed3322default: ERROR:11:red - break; case __LINE__: TRice(iD(14838), "WARNING:11+i:red\n" ); //exp: time:feed3322default: WARNING:11+i:red - break; case __LINE__: TRice(iD(14839), "ATTENTION:11:green\n" ); //exp: time:feed3322default: ATTENTION:11:green - break; case __LINE__: TRice(iD(14840), "INFO:cyan+b:default+h\n" ); //exp: time:feed3322default: INFO:cyan+b:default+h - break; case __LINE__: TRice(iD(14841), "DEBUG:130+i\n" ); //exp: time:feed3322default: DEBUG:130+i - break; case __LINE__: TRice(iD(14842), "TRACE:default+i:default+h\n" ); //exp: time:feed3322default: TRACE:default+i:default+h - break; case __LINE__: TRice(iD(14843), "TIME:blue+i:blue+h\n" ); //exp: time:feed3322default: TIME:blue+i:blue+h - break; case __LINE__: TRice(iD(14844), "MESSAGE:green+h:black\n" ); //exp: time:feed3322default: MESSAGE:green+h:black - break; case __LINE__: TRice(iD(14845), "READ:black+i:yellow+h\n" ); //exp: time:feed3322default: READ:black+i:yellow+h - break; case __LINE__: TRice(iD(14846), "WRITE:black+u:yellow+h\n" ); //exp: time:feed3322default: WRITE:black+u:yellow+h - break; case __LINE__: TRice(iD(14847), "RECEIVE:black+h:black\n" ); //exp: time:feed3322default: RECEIVE:black+h:black - break; case __LINE__: TRice(iD(14848), "TRANSMIT:black:black+h\n" ); //exp: time:feed3322default: TRANSMIT:black:black+h - break; case __LINE__: TRice(iD(14849), "DIAG:yellow+i:default+h\n" ); //exp: time:feed3322default: DIAG:yellow+i:default+h - break; case __LINE__: TRice(iD(14850), "INTERRUPT:magenta+i:default+h\n" ); //exp: time:feed3322default: INTERRUPT:magenta+i:default+h - break; case __LINE__: TRice(iD(14851), "SIGNAL:118+i\n" ); //exp: time:feed3322default: SIGNAL:118+i - break; case __LINE__: TRice(iD(14852), "TEST:yellow+h:black\n" ); //exp: time:feed3322default: TEST:yellow+h:black - break; case __LINE__: TRice(iD(14853), "DEFAULT:off\n" ); //exp: time:feed3322default: DEFAULT:off - break; case __LINE__: TRice(iD(14854), "NOTICE:blue:white+h\n" ); //exp: time:feed3322default: NOTICE:blue:white+h - break; case __LINE__: TRice(iD(14855), "ALERT:magenta:magenta+h\n" ); //exp: time:feed3322default: ALERT:magenta:magenta+h - break; case __LINE__: TRice(iD(14856), "ASSERT:yellow+i:blue\n" ); //exp: time:feed3322default: ASSERT:yellow+i:blue - break; case __LINE__: TRice(iD(14857), "ALARM:red+i:white+h\n" ); //exp: time:feed3322default: ALARM:red+i:white+h - break; case __LINE__: TRice(iD(14858), "CYCLE:blue+i:default+h\n" ); //exp: time:feed3322default: CYCLE:blue+i:default+h - break; case __LINE__: TRice(iD(14859), "VERBOSE:blue:default\n" ); //exp: time:feed3322default: VERBOSE:blue:default - break; case __LINE__: TRice(iD(14860), "fatal:magenta+b:red\n" ); //exp: time:feed3322default: fatal:magenta+b:red - break; case __LINE__: TRice(iD(14861), "critical:red+i:default+h\n" ); //exp: time:feed3322default: critical:red+i:default+h - break; case __LINE__: TRice(iD(14862), "emergency:red+i:blue\n" ); //exp: time:feed3322default: emergency:red+i:blue - break; case __LINE__: TRice(iD(14863), "error:11:red\n" ); //exp: time:feed3322default: error:11:red - break; case __LINE__: TRice(iD(14864), "warning:11+i:red\n" ); //exp: time:feed3322default: warning:11+i:red - break; case __LINE__: TRice(iD(14865), "attention:11:green\n" ); //exp: time:feed3322default: attention:11:green - break; case __LINE__: TRice(iD(14866), "info:cyan+b:default+h\n" ); //exp: time:feed3322default: info:cyan+b:default+h - break; case __LINE__: TRice(iD(14867), "debug:130+i\n" ); //exp: time:feed3322default: debug:130+i - break; case __LINE__: TRice(iD(14868), "trace:default+i:default+h\n" ); //exp: time:feed3322default: trace:default+i:default+h - break; case __LINE__: TRice(iD(14869), "time:blue+i:blue+h\n" ); //exp: time:feed3322default: time:blue+i:blue+h - break; case __LINE__: TRice(iD(14870), "message:green+h:black\n" ); //exp: time:feed3322default: message:green+h:black - break; case __LINE__: TRice(iD(14871), "read:black+i:yellow+h\n" ); //exp: time:feed3322default: read:black+i:yellow+h - break; case __LINE__: TRice(iD(14872), "write:black+u:yellow+h\n" ); //exp: time:feed3322default: write:black+u:yellow+h - break; case __LINE__: TRice(iD(14873), "receive:black+h:black\n" ); //exp: time:feed3322default: receive:black+h:black - break; case __LINE__: TRice(iD(14874), "transmit:black:black+h\n" ); //exp: time:feed3322default: transmit:black:black+h - break; case __LINE__: TRice(iD(14875), "diag:yellow+i:default+h\n" ); //exp: time:feed3322default: diag:yellow+i:default+h - break; case __LINE__: TRice(iD(14876), "interrupt:magenta+i:default+h\n" ); //exp: time:feed3322default: interrupt:magenta+i:default+h - break; case __LINE__: TRice(iD(14877), "signal:118+i\n" ); //exp: time:feed3322default: signal:118+i - break; case __LINE__: TRice(iD(14878), "test:yellow+h:black\n" ); //exp: time:feed3322default: test:yellow+h:black - break; case __LINE__: TRice(iD(14879), "default:off\n" ); //exp: time:feed3322default: default:off - break; case __LINE__: TRice(iD(14880), "notice:blue:white+h\n" ); //exp: time:feed3322default: notice:blue:white+h - break; case __LINE__: TRice(iD(14881), "alert:magenta:magenta+h\n" ); //exp: time:feed3322default: alert:magenta:magenta+h - break; case __LINE__: TRice(iD(14882), "assert:yellow+i:blue\n" ); //exp: time:feed3322default: assert:yellow+i:blue - break; case __LINE__: TRice(iD(14883), "alarm:red+i:white+h\n" ); //exp: time:feed3322default: alarm:red+i:white+h - break; case __LINE__: TRice(iD(14884), "cycle:blue+i:default+h\n" ); //exp: time:feed3322default: cycle:blue+i:default+h - break; case __LINE__: TRice(iD(14885), "verbose:blue:default\n" ); //exp: time:feed3322default: verbose:blue:default - + break; case __LINE__: TRice("FATAL:magenta+b:red\n" ); //exp: time:feed3322default: FATAL:magenta+b:red + break; case __LINE__: TRice("CRITICAL:red+i:default+h\n" ); //exp: time:feed3322default: CRITICAL:red+i:default+h + break; case __LINE__: TRice("EMERGENCY:red+i:blue\n" ); //exp: time:feed3322default: EMERGENCY:red+i:blue + break; case __LINE__: TRice("ERROR:11:red\n" ); //exp: time:feed3322default: ERROR:11:red + break; case __LINE__: TRice("WARNING:11+i:red\n" ); //exp: time:feed3322default: WARNING:11+i:red + break; case __LINE__: TRice("ATTENTION:11:green\n" ); //exp: time:feed3322default: ATTENTION:11:green + break; case __LINE__: TRice("INFO:cyan+b:default+h\n" ); //exp: time:feed3322default: INFO:cyan+b:default+h + break; case __LINE__: TRice("DEBUG:130+i\n" ); //exp: time:feed3322default: DEBUG:130+i + break; case __LINE__: TRice("TRACE:default+i:default+h\n" ); //exp: time:feed3322default: TRACE:default+i:default+h + break; case __LINE__: TRice("TIME:blue+i:blue+h\n" ); //exp: time:feed3322default: TIME:blue+i:blue+h + break; case __LINE__: TRice("MESSAGE:green+h:black\n" ); //exp: time:feed3322default: MESSAGE:green+h:black + break; case __LINE__: TRice("READ:black+i:yellow+h\n" ); //exp: time:feed3322default: READ:black+i:yellow+h + break; case __LINE__: TRice("WRITE:black+u:yellow+h\n" ); //exp: time:feed3322default: WRITE:black+u:yellow+h + break; case __LINE__: TRice("RECEIVE:black+h:black\n" ); //exp: time:feed3322default: RECEIVE:black+h:black + break; case __LINE__: TRice("TRANSMIT:black:black+h\n" ); //exp: time:feed3322default: TRANSMIT:black:black+h + break; case __LINE__: TRice("DIAG:yellow+i:default+h\n" ); //exp: time:feed3322default: DIAG:yellow+i:default+h + break; case __LINE__: TRice("INTERRUPT:magenta+i:default+h\n" ); //exp: time:feed3322default: INTERRUPT:magenta+i:default+h + break; case __LINE__: TRice("SIGNAL:118+i\n" ); //exp: time:feed3322default: SIGNAL:118+i + break; case __LINE__: TRice("TEST:yellow+h:black\n" ); //exp: time:feed3322default: TEST:yellow+h:black + break; case __LINE__: TRice("DEFAULT:off\n" ); //exp: time:feed3322default: DEFAULT:off + break; case __LINE__: TRice("NOTICE:blue:white+h\n" ); //exp: time:feed3322default: NOTICE:blue:white+h + break; case __LINE__: TRice("ALERT:magenta:magenta+h\n" ); //exp: time:feed3322default: ALERT:magenta:magenta+h + break; case __LINE__: TRice("ASSERT:yellow+i:blue\n" ); //exp: time:feed3322default: ASSERT:yellow+i:blue + break; case __LINE__: TRice("ALARM:red+i:white+h\n" ); //exp: time:feed3322default: ALARM:red+i:white+h + break; case __LINE__: TRice("VERBOSE:blue:default\n" ); //exp: time:feed3322default: VERBOSE:blue:default + break; case __LINE__: TRice("fatal:magenta+b:red\n" ); //exp: time:feed3322default: fatal:magenta+b:red + break; case __LINE__: TRice("critical:red+i:default+h\n" ); //exp: time:feed3322default: critical:red+i:default+h + break; case __LINE__: TRice("emergency:red+i:blue\n" ); //exp: time:feed3322default: emergency:red+i:blue + break; case __LINE__: TRice("error:11:red\n" ); //exp: time:feed3322default: error:11:red + break; case __LINE__: TRice("warning:11+i:red\n" ); //exp: time:feed3322default: warning:11+i:red + break; case __LINE__: TRice("attention:11:green\n" ); //exp: time:feed3322default: attention:11:green + break; case __LINE__: TRice("info:cyan+b:default+h\n" ); //exp: time:feed3322default: info:cyan+b:default+h + break; case __LINE__: TRice("debug:130+i\n" ); //exp: time:feed3322default: debug:130+i + break; case __LINE__: TRice("trace:default+i:default+h\n" ); //exp: time:feed3322default: trace:default+i:default+h + break; case __LINE__: TRice("time:blue+i:blue+h\n" ); //exp: time:feed3322default: time:blue+i:blue+h + break; case __LINE__: TRice("message:green+h:black\n" ); //exp: time:feed3322default: message:green+h:black + break; case __LINE__: TRice("read:black+i:yellow+h\n" ); //exp: time:feed3322default: read:black+i:yellow+h + break; case __LINE__: TRice("write:black+u:yellow+h\n" ); //exp: time:feed3322default: write:black+u:yellow+h + break; case __LINE__: TRice("receive:black+h:black\n" ); //exp: time:feed3322default: receive:black+h:black + break; case __LINE__: TRice("transmit:black:black+h\n" ); //exp: time:feed3322default: transmit:black:black+h + break; case __LINE__: TRice("diag:yellow+i:default+h\n" ); //exp: time:feed3322default: diag:yellow+i:default+h + break; case __LINE__: TRice("interrupt:magenta+i:default+h\n" ); //exp: time:feed3322default: interrupt:magenta+i:default+h + break; case __LINE__: TRice("signal:118+i\n" ); //exp: time:feed3322default: signal:118+i + break; case __LINE__: TRice("test:yellow+h:black\n" ); //exp: time:feed3322default: test:yellow+h:black + break; case __LINE__: TRice("default:off\n" ); //exp: time:feed3322default: default:off + break; case __LINE__: TRice("notice:blue:white+h\n" ); //exp: time:feed3322default: notice:blue:white+h + break; case __LINE__: TRice("alert:magenta:magenta+h\n" ); //exp: time:feed3322default: alert:magenta:magenta+h + break; case __LINE__: TRice("assert:yellow+i:blue\n" ); //exp: time:feed3322default: assert:yellow+i:blue + break; case __LINE__: TRice("alarm:red+i:white+h\n" ); //exp: time:feed3322default: alarm:red+i:white+h + break; case __LINE__: TRice("verbose:blue:default\n" ); //exp: time:feed3322default: verbose:blue:default +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) - break; case __LINE__: TRICE64(id(14886), "msg:%d (%%d)\n", -1 ); //exp: time: default: msg:-1 (%d) - - break; case __LINE__: trice(iD(14887), "sig:TRICE8 with 1 to 12 values\n" ); - - break; case __LINE__: TRICE(id(14888), "rd:TRICE %d\n", -1 ); //exp: time: default: rd:TRICE -1 - break; case __LINE__: TRICE(id(14889), "rd:TRICE %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE -1, -2 - break; case __LINE__: TRICE(id(14890), "rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE -1, -2, -3 - break; case __LINE__: TRICE(id(14891), "rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE -1, -2, -3, -4 - break; case __LINE__: TRICE(id(14892), "rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5 - break; case __LINE__: TRICE(id(14893), "rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE(id(14894), "rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE(id(14895), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE(id(14896), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE(id(14897), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE(id(14898), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE(id(14899), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE(Id(14900), "rd:TRICE %d\n", -1 ); //exp: time: be16default: rd:TRICE -1 - break; case __LINE__: TRICE(Id(14901), "rd:TRICE %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE -1, -2 - break; case __LINE__: TRICE(Id(14902), "rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE -1, -2, -3 - break; case __LINE__: TRICE(Id(14903), "rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4 - break; case __LINE__: TRICE(Id(14904), "rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5 - break; case __LINE__: TRICE(Id(14905), "rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE(Id(14906), "rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE(Id(14907), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE(Id(14908), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE(Id(14909), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE(Id(14910), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE(Id(14911), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE(ID(14912), "rd:TRICE %d\n", -1 ); //exp: time:feed3322default: rd:TRICE -1 - break; case __LINE__: TRICE(ID(14913), "rd:TRICE %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE -1, -2 - break; case __LINE__: TRICE(ID(14914), "rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3 - break; case __LINE__: TRICE(ID(14915), "rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4 - break; case __LINE__: TRICE(ID(14916), "rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5 - break; case __LINE__: TRICE(ID(14917), "rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE(ID(14918), "rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE(ID(14919), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE(ID(14920), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE(ID(14921), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE(ID(14922), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE(ID(14923), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(14924), "sig:TRICE_n with 1 to 12 values\n" ); - - break; case __LINE__: TRICE_1 (id(14925), "rd:TRICE_1 %d\n", -1 ); //exp: time: default: rd:TRICE_1 -1 - break; case __LINE__: TRICE_2 (id(14926), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE_2 -1, -2 - break; case __LINE__: TRICE_3 (id(14927), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE_3 -1, -2, -3 - break; case __LINE__: TRICE_4 (id(14928), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE_4 -1, -2, -3, -4 - break; case __LINE__: TRICE_5 (id(14929), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE_6 (id(14930), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE_7 (id(14931), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE_8 (id(14932), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE_9 (id(14933), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE_10(id(14934), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE_11(id(14935), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE_12(id(14936), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE_1 (Id(14937), "rd:TRICE_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE_1 -1 - break; case __LINE__: TRICE_2 (Id(14938), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE_2 -1, -2 - break; case __LINE__: TRICE_3 (Id(14939), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE_3 -1, -2, -3 - break; case __LINE__: TRICE_4 (Id(14940), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE_4 -1, -2, -3, -4 - break; case __LINE__: TRICE_5 (Id(14941), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE_6 (Id(14942), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE_7 (Id(14943), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE_8 (Id(14944), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE_9 (Id(14945), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE_10(Id(14946), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE_11(Id(14947), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE_12(Id(14948), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE_1 (ID(14949), "rd:TRICE_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE_1 -1 - break; case __LINE__: TRICE_2 (ID(14950), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE_2 -1, -2 - break; case __LINE__: TRICE_3 (ID(14951), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE_3 -1, -2, -3 - break; case __LINE__: TRICE_4 (ID(14952), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE_4 -1, -2, -3, -4 - break; case __LINE__: TRICE_5 (ID(14953), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE_6 (ID(14954), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE_7 (ID(14955), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE_8 (ID(14956), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE_9 (ID(14957), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE_10(ID(14958), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE_11(ID(14959), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE_12(ID(14960), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(14961), "sig:trice with 1 to 12 values\n" ); - - break; case __LINE__: trice(iD(14962), "rd:trice %d\n", -1 ); //exp: time: default: rd:trice -1 - break; case __LINE__: trice(iD(14963), "rd:trice %d, %d\n", -1, -2 ); //exp: time: default: rd:trice -1, -2 - break; case __LINE__: trice(iD(14964), "rd:trice %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice -1, -2, -3 - break; case __LINE__: trice(iD(14965), "rd:trice %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice -1, -2, -3, -4 - break; case __LINE__: trice(iD(14966), "rd:trice %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5 - break; case __LINE__: trice(iD(14967), "rd:trice %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice(iD(14968), "rd:trice %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice(iD(14969), "rd:trice %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice(iD(14970), "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice(iD(14971), "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice(iD(14972), "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice(iD(14973), "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice(iD(14974), "rd:Trice %d\n", -1 ); //exp: time: be16default: rd:Trice -1 - break; case __LINE__: Trice(iD(14975), "rd:Trice %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice -1, -2 - break; case __LINE__: Trice(iD(14976), "rd:Trice %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice -1, -2, -3 - break; case __LINE__: Trice(iD(14977), "rd:Trice %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4 - break; case __LINE__: Trice(iD(14978), "rd:Trice %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5 - break; case __LINE__: Trice(iD(14979), "rd:Trice %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice(iD(14980), "rd:Trice %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice(iD(14981), "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice(iD(14982), "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice(iD(14983), "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice(iD(14984), "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice(iD(14985), "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice(iD(14986), "rd:TRice %d\n", -1 ); //exp: time:feed3322default: rd:TRice -1 - break; case __LINE__: TRice(iD(14987), "rd:TRice %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice -1, -2 - break; case __LINE__: TRice(iD(14988), "rd:TRice %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice -1, -2, -3 - break; case __LINE__: TRice(iD(14989), "rd:TRice %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4 - break; case __LINE__: TRice(iD(14990), "rd:TRice %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5 - break; case __LINE__: TRice(iD(14991), "rd:TRice %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice(iD(14992), "rd:TRice %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice(iD(14993), "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice(iD(14994), "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice(iD(14995), "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice(iD(14996), "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice(iD(14997), "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRICE(ID(14998), "sig:trice_n with 1 to 12 values\n" ); - - break; case __LINE__: trice_1 (iD(14999), "rd:trice_1 %d\n", -1 ); //exp: time: default: rd:trice_1 -1 - break; case __LINE__: trice_2 (iD(15000), "rd:trice_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice_2 -1, -2 - break; case __LINE__: trice_3 (iD(15001), "rd:trice_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice_3 -1, -2, -3 - break; case __LINE__: trice_4 (iD(15002), "rd:trice_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice_4 -1, -2, -3, -4 - break; case __LINE__: trice_5 (iD(15003), "rd:trice_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice_5 -1, -2, -3, -4, -5 - break; case __LINE__: trice_6 (iD(15004), "rd:trice_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice_7 (iD(15005), "rd:trice_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice_8 (iD(15006), "rd:trice_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice_9 (iD(15007), "rd:trice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice_10(iD(15008), "rd:trice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice_11(iD(15009), "rd:trice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice_12(iD(15010), "rd:trice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice_1 (iD(15011), "rd:Trice_1 %d\n", -1 ); //exp: time: be16default: rd:Trice_1 -1 - break; case __LINE__: Trice_2 (iD(15012), "rd:Trice_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice_2 -1, -2 - break; case __LINE__: Trice_3 (iD(15013), "rd:Trice_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice_3 -1, -2, -3 - break; case __LINE__: Trice_4 (iD(15014), "rd:Trice_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice_4 -1, -2, -3, -4 - break; case __LINE__: Trice_5 (iD(15015), "rd:Trice_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice_5 -1, -2, -3, -4, -5 - break; case __LINE__: Trice_6 (iD(15016), "rd:Trice_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice_7 (iD(15017), "rd:Trice_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice_8 (iD(15018), "rd:Trice_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice_9 (iD(15019), "rd:Trice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice_10(iD(15020), "rd:Trice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice_11(iD(15021), "rd:Trice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice_12(iD(15022), "rd:Trice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice_1 (iD(15023), "rd:TRice_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice_1 -1 - break; case __LINE__: TRice_2 (iD(15024), "rd:TRice_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice_2 -1, -2 - break; case __LINE__: TRice_3 (iD(15025), "rd:TRice_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice_3 -1, -2, -3 - break; case __LINE__: TRice_4 (iD(15026), "rd:TRice_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice_4 -1, -2, -3, -4 - break; case __LINE__: TRice_5 (iD(15027), "rd:TRice_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRice_6 (iD(15028), "rd:TRice_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice_7 (iD(15029), "rd:TRice_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice_8 (iD(15030), "rd:TRice_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice_9 (iD(15031), "rd:TRice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice_10(iD(15032), "rd:TRice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice_11(iD(15033), "rd:TRice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice_12(iD(15034), "rd:TRice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(15035), "sig:TRICE8 with 1 to 12 values\n" ); - - break; case __LINE__: TRICE8(id(15036), "rd:TRICE8 %d\n", -1 ); //exp: time: default: rd:TRICE8 -1 - break; case __LINE__: TRICE8(id(15037), "rd:TRICE8 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE8 -1, -2 - break; case __LINE__: TRICE8(id(15038), "rd:TRICE8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE8 -1, -2, -3 - break; case __LINE__: TRICE8(id(15039), "rd:TRICE8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4 - break; case __LINE__: TRICE8(id(15040), "rd:TRICE8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE8(id(15041), "rd:TRICE8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE8(id(15042), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE8(id(15043), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE8(id(15044), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE8(id(15045), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE8(id(15046), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE8(id(15047), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE8(Id(15048), "rd:TRICE8 %d\n", -1 ); //exp: time: be16default: rd:TRICE8 -1 - break; case __LINE__: TRICE8(Id(15049), "rd:TRICE8 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE8 -1, -2 - break; case __LINE__: TRICE8(Id(15050), "rd:TRICE8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3 - break; case __LINE__: TRICE8(Id(15051), "rd:TRICE8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4 - break; case __LINE__: TRICE8(Id(15052), "rd:TRICE8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE8(Id(15053), "rd:TRICE8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE8(Id(15054), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE8(Id(15055), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE8(Id(15056), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE8(Id(15057), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE8(Id(15058), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE8(Id(15059), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE8(ID(15060), "rd:TRICE8 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE8 -1 - break; case __LINE__: TRICE8(ID(15061), "rd:TRICE8 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE8 -1, -2 - break; case __LINE__: TRICE8(ID(15062), "rd:TRICE8 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3 - break; case __LINE__: TRICE8(ID(15063), "rd:TRICE8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4 - break; case __LINE__: TRICE8(ID(15064), "rd:TRICE8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE8(ID(15065), "rd:TRICE8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE8(ID(15066), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE8(ID(15067), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE8(ID(15068), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE8(ID(15069), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE8(ID(15070), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE8(ID(15071), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(15072), "sig:TRICE8_n with 1 to 12 values\n" ); - - break; case __LINE__: TRICE8_1 (id(15073), "rd:TRICE8_1 %d\n", -1 ); //exp: time: default: rd:TRICE8_1 -1 - break; case __LINE__: TRICE8_2 (id(15074), "rd:TRICE8_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE8_2 -1, -2 - break; case __LINE__: TRICE8_3 (id(15075), "rd:TRICE8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE8_3 -1, -2, -3 - break; case __LINE__: TRICE8_4 (id(15076), "rd:TRICE8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE8_4 -1, -2, -3, -4 - break; case __LINE__: TRICE8_5 (id(15077), "rd:TRICE8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE8_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE8_6 (id(15078), "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE8_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE8_7 (id(15079), "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE8_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE8_8 (id(15080), "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE8_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE8_9 (id(15081), "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE8_10(id(15082), "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE8_11(id(15083), "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE8_12(id(15084), "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE8_1 (Id(15085), "rd:TRICE8_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE8_1 -1 - break; case __LINE__: TRICE8_2 (Id(15086), "rd:TRICE8_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE8_2 -1, -2 - break; case __LINE__: TRICE8_3 (Id(15087), "rd:TRICE8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE8_3 -1, -2, -3 - break; case __LINE__: TRICE8_4 (Id(15088), "rd:TRICE8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE8_4 -1, -2, -3, -4 - break; case __LINE__: TRICE8_5 (Id(15089), "rd:TRICE8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE8_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE8_6 (Id(15090), "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE8_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE8_7 (Id(15091), "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE8_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE8_8 (Id(15092), "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE8_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE8_9 (Id(15093), "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE8_10(Id(15094), "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE8_11(Id(15095), "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE8_12(Id(15096), "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE8_1 (ID(15097), "rd:TRICE8_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE8_1 -1 - break; case __LINE__: TRICE8_2 (ID(15098), "rd:TRICE8_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE8_2 -1, -2 - break; case __LINE__: TRICE8_3 (ID(15099), "rd:TRICE8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE8_3 -1, -2, -3 - break; case __LINE__: TRICE8_4 (ID(15100), "rd:TRICE8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE8_4 -1, -2, -3, -4 - break; case __LINE__: TRICE8_5 (ID(15101), "rd:TRICE8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE8_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE8_6 (ID(15102), "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE8_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE8_7 (ID(15103), "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE8_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE8_8 (ID(15104), "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE8_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE8_9 (ID(15105), "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE8_10(ID(15106), "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE8_11(ID(15107), "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE8_12(ID(15108), "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(15109), "sig:trice8 with 1 to 12 values\n" ); - - break; case __LINE__: trice8(iD(15110), "rd:trice8 %d\n", -1 ); //exp: time: default: rd:trice8 -1 - break; case __LINE__: trice8(iD(15111), "rd:trice8 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice8 -1, -2 - break; case __LINE__: trice8(iD(15112), "rd:trice8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice8 -1, -2, -3 - break; case __LINE__: trice8(iD(15113), "rd:trice8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice8 -1, -2, -3, -4 - break; case __LINE__: trice8(iD(15114), "rd:trice8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5 - break; case __LINE__: trice8(iD(15115), "rd:trice8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice8(iD(15116), "rd:trice8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice8(iD(15117), "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice8(iD(15118), "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice8(iD(15119), "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice8(iD(15120), "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice8(iD(15121), "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice8(iD(15122), "rd:Trice8 %d\n", -1 ); //exp: time: be16default: rd:Trice8 -1 - break; case __LINE__: Trice8(iD(15123), "rd:Trice8 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice8 -1, -2 - break; case __LINE__: Trice8(iD(15124), "rd:Trice8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice8 -1, -2, -3 - break; case __LINE__: Trice8(iD(15125), "rd:Trice8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4 - break; case __LINE__: Trice8(iD(15126), "rd:Trice8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5 - break; case __LINE__: Trice8(iD(15127), "rd:Trice8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice8(iD(15128), "rd:Trice8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice8(iD(15129), "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice8(iD(15130), "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice8(iD(15131), "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice8(iD(15132), "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice8(iD(15133), "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice8(iD(15134), "rd:TRice8 %d\n", -1 ); //exp: time:feed3322default: rd:TRice8 -1 - break; case __LINE__: TRice8(iD(15135), "rd:TRice8 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice8 -1, -2 - break; case __LINE__: TRice8(iD(15136), "rd:TRice8 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3 - break; case __LINE__: TRice8(iD(15137), "rd:TRice8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4 - break; case __LINE__: TRice8(iD(15138), "rd:TRice8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5 - break; case __LINE__: TRice8(iD(15139), "rd:TRice8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice8(iD(15140), "rd:TRice8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice8(iD(15141), "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice8(iD(15142), "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice8(iD(15143), "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice8(iD(15144), "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice8(iD(15145), "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRICE(ID(15146), "sig:trice8_n with 1 to 12 values\n" ); - - break; case __LINE__: trice8_1 (iD(15147), "rd:trice8_1 %d\n", -1 ); //exp: time: default: rd:trice8_1 -1 - break; case __LINE__: trice8_2 (iD(15148), "rd:trice8_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice8_2 -1, -2 - break; case __LINE__: trice8_3 (iD(15149), "rd:trice8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice8_3 -1, -2, -3 - break; case __LINE__: trice8_4 (iD(15150), "rd:trice8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice8_4 -1, -2, -3, -4 - break; case __LINE__: trice8_5 (iD(15151), "rd:trice8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice8_5 -1, -2, -3, -4, -5 - break; case __LINE__: trice8_6 (iD(15152), "rd:trice8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice8_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice8_7 (iD(15153), "rd:trice8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice8_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice8_8 (iD(15154), "rd:trice8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice8_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice8_9 (iD(15155), "rd:trice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice8_10(iD(15156), "rd:trice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice8_11(iD(15157), "rd:trice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice8_12(iD(15158), "rd:trice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice8_1 (iD(15159), "rd:Trice8_1 %d\n", -1 ); //exp: time: be16default: rd:Trice8_1 -1 - break; case __LINE__: Trice8_2 (iD(15160), "rd:Trice8_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice8_2 -1, -2 - break; case __LINE__: Trice8_3 (iD(15161), "rd:Trice8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice8_3 -1, -2, -3 - break; case __LINE__: Trice8_4 (iD(15162), "rd:Trice8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice8_4 -1, -2, -3, -4 - break; case __LINE__: Trice8_5 (iD(15163), "rd:Trice8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice8_5 -1, -2, -3, -4, -5 - break; case __LINE__: Trice8_6 (iD(15164), "rd:Trice8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice8_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice8_7 (iD(15165), "rd:Trice8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice8_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice8_8 (iD(15166), "rd:Trice8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice8_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice8_9 (iD(15167), "rd:Trice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice8_10(iD(15168), "rd:Trice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice8_11(iD(15169), "rd:Trice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice8_12(iD(15170), "rd:Trice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice8_1 (iD(15171), "rd:TRice8_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice8_1 -1 - break; case __LINE__: TRice8_2 (iD(15172), "rd:TRice8_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice8_2 -1, -2 - break; case __LINE__: TRice8_3 (iD(15173), "rd:TRice8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice8_3 -1, -2, -3 - break; case __LINE__: TRice8_4 (iD(15174), "rd:TRice8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice8_4 -1, -2, -3, -4 - break; case __LINE__: TRice8_5 (iD(15175), "rd:TRice8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice8_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRice8_6 (iD(15176), "rd:TRice8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice8_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice8_7 (iD(15177), "rd:TRice8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice8_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice8_8 (iD(15178), "rd:TRice8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice8_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice8_9 (iD(15179), "rd:TRice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice8_10(iD(15180), "rd:TRice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice8_11(iD(15181), "rd:TRice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice8_12(iD(15182), "rd:TRice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(15183), "sig:TRICE16 with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: TRICE16(id(15184), "rd:TRICE16 %d\n", -1 ); //exp: time: default: rd:TRICE16 -1 - break; case __LINE__: TRICE16(id(15185), "rd:TRICE16 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE16 -1, -2 - break; case __LINE__: TRICE16(id(15186), "rd:TRICE16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE16 -1, -2, -3 - break; case __LINE__: TRICE16(id(15187), "rd:TRICE16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4 - break; case __LINE__: TRICE16(id(15188), "rd:TRICE16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE16(id(15189), "rd:TRICE16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE16(id(15190), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE16(id(15191), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE16(id(15192), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE16(id(15193), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE16(id(15194), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE16(id(15195), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE16(Id(15196), "rd:TRICE16 %d\n", -1 ); //exp: time: be16default: rd:TRICE16 -1 - break; case __LINE__: TRICE16(Id(15197), "rd:TRICE16 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE16 -1, -2 - break; case __LINE__: TRICE16(Id(15198), "rd:TRICE16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3 - break; case __LINE__: TRICE16(Id(15199), "rd:TRICE16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4 - break; case __LINE__: TRICE16(Id(15200), "rd:TRICE16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE16(Id(15201), "rd:TRICE16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE16(Id(15202), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE16(Id(15203), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE16(Id(15204), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE16(Id(15205), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE16(Id(15206), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE16(Id(15207), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE16(ID(15208), "rd:TRICE16 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE16 -1 - break; case __LINE__: TRICE16(ID(15209), "rd:TRICE16 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE16 -1, -2 - break; case __LINE__: TRICE16(ID(15210), "rd:TRICE16 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3 - break; case __LINE__: TRICE16(ID(15211), "rd:TRICE16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4 - break; case __LINE__: TRICE16(ID(15212), "rd:TRICE16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE16(ID(15213), "rd:TRICE16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE16(ID(15214), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE16(ID(15215), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE16(ID(15216), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE16(ID(15217), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE16(ID(15218), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE16(ID(15219), "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15220), "sig:TRICE16_n with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: TRICE16_1 (id(15221), "rd:TRICE16_1 %d\n", -1 ); //exp: time: default: rd:TRICE16_1 -1 - break; case __LINE__: TRICE16_2 (id(15222), "rd:TRICE16_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE16_2 -1, -2 - break; case __LINE__: TRICE16_3 (id(15223), "rd:TRICE16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE16_3 -1, -2, -3 - break; case __LINE__: TRICE16_4 (id(15224), "rd:TRICE16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE16_4 -1, -2, -3, -4 - break; case __LINE__: TRICE16_5 (id(15225), "rd:TRICE16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE16_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE16_6 (id(15226), "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE16_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE16_7 (id(15227), "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE16_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE16_8 (id(15228), "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE16_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE16_9 (id(15229), "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE16_10(id(15230), "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE16_11(id(15231), "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE16_12(id(15232), "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE16_1 (Id(15233), "rd:TRICE16_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE16_1 -1 - break; case __LINE__: TRICE16_2 (Id(15234), "rd:TRICE16_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE16_2 -1, -2 - break; case __LINE__: TRICE16_3 (Id(15235), "rd:TRICE16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE16_3 -1, -2, -3 - break; case __LINE__: TRICE16_4 (Id(15236), "rd:TRICE16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE16_4 -1, -2, -3, -4 - break; case __LINE__: TRICE16_5 (Id(15237), "rd:TRICE16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE16_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE16_6 (Id(15238), "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE16_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE16_7 (Id(15239), "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE16_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE16_8 (Id(15240), "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE16_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE16_9 (Id(15241), "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE16_10(Id(15242), "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE16_11(Id(15243), "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE16_12(Id(15244), "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE16_1 (ID(15245), "rd:TRICE16_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE16_1 -1 - break; case __LINE__: TRICE16_2 (ID(15246), "rd:TRICE16_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE16_2 -1, -2 - break; case __LINE__: TRICE16_3 (ID(15247), "rd:TRICE16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE16_3 -1, -2, -3 - break; case __LINE__: TRICE16_4 (ID(15248), "rd:TRICE16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE16_4 -1, -2, -3, -4 - break; case __LINE__: TRICE16_5 (ID(15249), "rd:TRICE16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE16_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE16_6 (ID(15250), "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE16_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE16_7 (ID(15251), "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE16_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE16_8 (ID(15252), "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE16_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE16_9 (ID(15253), "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE16_10(ID(15254), "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE16_11(ID(15255), "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE16_12(ID(15256), "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice(iD(15257), "sig:trice16 with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: trice16(iD(15258), "rd:trice16 %d\n", -1 ); //exp: time: default: rd:trice16 -1 - break; case __LINE__: trice16(iD(15259), "rd:trice16 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice16 -1, -2 - break; case __LINE__: trice16(iD(15260), "rd:trice16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice16 -1, -2, -3 - break; case __LINE__: trice16(iD(15261), "rd:trice16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16 -1, -2, -3, -4 - break; case __LINE__: trice16(iD(15262), "rd:trice16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5 - break; case __LINE__: trice16(iD(15263), "rd:trice16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice16(iD(15264), "rd:trice16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice16(iD(15265), "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice16(iD(15266), "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice16(iD(15267), "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice16(iD(15268), "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice16(iD(15269), "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice16(iD(15270), "rd:Trice16 %d\n", -1 ); //exp: time: be16default: rd:Trice16 -1 - break; case __LINE__: Trice16(iD(15271), "rd:Trice16 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice16 -1, -2 - break; case __LINE__: Trice16(iD(15272), "rd:Trice16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice16 -1, -2, -3 - break; case __LINE__: Trice16(iD(15273), "rd:Trice16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4 - break; case __LINE__: Trice16(iD(15274), "rd:Trice16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5 - break; case __LINE__: Trice16(iD(15275), "rd:Trice16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice16(iD(15276), "rd:Trice16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice16(iD(15277), "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice16(iD(15278), "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice16(iD(15279), "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice16(iD(15280), "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice16(iD(15281), "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice16(iD(15282), "rd:TRice16 %d\n", -1 ); //exp: time:feed3322default: rd:TRice16 -1 - break; case __LINE__: TRice16(iD(15283), "rd:TRice16 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice16 -1, -2 - break; case __LINE__: TRice16(iD(15284), "rd:TRice16 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3 - break; case __LINE__: TRice16(iD(15285), "rd:TRice16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4 - break; case __LINE__: TRice16(iD(15286), "rd:TRice16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5 - break; case __LINE__: TRice16(iD(15287), "rd:TRice16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice16(iD(15288), "rd:TRice16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice16(iD(15289), "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice16(iD(15290), "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice16(iD(15291), "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice16(iD(15292), "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice16(iD(15293), "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15294), "sig:trice16_n with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: trice16_1 (iD(15295), "rd:trice16_1 %d\n", -1 ); //exp: time: default: rd:trice16_1 -1 - break; case __LINE__: trice16_2 (iD(15296), "rd:trice16_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice16_2 -1, -2 - break; case __LINE__: trice16_3 (iD(15297), "rd:trice16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice16_3 -1, -2, -3 - break; case __LINE__: trice16_4 (iD(15298), "rd:trice16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16_4 -1, -2, -3, -4 - break; case __LINE__: trice16_5 (iD(15299), "rd:trice16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16_5 -1, -2, -3, -4, -5 - break; case __LINE__: trice16_6 (iD(15300), "rd:trice16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice16_7 (iD(15301), "rd:trice16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice16_8 (iD(15302), "rd:trice16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice16_9 (iD(15303), "rd:trice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice16_10(iD(15304), "rd:trice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice16_11(iD(15305), "rd:trice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice16_12(iD(15306), "rd:trice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice16_1 (iD(15307), "rd:Trice16_1 %d\n", -1 ); //exp: time: be16default: rd:Trice16_1 -1 - break; case __LINE__: Trice16_2 (iD(15308), "rd:Trice16_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice16_2 -1, -2 - break; case __LINE__: Trice16_3 (iD(15309), "rd:Trice16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice16_3 -1, -2, -3 - break; case __LINE__: Trice16_4 (iD(15310), "rd:Trice16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice16_4 -1, -2, -3, -4 - break; case __LINE__: Trice16_5 (iD(15311), "rd:Trice16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice16_5 -1, -2, -3, -4, -5 - break; case __LINE__: Trice16_6 (iD(15312), "rd:Trice16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice16_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice16_7 (iD(15313), "rd:Trice16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice16_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice16_8 (iD(15314), "rd:Trice16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice16_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice16_9 (iD(15315), "rd:Trice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice16_10(iD(15316), "rd:Trice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice16_11(iD(15317), "rd:Trice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice16_12(iD(15318), "rd:Trice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice16_1 (iD(15319), "rd:TRice16_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice16_1 -1 - break; case __LINE__: TRice16_2 (iD(15320), "rd:TRice16_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice16_2 -1, -2 - break; case __LINE__: TRice16_3 (iD(15321), "rd:TRice16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice16_3 -1, -2, -3 - break; case __LINE__: TRice16_4 (iD(15322), "rd:TRice16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice16_4 -1, -2, -3, -4 - break; case __LINE__: TRice16_5 (iD(15323), "rd:TRice16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice16_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRice16_6 (iD(15324), "rd:TRice16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice16_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice16_7 (iD(15325), "rd:TRice16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice16_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice16_8 (iD(15326), "rd:TRice16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice16_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice16_9 (iD(15327), "rd:TRice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice16_10(iD(15328), "rd:TRice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice16_11(iD(15329), "rd:TRice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice16_12(iD(15330), "rd:TRice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15331), "sig:TRICE32 with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: TRICE32(id(15332), "rd:TRICE32 %d\n", -1 ); //exp: time: default: rd:TRICE32 -1 - break; case __LINE__: TRICE32(id(15333), "rd:TRICE32 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE32 -1, -2 - break; case __LINE__: TRICE32(id(15334), "rd:TRICE32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE32 -1, -2, -3 - break; case __LINE__: TRICE32(id(15335), "rd:TRICE32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4 - break; case __LINE__: TRICE32(id(15336), "rd:TRICE32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE32(id(15337), "rd:TRICE32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE32(id(15338), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE32(id(15339), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE32(id(15340), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE32(id(15341), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE32(id(15342), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE32(id(15343), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE32(Id(15344), "rd:TRICE32 %d\n", -1 ); //exp: time: be16default: rd:TRICE32 -1 - break; case __LINE__: TRICE32(Id(15345), "rd:TRICE32 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE32 -1, -2 - break; case __LINE__: TRICE32(Id(15346), "rd:TRICE32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3 - break; case __LINE__: TRICE32(Id(15347), "rd:TRICE32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4 - break; case __LINE__: TRICE32(Id(15348), "rd:TRICE32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE32(Id(15349), "rd:TRICE32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE32(Id(15350), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE32(Id(15351), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE32(Id(15352), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE32(Id(15353), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE32(Id(15354), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE32(Id(15355), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE32(ID(15356), "rd:TRICE32 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE32 -1 - break; case __LINE__: TRICE32(ID(15357), "rd:TRICE32 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE32 -1, -2 - break; case __LINE__: TRICE32(ID(15358), "rd:TRICE32 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3 - break; case __LINE__: TRICE32(ID(15359), "rd:TRICE32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4 - break; case __LINE__: TRICE32(ID(15360), "rd:TRICE32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE32(ID(15361), "rd:TRICE32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE32(ID(15362), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE32(ID(15363), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE32(ID(15364), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE32(ID(15365), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE32(ID(15366), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE32(ID(15367), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15368), "signal:TRICE32_n with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: TRICE32_1 (id(15369), "rd:TRICE32_1 %d\n", -1 ); //exp: time: default: rd:TRICE32_1 -1 - break; case __LINE__: TRICE32_2 (id(15370), "rd:TRICE32_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE32_2 -1, -2 - break; case __LINE__: TRICE32_3 (id(15371), "rd:TRICE32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE32_3 -1, -2, -3 - break; case __LINE__: TRICE32_4 (id(15372), "rd:TRICE32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE32_4 -1, -2, -3, -4 - break; case __LINE__: TRICE32_5 (id(15373), "rd:TRICE32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE32_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE32_6 (id(15374), "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE32_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE32_7 (id(15375), "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE32_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE32_8 (id(15376), "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE32_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE32_9 (id(15377), "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE32_10(id(15378), "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE32_11(id(15379), "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE32_12(id(15380), "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE32_1 (Id(15381), "rd:TRICE32_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE32_1 -1 - break; case __LINE__: TRICE32_2 (Id(15382), "rd:TRICE32_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE32_2 -1, -2 - break; case __LINE__: TRICE32_3 (Id(15383), "rd:TRICE32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE32_3 -1, -2, -3 - break; case __LINE__: TRICE32_4 (Id(15384), "rd:TRICE32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE32_4 -1, -2, -3, -4 - break; case __LINE__: TRICE32_5 (Id(15385), "rd:TRICE32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE32_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE32_6 (Id(15386), "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE32_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE32_7 (Id(15387), "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE32_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE32_8 (Id(15388), "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE32_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE32_9 (Id(15389), "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE32_10(Id(15390), "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE32_11(Id(15391), "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE32_12(Id(15392), "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE32_1 (ID(15393), "rd:TRICE32_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE32_1 -1 - break; case __LINE__: TRICE32_2 (ID(15394), "rd:TRICE32_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE32_2 -1, -2 - break; case __LINE__: TRICE32_3 (ID(15395), "rd:TRICE32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE32_3 -1, -2, -3 - break; case __LINE__: TRICE32_4 (ID(15396), "rd:TRICE32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE32_4 -1, -2, -3, -4 - break; case __LINE__: TRICE32_5 (ID(15397), "rd:TRICE32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE32_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE32_6 (ID(15398), "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE32_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE32_7 (ID(15399), "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE32_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE32_8 (ID(15400), "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE32_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE32_9 (ID(15401), "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE32_10(ID(15402), "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE32_11(ID(15403), "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE32_12(ID(15404), "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15405), "sig:trice32 with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: trice32(iD(15406), "rd:trice32 %d\n", -1 ); //exp: time: default: rd:trice32 -1 - break; case __LINE__: trice32(iD(15407), "rd:trice32 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice32 -1, -2 - break; case __LINE__: trice32(iD(15408), "rd:trice32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice32 -1, -2, -3 - break; case __LINE__: trice32(iD(15409), "rd:trice32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice32 -1, -2, -3, -4 - break; case __LINE__: trice32(iD(15410), "rd:trice32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5 - break; case __LINE__: trice32(iD(15411), "rd:trice32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice32(iD(15412), "rd:trice32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice32(iD(15413), "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice32(iD(15414), "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice32(iD(15415), "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice32(iD(15416), "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice32(iD(15417), "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice32(iD(15418), "rd:Trice32 %d\n", -1 ); //exp: time: be16default: rd:Trice32 -1 - break; case __LINE__: Trice32(iD(15419), "rd:Trice32 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice32 -1, -2 - break; case __LINE__: Trice32(iD(15420), "rd:Trice32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice32 -1, -2, -3 - break; case __LINE__: Trice32(iD(15421), "rd:Trice32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4 - break; case __LINE__: Trice32(iD(15422), "rd:Trice32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5 - break; case __LINE__: Trice32(iD(15423), "rd:Trice32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice32(iD(15424), "rd:Trice32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice32(iD(15425), "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice32(iD(15426), "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice32(iD(15427), "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice32(iD(15428), "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice32(iD(15429), "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice32(iD(15430), "rd:TRice32 %d\n", -1 ); //exp: time:feed3322default: rd:TRice32 -1 - break; case __LINE__: TRice32(iD(15431), "rd:TRice32 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice32 -1, -2 - break; case __LINE__: TRice32(iD(15432), "rd:TRice32 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3 - break; case __LINE__: TRice32(iD(15433), "rd:TRice32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4 - break; case __LINE__: TRice32(iD(15434), "rd:TRice32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5 - break; case __LINE__: TRice32(iD(15435), "rd:TRice32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice32(iD(15436), "rd:TRice32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice32(iD(15437), "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice32(iD(15438), "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice32(iD(15439), "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice32(iD(15440), "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice32(iD(15441), "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15442), "signal:trice32_n with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: trice32_1 (iD(15443), "rd:trice32_1 %d\n", -1 ); //exp: time: default: rd:trice32_1 -1 - break; case __LINE__: trice32_2 (iD(15444), "rd:trice32_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice32_2 -1, -2 - break; case __LINE__: trice32_3 (iD(15445), "rd:trice32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice32_3 -1, -2, -3 - break; case __LINE__: trice32_4 (iD(15446), "rd:trice32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice32_4 -1, -2, -3, -4 - break; case __LINE__: trice32_5 (iD(15447), "rd:trice32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice32_5 -1, -2, -3, -4, -5 - break; case __LINE__: trice32_6 (iD(15448), "rd:trice32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice32_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice32_7 (iD(15449), "rd:trice32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice32_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice32_8 (iD(15450), "rd:trice32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice32_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice32_9 (iD(15451), "rd:trice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice32_10(iD(15452), "rd:trice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice32_11(iD(15453), "rd:trice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice32_12(iD(15454), "rd:trice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice32_1 (iD(15455), "rd:Trice32_1 %d\n", -1 ); //exp: time: be16default: rd:Trice32_1 -1 - break; case __LINE__: Trice32_2 (iD(15456), "rd:Trice32_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice32_2 -1, -2 - break; case __LINE__: Trice32_3 (iD(15457), "rd:Trice32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice32_3 -1, -2, -3 - break; case __LINE__: Trice32_4 (iD(15458), "rd:Trice32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice32_4 -1, -2, -3, -4 - break; case __LINE__: Trice32_5 (iD(15459), "rd:Trice32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice32_5 -1, -2, -3, -4, -5 - break; case __LINE__: Trice32_6 (iD(15460), "rd:Trice32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice32_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice32_7 (iD(15461), "rd:Trice32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice32_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice32_8 (iD(15462), "rd:Trice32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice32_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice32_9 (iD(15463), "rd:Trice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice32_10(iD(15464), "rd:Trice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice32_11(iD(15465), "rd:Trice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice32_12(iD(15466), "rd:Trice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice32_1 (iD(15467), "rd:TRice32_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice32_1 -1 - break; case __LINE__: TRice32_2 (iD(15468), "rd:TRice32_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice32_2 -1, -2 - break; case __LINE__: TRice32_3 (iD(15469), "rd:TRice32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice32_3 -1, -2, -3 - break; case __LINE__: TRice32_4 (iD(15470), "rd:TRice32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice32_4 -1, -2, -3, -4 - break; case __LINE__: TRice32_5 (iD(15471), "rd:TRice32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice32_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRice32_6 (iD(15472), "rd:TRice32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice32_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice32_7 (iD(15473), "rd:TRice32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice32_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice32_8 (iD(15474), "rd:TRice32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice32_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice32_9 (iD(15475), "rd:TRice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice32_10(iD(15476), "rd:TRice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice32_11(iD(15477), "rd:TRice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice32_12(iD(15478), "rd:TRice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15479), "sig:TRICE64 with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: TRICE64(id(15480), "rd:TRICE64 %d\n", -1 ); //exp: time: default: rd:TRICE64 -1 - break; case __LINE__: TRICE64(id(15481), "rd:TRICE64 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE64 -1, -2 - break; case __LINE__: TRICE64(id(15482), "rd:TRICE64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE64 -1, -2, -3 - break; case __LINE__: TRICE64(id(15483), "rd:TRICE64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4 - break; case __LINE__: TRICE64(id(15484), "rd:TRICE64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE64(id(15485), "rd:TRICE64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE64(id(15486), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE64(id(15487), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE64(id(15488), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE64(id(15489), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE64(id(15490), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE64(id(15491), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE64(Id(15492), "rd:TRICE64 %d\n", -1 ); //exp: time: be16default: rd:TRICE64 -1 - break; case __LINE__: TRICE64(Id(15493), "rd:TRICE64 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE64 -1, -2 - break; case __LINE__: TRICE64(Id(15494), "rd:TRICE64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3 - break; case __LINE__: TRICE64(Id(15495), "rd:TRICE64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4 - break; case __LINE__: TRICE64(Id(15496), "rd:TRICE64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE64(Id(15497), "rd:TRICE64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE64(Id(15498), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE64(Id(15499), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE64(Id(15500), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE64(Id(15501), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE64(Id(15502), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE64(Id(15503), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE64(ID(15504), "rd:TRICE64 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE64 -1 - break; case __LINE__: TRICE64(ID(15505), "rd:TRICE64 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE64 -1, -2 - break; case __LINE__: TRICE64(ID(15506), "rd:TRICE64 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3 - break; case __LINE__: TRICE64(ID(15507), "rd:TRICE64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4 - break; case __LINE__: TRICE64(ID(15508), "rd:TRICE64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE64(ID(15509), "rd:TRICE64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE64(ID(15510), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE64(ID(15511), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE64(ID(15512), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE64(ID(15513), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE64(ID(15514), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE64(ID(15515), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15516), "signal:TRICE64_n with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: TRICE64_1 (id(15517), "rd:TRICE64_1 %d\n", -1 ); //exp: time: default: rd:TRICE64_1 -1 - break; case __LINE__: TRICE64_2 (id(15518), "rd:TRICE64_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE64_2 -1, -2 - break; case __LINE__: TRICE64_3 (id(15519), "rd:TRICE64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE64_3 -1, -2, -3 - break; case __LINE__: TRICE64_4 (id(15520), "rd:TRICE64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE64_4 -1, -2, -3, -4 - break; case __LINE__: TRICE64_5 (id(15521), "rd:TRICE64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE64_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE64_6 (id(15522), "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE64_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE64_7 (id(15523), "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE64_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE64_8 (id(15524), "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE64_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE64_9 (id(15525), "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE64_10(id(15526), "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE64_11(id(15527), "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE64_12(id(15528), "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE64_1 (Id(15529), "rd:TRICE64_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE64_1 -1 - break; case __LINE__: TRICE64_2 (Id(15530), "rd:TRICE64_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE64_2 -1, -2 - break; case __LINE__: TRICE64_3 (Id(15531), "rd:TRICE64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE64_3 -1, -2, -3 - break; case __LINE__: TRICE64_4 (Id(15532), "rd:TRICE64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE64_4 -1, -2, -3, -4 - break; case __LINE__: TRICE64_5 (Id(15533), "rd:TRICE64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE64_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE64_6 (Id(15534), "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE64_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE64_7 (Id(15535), "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE64_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE64_8 (Id(15536), "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE64_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE64_9 (Id(15537), "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE64_10(Id(15538), "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE64_11(Id(15539), "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE64_12(Id(15540), "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRICE64_1 (ID(15541), "rd:TRICE64_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE64_1 -1 - break; case __LINE__: TRICE64_2 (ID(15542), "rd:TRICE64_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE64_2 -1, -2 - break; case __LINE__: TRICE64_3 (ID(15543), "rd:TRICE64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE64_3 -1, -2, -3 - break; case __LINE__: TRICE64_4 (ID(15544), "rd:TRICE64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE64_4 -1, -2, -3, -4 - break; case __LINE__: TRICE64_5 (ID(15545), "rd:TRICE64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE64_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE64_6 (ID(15546), "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE64_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE64_7 (ID(15547), "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE64_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE64_8 (ID(15548), "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE64_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE64_9 (ID(15549), "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE64_10(ID(15550), "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE64_11(ID(15551), "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE64_12(ID(15552), "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15553), "sig:trice64 with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: trice64(iD(15554), "rd:trice64 %d\n", -1 ); //exp: time: default: rd:trice64 -1 - break; case __LINE__: trice64(iD(15555), "rd:trice64 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice64 -1, -2 - break; case __LINE__: trice64(iD(15556), "rd:trice64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice64 -1, -2, -3 - break; case __LINE__: trice64(iD(15557), "rd:trice64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice64 -1, -2, -3, -4 - break; case __LINE__: trice64(iD(15558), "rd:trice64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5 - break; case __LINE__: trice64(iD(15559), "rd:trice64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice64(iD(15560), "rd:trice64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice64(iD(15561), "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice64(iD(15562), "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice64(iD(15563), "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice64(iD(15564), "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice64(iD(15565), "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice64(iD(15566), "rd:Trice64 %d\n", -1 ); //exp: time: be16default: rd:Trice64 -1 - break; case __LINE__: Trice64(iD(15567), "rd:Trice64 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice64 -1, -2 - break; case __LINE__: Trice64(iD(15568), "rd:Trice64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice64 -1, -2, -3 - break; case __LINE__: Trice64(iD(15569), "rd:Trice64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4 - break; case __LINE__: Trice64(iD(15570), "rd:Trice64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5 - break; case __LINE__: Trice64(iD(15571), "rd:Trice64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice64(iD(15572), "rd:Trice64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice64(iD(15573), "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice64(iD(15574), "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice64(iD(15575), "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice64(iD(15576), "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice64(iD(15577), "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice64(iD(15578), "rd:TRice64 %d\n", -1 ); //exp: time:feed3322default: rd:TRice64 -1 - break; case __LINE__: TRice64(iD(15579), "rd:TRice64 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice64 -1, -2 - break; case __LINE__: TRice64(iD(15580), "rd:TRice64 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3 - break; case __LINE__: TRice64(iD(15581), "rd:TRice64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4 - break; case __LINE__: TRice64(iD(15582), "rd:TRice64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5 - break; case __LINE__: TRice64(iD(15583), "rd:TRice64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice64(iD(15584), "rd:TRice64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice64(iD(15585), "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice64(iD(15586), "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice64(iD(15587), "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice64(iD(15588), "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice64(iD(15589), "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: trice (iD(15590), "signal:trice64_n with 1 to 12 values (line %d)\n", __LINE__ ); - - break; case __LINE__: trice64_1 (iD(15591), "rd:trice64_1 %d\n", -1 ); //exp: time: default: rd:trice64_1 -1 - break; case __LINE__: trice64_2 (iD(15592), "rd:trice64_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice64_2 -1, -2 - break; case __LINE__: trice64_3 (iD(15593), "rd:trice64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice64_3 -1, -2, -3 - break; case __LINE__: trice64_4 (iD(15594), "rd:trice64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice64_4 -1, -2, -3, -4 - break; case __LINE__: trice64_5 (iD(15595), "rd:trice64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice64_5 -1, -2, -3, -4, -5 - break; case __LINE__: trice64_6 (iD(15596), "rd:trice64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice64_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: trice64_7 (iD(15597), "rd:trice64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice64_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: trice64_8 (iD(15598), "rd:trice64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice64_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: trice64_9 (iD(15599), "rd:trice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: trice64_10(iD(15600), "rd:trice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: trice64_11(iD(15601), "rd:trice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: trice64_12(iD(15602), "rd:trice64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: Trice64_1 (iD(15603), "rd:Trice64_1 %d\n", -1 ); //exp: time: be16default: rd:Trice64_1 -1 - break; case __LINE__: Trice64_2 (iD(15604), "rd:Trice64_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice64_2 -1, -2 - break; case __LINE__: Trice64_3 (iD(15605), "rd:Trice64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice64_3 -1, -2, -3 - break; case __LINE__: Trice64_4 (iD(15606), "rd:Trice64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice64_4 -1, -2, -3, -4 - break; case __LINE__: Trice64_5 (iD(15607), "rd:Trice64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice64_5 -1, -2, -3, -4, -5 - break; case __LINE__: Trice64_6 (iD(15608), "rd:Trice64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice64_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: Trice64_7 (iD(15609), "rd:Trice64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice64_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: Trice64_8 (iD(15610), "rd:Trice64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice64_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: Trice64_9 (iD(15611), "rd:Trice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: Trice64_10(iD(15612), "rd:Trice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: Trice64_11(iD(15613), "rd:Trice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: Trice64_12(iD(15614), "rd:Trice64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - break; case __LINE__: TRice64_1 (iD(15615), "rd:TRice64_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice64_1 -1 - break; case __LINE__: TRice64_2 (iD(15616), "rd:TRice64_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice64_2 -1, -2 - break; case __LINE__: TRice64_3 (iD(15617), "rd:TRice64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice64_3 -1, -2, -3 - break; case __LINE__: TRice64_4 (iD(15618), "rd:TRice64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice64_4 -1, -2, -3, -4 - break; case __LINE__: TRice64_5 (iD(15619), "rd:TRice64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice64_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRice64_6 (iD(15620), "rd:TRice64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice64_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRice64_7 (iD(15621), "rd:TRice64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice64_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRice64_8 (iD(15622), "rd:TRice64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice64_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRice64_9 (iD(15623), "rd:TRice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRice64_10(iD(15624), "rd:TRice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRice64_11(iD(15625), "rd:TRice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRice32_12(iD(15626), "rd:TRice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRICE(ID(15627), "sig:Colors and ticks\n" ); - break; case __LINE__: TRICE(ID(15628), "--------------------------------------------------\n"); - break; case __LINE__: TRICE(ID(15629), "--------------------------------------------------\n"); - break; case __LINE__: TRICE(ID(15630), "dbg:12345 as 16bit is %016b\n", 12345); - break; case __LINE__: TRICE(ID(15631), "--------------------------------------------------\n"); - break; case __LINE__: TRICE(ID(15632), "sig:This ASSERT error is just a demo and no real error:\n"); - break; case __LINE__: TRICE(ID(15633), "--------------------------------------------------\n"); - //break; case __LINE__: TRICE(ID(15634), "ERR:error message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15635), "WRN:warning message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15636), "ATT:attention message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15637), "DIA:diagnostics message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15638), "TIM:timing message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15639), "DBG:debug message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15640), "SIG:signal message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15641), "RD:read message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15642), "WR:write message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15643), "ISR:interrupt message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15644), "MSG:normal message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15645), "INFO:informal message, SysTick is %6u\n", SYSTICKVAL); - break; case __LINE__: TRICE(ID(15646), "time:TRICE32_1 message, SysTick is %6u\n", SYSTICKVAL); - - break; case __LINE__: TRICE(ID(15647), "sig:Various ranges and formats\n" ); - break; case __LINE__: TRICE8 (ID(15648), "tst:TRICE8 %%03x -> %03x %03x %03x %03x\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15649), "tst:TRICE8 %%4d -> %4d %4d %4d %4d\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15650), "tst:TRICE8 %%4u -> %4u %4u %4u %4u\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15651), "tst:TRICE8 %%4o -> %4o %4o %4o %4o\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15652), "tst:TRICE8 %%4O -> %4O %4O %4O %4O\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15653), "tst:TRICE8 %%4X -> %4X %4X %4X %4X\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15654), "tst:TRICE8 %%4x -> %4x %4x %4x %4x\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15655), "tst:TRICE8 %%8b -> %8b %8b %8b %8b\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE8 (ID(15656), "tst:TRICE8 %%08b -> %08b %08b %08b %08b\n", 1, 0x7f, 0x80, 0xff); - break; case __LINE__: TRICE16(ID(15657), "tst:TRICE16 %%05x -> %05x %05x %05x %05x\n", 1, 0x7fff, 0x8000, 0xffff); - break; case __LINE__: TRICE16(ID(15658), "tst:TRICE16 %%6d -> %6d %6d %6d %6d\n", 1, 0x7fff, 0x8000, 0xffff); - break; case __LINE__: TRICE16(ID(15659), "tst:TRICE16 %%7o -> %7o %7o %7o %7o\n", 1, 0x7fff, 0x8000, 0xffff); - break; case __LINE__: TRICE32(ID(15660), "tst:TRICE32 %%09x -> %09x %09x %09x %09x\n", 1, 0x7fffffff, 0x80000000, 0xffffffff); - break; case __LINE__: TRICE32(ID(15661), "tst:TRICE32 %%10d -> %10d %10d %10d %10x\n", 1, 0x7fffffff, 0x80000000, 0xffffffff); - break; case __LINE__: TRICE32(ID(15662), "att:TRICE32 %40b\n", 0xAAAAAAAA); - break; case __LINE__: TRICE64(ID(15663), "tst:TRICE64 %%09x -> %09x %09x %09x %09x\n", 1, 0x7fffffffffffffff, 0x8000000000000000, 0xffffffffffffffff); - break; case __LINE__: TRICE64(ID(15664), "tst:TRICE64 %%10d -> %10d %10d %10d %10x\n", 1, 0x7fffffffffffffff, 0x8000000000000000, 0xffffffffffffffff); - break; case __LINE__: TRICE64(ID(15665), "att:TRICE64 %70b\n", 0xAAAAAAAAAAAAAAAA); - break; case __LINE__: TRICE(ID(15666), "sig:Legacy TRICE8\n" ); - break; case __LINE__: TRICE8_1(ID(15667), "tst:TRICE8_1 %02x\n", 0xA1); - break; case __LINE__: TRICE8_2(ID(15668), "tst:TRICE8_2 %02x %02x\n", 0xA1, 0xA2); - break; case __LINE__: TRICE8_3(ID(15669), "tst:TRICE8_3 %02x %02x %02x\n", 0xA1, 0xA2, 0xA3); - break; case __LINE__: TRICE8_4(ID(15670), "tst:TRICE8_4 %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4); - break; case __LINE__: TRICE8_5(ID(15671), "tst:TRICE8_5 %02x %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 ); - break; case __LINE__: TRICE8_6(ID(15672), "tst:TRICE8_6 %02x %02x %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6); - break; case __LINE__: TRICE8_7(ID(15673), "tst:TRICE8_7 %02x %02x %02x %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7); - break; case __LINE__: TRICE8_8(ID(15674), "tst:TRICE8_8 %02X %02X %02X %02X %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8); //exp: time:feed3322default: tst:TRICE8_8 A1 A2 A3 A4 a5 a6 a7 a8 - break; case __LINE__: TRICE8_1(ID(15675), "tst:TRICE8_1 %d\n", -1); - break; case __LINE__: TRICE8_2(ID(15676), "tst:TRICE8_2 %d %d\n", -1, -2); - break; case __LINE__: TRICE8_3(ID(15677), "tst:TRICE8_3 %d %d %d\n", -1, -2, -3); - break; case __LINE__: TRICE8_4(ID(15678), "tst:TRICE8_4 %d %d %d %d\n", -1, -2, -3, -4); - break; case __LINE__: TRICE8_5(ID(15679), "tst:TRICE8_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5); - break; case __LINE__: TRICE8_6(ID(15680), "tst:TRICE8_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6); - break; case __LINE__: TRICE8_7(ID(15681), "tst:TRICE8_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7); - break; case __LINE__: TRICE8_8(ID(15682), "tst:TRICE8_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8); - break; case __LINE__: TRICE8_1(ID(15683), "tst:TRICE8_1 %d\n", 1); - break; case __LINE__: TRICE8_2(ID(15684), "tst:TRICE8_2 %d %d\n", 1, 2); - break; case __LINE__: TRICE8_3(ID(15685), "tst:TRICE8_3 %d %d %d\n", 1, 2, 3); - break; case __LINE__: TRICE8_4(ID(15686), "tst:TRICE8_4 %d %d %d %d\n", 1, 2, 3, 4); - break; case __LINE__: TRICE8_5(ID(15687), "tst:TRICE8_5 %d %d %d %d %d\n", 1, 2, 3, 4, 5); - break; case __LINE__: TRICE8_6(ID(15688), "tst:TRICE8_6 %d %d %d %d %d %d\n", 1, 2, 3, 4, 5, 6); - break; case __LINE__: TRICE8_7(ID(15689), "tst:TRICE8_7 %d %d %d %d %d %d %d\n", 1, 2, 3, 4, 5, 6, 7); - break; case __LINE__: TRICE8_8(ID(15690), "tst:TRICE8_8 %d %d %d %d %d %d %d %d\n", 1, 2, 3, 4, 5, 6, 7, 8); - break; case __LINE__: TRICE8_1(ID(15691), "tst:TRICE8_1 %u\n", 201); - break; case __LINE__: TRICE8_2(ID(15692), "tst:TRICE8_2 %u %u\n", 201, 202); - break; case __LINE__: TRICE8_3(ID(15693), "tst:TRICE8_3 %u %u %u\n", 201, 202, 203); - break; case __LINE__: TRICE8_4(ID(15694), "tst:TRICE8_4 %u %u %u %u\n", 201, 202, 203, 204); - break; case __LINE__: TRICE8_5(ID(15695), "tst:TRICE8_5 %u %u %u %u %u\n", 201, 202, 203, 204, 205); - break; case __LINE__: TRICE8_6(ID(15696), "tst:TRICE8_6 %u %u %u %u %u %u\n", 201, 202, 203, 204, 205, 206); - break; case __LINE__: TRICE8_7(ID(15697), "tst:TRICE8_7 %u %u %u %u %u %u %u\n", 201, 202, 203, 204, 205, 206, 207); - break; case __LINE__: TRICE8_8(ID(15698), "tst:TRICE8_8 %u %u %u %u %u %u %u %u\n", 201, 202, 203, 204, 205, 206, 207, 208); - break; case __LINE__: TRICE8_8(ID(15699), "tst:TRICE8_1 %%d=%d, %%u=%u, 0x%%x=0x%x, 0x%%2x=0x%2x, 0x%%02x=0x%02x, 0x%%3x=0x%3x, 0x%%03x=0x%03x, %%b=%b\n", 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81); - - break; case __LINE__: TRICE (ID(15700), "sig:Legacy TRICE16-64\n" ); - break; case __LINE__: TRICE16_1(ID(15701), "tst:TRICE16_1 %d\n", -111); - break; case __LINE__: TRICE16_2(ID(15702), "tst:TRICE16_2 %d %d\n", -111, -222); - break; case __LINE__: TRICE16_3(ID(15703), "tst:TRICE16_3 %d %d %d\n", -111, -222, -333); - break; case __LINE__: TRICE16_4(ID(15704), "tst:TRICE16_4 %d %d %d %d\n", -111, -222, -333, -444); - break; case __LINE__: TRICE32_1(ID(15705), "tst:TRICE32_1 %08x\n", 0x0123cafe); - break; case __LINE__: TRICE32_1(ID(15706), "tst:TRICE32_1 %d\n", -111); - break; case __LINE__: TRICE32_2(ID(15707), "tst:TRICE32_2 %x %x\n", -111, -222); - break; case __LINE__: TRICE32_2(ID(15708), "tst:TRICE32_2 %d %d\n", -111, -222); - break; case __LINE__: TRICE32_3(ID(15709), "tst:TRICE32_3 %x %x %x\n", -111, -222, -333); - break; case __LINE__: TRICE32_3(ID(15710), "tst:TRICE32_3 %d %d %d\n", -111, -222, -333); - break; case __LINE__: TRICE32_4(ID(15711), "tst:TRICE32_4 %x %x %x %x\n", -111, -222, -333, -444); - break; case __LINE__: TRICE32_4(ID(15712), "tst:TRICE32_4 %d %d %d %d\n", -111, -222, -333, -444); - break; case __LINE__: TRICE64_1(ID(15713), "tst:TRICE64_1 %d\n", -111); - break; case __LINE__: TRICE64_2(ID(15714), "tst:TRICE64_2 %d %d\n", -111, -222); - break; case __LINE__: TRICE16_1(ID(15715), "tst:TRICE16_1 %u\n", 60001); - break; case __LINE__: TRICE16_2(ID(15716), "tst:TRICE16_2 %u %u\n", 60001, 60002); - break; case __LINE__: TRICE16_3(ID(15717), "tst:TRICE16_3 %u %u %u\n", 60001, 60002, 60003); - break; case __LINE__: TRICE16_4(ID(15718), "tst:TRICE16_4 %u %u %u %u\n", 60001, 60002, 60003, 60004); - break; case __LINE__: TRICE32_1(ID(15719), "tst:TRICE32_1 %u\n", 4000000001); - break; case __LINE__: TRICE32_2(ID(15720), "tst:TRICE32_2 %u %u\n", 4000000001, 4000000002); - break; case __LINE__: TRICE32_3(ID(15721), "tst:TRICE32_3 %u %u %u\n", 4000000001, 4000000002, 4000000003); - break; case __LINE__: TRICE32_4(ID(15722), "tst:TRICE32_4 %u %u %u %u\n", 4000000001, 4000000002, 4000000003, 4000000004); - break; case __LINE__: TRICE64_1(ID(15723), "tst:TRICE64_1 %x\n", -1); - break; case __LINE__: TRICE64_2(ID(15724), "tst:TRICE64_2 %x %x\n", -1, -2); - break; case __LINE__: TRICE64_1(ID(15725), "tst:TRICE64_1 %u\n", -1); - break; case __LINE__: TRICE64_2(ID(15726), "tst:TRICE64_2 %u %u\n", -1, -2); - - break; case __LINE__: TRICE(ID(15727), "sig:colored single letters and several TRICE macros in one line\n" ); - break; case __LINE__: TRICE(ID(15728), "e:A"); - break; case __LINE__: TRICE(ID(15729), "w:B"); - break; case __LINE__: TRICE(ID(15730), "a:c"); - break; case __LINE__: TRICE(ID(15731), "wr:d"); - break; case __LINE__: TRICE(ID(15732), "rd:e\n"); - break; case __LINE__: TRICE(ID(15733), "diag:f"); - break; case __LINE__: TRICE(ID(15734), "d:G"); - break; case __LINE__: TRICE(ID(15735), "t:H"); - break; case __LINE__: TRICE(ID(15736), "time:i"); - break; case __LINE__: TRICE(ID(15737), "message:J"); - break; case __LINE__: TRICE(ID(15738), "dbg:k\n"); - break; case __LINE__: TRICE(ID(15739), "1"); - break; case __LINE__: TRICE(ID(15740), "2"); - break; case __LINE__: TRICE(ID(15741), "3"); - break; case __LINE__: TRICE(ID(15742), "4"); - break; case __LINE__: TRICE(ID(15743), "e:7"); - break; case __LINE__: TRICE(ID(15744), "m:12"); - break; case __LINE__: TRICE(ID(15745), "m:123\n"); - break; case __LINE__: TRICE(ID(15746), "e:A"); TRICE(ID(15747), "w:B"); TRICE(ID(15748), "a:c"); - break; case __LINE__: TRICE(ID(15749), "wr:d"); TRICE(ID(15750), "rd:e\n"); TRICE(ID(15751), "diag:f"); - - break; case __LINE__: TRICE(ID(15752), "sig:TRICE8 with variable param count 1 to 12\n" ); - break; case __LINE__: TRICE8(ID(15753), "tst:TRICE8 %d\n", -1 ); - break; case __LINE__: TRICE8(ID(15754), "tst:TRICE8 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE8(ID(15755), "tst:TRICE8 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE8(ID(15756), "tst:TRICE8 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE8(ID(15757), "tst:TRICE8 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE8(ID(15758), "tst:TRICE8 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE8(ID(15759), "tst:TRICE8 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE8(ID(15760), "tst:TRICE8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE8(ID(15761), "tst:TRICE8 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE8(ID(15762), "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE8(ID(15763), "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE8(ID(15764), "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE8(ID(15765), "tst:TRICE8 %t %b %x %X %d %u %o %O %p\n", -3, -3, -3, -3, -3, -3, -3, -3, -3 ); - break; case __LINE__: TRICE8_1 (ID(15766), "tst:TRICE8_1 %d\n", -1 ); - break; case __LINE__: TRICE8_2 (ID(15767), "tst:TRICE8_2 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE8_3 (ID(15768), "tst:TRICE8_3 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE8_4 (ID(15769), "tst:TRICE8_4 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE8_5 (ID(15770), "tst:TRICE8_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE8_6 (ID(15771), "tst:TRICE8_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE8_7 (ID(15772), "tst:TRICE8_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE8_8 (ID(15773), "tst:TRICE8_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE8_9 (ID(15774), "tst:TRICE8_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE8_10(ID(15775), "tst:TRICE8_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE8_11(ID(15776), "tst:TRICE8_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE8_12(ID(15777), "tst:TRICE8_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE8 (ID(15778), "tst:TRICE8 %t %b %x %X %d %u %o %O %p\n", -3, -3, -3, -3, -3, -3, -3, -3, -3 ); - break; case __LINE__: TRICE8_9 (ID(15779), "tst:TRICE8_9 %t %b %x %X %d %u %o %O %p\n", -3, -3, -3, -3, -3, -3, -3, -3, -3 ); - - break; case __LINE__: TRICE(ID(15780), "sig:TRICE16 with variable param count 1 to 12\n" ); - break; case __LINE__: TRICE16(ID(15781), "tst:TRICE16 %d\n", -1 ); - break; case __LINE__: TRICE16(ID(15782), "tst:TRICE16 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE16(ID(15783), "tst:TRICE16 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE16(ID(15784), "tst:TRICE16 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE16(ID(15785), "tst:TRICE16 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE16(ID(15786), "tst:TRICE16 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE16(ID(15787), "tst:TRICE16 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE16(ID(15788), "tst:TRICE16 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE16(ID(15789), "tst:TRICE16 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE16(ID(15790), "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE16(ID(15791), "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE16(ID(15792), "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE16(ID(15793), "tst:TRICE16 %t %b %x %X %d %u %o %O %p\n", 3, 3, 3, 3, 3, 3, 3, 3, 3 ); - break; case __LINE__: TRICE16_1 (ID(15794), "tst:TRICE16_1 %d\n", -1 ); - break; case __LINE__: TRICE16_2 (ID(15795), "tst:TRICE16_2 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE16_3 (ID(15796), "tst:TRICE16_3 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE16_4 (ID(15797), "tst:TRICE16_4 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE16_5 (ID(15798), "tst:TRICE16_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE16_6 (ID(15799), "tst:TRICE16_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE16_7 (ID(15800), "tst:TRICE16_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE16_8 (ID(15801), "tst:TRICE16_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE16_9 (ID(15802), "tst:TRICE16_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE16_10(ID(15803), "tst:TRICE16_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE16_11(ID(15804), "tst:TRICE16_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE16_12(ID(15805), "tst:TRICE16_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE16_9 (ID(15806), "tst:TRICE16 %t %b %x %X %d %u %o %O %p\n", 3, 3, 3, 3, 3, 3, 3, 3, 3 ); - - break; case __LINE__: TRICE(ID(15807), "sig:TRICE32 with variable param count 1 to 12\n" ); - break; case __LINE__: TRICE32(ID(15808), "tst:TRICE32 %d\n", -1 ); - break; case __LINE__: TRICE32(ID(15809), "tst:TRICE32 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE32(ID(15810), "tst:TRICE32 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE32(ID(15811), "tst:TRICE32 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE32(ID(15812), "tst:TRICE32 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE32(ID(15813), "tst:TRICE32 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE32(ID(15814), "tst:TRICE32 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE32(ID(15815), "tst:TRICE32 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE32(ID(15816), "tst:TRICE32 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE32(ID(15817), "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE32(ID(15818), "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE32(ID(15819), "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE32(ID(15820), "tst:TRICE32 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aFloat(3.14159), aFloat(3.14159), aFloat(3.14159)); - break; case __LINE__: TRICE32_1 (ID(15821), "tst:TRICE32_1 %d\n", -1 ); - break; case __LINE__: TRICE32_2 (ID(15822), "tst:TRICE32_2 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE32_3 (ID(15823), "tst:TRICE32_3 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE32_4 (ID(15824), "tst:TRICE32_4 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE32_5 (ID(15825), "tst:TRICE32_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE32_6 (ID(15826), "tst:TRICE32_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE32_7 (ID(15827), "tst:TRICE32_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE32_8 (ID(15828), "tst:TRICE32_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE32_9 (ID(15829), "tst:TRICE32_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE32_10(ID(15830), "tst:TRICE32_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE32_11(ID(15831), "tst:TRICE32_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE32_12(ID(15832), "tst:TRICE32_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE32 (ID(15833), "tst:TRICE32 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aFloat(3.14159), aFloat(3.14159), aFloat(3.14159)); - break; case __LINE__: TRICE32_12(ID(15834), "tst:TRICE32_12 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aFloat(3.14159), aFloat(3.14159), aFloat(3.14159)); - - break; case __LINE__: TRICE(ID(15835), "sig:TRICE64 with variable param count 1 to 12\n" ); - break; case __LINE__: TRICE64(ID(15836), "tst:TRICE64 %d\n", -1 ); - break; case __LINE__: TRICE64(ID(15837), "tst:TRICE64 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE64(ID(15838), "tst:TRICE64 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE64(ID(15839), "tst:TRICE64 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE64(ID(15840), "tst:TRICE64 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE64(ID(15841), "tst:TRICE64 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE64(ID(15842), "tst:TRICE64 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE64(ID(15843), "tst:TRICE64 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE64(ID(15844), "tst:TRICE64 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE64(ID(15845), "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE64(ID(15846), "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE64(ID(15847), "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE64(ID(15848), "tst:TRICE64 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aDouble(3.14159), aDouble(3.14159), aDouble(3.14159)); - break; case __LINE__: TRICE64_1 (ID(15849), "tst:TRICE64_1 %d\n", -1 ); - break; case __LINE__: TRICE64_2 (ID(15850), "tst:TRICE64_2 %d %d\n", -1, -2 ); - break; case __LINE__: TRICE64_3 (ID(15851), "tst:TRICE64_3 %d %d %d\n", -1, -2, -3 ); - break; case __LINE__: TRICE64_4 (ID(15852), "tst:TRICE64_4 %d %d %d %d\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE64_5 (ID(15853), "tst:TRICE64_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE64_6 (ID(15854), "tst:TRICE64_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE64_7 (ID(15855), "tst:TRICE64_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); - break; case __LINE__: TRICE64_8 (ID(15856), "tst:TRICE64_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE64_9 (ID(15857), "tst:TRICE64_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE64_10(ID(15858), "tst:TRICE64_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); - break; case __LINE__: TRICE64_11(ID(15859), "tst:TRICE64_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE64_12(ID(15860), "tst:TRICE64_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - break; case __LINE__: TRICE64_12(ID(15861), "tst:TRICE64_12 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aDouble(3.14159), aDouble(3.14159), aDouble(3.14159)); - - break; case __LINE__: TRICE(ID(15862), "att:positive and negative float in format variants\n"); - break; case __LINE__: TRICE(ID(15863), "rd:TRICE float %f (%%f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15864), "rd:TRICE float %9f (%%9f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15865), "rd:TRICE float %.9f (%%.9f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15866), "rd:TRICE float %9.f (%%9.f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15867), "rd:TRICE float %9.6f (%%9.6f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15868), "rd:TRICE float %f (%%f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15869), "rd:TRICE float %9f (%%9f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15870), "rd:TRICE float %.9f (%%.9f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15871), "rd:TRICE float %9.f (%%9.f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15872), "rd:TRICE float %9.6f (%%9.6f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15873), "rd:TRICE float %+f (%%f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15874), "rd:TRICE float %+9f (%%9f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15875), "rd:TRICE float %+.9f (%%.9f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15876), "rd:TRICE float %+9.f (%%9.f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15877), "rd:TRICE float %+9.6f (%%9.6f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15878), "rd:TRICE float %+f (%%f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15879), "rd:TRICE float %+9f (%%9f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15880), "rd:TRICE float %+.9f (%%.9f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15881), "rd:TRICE float %+9.f (%%9.f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15882), "rd:TRICE float %+9.6f (%%9.6f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15883), "rd:TRICE float %-f (%%f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15884), "rd:TRICE float %-9f (%%9f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15885), "rd:TRICE float %-.9f (%%.9f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15886), "rd:TRICE float %-9.f (%%9.f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15887), "rd:TRICE float %-9.6f (%%9.6f)\n", aFloat(x) ); - break; case __LINE__: TRICE(ID(15888), "rd:TRICE float %-f (%%f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15889), "rd:TRICE float %-9f (%%9f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15890), "rd:TRICE float %-.9f (%%.9f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15891), "rd:TRICE float %-9.f (%%9.f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15892), "rd:TRICE float %-9.6f (%%9.6f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15893), "att:positive float & double in variants\n"); - break; case __LINE__: TRICE32_1(ID(15894), "rd:TRICE32_1 float %e (%%e)\n", aFloat(x) ); - break; case __LINE__: TRICE32_1(ID(15895), "rd:TRICE32_1 float %f (%%f)\n", aFloat(x) ); - break; case __LINE__: TRICE32_1(ID(15896), "rd:TRICE32_1 float %g (%%g)\n", aFloat(x) ); - break; case __LINE__: TRICE32_1(ID(15897), "rd:TRICE32_1 float %E (%%E)\n", aFloat(x) ); - break; case __LINE__: TRICE32_1(ID(15898), "rd:TRICE32_1 float %F (%%F)\n", aFloat(x) ); - break; case __LINE__: TRICE32_1(ID(15899), "rd:TRICE32_1 float %G (%%G)\n", aFloat(x) ); - break; case __LINE__: TRICE32 (ID(15900), "rd:TRICE32 float %e (%%e)\n", aFloat(x) ); - break; case __LINE__: TRICE32 (ID(15901), "rd:TRICE32 float %f (%%f)\n", aFloat(x) ); - break; case __LINE__: TRICE32 (ID(15902), "rd:TRICE32 float %g (%%g)\n", aFloat(x) ); - break; case __LINE__: TRICE32 (ID(15903), "rd:TRICE32 float %E (%%E)\n", aFloat(x) ); - break; case __LINE__: TRICE32 (ID(15904), "rd:TRICE32 float %F (%%F)\n", aFloat(x) ); - break; case __LINE__: TRICE32 (ID(15905), "rd:TRICE32 float %G (%%G)\n", aFloat(x) ); - break; case __LINE__: TRICE (ID(15906), "rd:TRICE float %e (%%e)\n", aFloat(x) ); - break; case __LINE__: TRICE (ID(15907), "rd:TRICE float %f (%%f)\n", aFloat(x) ); - break; case __LINE__: TRICE (ID(15908), "rd:TRICE float %g (%%g)\n", aFloat(x) ); - break; case __LINE__: TRICE (ID(15909), "rd:TRICE float %E (%%E)\n", aFloat(x) ); - break; case __LINE__: TRICE (ID(15910), "rd:TRICE float %F (%%F)\n", aFloat(x) ); - break; case __LINE__: TRICE (ID(15911), "rd:TRICE float %G (%%G)\n", aFloat(x) ); - break; case __LINE__: TRICE64 (ID(15912), "rd:TRICE64 double %e (%%e), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64 (ID(15913), "rd:TRICE64 double %f (%%f), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64 (ID(15914), "rd:TRICE64 double %g (%%g), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64 (ID(15915), "rd:TRICE64 double %E (%%E), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64 (ID(15916), "rd:TRICE64 double %F (%%F), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64 (ID(15917), "rd:TRICE64 double %G (%%G), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64_1(ID(15918), "rd:TRICE64_1 double %e (%%e), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64_1(ID(15919), "rd:TRICE64_1 double %f (%%f), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64_1(ID(15920), "rd:TRICE64_1 double %g (%%g), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64_1(ID(15921), "rd:TRICE64_1 double %E (%%E), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64_1(ID(15922), "rd:TRICE64_1 double %F (%%F), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64_1(ID(15923), "rd:TRICE64_1 double %G (%%G), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE(ID(15924), "att:negative float & double\n" ); - break; case __LINE__: TRICE(ID(15925), "rd:TRICE float %e (%%e)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15926), "rd:TRICE float %f (%%f)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15927), "rd:TRICE float %g (%%g)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15928), "rd:TRICE float %E (%%E)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15929), "rd:TRICE float %F (%%F)\n", aFloat(-x) ); - break; case __LINE__: TRICE(ID(15930), "rd:TRICE float %G (%%G)\n", aFloat(-x) ); - break; case __LINE__: TRICE64(ID(15931), "rd:TRICE64 double %e (%%e), aDouble(y)\n", aDouble(-y) ); - break; case __LINE__: TRICE64(ID(15932), "rd:TRICE64 double %f (%%f), aDouble(y)\n", aDouble(-y) ); - break; case __LINE__: TRICE64(ID(15933), "rd:TRICE64 double %g (%%g), aDouble(y)\n", aDouble(-y) ); - break; case __LINE__: TRICE64(ID(15934), "rd:TRICE64 double %E (%%E), aDouble(y)\n", aDouble(-y) ); - break; case __LINE__: TRICE64(ID(15935), "rd:TRICE64 double %F (%%F), aDouble(y)\n", aDouble(-y) ); - break; case __LINE__: TRICE64(ID(15936), "rd:TRICE64 double %G (%%G), aDouble(y)\n", aDouble(-y) ); - - break; case __LINE__: TRICE (ID(15937), "att:formatted float & double\n" ); - break; case __LINE__: TRICE32(ID(15938), "rd:TRICE32 float %12.6e (%%12.6e)\n", aFloat(x) ); - break; case __LINE__: TRICE32(ID(15939), "rd:TRICE32 float %12.6f (%%12.6f)\n", aFloat(x) ); - break; case __LINE__: TRICE32(ID(15940), "rd:TRICE32 float %12.6g (%%12.6g)\n", aFloat(x) ); - break; case __LINE__: TRICE32(ID(15941), "rd:TRICE32 float %12.6E (%%12.6E)\n", aFloat(x) ); - break; case __LINE__: TRICE32(ID(15942), "rd:TRICE32 float %12.6F (%%12.6F)\n", aFloat(x) ); - break; case __LINE__: TRICE32(ID(15943), "rd:TRICE32 float %12.6G (%%12.6G)\n", aFloat(x) ); - break; case __LINE__: TRICE64(ID(15944), "rd:TRICE64 double %12.6e (%%12.6e), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64(ID(15945), "rd:TRICE64 double %12.6f (%%12.6f), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64(ID(15946), "rd:TRICE64 double %12.6g (%%12.6g), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64(ID(15947), "rd:TRICE64 double %12.6E (%%12.6E), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64(ID(15948), "rd:TRICE64 double %12.6F (%%12.6F), aDouble(y)\n", aDouble(y) ); - break; case __LINE__: TRICE64(ID(15949), "rd:TRICE64 double %12.6G (%%12.6G), aDouble(y)\n", aDouble(y) ); - - break; case __LINE__: TRICE (ID(15950), "att:Various single arguments\n" ); - break; case __LINE__: TRICE8(ID(15951), "rd:TRICE8 line %t (%%t ,0)\n", 0 ); - break; case __LINE__: TRICE8(ID(15952), "rd:TRICE8 line %t (%%t ,2)\n", 2 ); - break; case __LINE__: TRICE8(ID(15953), "rd:TRICE8 line %u (%%u ,-1)\n", -1 ); - break; case __LINE__: TRICE8(ID(15954), "rd:TRICE8 line %b (%%b ,-1)\n", -1 ); - break; case __LINE__: TRICE8(ID(15955), "rd:TRICE8 line %o (%%o ,-1)\n", -1 ); - break; case __LINE__: TRICE8(ID(15956), "rd:TRICE8 line %O (%%O ,-1)\n", -1 ); - break; case __LINE__: TRICE8(ID(15957), "rd:TRICE8 line %X (%%X ,-1)\n", -1 ); - break; case __LINE__: TRICE8(ID(15958), "rd:TRICE8 line %x (%%x ,-1)\n", -1 ); - break; case __LINE__: TRICE8(ID(15959), "rd:TRICE8 line %d (%%d ,-1)\n", -1 ); - break; case __LINE__: TRICE16_1(ID(15960), "rd:TRICE16_1 line %t (%%t ,0)\n", 0 ); - break; case __LINE__: TRICE16_1(ID(15961), "rd:TRICE16_1 line %t (%%t ,2)\n", 2 ); - break; case __LINE__: TRICE16_1(ID(15962), "rd:TRICE16_1 line %u (%%u -1)\n", -1 ); - break; case __LINE__: TRICE16_1(ID(15963), "rd:TRICE16_1 line %b (%%b -1)\n", -1 ); - break; case __LINE__: TRICE16_1(ID(15964), "rd:TRICE16_1 line %o (%%o -1)\n", -1 ); - break; case __LINE__: TRICE16_1(ID(15965), "rd:TRICE16_1 line %x (%%x -1)\n", -1 ); - break; case __LINE__: TRICE16_1(ID(15966), "rd:TRICE16_1 line %d (%%d -1)\n", -1 ); - break; case __LINE__: TRICE(ID(15967), "rd:TRICE line %t (%%t -1)\n", 0 ); - break; case __LINE__: TRICE(ID(15968), "rd:TRICE line %t (%%t -1)\n", 2 ); - break; case __LINE__: TRICE(ID(15969), "rd:TRICE line %u (%%u)\n", -1 ); - break; case __LINE__: TRICE(ID(15970), "rd:TRICE line %b (%%b)\n", -2 ); - break; case __LINE__: TRICE(ID(15971), "rd:TRICE line %o (%%o)\n", -3 ); - break; case __LINE__: TRICE(ID(15972), "rd:TRICE line %x (%%x)\n", -4 ); - break; case __LINE__: TRICE(ID(15973), "rd:TRICE line %d (%%d)\n", -5 ); - - break; case __LINE__: TRICE_N(ID(15974), "msg:%s\n", A, 0 ); - break; case __LINE__: TRICE_N(ID(15975), "msg:%s\n", A, 1 ); - break; case __LINE__: TRICE_N(ID(15976), "msg:%s\n", A, 2 ); - break; case __LINE__: TRICE_N(ID(15977), "msg:%s\n", A, 3 ); - break; case __LINE__: TRICE_N(ID(15978), "msg:%s\n", A, 4 ); - break; case __LINE__: TRICE_N(ID(15979), "msg:%s\n", A, 5 ); - break; case __LINE__: TRICE_N(ID(15980), "msg:%s\n", A, 6 ); - break; case __LINE__: TRICE_N(ID(15981), "msg:%s\n", A, 7 ); - break; case __LINE__: TRICE_N(ID(15982), "msg:%s\n", A, 8 ); - break; case __LINE__: TRICE_N(ID(15983), "msg:%s\n", A, 9 ); - break; case __LINE__: TRICE_N(ID(15984), "msg:%s\n", A, 10 ); - break; case __LINE__: TRICE_N(ID(15985), "msg:%s\n", A, 11 ); - break; case __LINE__: TRICE_N(ID(15986), "msg:%s\n", A, 12 ); - break; case __LINE__: TRICE_N(ID(15987), "msg:%s\n", A, 13 ); - break; case __LINE__: TRICE_N(ID(15988), "msg:%s\n", A, 14 ); - break; case __LINE__: TRICE_N(ID(15989), "msg:%s\n", A, 15 ); - break; case __LINE__: TRICE_N(ID(15990), "msg:%s\n", A, 16 ); - break; case __LINE__: TRICE_N(ID(15991), "msg:%s\n", A, 17 ); - break; case __LINE__: TRICE_N(ID(15992), "msg:%s\n", A, 18 ); - break; case __LINE__: TRICE_N(ID(15993), "msg:%s\n", A, 19 ); - break; case __LINE__: TRICE_N(ID(15994), "msg:%s\n", A, 120 ); - break; case __LINE__: TRICE_N(ID(15995), "msg:%s\n", A, 121 ); - break; case __LINE__: TRICE_N(ID(15996), "msg:%s\n", A, 122 ); - break; case __LINE__: TRICE_N(ID(15997), "msg:%s\n", A, 123 ); - break; case __LINE__: TRICE_N(ID(15998), "msg:%s\n", A, 124 ); - break; case __LINE__: TRICE_N(ID(15999), "msg:%s\n", A, 125 ); - break; case __LINE__: TRICE_N(ID(16000), "msg:%s\n", A, 126 ); - break; case __LINE__: TRICE_N(ID(16001), "msg:%s\n", A, 127 ); - break; case __LINE__: TRICE_N(ID(16002), "msg:%s\n", A, 128 ); - break; case __LINE__: TRICE_N(ID(16003), "msg:%s\n", A, 129 ); - - - break; case __LINE__: TRICE(ID(16004), "sig:TRICE with 1 to 12 values\n" ); - - break; case __LINE__: TRICE(ID(16005), "rd:TRICE %d\n", -1 ); //exp: time:feed3322default: rd:TRICE -1 - break; case __LINE__: TRICE(ID(16006), "rd:TRICE %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE -1, -2 - break; case __LINE__: TRICE(ID(16007), "rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3 - break; case __LINE__: TRICE(ID(16008), "rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4 - break; case __LINE__: TRICE(ID(16009), "rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5 - break; case __LINE__: TRICE(ID(16010), "rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE(ID(16011), "rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE(ID(16012), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE(ID(16013), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE(ID(16014), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE(ID(16015), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE(ID(16016), "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - break; case __LINE__: TRICE(ID(16017), "sig:TRICE_n with 1 to 12 values\n" ); - break; case __LINE__: TRICE(ID(16018), "rd:TRICE_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE_1 -1 - break; case __LINE__: TRICE(ID(16019), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE_2 -1, -2 - break; case __LINE__: TRICE(ID(16020), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE_3 -1, -2, -3 - break; case __LINE__: TRICE(ID(16021), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE_4 -1, -2, -3, -4 - break; case __LINE__: TRICE(ID(16022), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE_5 -1, -2, -3, -4, -5 - break; case __LINE__: TRICE(ID(16023), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 - break; case __LINE__: TRICE(ID(16024), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 - break; case __LINE__: TRICE(ID(16025), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 - break; case __LINE__: TRICE(ID(16026), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 - break; case __LINE__: TRICE(ID(16027), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 - break; case __LINE__: TRICE(ID(16028), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 - break; case __LINE__: TRICE(ID(16029), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 - - - break; case __LINE__: TRICE (ID(16030), "sig:TRICE16 with 1 to 12 pointer\n" ); - break; case __LINE__: TRICE16(ID(16031), "rd:TRICE16 %p\n", -1 ); - break; case __LINE__: TRICE16(ID(16032), "rd:TRICE16 %p, %p\n", -1, -2 ); - break; case __LINE__: TRICE16(ID(16033), "rd:TRICE16 %p, %p, %p\n", -1, -2, -3 ); - break; case __LINE__: TRICE16(ID(16034), "rd:TRICE16 %p, %p, %p, %p\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE16(ID(16035), "rd:TRICE16 %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE16(ID(16036), "rd:TRICE16 %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE16(ID(16037), "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7); - break; case __LINE__: TRICE16(ID(16038), "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE16(ID(16039), "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE16(ID(16040), "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); - break; case __LINE__: TRICE16(ID(16041), "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE16(ID(16042), "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - - break; case __LINE__: TRICE (ID(16043), "sig:TRICE16 with 1 to 12 hex\n" ); - break; case __LINE__: TRICE16(ID(16044), "rd:TRICE16 %X\n", -1 ); - break; case __LINE__: TRICE16(ID(16045), "rd:TRICE16 %X, %X\n", -1, -2 ); - break; case __LINE__: TRICE16(ID(16046), "rd:TRICE16 %X, %X, %X\n", -1, -2, -3 ); - break; case __LINE__: TRICE16(ID(16047), "rd:TRICE16 %X, %X, %X, %X\n", -1, -2, -3, -4 ); - break; case __LINE__: TRICE16(ID(16048), "rd:TRICE16 %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5 ); - break; case __LINE__: TRICE16(ID(16049), "rd:TRICE16 %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6 ); - break; case __LINE__: TRICE16(ID(16050), "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7); - break; case __LINE__: TRICE16(ID(16051), "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8 ); - break; case __LINE__: TRICE16(ID(16052), "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); - break; case __LINE__: TRICE16(ID(16053), "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); - break; case __LINE__: TRICE16(ID(16054), "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); - break; case __LINE__: TRICE16(ID(16055), "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); - - break; case __LINE__: TRICE(ID(16056), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE(id(16057), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE(Id(16058), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE(ID(16059), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice(iD(16060), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice(iD(16061), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice(iD(16062), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE_0(ID(16063), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE_0(id(16064), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE_0(Id(16065), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE_0(ID(16066), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice_0(iD(16067), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice_0(iD(16068), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice_0(iD(16069), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE0(ID(16070), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE0(id(16071), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE0(Id(16072), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE0(ID(16073), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice0(iD(16074), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice0(iD(16075), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice0(iD(16076), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE_0(ID(16077), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE_0(id(16078), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE_0(Id(16079), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE_0(ID(16080), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice_0(iD(16081), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice_0(iD(16082), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice_0(iD(16083), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE8(ID(16084), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE8(id(16085), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE8(Id(16086), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE8(ID(16087), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice8(iD(16088), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice8(iD(16089), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice8(iD(16090), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE8_0(ID(16091), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE8_0(id(16092), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE8_0(Id(16093), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE8_0(ID(16094), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice8_0(iD(16095), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice8_0(iD(16096), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice8_0(iD(16097), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE16(ID(16098), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE16(id(16099), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE16(Id(16100), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE16(ID(16101), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice16(iD(16102), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice16(iD(16103), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice16(iD(16104), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE16_0(ID(16105), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE16_0(id(16106), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE16_0(Id(16107), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE16_0(ID(16108), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice16_0(iD(16109), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice16_0(iD(16110), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice16_0(iD(16111), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE32(ID(16112), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE32(id(16113), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE32(Id(16114), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE32(ID(16115), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice32(iD(16116), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice32(iD(16117), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice32(iD(16118), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE32_0(ID(16119), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE32_0(id(16120), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE32_0(Id(16121), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE32_0(ID(16122), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice32_0(iD(16123), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice32_0(iD(16124), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice32_0(iD(16125), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE64(ID(16126), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE64(id(16127), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE64(Id(16128), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE64(ID(16129), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice64(iD(16130), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice64(iD(16131), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice64(iD(16132), "w: Hello! 👋🙂 \a\n" ); // with sound! - - break; case __LINE__: TRICE64_0(ID(16133), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE64_0(id(16134), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE64_0(Id(16135), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRICE64_0(ID(16136), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: trice64_0(iD(16137), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: Trice64_0(iD(16138), "w: Hello! 👋🙂 \a\n" ); // with sound! - break; case __LINE__: TRice64_0(iD(16139), "w: Hello! 👋🙂 \a\n" ); // with sound! - - #endif // #if TRICE_CGO == 1 + break; case __LINE__: TRICE64(id(0), "msg:%d (%%d)\n", -1 ); //exp: time: default: msg:-1 (%d) + + break; case __LINE__: trice("sig:TRICE8 with 1 to 12 values\n" ); + break; case __LINE__: trice("rd:TRICE %d\n", -1 ); //exp: time: default: rd:TRICE -1 + break; case __LINE__: trice("rd:TRICE %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE -1, -2 + break; case __LINE__: trice("rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE -1, -2, -3 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE -1, -2, -3, -4 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: trice("rd:TRICE %d\n", -1 ); //exp: time: default: rd:TRICE -1 + break; case __LINE__: trice("rd:TRICE %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE -1, -2 + break; case __LINE__: trice("rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE -1, -2, -3 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE -1, -2, -3, -4 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: trice("rd:TRICE %d\n", -1 ); //exp: time: default: rd:TRICE -1 + break; case __LINE__: trice("rd:TRICE %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE -1, -2 + break; case __LINE__: trice("rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE -1, -2, -3 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE -1, -2, -3, -4 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("sig:TRICE_n with 1 to 12 values\n" ); + break; case __LINE__: TRICE_1 (id(0), "rd:TRICE_1 %d\n", -1 ); //exp: time: default: rd:TRICE_1 -1 + break; case __LINE__: TRICE_2 (id(0), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE_2 -1, -2 + break; case __LINE__: TRICE_3 (id(0), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE_3 -1, -2, -3 + break; case __LINE__: TRICE_4 (id(0), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE_4 -1, -2, -3, -4 + break; case __LINE__: TRICE_5 (id(0), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE_6 (id(0), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE_7 (id(0), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE_8 (id(0), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE_9 (id(0), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE_10(id(0), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE_11(id(0), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE_12(id(0), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE_1 (Id(0), "rd:TRICE_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE_1 -1 + break; case __LINE__: TRICE_2 (Id(0), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE_2 -1, -2 + break; case __LINE__: TRICE_3 (Id(0), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE_3 -1, -2, -3 + break; case __LINE__: TRICE_4 (Id(0), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE_4 -1, -2, -3, -4 + break; case __LINE__: TRICE_5 (Id(0), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE_6 (Id(0), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE_7 (Id(0), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE_8 (Id(0), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE_9 (Id(0), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE_10(Id(0), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE_11(Id(0), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE_12(Id(0), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE_1 (ID(0), "rd:TRICE_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE_1 -1 + break; case __LINE__: TRICE_2 (ID(0), "rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE_2 -1, -2 + break; case __LINE__: TRICE_3 (ID(0), "rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE_3 -1, -2, -3 + break; case __LINE__: TRICE_4 (ID(0), "rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE_4 -1, -2, -3, -4 + break; case __LINE__: TRICE_5 (ID(0), "rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE_6 (ID(0), "rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE_7 (ID(0), "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE_8 (ID(0), "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE_9 (ID(0), "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE_10(ID(0), "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE_11(ID(0), "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE_12(ID(0), "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + + break; case __LINE__: TRICE(ID(0), "sig:trice_n with 1 to 12 values\n" ); + break; case __LINE__: trice_1 ("rd:trice_1 %d\n", -1 ); //exp: time: default: rd:trice_1 -1 + break; case __LINE__: trice_2 ("rd:trice_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice_2 -1, -2 + break; case __LINE__: trice_3 ("rd:trice_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice_3 -1, -2, -3 + break; case __LINE__: trice_4 ("rd:trice_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice_4 -1, -2, -3, -4 + break; case __LINE__: trice_5 ("rd:trice_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice_5 -1, -2, -3, -4, -5 + break; case __LINE__: trice_6 ("rd:trice_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice_7 ("rd:trice_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice_8 ("rd:trice_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice_9 ("rd:trice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice_10("rd:trice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice_11("rd:trice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice_12("rd:trice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice_1 ("rd:Trice_1 %d\n", -1 ); //exp: time: be16default: rd:Trice_1 -1 + break; case __LINE__: Trice_2 ("rd:Trice_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice_2 -1, -2 + break; case __LINE__: Trice_3 ("rd:Trice_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice_3 -1, -2, -3 + break; case __LINE__: Trice_4 ("rd:Trice_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice_4 -1, -2, -3, -4 + break; case __LINE__: Trice_5 ("rd:Trice_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice_5 -1, -2, -3, -4, -5 + break; case __LINE__: Trice_6 ("rd:Trice_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice_7 ("rd:Trice_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice_8 ("rd:Trice_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice_9 ("rd:Trice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice_10("rd:Trice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice_11("rd:Trice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice_12("rd:Trice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice_1 ("rd:TRice_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice_1 -1 + break; case __LINE__: TRice_2 ("rd:TRice_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice_2 -1, -2 + break; case __LINE__: TRice_3 ("rd:TRice_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice_3 -1, -2, -3 + break; case __LINE__: TRice_4 ("rd:TRice_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice_4 -1, -2, -3, -4 + break; case __LINE__: TRice_5 ("rd:TRice_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRice_6 ("rd:TRice_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice_7 ("rd:TRice_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice_8 ("rd:TRice_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice_9 ("rd:TRice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice_10("rd:TRice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice_11("rd:TRice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice_12("rd:TRice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("sig:TRICE8 with 1 to 12 values\n" ); + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d\n", -1 ); //exp: time: default: rd:TRICE8 -1 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE8 -1, -2 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE8 -1, -2, -3 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE8(id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d\n", -1 ); //exp: time: be16default: rd:TRICE8 -1 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE8 -1, -2 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE8(Id(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE8 -1 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE8 -1, -2 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE8(ID(0), "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice("sig:TRICE8_n with 1 to 12 values\n" ); + break; case __LINE__: TRICE8_1 (id(0), "rd:TRICE8_1 %d\n", -1 ); //exp: time: default: rd:TRICE8_1 -1 + break; case __LINE__: TRICE8_2 (id(0), "rd:TRICE8_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE8_2 -1, -2 + break; case __LINE__: TRICE8_3 (id(0), "rd:TRICE8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE8_3 -1, -2, -3 + break; case __LINE__: TRICE8_4 (id(0), "rd:TRICE8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE8_4 -1, -2, -3, -4 + break; case __LINE__: TRICE8_5 (id(0), "rd:TRICE8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE8_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE8_6 (id(0), "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE8_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE8_7 (id(0), "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE8_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE8_8 (id(0), "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE8_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE8_9 (id(0), "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE8_10(id(0), "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE8_11(id(0), "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE8_12(id(0), "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE8_1 (Id(0), "rd:TRICE8_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE8_1 -1 + break; case __LINE__: TRICE8_2 (Id(0), "rd:TRICE8_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE8_2 -1, -2 + break; case __LINE__: TRICE8_3 (Id(0), "rd:TRICE8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE8_3 -1, -2, -3 + break; case __LINE__: TRICE8_4 (Id(0), "rd:TRICE8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE8_4 -1, -2, -3, -4 + break; case __LINE__: TRICE8_5 (Id(0), "rd:TRICE8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE8_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE8_6 (Id(0), "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE8_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE8_7 (Id(0), "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE8_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE8_8 (Id(0), "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE8_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE8_9 (Id(0), "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE8_10(Id(0), "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE8_11(Id(0), "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE8_12(Id(0), "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE8_1 (ID(0), "rd:TRICE8_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE8_1 -1 + break; case __LINE__: TRICE8_2 (ID(0), "rd:TRICE8_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE8_2 -1, -2 + break; case __LINE__: TRICE8_3 (ID(0), "rd:TRICE8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE8_3 -1, -2, -3 + break; case __LINE__: TRICE8_4 (ID(0), "rd:TRICE8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE8_4 -1, -2, -3, -4 + break; case __LINE__: TRICE8_5 (ID(0), "rd:TRICE8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE8_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE8_6 (ID(0), "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE8_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE8_7 (ID(0), "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE8_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE8_8 (ID(0), "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE8_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE8_9 (ID(0), "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE8_10(ID(0), "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE8_11(ID(0), "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE8_12(ID(0), "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("sig:trice8 with 1 to 12 values\n" ); + break; case __LINE__: trice8("rd:trice8 %d\n", -1 ); //exp: time: default: rd:trice8 -1 + break; case __LINE__: trice8("rd:trice8 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice8 -1, -2 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice8 -1, -2, -3 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice8 -1, -2, -3, -4 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice8("rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice8("rd:Trice8 %d\n", -1 ); //exp: time: be16default: rd:Trice8 -1 + break; case __LINE__: Trice8("rd:Trice8 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice8 -1, -2 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice8 -1, -2, -3 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice8("rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice8("rd:TRice8 %d\n", -1 ); //exp: time:feed3322default: rd:TRice8 -1 + break; case __LINE__: TRice8("rd:TRice8 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice8 -1, -2 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice8("rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice8 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: TRICE(ID(0), "sig:trice8_n with 1 to 12 values\n" ); + break; case __LINE__: trice8_1 ("rd:trice8_1 %d\n", -1 ); //exp: time: default: rd:trice8_1 -1 + break; case __LINE__: trice8_2 ("rd:trice8_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice8_2 -1, -2 + break; case __LINE__: trice8_3 ("rd:trice8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice8_3 -1, -2, -3 + break; case __LINE__: trice8_4 ("rd:trice8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice8_4 -1, -2, -3, -4 + break; case __LINE__: trice8_5 ("rd:trice8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice8_5 -1, -2, -3, -4, -5 + break; case __LINE__: trice8_6 ("rd:trice8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice8_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice8_7 ("rd:trice8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice8_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice8_8 ("rd:trice8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice8_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice8_9 ("rd:trice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice8_10("rd:trice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice8_11("rd:trice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice8_12("rd:trice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice8_1 ("rd:Trice8_1 %d\n", -1 ); //exp: time: be16default: rd:Trice8_1 -1 + break; case __LINE__: Trice8_2 ("rd:Trice8_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice8_2 -1, -2 + break; case __LINE__: Trice8_3 ("rd:Trice8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice8_3 -1, -2, -3 + break; case __LINE__: Trice8_4 ("rd:Trice8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice8_4 -1, -2, -3, -4 + break; case __LINE__: Trice8_5 ("rd:Trice8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice8_5 -1, -2, -3, -4, -5 + break; case __LINE__: Trice8_6 ("rd:Trice8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice8_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice8_7 ("rd:Trice8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice8_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice8_8 ("rd:Trice8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice8_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice8_9 ("rd:Trice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice8_10("rd:Trice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice8_11("rd:Trice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice8_12("rd:Trice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice8_1 ("rd:TRice8_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice8_1 -1 + break; case __LINE__: TRice8_2 ("rd:TRice8_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice8_2 -1, -2 + break; case __LINE__: TRice8_3 ("rd:TRice8_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice8_3 -1, -2, -3 + break; case __LINE__: TRice8_4 ("rd:TRice8_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice8_4 -1, -2, -3, -4 + break; case __LINE__: TRice8_5 ("rd:TRice8_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice8_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRice8_6 ("rd:TRice8_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice8_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice8_7 ("rd:TRice8_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice8_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice8_8 ("rd:TRice8_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice8_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice8_9 ("rd:TRice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice8_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice8_10("rd:TRice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice8_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice8_11("rd:TRice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice8_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice8_12("rd:TRice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice8_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice("sig:TRICE16 with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: trice16("rd:TRICE16 %d\n", -1 ); //exp: time: default: rd:TRICE16 -1 + break; case __LINE__: trice16("rd:TRICE16 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE16 -1, -2 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE16 -1, -2, -3 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: trice16("rd:TRICE16 %d\n", -1 ); //exp: time: default: rd:TRICE16 -1 + break; case __LINE__: trice16("rd:TRICE16 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE16 -1, -2 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE16 -1, -2, -3 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: trice16("rd:TRICE16 %d\n", -1 ); //exp: time: default: rd:TRICE16 -1 + break; case __LINE__: trice16("rd:TRICE16 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE16 -1, -2 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE16 -1, -2, -3 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16("rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice ("sig:TRICE16_n with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: TRICE16_1 (id(0), "rd:TRICE16_1 %d\n", -1 ); //exp: time: default: rd:TRICE16_1 -1 + break; case __LINE__: TRICE16_2 (id(0), "rd:TRICE16_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE16_2 -1, -2 + break; case __LINE__: TRICE16_3 (id(0), "rd:TRICE16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE16_3 -1, -2, -3 + break; case __LINE__: TRICE16_4 (id(0), "rd:TRICE16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE16_4 -1, -2, -3, -4 + break; case __LINE__: TRICE16_5 (id(0), "rd:TRICE16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE16_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE16_6 (id(0), "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE16_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE16_7 (id(0), "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE16_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE16_8 (id(0), "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE16_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE16_9 (id(0), "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE16_10(id(0), "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE16_11(id(0), "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE16_12(id(0), "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE16_1 (Id(0), "rd:TRICE16_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE16_1 -1 + break; case __LINE__: TRICE16_2 (Id(0), "rd:TRICE16_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE16_2 -1, -2 + break; case __LINE__: TRICE16_3 (Id(0), "rd:TRICE16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE16_3 -1, -2, -3 + break; case __LINE__: TRICE16_4 (Id(0), "rd:TRICE16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE16_4 -1, -2, -3, -4 + break; case __LINE__: TRICE16_5 (Id(0), "rd:TRICE16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE16_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE16_6 (Id(0), "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE16_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE16_7 (Id(0), "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE16_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE16_8 (Id(0), "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE16_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE16_9 (Id(0), "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE16_10(Id(0), "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE16_11(Id(0), "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE16_12(Id(0), "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE16_1 (ID(0), "rd:TRICE16_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE16_1 -1 + break; case __LINE__: TRICE16_2 (ID(0), "rd:TRICE16_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE16_2 -1, -2 + break; case __LINE__: TRICE16_3 (ID(0), "rd:TRICE16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE16_3 -1, -2, -3 + break; case __LINE__: TRICE16_4 (ID(0), "rd:TRICE16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE16_4 -1, -2, -3, -4 + break; case __LINE__: TRICE16_5 (ID(0), "rd:TRICE16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE16_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE16_6 (ID(0), "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE16_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE16_7 (ID(0), "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE16_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE16_8 (ID(0), "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE16_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE16_9 (ID(0), "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE16_10(ID(0), "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE16_11(ID(0), "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE16_12(ID(0), "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("sig:trice16 with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: trice16("rd:trice16 %d\n", -1 ); //exp: time: default: rd:trice16 -1 + break; case __LINE__: trice16("rd:trice16 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice16 -1, -2 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice16 -1, -2, -3 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16 -1, -2, -3, -4 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16("rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice16("rd:Trice16 %d\n", -1 ); //exp: time: be16default: rd:Trice16 -1 + break; case __LINE__: Trice16("rd:Trice16 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice16 -1, -2 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice16 -1, -2, -3 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice16("rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice16("rd:TRice16 %d\n", -1 ); //exp: time:feed3322default: rd:TRice16 -1 + break; case __LINE__: TRice16("rd:TRice16 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice16 -1, -2 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice16("rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice16 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice ("sig:trice16_n with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: trice16_1 ("rd:trice16_1 %d\n", -1 ); //exp: time: default: rd:trice16_1 -1 + break; case __LINE__: trice16_2 ("rd:trice16_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice16_2 -1, -2 + break; case __LINE__: trice16_3 ("rd:trice16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice16_3 -1, -2, -3 + break; case __LINE__: trice16_4 ("rd:trice16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice16_4 -1, -2, -3, -4 + break; case __LINE__: trice16_5 ("rd:trice16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice16_5 -1, -2, -3, -4, -5 + break; case __LINE__: trice16_6 ("rd:trice16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice16_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice16_7 ("rd:trice16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice16_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice16_8 ("rd:trice16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice16_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice16_9 ("rd:trice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice16_10("rd:trice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice16_11("rd:trice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice16_12("rd:trice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice16_1 ("rd:Trice16_1 %d\n", -1 ); //exp: time: be16default: rd:Trice16_1 -1 + break; case __LINE__: Trice16_2 ("rd:Trice16_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice16_2 -1, -2 + break; case __LINE__: Trice16_3 ("rd:Trice16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice16_3 -1, -2, -3 + break; case __LINE__: Trice16_4 ("rd:Trice16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice16_4 -1, -2, -3, -4 + break; case __LINE__: Trice16_5 ("rd:Trice16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice16_5 -1, -2, -3, -4, -5 + break; case __LINE__: Trice16_6 ("rd:Trice16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice16_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice16_7 ("rd:Trice16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice16_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice16_8 ("rd:Trice16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice16_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice16_9 ("rd:Trice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice16_10("rd:Trice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice16_11("rd:Trice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice16_12("rd:Trice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice16_1 ("rd:TRice16_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice16_1 -1 + break; case __LINE__: TRice16_2 ("rd:TRice16_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice16_2 -1, -2 + break; case __LINE__: TRice16_3 ("rd:TRice16_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice16_3 -1, -2, -3 + break; case __LINE__: TRice16_4 ("rd:TRice16_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice16_4 -1, -2, -3, -4 + break; case __LINE__: TRice16_5 ("rd:TRice16_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice16_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRice16_6 ("rd:TRice16_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice16_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice16_7 ("rd:TRice16_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice16_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice16_8 ("rd:TRice16_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice16_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice16_9 ("rd:TRice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice16_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice16_10("rd:TRice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice16_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice16_11("rd:TRice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice16_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice16_12("rd:TRice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice16_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice ("sig:TRICE32 with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d\n", -1 ); //exp: time: default: rd:TRICE32 -1 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE32 -1, -2 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE32 -1, -2, -3 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE32(id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d\n", -1 ); //exp: time: be16default: rd:TRICE32 -1 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE32 -1, -2 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE32(Id(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE32 -1 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE32 -1, -2 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE32(ID(0), "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice ("signal:TRICE32_n with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: TRICE32_1 (id(0), "rd:TRICE32_1 %d\n", -1 ); //exp: time: default: rd:TRICE32_1 -1 + break; case __LINE__: TRICE32_2 (id(0), "rd:TRICE32_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE32_2 -1, -2 + break; case __LINE__: TRICE32_3 (id(0), "rd:TRICE32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE32_3 -1, -2, -3 + break; case __LINE__: TRICE32_4 (id(0), "rd:TRICE32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE32_4 -1, -2, -3, -4 + break; case __LINE__: TRICE32_5 (id(0), "rd:TRICE32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE32_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE32_6 (id(0), "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE32_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE32_7 (id(0), "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE32_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE32_8 (id(0), "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE32_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE32_9 (id(0), "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE32_10(id(0), "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE32_11(id(0), "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE32_12(id(0), "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE32_1 (Id(0), "rd:TRICE32_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE32_1 -1 + break; case __LINE__: TRICE32_2 (Id(0), "rd:TRICE32_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE32_2 -1, -2 + break; case __LINE__: TRICE32_3 (Id(0), "rd:TRICE32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE32_3 -1, -2, -3 + break; case __LINE__: TRICE32_4 (Id(0), "rd:TRICE32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE32_4 -1, -2, -3, -4 + break; case __LINE__: TRICE32_5 (Id(0), "rd:TRICE32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE32_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE32_6 (Id(0), "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE32_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE32_7 (Id(0), "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE32_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE32_8 (Id(0), "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE32_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE32_9 (Id(0), "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE32_10(Id(0), "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE32_11(Id(0), "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE32_12(Id(0), "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE32_1 (ID(0), "rd:TRICE32_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE32_1 -1 + break; case __LINE__: TRICE32_2 (ID(0), "rd:TRICE32_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE32_2 -1, -2 + break; case __LINE__: TRICE32_3 (ID(0), "rd:TRICE32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE32_3 -1, -2, -3 + break; case __LINE__: TRICE32_4 (ID(0), "rd:TRICE32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE32_4 -1, -2, -3, -4 + break; case __LINE__: TRICE32_5 (ID(0), "rd:TRICE32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE32_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE32_6 (ID(0), "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE32_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE32_7 (ID(0), "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE32_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE32_8 (ID(0), "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE32_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE32_9 (ID(0), "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE32_10(ID(0), "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE32_11(ID(0), "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE32_12(ID(0), "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice ("sig:trice32 with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: trice32("rd:trice32 %d\n", -1 ); //exp: time: default: rd:trice32 -1 + break; case __LINE__: trice32("rd:trice32 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice32 -1, -2 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice32 -1, -2, -3 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice32 -1, -2, -3, -4 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice32("rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice32("rd:Trice32 %d\n", -1 ); //exp: time: be16default: rd:Trice32 -1 + break; case __LINE__: Trice32("rd:Trice32 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice32 -1, -2 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice32 -1, -2, -3 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice32("rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice32("rd:TRice32 %d\n", -1 ); //exp: time:feed3322default: rd:TRice32 -1 + break; case __LINE__: TRice32("rd:TRice32 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice32 -1, -2 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice32("rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice32 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice ("signal:trice32_n with 1 to 12 values (line %d)\n", __LINE__ ); + + break; case __LINE__: trice32_1 ("rd:trice32_1 %d\n", -1 ); //exp: time: default: rd:trice32_1 -1 + break; case __LINE__: trice32_2 ("rd:trice32_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice32_2 -1, -2 + break; case __LINE__: trice32_3 ("rd:trice32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice32_3 -1, -2, -3 + break; case __LINE__: trice32_4 ("rd:trice32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice32_4 -1, -2, -3, -4 + break; case __LINE__: trice32_5 ("rd:trice32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice32_5 -1, -2, -3, -4, -5 + break; case __LINE__: trice32_6 ("rd:trice32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice32_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice32_7 ("rd:trice32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice32_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice32_8 ("rd:trice32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice32_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice32_9 ("rd:trice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice32_10("rd:trice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice32_11("rd:trice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice32_12("rd:trice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice32_1 ("rd:Trice32_1 %d\n", -1 ); //exp: time: be16default: rd:Trice32_1 -1 + break; case __LINE__: Trice32_2 ("rd:Trice32_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice32_2 -1, -2 + break; case __LINE__: Trice32_3 ("rd:Trice32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice32_3 -1, -2, -3 + break; case __LINE__: Trice32_4 ("rd:Trice32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice32_4 -1, -2, -3, -4 + break; case __LINE__: Trice32_5 ("rd:Trice32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice32_5 -1, -2, -3, -4, -5 + break; case __LINE__: Trice32_6 ("rd:Trice32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice32_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice32_7 ("rd:Trice32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice32_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice32_8 ("rd:Trice32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice32_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice32_9 ("rd:Trice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice32_10("rd:Trice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice32_11("rd:Trice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice32_12("rd:Trice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice32_1 ("rd:TRice32_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice32_1 -1 + break; case __LINE__: TRice32_2 ("rd:TRice32_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice32_2 -1, -2 + break; case __LINE__: TRice32_3 ("rd:TRice32_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice32_3 -1, -2, -3 + break; case __LINE__: TRice32_4 ("rd:TRice32_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice32_4 -1, -2, -3, -4 + break; case __LINE__: TRice32_5 ("rd:TRice32_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice32_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRice32_6 ("rd:TRice32_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice32_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice32_7 ("rd:TRice32_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice32_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice32_8 ("rd:TRice32_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice32_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice32_9 ("rd:TRice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice32_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice32_10("rd:TRice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice32_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice32_11("rd:TRice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice32_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice32_12("rd:TRice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice ("sig:TRICE64 with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d\n", -1 ); //exp: time: default: rd:TRICE64 -1 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE64 -1, -2 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE64 -1, -2, -3 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE64(id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d\n", -1 ); //exp: time: be16default: rd:TRICE64 -1 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE64 -1, -2 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE64(Id(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE64 -1 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE64 -1, -2 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice ("signal:TRICE64_n with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: TRICE64_1 (id(0), "rd:TRICE64_1 %d\n", -1 ); //exp: time: default: rd:TRICE64_1 -1 + break; case __LINE__: TRICE64_2 (id(0), "rd:TRICE64_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE64_2 -1, -2 + break; case __LINE__: TRICE64_3 (id(0), "rd:TRICE64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE64_3 -1, -2, -3 + break; case __LINE__: TRICE64_4 (id(0), "rd:TRICE64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE64_4 -1, -2, -3, -4 + break; case __LINE__: TRICE64_5 (id(0), "rd:TRICE64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE64_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE64_6 (id(0), "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE64_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE64_7 (id(0), "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE64_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE64_8 (id(0), "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE64_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE64_9 (id(0), "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE64_10(id(0), "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE64_11(id(0), "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE64_12(id(0), "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE64_1 (Id(0), "rd:TRICE64_1 %d\n", -1 ); //exp: time: be16default: rd:TRICE64_1 -1 + break; case __LINE__: TRICE64_2 (Id(0), "rd:TRICE64_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:TRICE64_2 -1, -2 + break; case __LINE__: TRICE64_3 (Id(0), "rd:TRICE64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:TRICE64_3 -1, -2, -3 + break; case __LINE__: TRICE64_4 (Id(0), "rd:TRICE64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:TRICE64_4 -1, -2, -3, -4 + break; case __LINE__: TRICE64_5 (Id(0), "rd:TRICE64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:TRICE64_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE64_6 (Id(0), "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:TRICE64_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE64_7 (Id(0), "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:TRICE64_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE64_8 (Id(0), "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:TRICE64_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE64_9 (Id(0), "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:TRICE64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE64_10(Id(0), "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:TRICE64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE64_11(Id(0), "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:TRICE64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE64_12(Id(0), "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:TRICE64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRICE64_1 (ID(0), "rd:TRICE64_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRICE64_1 -1 + break; case __LINE__: TRICE64_2 (ID(0), "rd:TRICE64_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRICE64_2 -1, -2 + break; case __LINE__: TRICE64_3 (ID(0), "rd:TRICE64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRICE64_3 -1, -2, -3 + break; case __LINE__: TRICE64_4 (ID(0), "rd:TRICE64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRICE64_4 -1, -2, -3, -4 + break; case __LINE__: TRICE64_5 (ID(0), "rd:TRICE64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRICE64_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRICE64_6 (ID(0), "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRICE64_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRICE64_7 (ID(0), "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRICE64_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRICE64_8 (ID(0), "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRICE64_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRICE64_9 (ID(0), "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRICE64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRICE64_10(ID(0), "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRICE64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRICE64_11(ID(0), "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRICE64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRICE64_12(ID(0), "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRICE64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice ("sig:trice64 with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: trice64("rd:trice64 %d\n", -1 ); //exp: time: default: rd:trice64 -1 + break; case __LINE__: trice64("rd:trice64 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice64 -1, -2 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice64 -1, -2, -3 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice64 -1, -2, -3, -4 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice64("rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice64("rd:Trice64 %d\n", -1 ); //exp: time: be16default: rd:Trice64 -1 + break; case __LINE__: Trice64("rd:Trice64 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice64 -1, -2 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice64 -1, -2, -3 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice64("rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice64("rd:TRice64 %d\n", -1 ); //exp: time:feed3322default: rd:TRice64 -1 + break; case __LINE__: TRice64("rd:TRice64 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice64 -1, -2 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice64("rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice64 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice ("signal:trice64_n with 1 to 12 values (line %d)\n", __LINE__ ); + break; case __LINE__: trice64_1 ("rd:trice64_1 %d\n", -1 ); //exp: time: default: rd:trice64_1 -1 + break; case __LINE__: trice64_2 ("rd:trice64_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:trice64_2 -1, -2 + break; case __LINE__: trice64_3 ("rd:trice64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:trice64_3 -1, -2, -3 + break; case __LINE__: trice64_4 ("rd:trice64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:trice64_4 -1, -2, -3, -4 + break; case __LINE__: trice64_5 ("rd:trice64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:trice64_5 -1, -2, -3, -4, -5 + break; case __LINE__: trice64_6 ("rd:trice64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:trice64_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice64_7 ("rd:trice64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:trice64_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice64_8 ("rd:trice64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:trice64_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice64_9 ("rd:trice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:trice64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice64_10("rd:trice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:trice64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice64_11("rd:trice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:trice64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice64_12("rd:trice64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:trice64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: Trice64_1 ("rd:Trice64_1 %d\n", -1 ); //exp: time: be16default: rd:Trice64_1 -1 + break; case __LINE__: Trice64_2 ("rd:Trice64_2 %d, %d\n", -1, -2 ); //exp: time: be16default: rd:Trice64_2 -1, -2 + break; case __LINE__: Trice64_3 ("rd:Trice64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: be16default: rd:Trice64_3 -1, -2, -3 + break; case __LINE__: Trice64_4 ("rd:Trice64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: be16default: rd:Trice64_4 -1, -2, -3, -4 + break; case __LINE__: Trice64_5 ("rd:Trice64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: be16default: rd:Trice64_5 -1, -2, -3, -4, -5 + break; case __LINE__: Trice64_6 ("rd:Trice64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: be16default: rd:Trice64_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: Trice64_7 ("rd:Trice64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: be16default: rd:Trice64_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: Trice64_8 ("rd:Trice64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: be16default: rd:Trice64_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: Trice64_9 ("rd:Trice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: be16default: rd:Trice64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: Trice64_10("rd:Trice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: be16default: rd:Trice64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: Trice64_11("rd:Trice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: be16default: rd:Trice64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: Trice64_12("rd:Trice64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: be16default: rd:Trice64_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + break; case __LINE__: TRice64_1 ("rd:TRice64_1 %d\n", -1 ); //exp: time:feed3322default: rd:TRice64_1 -1 + break; case __LINE__: TRice64_2 ("rd:TRice64_2 %d, %d\n", -1, -2 ); //exp: time:feed3322default: rd:TRice64_2 -1, -2 + break; case __LINE__: TRice64_3 ("rd:TRice64_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time:feed3322default: rd:TRice64_3 -1, -2, -3 + break; case __LINE__: TRice64_4 ("rd:TRice64_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time:feed3322default: rd:TRice64_4 -1, -2, -3, -4 + break; case __LINE__: TRice64_5 ("rd:TRice64_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time:feed3322default: rd:TRice64_5 -1, -2, -3, -4, -5 + break; case __LINE__: TRice64_6 ("rd:TRice64_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time:feed3322default: rd:TRice64_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: TRice64_7 ("rd:TRice64_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time:feed3322default: rd:TRice64_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: TRice64_8 ("rd:TRice64_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time:feed3322default: rd:TRice64_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: TRice64_9 ("rd:TRice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time:feed3322default: rd:TRice64_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: TRice64_10("rd:TRice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time:feed3322default: rd:TRice64_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: TRice64_11("rd:TRice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time:feed3322default: rd:TRice64_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: TRice32_12("rd:TRice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time:feed3322default: rd:TRice32_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__:{ + TRICE(Id(0), "sig:Colors and ticks\n" ); + TRICE(Id(0), "--------------------------------------------------\n"); + TRICE(Id(0), "--------------------------------------------------\n"); + TRICE(Id(0), "dbg:12345 as 16bit is %016b\n", 12345); + TRICE(Id(0), "--------------------------------------------------\n"); + TRICE(Id(0), "sig:This ASSERT error is just a demo and no real error:\n"); + TRICE(Id(0), "--------------------------------------------------\n"); + TRICE(Id(0), "ERR:error message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "WRN:warning message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "ATT:attention message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "DIA:diagnostics message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "TIM:timing message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "DBG:debug message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "SIG:signal message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "RD:read message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "WR:write message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "ISR:interrupt message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "MSG:normal message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "INFO:informal message, SysTick is %6u\n", SYSTICKVAL); + TRICE(Id(0), "time:TRICE32_1 message, SysTick is %6u\n", SYSTICKVAL); + } +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: TRICE(ID(0), "sig:Various ranges and formats\n" ); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%03x -> %03x %03x %03x %03x\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%4d -> %4d %4d %4d %4d\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%4u -> %4u %4u %4u %4u\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%4o -> %4o %4o %4o %4o\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%4O -> %4O %4O %4O %4O\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%4X -> %4X %4X %4X %4X\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%4x -> %4x %4x %4x %4x\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%8b -> %8b %8b %8b %8b\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE8 (ID(0), "tst:TRICE8 %%08b -> %08b %08b %08b %08b\n", 1, 0x7f, 0x80, 0xff); + break; case __LINE__: TRICE16(ID(0), "tst:TRICE16 %%05x -> %05x %05x %05x %05x\n", 1, 0x7fff, 0x8000, 0xffff); + break; case __LINE__: TRICE16(ID(0), "tst:TRICE16 %%6d -> %6d %6d %6d %6d\n", 1, 0x7fff, 0x8000, 0xffff); + break; case __LINE__: TRICE16(ID(0), "tst:TRICE16 %%7o -> %7o %7o %7o %7o\n", 1, 0x7fff, 0x8000, 0xffff); + break; case __LINE__: TRICE32(ID(0), "tst:TRICE32 %%09x -> %09x %09x %09x %09x\n", 1, 0x7fffffff, 0x80000000, 0xffffffff); + break; case __LINE__: TRICE32(ID(0), "tst:TRICE32 %%10d -> %10d %10d %10d %10x\n", 1, 0x7fffffff, 0x80000000, 0xffffffff); + break; case __LINE__: TRICE32(ID(0), "att:TRICE32 %40b\n", 0xAAAAAAAA); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %%09x -> %09x %09x %09x %09x\n", 1, 0x7fffffffffffffff, 0x8000000000000000, 0xffffffffffffffff); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %%10d -> %10d %10d %10d %10x\n", 1, 0x7fffffffffffffff, 0x8000000000000000, 0xffffffffffffffff); + break; case __LINE__: TRICE64(ID(0), "att:TRICE64 %70b\n", 0xAAAAAAAAAAAAAAAA); + break; case __LINE__: TRICE(ID(0), "sig:Legacy TRICE8\n" ); + break; case __LINE__: TRICE8_1(ID(0), "tst:TRICE8_1 %02x\n", 0xA1); + break; case __LINE__: TRICE8_2(ID(0), "tst:TRICE8_2 %02x %02x\n", 0xA1, 0xA2); + break; case __LINE__: TRICE8_3(ID(0), "tst:TRICE8_3 %02x %02x %02x\n", 0xA1, 0xA2, 0xA3); + break; case __LINE__: TRICE8_4(ID(0), "tst:TRICE8_4 %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4); + break; case __LINE__: TRICE8_5(ID(0), "tst:TRICE8_5 %02x %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 ); + break; case __LINE__: TRICE8_6(ID(0), "tst:TRICE8_6 %02x %02x %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6); + break; case __LINE__: TRICE8_7(ID(0), "tst:TRICE8_7 %02x %02x %02x %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7); + break; case __LINE__: TRICE8_8(ID(0), "tst:TRICE8_8 %02X %02X %02X %02X %02x %02x %02x %02x\n", 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8); //exp: time:feed3322default: tst:TRICE8_8 A1 A2 A3 A4 a5 a6 a7 a8 + break; case __LINE__: { + TRICE8_1(Id(0), "tst:TRICE8_1 %d\n", -1); + TRICE8_2(Id(0), "tst:TRICE8_2 %d %d\n", -1, -2); + TRICE8_3(Id(0), "tst:TRICE8_3 %d %d %d\n", -1, -2, -3); + TRICE8_4(Id(0), "tst:TRICE8_4 %d %d %d %d\n", -1, -2, -3, -4); + TRICE8_5(Id(0), "tst:TRICE8_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5); + TRICE8_6(Id(0), "tst:TRICE8_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6); + TRICE8_7(Id(0), "tst:TRICE8_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7); + TRICE8_8(Id(0), "tst:TRICE8_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8); + } + break; case __LINE__: TRICE8_1(ID(0), "tst:TRICE8_1 %d\n", 1); + break; case __LINE__: TRICE8_2(ID(0), "tst:TRICE8_2 %d %d\n", 1, 2); + break; case __LINE__: TRICE8_3(ID(0), "tst:TRICE8_3 %d %d %d\n", 1, 2, 3); + break; case __LINE__: TRICE8_4(ID(0), "tst:TRICE8_4 %d %d %d %d\n", 1, 2, 3, 4); + break; case __LINE__: TRICE8_5(ID(0), "tst:TRICE8_5 %d %d %d %d %d\n", 1, 2, 3, 4, 5); + break; case __LINE__: TRICE8_6(ID(0), "tst:TRICE8_6 %d %d %d %d %d %d\n", 1, 2, 3, 4, 5, 6); + break; case __LINE__: TRICE8_7(ID(0), "tst:TRICE8_7 %d %d %d %d %d %d %d\n", 1, 2, 3, 4, 5, 6, 7); + break; case __LINE__: TRICE8_8(ID(0), "tst:TRICE8_8 %d %d %d %d %d %d %d %d\n", 1, 2, 3, 4, 5, 6, 7, 8); + break; case __LINE__: TRICE8_1(ID(0), "tst:TRICE8_1 %u\n", 201); + break; case __LINE__: TRICE8_2(ID(0), "tst:TRICE8_2 %u %u\n", 201, 202); + break; case __LINE__: TRICE8_3(ID(0), "tst:TRICE8_3 %u %u %u\n", 201, 202, 203); + break; case __LINE__: TRICE8_4(ID(0), "tst:TRICE8_4 %u %u %u %u\n", 201, 202, 203, 204); + break; case __LINE__: TRICE8_5(ID(0), "tst:TRICE8_5 %u %u %u %u %u\n", 201, 202, 203, 204, 205); + break; case __LINE__: TRICE8_6(ID(0), "tst:TRICE8_6 %u %u %u %u %u %u\n", 201, 202, 203, 204, 205, 206); + break; case __LINE__: TRICE8_7(ID(0), "tst:TRICE8_7 %u %u %u %u %u %u %u\n", 201, 202, 203, 204, 205, 206, 207); + break; case __LINE__: TRICE8_8(ID(0), "tst:TRICE8_8 %u %u %u %u %u %u %u %u\n", 201, 202, 203, 204, 205, 206, 207, 208); + break; case __LINE__: TRICE8_8(ID(0), "tst:TRICE8_1 %%d=%d, %%u=%u, 0x%%x=0x%x, 0x%%2x=0x%2x, 0x%%02x=0x%02x, 0x%%3x=0x%3x, 0x%%03x=0x%03x, %%b=%b\n", 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81); + + break; case __LINE__: TRICE (ID(0), "sig:Legacy TRICE16-64\n" ); + break; case __LINE__: { + TRICE16_1(Id(0), "tst:TRICE16_1 %d\n", -111); + TRICE16_2(Id(0), "tst:TRICE16_2 %d %d\n", -111, -222); + TRICE16_3(Id(0), "tst:TRICE16_3 %d %d %d\n", -111, -222, -333); + TRICE16_4(Id(0), "tst:TRICE16_4 %d %d %d %d\n", -111, -222, -333, -444); + } + break; case __LINE__: { + TRICE32_1(Id(0), "tst:TRICE32_1 %08x\n", 0x0123cafe); + TRICE32_1(Id(0), "tst:TRICE32_1 %d\n", -111); + TRICE32_2(Id(0), "tst:TRICE32_2 %x %x\n", -111, -222); + TRICE32_2(Id(0), "tst:TRICE32_2 %d %d\n", -111, -222); + TRICE32_3(Id(0), "tst:TRICE32_3 %x %x %x\n", -111, -222, -333); + TRICE32_3(Id(0), "tst:TRICE32_3 %d %d %d\n", -111, -222, -333); + TRICE32_4(Id(0), "tst:TRICE32_4 %x %x %x %x\n", -111, -222, -333, -444); + TRICE32_4(Id(0), "tst:TRICE32_4 %d %d %d %d\n", -111, -222, -333, -444); + } + break; case __LINE__: { + TRICE64_1(Id(0), "tst:TRICE64_1 %d\n", -111); + TRICE64_2(Id(0), "tst:TRICE64_2 %d %d\n", -111, -222); + TRICE16_1(Id(0), "tst:TRICE16_1 %u\n", 60001); + TRICE16_2(Id(0), "tst:TRICE16_2 %u %u\n", 60001, 60002); + TRICE16_3(Id(0), "tst:TRICE16_3 %u %u %u\n", 60001, 60002, 60003); + TRICE16_4(Id(0), "tst:TRICE16_4 %u %u %u %u\n", 60001, 60002, 60003, 60004); + } + break; case __LINE__: { + TRICE32_1(Id(0), "tst:TRICE32_1 %u\n", 4000000001); + TRICE32_2(Id(0), "tst:TRICE32_2 %u %u\n", 4000000001, 4000000002); + TRICE32_3(Id(0), "tst:TRICE32_3 %u %u %u\n", 4000000001, 4000000002, 4000000003); + TRICE32_4(Id(0), "tst:TRICE32_4 %u %u %u %u\n", 4000000001, 4000000002, 4000000003, 4000000004); + } + break; case __LINE__: { + TRICE64_1(Id(0), "tst:TRICE64_1 %x\n", -1); + TRICE64_2(Id(0), "tst:TRICE64_2 %x %x\n", -1, -2); + TRICE64_1(Id(0), "tst:TRICE64_1 %u\n", -1); + TRICE64_2(Id(0), "tst:TRICE64_2 %u %u\n", -1, -2); + } +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("sig:colored single letters and several TRICE macros in one line\n" ); + break; case __LINE__: { + trice("e:A"); + trice("w:B"); + trice("a:c"); + trice("wr:d"); + trice("rd:e\n"); + trice("diag:f"); + trice("d:G"); + trice("t:H"); + trice("time:i"); + trice("message:J"); + trice("dbg:k\n"); + trice("1"); + trice("2"); + trice("3"); + trice("4"); + trice("e:7"); + trice("m:12"); + trice("m:123\n"); + trice("e:A"); trice("w:B"); trice("a:c"); + trice("wr:d"); trice("rd:e\n"); trice("diag:f"); + } +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("sig:TRICE8 with variable param count 1 to 12\n" ); + break; case __LINE__: { + TRICE8(Id(0), "tst:TRICE8 %d\n", -1 ); + TRICE8(Id(0), "tst:TRICE8 %d %d\n", -1, -2 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d\n", -1, -2, -3 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d\n", -1, -2, -3, -4 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + TRICE8(Id(0), "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + TRICE8(Id(0), "tst:TRICE8 %t %b %x %X %d %u %o %O %p\n", -3, -3, -3, -3, -3, -3, -3, -3, -3 ); + } + break; case __LINE__: { + TRICE8_1 (Id(0), "tst:TRICE8_1 %d\n", -1 ); + TRICE8_2 (Id(0), "tst:TRICE8_2 %d %d\n", -1, -2 ); + TRICE8_3 (Id(0), "tst:TRICE8_3 %d %d %d\n", -1, -2, -3 ); + TRICE8_4 (Id(0), "tst:TRICE8_4 %d %d %d %d\n", -1, -2, -3, -4 ); + TRICE8_5 (Id(0), "tst:TRICE8_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + TRICE8_6 (Id(0), "tst:TRICE8_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + TRICE8_7 (Id(0), "tst:TRICE8_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + TRICE8_8 (Id(0), "tst:TRICE8_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + TRICE8_9 (Id(0), "tst:TRICE8_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + TRICE8_10(Id(0), "tst:TRICE8_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + TRICE8_11(Id(0), "tst:TRICE8_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + TRICE8_12(Id(0), "tst:TRICE8_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + TRICE8 (Id(0), "tst:TRICE8 %t %b %x %X %d %u %o %O %p\n", -3, -3, -3, -3, -3, -3, -3, -3, -3 ); + TRICE8_9 (Id(0), "tst:TRICE8_9 %t %b %x %X %d %u %o %O %p\n", -3, -3, -3, -3, -3, -3, -3, -3, -3 ); + } + break; case __LINE__: trice("sig:TRICE16 with variable param count 1 to 12\n" ); + break; case __LINE__: { + TRICE16(Id(0), "tst:TRICE16 %d\n", -1 ); + TRICE16(Id(0), "tst:TRICE16 %d %d\n", -1, -2 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d\n", -1, -2, -3 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d\n", -1, -2, -3, -4 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + TRICE16(Id(0), "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + TRICE16(Id(0), "tst:TRICE16 %t %b %x %X %d %u %o %O %p\n", 3, 3, 3, 3, 3, 3, 3, 3, 3 ); + } + break; case __LINE__: { + TRICE16_1 (ID(0), "tst:TRICE16_1 %d\n", -1 ); + TRICE16_2 (ID(0), "tst:TRICE16_2 %d %d\n", -1, -2 ); + TRICE16_3 (ID(0), "tst:TRICE16_3 %d %d %d\n", -1, -2, -3 ); + TRICE16_4 (ID(0), "tst:TRICE16_4 %d %d %d %d\n", -1, -2, -3, -4 ); + TRICE16_5 (ID(0), "tst:TRICE16_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + TRICE16_6 (ID(0), "tst:TRICE16_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + TRICE16_7 (ID(0), "tst:TRICE16_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + TRICE16_8 (ID(0), "tst:TRICE16_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + TRICE16_9 (ID(0), "tst:TRICE16_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + TRICE16_10(ID(0), "tst:TRICE16_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + TRICE16_11(ID(0), "tst:TRICE16_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + TRICE16_12(ID(0), "tst:TRICE16_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + TRICE16_9 (ID(0), "tst:TRICE16 %t %b %x %X %d %u %o %O %p\n", 3, 3, 3, 3, 3, 3, 3, 3, 3 ); + } + break; case __LINE__: trice("sig:TRICE32 with variable param count 1 to 12\n" ); + break; case __LINE__: { + TRICE32(Id(0), "tst:TRICE32 %d\n", -1 ); + TRICE32(Id(0), "tst:TRICE32 %d %d\n", -1, -2 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d\n", -1, -2, -3 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d\n", -1, -2, -3, -4 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + TRICE32(Id(0), "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + TRICE32(Id(0), "tst:TRICE32 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aFloat(3.14159f), aFloat(3.14159f), aFloat(3.14159f)); + } + break; case __LINE__: { + TRICE32_1 (Id(0), "tst:TRICE32_1 %d\n", -1 ); + TRICE32_2 (Id(0), "tst:TRICE32_2 %d %d\n", -1, -2 ); + TRICE32_3 (Id(0), "tst:TRICE32_3 %d %d %d\n", -1, -2, -3 ); + TRICE32_4 (Id(0), "tst:TRICE32_4 %d %d %d %d\n", -1, -2, -3, -4 ); + TRICE32_5 (Id(0), "tst:TRICE32_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + TRICE32_6 (Id(0), "tst:TRICE32_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + TRICE32_7 (Id(0), "tst:TRICE32_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + TRICE32_8 (Id(0), "tst:TRICE32_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + TRICE32_9 (Id(0), "tst:TRICE32_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + TRICE32_10(Id(0), "tst:TRICE32_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + TRICE32_11(Id(0), "tst:TRICE32_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + TRICE32_12(Id(0), "tst:TRICE32_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + TRICE32 (Id(0), "tst:TRICE32 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aFloat(3.14159f), aFloat(3.14159f), aFloat(3.14159f)); + TRICE32_12(Id(0), "tst:TRICE32_12 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aFloat(3.14159f), aFloat(3.14159f), aFloat(3.14159f)); + } + break; case __LINE__: trice("sig:TRICE64 with variable param count 1 to 12\n" ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d\n", -1 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d\n", -1, -2 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d\n", -1, -2, -3 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d\n", -1, -2, -3, -4 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + break; case __LINE__: TRICE64(ID(0), "tst:TRICE64 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aDouble(3.14159), aDouble(3.14159), aDouble(3.14159)); + break; case __LINE__: TRICE64_1 (ID(0), "tst:TRICE64_1 %d\n", -1 ); + break; case __LINE__: TRICE64_2 (ID(0), "tst:TRICE64_2 %d %d\n", -1, -2 ); + break; case __LINE__: TRICE64_3 (ID(0), "tst:TRICE64_3 %d %d %d\n", -1, -2, -3 ); + break; case __LINE__: TRICE64_4 (ID(0), "tst:TRICE64_4 %d %d %d %d\n", -1, -2, -3, -4 ); + break; case __LINE__: TRICE64_5 (ID(0), "tst:TRICE64_5 %d %d %d %d %d\n", -1, -2, -3, -4, -5 ); + break; case __LINE__: TRICE64_6 (ID(0), "tst:TRICE64_6 %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6 ); + break; case __LINE__: TRICE64_7 (ID(0), "tst:TRICE64_7 %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7 ); + break; case __LINE__: TRICE64_8 (ID(0), "tst:TRICE64_8 %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + break; case __LINE__: TRICE64_9 (ID(0), "tst:TRICE64_9 %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + break; case __LINE__: TRICE64_10(ID(0), "tst:TRICE64_10 %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 ); + break; case __LINE__: TRICE64_11(ID(0), "tst:TRICE64_11 %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + break; case __LINE__: TRICE64_12(ID(0), "tst:TRICE64_12 %d %d %d %d %d %d %d %d %d %d %d %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + break; case __LINE__: TRICE64_12(ID(0), "tst:TRICE64_12 %t %b %x %X %d %u %o %O %p %e %f %g\n", 3, 3, 3, 3, 3, 3, 3, 3, 3, aDouble(3.14159), aDouble(3.14159), aDouble(3.14159)); +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("att:positive and negative float in format variants\n"); + break; case __LINE__: { + trice("rd:TRICE float %f (%%f)\n", aFloat(x) ); + trice("rd:TRICE float %9f (%%9f)\n", aFloat(x) ); + trice("rd:TRICE float %.9f (%%.9f)\n", aFloat(x) ); + trice("rd:TRICE float %9.f (%%9.f)\n", aFloat(x) ); + trice("rd:TRICE float %9.6f (%%9.6f)\n", aFloat(x) ); + trice("rd:TRICE float %f (%%f)\n", aFloat(-x) ); + trice("rd:TRICE float %9f (%%9f)\n", aFloat(-x) ); + trice("rd:TRICE float %.9f (%%.9f)\n", aFloat(-x) ); + trice("rd:TRICE float %9.f (%%9.f)\n", aFloat(-x) ); + trice("rd:TRICE float %9.6f (%%9.6f)\n", aFloat(-x) ); + trice("rd:TRICE float %+f (%%f)\n", aFloat(x) ); + trice("rd:TRICE float %+9f (%%9f)\n", aFloat(x) ); + trice("rd:TRICE float %+.9f (%%.9f)\n", aFloat(x) ); + trice("rd:TRICE float %+9.f (%%9.f)\n", aFloat(x) ); + trice("rd:TRICE float %+9.6f (%%9.6f)\n", aFloat(x) ); + trice("rd:TRICE float %+f (%%f)\n", aFloat(-x) ); + trice("rd:TRICE float %+9f (%%9f)\n", aFloat(-x) ); + trice("rd:TRICE float %+.9f (%%.9f)\n", aFloat(-x) ); + trice("rd:TRICE float %+9.f (%%9.f)\n", aFloat(-x) ); + trice("rd:TRICE float %+9.6f (%%9.6f)\n", aFloat(-x) ); + trice("rd:TRICE float %-f (%%f)\n", aFloat(x) ); + trice("rd:TRICE float %-9f (%%9f)\n", aFloat(x) ); + trice("rd:TRICE float %-.9f (%%.9f)\n", aFloat(x) ); + trice("rd:TRICE float %-9.f (%%9.f)\n", aFloat(x) ); + trice("rd:TRICE float %-9.6f (%%9.6f)\n", aFloat(x) ); + trice("rd:TRICE float %-f (%%f)\n", aFloat(-x) ); + trice("rd:TRICE float %-9f (%%9f)\n", aFloat(-x) ); + trice("rd:TRICE float %-.9f (%%.9f)\n", aFloat(-x) ); + trice("rd:TRICE float %-9.f (%%9.f)\n", aFloat(-x) ); + trice("rd:TRICE float %-9.6f (%%9.6f)\n", aFloat(-x) ); + } +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: trice("att:positive float & double in variants\n"); + break; case __LINE__: TRICE32_1(ID(0), "rd:TRICE32_1 float %e (%%e)\n", aFloat(x) ); + break; case __LINE__: TRICE32_1(ID(0), "rd:TRICE32_1 float %f (%%f)\n", aFloat(x) ); + break; case __LINE__: TRICE32_1(ID(0), "rd:TRICE32_1 float %g (%%g)\n", aFloat(x) ); + break; case __LINE__: TRICE32_1(ID(0), "rd:TRICE32_1 float %E (%%E)\n", aFloat(x) ); + break; case __LINE__: TRICE32_1(ID(0), "rd:TRICE32_1 float %F (%%F)\n", aFloat(x) ); + break; case __LINE__: TRICE32_1(ID(0), "rd:TRICE32_1 float %G (%%G)\n", aFloat(x) ); + break; case __LINE__: TRICE32 (ID(0), "rd:TRICE32 float %e (%%e)\n", aFloat(x) ); + break; case __LINE__: TRICE32 (ID(0), "rd:TRICE32 float %f (%%f)\n", aFloat(x) ); + break; case __LINE__: TRICE32 (ID(0), "rd:TRICE32 float %g (%%g)\n", aFloat(x) ); + break; case __LINE__: TRICE32 (ID(0), "rd:TRICE32 float %E (%%E)\n", aFloat(x) ); + break; case __LINE__: TRICE32 (ID(0), "rd:TRICE32 float %F (%%F)\n", aFloat(x) ); + break; case __LINE__: TRICE32 (ID(0), "rd:TRICE32 float %G (%%G)\n", aFloat(x) ); + break; case __LINE__: TRICE (ID(0), "rd:TRICE float %e (%%e)\n", aFloat(x) ); + break; case __LINE__: TRICE (ID(0), "rd:TRICE float %f (%%f)\n", aFloat(x) ); + break; case __LINE__: TRICE (ID(0), "rd:TRICE float %g (%%g)\n", aFloat(x) ); + break; case __LINE__: TRICE (ID(0), "rd:TRICE float %E (%%E)\n", aFloat(x) ); + break; case __LINE__: TRICE (ID(0), "rd:TRICE float %F (%%F)\n", aFloat(x) ); + break; case __LINE__: TRICE (ID(0), "rd:TRICE float %G (%%G)\n", aFloat(x) ); + break; case __LINE__: TRICE64 (ID(0), "rd:TRICE64 double %e (%%e), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64 (ID(0), "rd:TRICE64 double %f (%%f), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64 (ID(0), "rd:TRICE64 double %g (%%g), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64 (ID(0), "rd:TRICE64 double %E (%%E), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64 (ID(0), "rd:TRICE64 double %F (%%F), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64 (ID(0), "rd:TRICE64 double %G (%%G), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64_1(ID(0), "rd:TRICE64_1 double %e (%%e), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64_1(ID(0), "rd:TRICE64_1 double %f (%%f), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64_1(ID(0), "rd:TRICE64_1 double %g (%%g), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64_1(ID(0), "rd:TRICE64_1 double %E (%%E), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64_1(ID(0), "rd:TRICE64_1 double %F (%%F), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: TRICE64_1(ID(0), "rd:TRICE64_1 double %G (%%G), aDouble(y)\n", aDouble(y) ); + break; case __LINE__: trice("att:negative float & double\n" ); + break; case __LINE__: trice("rd:TRICE float %e (%%e)\n", aFloat(-x) ); + break; case __LINE__: trice("rd:TRICE float %f (%%f)\n", aFloat(-x) ); + break; case __LINE__: trice("rd:TRICE float %g (%%g)\n", aFloat(-x) ); + break; case __LINE__: trice("rd:TRICE float %E (%%E)\n", aFloat(-x) ); + break; case __LINE__: trice("rd:TRICE float %F (%%F)\n", aFloat(-x) ); + break; case __LINE__: trice("rd:TRICE float %G (%%G)\n", aFloat(-x) ); + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 double %e (%%e), aDouble(y)\n", aDouble(-y) ); + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 double %f (%%f), aDouble(y)\n", aDouble(-y) ); + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 double %g (%%g), aDouble(y)\n", aDouble(-y) ); + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 double %E (%%E), aDouble(y)\n", aDouble(-y) ); + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 double %F (%%F), aDouble(y)\n", aDouble(-y) ); + break; case __LINE__: TRICE64(ID(0), "rd:TRICE64 double %G (%%G), aDouble(y)\n", aDouble(-y) ); + + break; case __LINE__: TRICE (ID(0), "att:formatted float\n" ); + break; case __LINE__: { + TRICE32(Id(0), "rd:TRICE32 float %12.6e (%%12.6e)\n", aFloat(x) ); + TRICE32(Id(0), "rd:TRICE32 float %12.6f (%%12.6f)\n", aFloat(x) ); + TRICE32(Id(0), "rd:TRICE32 float %12.6g (%%12.6g)\n", aFloat(x) ); + TRICE32(Id(0), "rd:TRICE32 float %12.6E (%%12.6E)\n", aFloat(x) ); + TRICE32(Id(0), "rd:TRICE32 float %12.6F (%%12.6F)\n", aFloat(x) ); + TRICE32(Id(0), "rd:TRICE32 float %12.6G (%%12.6G)\n", aFloat(x) ); + } + break; case __LINE__: TRICE (ID(0), "att:formatted double\n" ); + break; case __LINE__: { + TRICE64(Id(0), "rd:TRICE64 double %12.6e (%%12.6e), aDouble(y)\n", aDouble(y) ); + TRICE64(Id(0), "rd:TRICE64 double %12.6f (%%12.6f), aDouble(y)\n", aDouble(y) ); + TRICE64(Id(0), "rd:TRICE64 double %12.6g (%%12.6g), aDouble(y)\n", aDouble(y) ); + TRICE64(Id(0), "rd:TRICE64 double %12.6E (%%12.6E), aDouble(y)\n", aDouble(y) ); + TRICE64(Id(0), "rd:TRICE64 double %12.6F (%%12.6F), aDouble(y)\n", aDouble(y) ); + TRICE64(Id(0), "rd:TRICE64 double %12.6G (%%12.6G), aDouble(y)\n", aDouble(y) ); + } + break; case __LINE__: TRICE (ID(0), "att:Various single arguments\n" ); + break; case __LINE__: { + TRICE8(Id(0), "rd:TRICE8 line %t (%%t ,0)\n", 0 ); + TRICE8(Id(0), "rd:TRICE8 line %t (%%t ,2)\n", 2 ); + TRICE8(Id(0), "rd:TRICE8 line %u (%%u ,-1)\n", -1 ); + TRICE8(Id(0), "rd:TRICE8 line %b (%%b ,-1)\n", -1 ); + TRICE8(Id(0), "rd:TRICE8 line %o (%%o ,-1)\n", -1 ); + TRICE8(Id(0), "rd:TRICE8 line %O (%%O ,-1)\n", -1 ); + TRICE8(Id(0), "rd:TRICE8 line %X (%%X ,-1)\n", -1 ); + TRICE8(Id(0), "rd:TRICE8 line %x (%%x ,-1)\n", -1 ); + TRICE8(Id(0), "rd:TRICE8 line %d (%%d ,-1)\n", -1 ); + } + break; case __LINE__: { + TRICE16_1(Id(0), "rd:TRICE16_1 line %t (%%t ,0)\n", 0 ); + TRICE16_1(Id(0), "rd:TRICE16_1 line %t (%%t ,2)\n", 2 ); + TRICE16_1(Id(0), "rd:TRICE16_1 line %u (%%u -1)\n", -1 ); + TRICE16_1(Id(0), "rd:TRICE16_1 line %b (%%b -1)\n", -1 ); + TRICE16_1(Id(0), "rd:TRICE16_1 line %o (%%o -1)\n", -1 ); + TRICE16_1(Id(0), "rd:TRICE16_1 line %x (%%x -1)\n", -1 ); + TRICE16_1(Id(0), "rd:TRICE16_1 line %d (%%d -1)\n", -1 ); + Trice("rd:Trice line %t (%%t -1)\n", 0 ); + Trice("rd:Trice line %t (%%t -1)\n", 2 ); + Trice("rd:Trice line %u (%%u)\n", -1 ); + Trice("rd:Trice line %b (%%b)\n", -2 ); + Trice("rd:Trice line %o (%%o)\n", -3 ); + Trice("rd:Trice line %x (%%x)\n", -4 ); + Trice("rd:Trice line %d (%%d)\n", -5 ); + } + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 0 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 1 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 2 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 3 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 4 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 5 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 6 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 7 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 8 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 9 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 10 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 11 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 12 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 13 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 14 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 15 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 16 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 17 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 18 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 19 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 120 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 121 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 122 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 123 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 124 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 125 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 126 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 127 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 128 ); + break; case __LINE__: TRICE_N(id(0), "msg:%s\n", A, 129 ); +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: triceN("msg:%s\n", A, 0 ); + break; case __LINE__: triceN("msg:%s\n", A, 1 ); + break; case __LINE__: triceN("msg:%s\n", A, 2 ); + break; case __LINE__: triceN("msg:%s\n", A, 3 ); + break; case __LINE__: triceN("msg:%s\n", A, 4 ); + break; case __LINE__: triceN("msg:%s\n", A, 5 ); + break; case __LINE__: triceN("msg:%s\n", A, 6 ); + break; case __LINE__: triceN("msg:%s\n", A, 7 ); + break; case __LINE__: triceN("msg:%s\n", A, 8 ); + break; case __LINE__: triceN("msg:%s\n", A, 9 ); + break; case __LINE__: triceN("msg:%s\n", A, 10 ); + break; case __LINE__: triceN("msg:%s\n", A, 11 ); + break; case __LINE__: triceN("msg:%s\n", A, 12 ); + break; case __LINE__: triceN("msg:%s\n", A, 13 ); + break; case __LINE__: triceN("msg:%s\n", A, 14 ); + break; case __LINE__: triceN("msg:%s\n", A, 15 ); + break; case __LINE__: triceN("msg:%s\n", A, 16 ); + break; case __LINE__: triceN("msg:%s\n", A, 17 ); + break; case __LINE__: triceN("msg:%s\n", A, 18 ); + break; case __LINE__: triceN("msg:%s\n", A, 19 ); + break; case __LINE__: triceN("msg:%s\n", A, 120 ); + break; case __LINE__: triceN("msg:%s\n", A, 121 ); + break; case __LINE__: triceN("msg:%s\n", A, 122 ); + break; case __LINE__: triceN("msg:%s\n", A, 123 ); + break; case __LINE__: triceN("msg:%s\n", A, 124 ); + break; case __LINE__: triceN("msg:%s\n", A, 125 ); + break; case __LINE__: triceN("msg:%s\n", A, 126 ); + break; case __LINE__: triceN("msg:%s\n", A, 127 ); + break; case __LINE__: triceN("msg:%s\n", A, 128 ); + break; case __LINE__: triceN("msg:%s\n", A, 129 ); + + break; case __LINE__: trice("sig:TRICE with 1 to 12 values\n" ); + break; case __LINE__: trice("rd:TRICE %d\n", -1 ); //exp: time: default: rd:TRICE -1 + break; case __LINE__: trice("rd:TRICE %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE -1, -2 + break; case __LINE__: trice("rd:TRICE %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE -1, -2, -3 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE -1, -2, -3, -4 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice("rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 + + break; case __LINE__: trice("sig:TRICE_n with 1 to 12 values\n" ); + break; case __LINE__: trice("rd:TRICE_1 %d\n", -1 ); //exp: time: default: rd:TRICE_1 -1 + break; case __LINE__: trice("rd:TRICE_2 %d, %d\n", -1, -2 ); //exp: time: default: rd:TRICE_2 -1, -2 + break; case __LINE__: trice("rd:TRICE_3 %d, %d, %d\n", -1, -2, -3 ); //exp: time: default: rd:TRICE_3 -1, -2, -3 + break; case __LINE__: trice("rd:TRICE_4 %d, %d, %d, %d\n", -1, -2, -3, -4 ); //exp: time: default: rd:TRICE_4 -1, -2, -3, -4 + break; case __LINE__: trice("rd:TRICE_5 %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5 ); //exp: time: default: rd:TRICE_5 -1, -2, -3, -4, -5 + break; case __LINE__: trice("rd:TRICE_6 %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6 ); //exp: time: default: rd:TRICE_6 -1, -2, -3, -4, -5, -6 + break; case __LINE__: trice("rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7); //exp: time: default: rd:TRICE_7 -1, -2, -3, -4, -5, -6, -7 + break; case __LINE__: trice("rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8 ); //exp: time: default: rd:TRICE_8 -1, -2, -3, -4, -5, -6, -7, -8 + break; case __LINE__: trice("rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); //exp: time: default: rd:TRICE_9 -1, -2, -3, -4, -5, -6, -7, -8, -9 + break; case __LINE__: trice("rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); //exp: time: default: rd:TRICE_10 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 + break; case __LINE__: trice("rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); //exp: time: default: rd:TRICE_11 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 + break; case __LINE__: trice("rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); //exp: time: default: rd:TRICE_12 -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 +#if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: TRice("sig:Trice16 with 1 to 12 pointer\n" ); + break; case __LINE__: { + Trice16("rd:Trice16 %p\n", -1 ); + Trice16("rd:Trice16 %p, %p\n", -1, -2 ); + Trice16("rd:Trice16 %p, %p, %p\n", -1, -2, -3 ); + Trice16("rd:Trice16 %p, %p, %p, %p\n", -1, -2, -3, -4 ); + Trice16("rd:Trice16 %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5 ); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6 ); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + Trice16("rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + } + break; case __LINE__: TRice("sig:TRICE16 with 1 to 12 hex\n" ); + break; case __LINE__: { + Trice16("rd:Trice16 %X\n", -1 ); + Trice16("rd:Trice16 %X, %X\n", -1, -2 ); + Trice16("rd:Trice16 %X, %X, %X\n", -1, -2, -3 ); + Trice16("rd:Trice16 %X, %X, %X, %X\n", -1, -2, -3, -4 ); + Trice16("rd:Trice16 %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5 ); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6 ); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8 ); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9 ); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11 ); + Trice16("rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\n", -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12 ); + } +#endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) + break; case __LINE__: TRICE(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE_0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE_0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice_0("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice0("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE_0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE_0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice_0("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE8(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE8(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE8(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE8(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice8("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice8("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice8("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE8_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE8_0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE8_0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE8_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice8_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice8_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice8_0("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: trice16("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice16("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice16("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice16("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice16("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice16("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice16("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE16_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE16_0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE16_0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE16_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice16_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice16_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice16_0("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE32(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE32(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE32(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE32(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice32("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice32("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice32("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE32_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE32_0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE32_0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE32_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice32_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice32_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice32_0("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE64(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE64(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE64(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE64(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice64("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice64("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice64("w: Hello! 👋🙂 \a\n" ); // with sound! + + break; case __LINE__: TRICE64_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE64_0(id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE64_0(Id(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRICE64_0(ID(0), "w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: trice64_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: Trice64_0("w: Hello! 👋🙂 \a\n" ); // with sound! + break; case __LINE__: TRice64_0("w: Hello! 👋🙂 \a\n" ); // with sound! + + #endif // #if TRICE_CGO == 1 || defined(TRICE_FULL_CHECK) } +#endif // #else // #ifdef TRICE_CHECK_MIN } // clang-format on +#ifndef TRICE_CHECK_MIN + #if !TRICE_OFF static int32_t FloatToInt32(float f) { @@ -2553,25 +2606,25 @@ static int64_t DoubleToInt64(double f) { #endif //! SCOPY is a helper macro for struct serialization. -#define SCOPY(element) \ - do { \ - char* n = #element; \ - int size = sizeof(src->element); \ - memcpy(p, &(src->element), size); \ - p += size; \ - TRICE_S(ID(16140), "rd:sizeof(%8s)", n); \ - TRICE(ID(16141), " = %d\n", size); \ +#define SCOPY(element) \ + do { \ + char const* n_SCOPY = #element; \ + size_t size_SCOPY = sizeof(src->element); \ + memcpy(p, &(src->element), size_SCOPY); \ + p += size_SCOPY; \ + TRICE_S(ID(0), "rd:sizeof(%8s)", n_SCOPY); \ + TRICE(ID(0), " = %d\n", size_SCOPY); \ } while (0); //! DCOPY is a helper macro for struct deserialization. -#define DCOPY(element) \ - do { \ - char* n = #element; \ - int size = sizeof(dst->element); \ - memcpy(&(dst->element), p, size); \ - p += size; \ - TRICE_S(ID(16142), "rd:sizeof(%8s)", n); \ - TRICE(ID(16143), " = %d\n", size); \ +#define DCOPY(element) \ + do { \ + char const* n_DCOPY = #element; \ + size_t size_DCOPY = sizeof(dst->element); \ + memcpy(&(dst->element), p, size_DCOPY); \ + p += size_DCOPY; \ + TRICE_S(ID(0), "rd:sizeof(%8s)", n_DCOPY); \ + TRICE(ID(0), " = %d\n", size_DCOPY); \ } while (0); typedef struct { @@ -2657,7 +2710,7 @@ static void exampleOfManualSerialization(void) { Tryout_t tx; // struct to transfer Tryout_t rx; // "received" struct static char dst[100]; // serialized data - + ///////////////////////////////////////////////////////// // fill tx with data tx.z = (float)123.456; @@ -2671,14 +2724,14 @@ static void exampleOfManualSerialization(void) { memcpy(tx.names[1], "bbbb", strlen("bbbb")); memcpy(tx.names[2], "ccccc", strlen("ccccc")); - tx.point[0].x = 2.22; - tx.point[0].y = -3.33; + tx.point[0].x = 2.22f; + tx.point[0].y = -3.33f; tx.point[0].rgb[0] = 0x44; tx.point[0].rgb[0] = 0x66; tx.point[0].rgb[0] = 0x88; - tx.point[1].x = -66.66; - tx.point[1].y = +5.5555; + tx.point[1].x = -66.66f; + tx.point[1].y = +5.5555f; tx.point[1].rgb[0] = 0xee; tx.point[1].rgb[0] = 0xaa; tx.point[1].rgb[0] = 0xbb; @@ -2688,26 +2741,28 @@ static void exampleOfManualSerialization(void) { //////////////////////////////////////////////////////// #if !TRICE_OFF int len = serializeTryout(dst, &tx); // serialized byte count +#else + int len = 0; #endif - TRICE(Id(16144), "inf: Tryout tx struct:"); - TRICE8_B(Id(16145), " %02x ", &tx, sizeof(tx)); - TRICE(Id(16146), "\n"); + TRICE(Id(0), "inf: Tryout tx struct:"); + TRICE8_B(Id(0), " %02x ", &tx, sizeof(tx)); + TRICE(Id(0), "\n"); - TRICE(Id(16147), "inf: Tryout buffer:"); - TRICE8_B(Id(16148), " %02x ", dst, len); // lint !e670 - TRICE(Id(16149), "\n"); + TRICE(Id(0), "inf: Tryout buffer:"); + TRICE8_B(Id(0), " %02x ", dst, len); // lint !e670 + TRICE(Id(0), "\n"); #if !TRICE_OFF char* src = dst; // "copy" - assume, data transferred now ("data transfer") len = deserializeTryout(&rx, src); #endif - TRICE(Id(16150), "inf: Tryout rx struct:"); - TRICE8_B(Id(16151), " %02x ", &rx, sizeof(rx)); - TRICE(Id(16152), "\n"); + TRICE(Id(0), "inf: Tryout rx struct:"); + TRICE8_B(Id(0), " %02x ", &rx, sizeof(rx)); + TRICE(Id(0), "\n"); - TRICE(Id(16153), "inf:sizeOf(Trypout) = %d, buffer length = %d\n", sizeof(tx), len); - TRICE8_F(Id(16154), "info:TryoutStructFunction", &tx, sizeof(tx)); - TRICE8_F(Id(16155), "info:TryoutBufferFunction", dst, len); // lint !e670 + TRICE(Id(0), "inf:sizeOf(Trypout) = %d, buffer length = %d\n", sizeof(tx), len); + TRICE8_F(Id(0), "info:TryoutStructFunction", &tx, sizeof(tx)); + TRICE8_F(Id(0), "info:TryoutBufferFunction", dst, len); // lint !e670 } static void exampleOfManualJSONencoding(void) { @@ -2718,15 +2773,18 @@ static void exampleOfManualJSONencoding(void) { } Ex_t; Ex_t Ex = {-1, 2, (float)2.781}; #endif - Trice(iD(16156), "att:MyStructEvaluationFunction(json:ExA{Apple:%d, Birn:%u, Fisch:%f}\n", Ex.Apple, Ex.Birn, aFloat(Ex.Fish)); + Trice("att:MyStructEvaluationFunction(json:ExA{Apple:%d, Birn:%u, Fisch:%f})\n", Ex.Apple, Ex.Birn, aFloat(Ex.Fish)); } static void dynString(int n) { - char* s = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,"; + char const* s = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,"; const size_t l = strlen(s); - n = n < l ? n : l; - // trice(iD(16157), "sig:%3d:", n ); - this gets overwritten in CGO_Test case, so we avoid it to keep testing simple. - TRICE_N(id(16158), "wr:%s\n", s, n); + size_t N_dynString = (size_t)n; // avoid warning: comparison of integer expressions of different signedness: 'int' and 'size_t' + N_dynString = N_dynString < l ? N_dynString : l; + // trice("sig:%3d:", n ); - this gets overwritten in CGO_Test case, so we avoid it to keep testing simple. + TRICE_N(id(0), "wr:%s\n", s, N_dynString); } +#endif // #ifndef TRICE_CHECK_MIN + #endif // #if !TRICE_OFF diff --git a/_test/updateTestData.sh b/_test/updateTestData.sh deleted file mode 100755 index 28f7b1a6a..000000000 --- a/_test/updateTestData.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/usr/bin/env bash - -# clean history -rm -f ./testdata/til.json ./testdata/li.json ../examples/F030R8_inst/til.json ../examples/F030R8_inst/li.json ../examples/G0B1_inst/til.json ../examples/G0B1_inst/li.json ../examples/L432KC_gen_ad_toClang_ed_instr/til.json ../examples/L432KC_gen_ad_toClang_ed_instr/li.json -touch ./testdata/til.json ./testdata/li.json ../examples/F030R8_inst/til.json ../examples/F030R8_inst/li.json ../examples/G0B1_inst/til.json ../examples/G0B1_inst/li.json ../examples/L432KC_gen_ad_toClang_ed_instr/til.json ../examples/L432KC_gen_ad_toClang_ed_instr/li.json -trice clean -src ./ -src ../examples/exampleData -i ./testdata/til.json -li ./testdata/li.json - -# insert IDs into source code -rm -f ./testdata/til.json ./testdata/li.json ../examples/F030R8_inst/til.json ../examples/F030R8_inst/li.json ../examples/G0B1_inst/til.json ../examples/G0B1_inst/li.json ../examples/L432KC_gen_ad_toClang_ed_instr/til.json ../examples/L432KC_gen_ad_toClang_ed_instr/li.json -touch ./testdata/til.json ./testdata/li.json ../examples/F030R8_inst/til.json ../examples/F030R8_inst/li.json ../examples/G0B1_inst/til.json ../examples/G0B1_inst/li.json ../examples/L432KC_gen_ad_toClang_ed_instr/til.json ../examples/L432KC_gen_ad_toClang_ed_instr/li.json -trice insert -src ./testdata/triceCheck.c -i ./testdata/til.json -li ./testdata/li.json -IDMin 14000 -IDMax 16199 -IDMethod upward # This should restore triceCheck.c. -trice insert -src ../examples/exampleData -i ./testdata/til.json -li ./testdata/li.json -IDMax 16383 -IDMethod downward # This should restore triceLogSiagData.c. -trice insert -src ./ -i ./testdata/til.json -li ./testdata/li.json -IDMin 16200 -IDMax 16383 -IDMethod upward # This schoud restore tests and extend til.json. - -# The file cgoPackage.go is the same in all cgo test packages, but must be inside the folders. -# os agnostic links would be better. -CGOTESTDIRS=" - be_dblB_de_tcobs_ua/ - be_staticB_di_xtea_cobs_rtt32/ - _ERROR_dblB_di_cobs_rtt32__de_xtea_cobs_ua/ - _ERROR_ringB_di_cobs_rtt32__de_xtea_cobs_ua/ - _ERROR_ringB_di_xtea_cobs_rtt32__de_cobs_ua/ - _ERROR_ringB_di_xtea_cobs_rtt32__de_tcobs_ua/ - dblB_de_cobs_ua/ - dblB_de_multi_cobs_ua/ - dblB_de_multi_nopf_ua/ - dblB_de_multi_tcobs_ua/ - dblB_de_multi_xtea_cobs_ua/ - dblB_de_multi_xtea_tcobs_ua/ - dblB_de_nopf_ua/ - dblB_de_tcobs_ua/ - dblB_de_xtea_cobs_ua/ - dblB_de_xtea_tcobs_ua/ - dblB_di_nopf_rtt32__de_cobs_ua/ - dblB_di_nopf_rtt32__de_multi_cobs_ua/ - dblB_di_nopf_rtt32__de_multi_tcobs_ua/ - dblB_di_nopf_rtt32__de_tcobs_ua/ - dblB_di_nopf_rtt32__de_xtea_cobs_ua/ - dblB_di_nopf_rtt8__de_cobs_ua/ - dblB_di_nopf_rtt8__de_multi_cobs_ua/ - dblB_di_nopf_rtt8__de_multi_tcobs_ua/ - dblB_di_nopf_rtt8__de_tcobs_ua/ - ringB_de_cobs_ua/ - ringB_de_nopf_ua/ - ringB_de_tcobs_ua/ - ringB_de_xtea_cobs_ua/ - ringB_de_xtea_tcobs_ua/ - _ringB_de_multi_cobs_ua/ - ringB_de_multi_tcobs_ua/ - ringB_de_multi_xtea_cobs_ua/ - ringB_de_multi_xtea_tcobs_ua/ - ringB_di_cobs_rtt32__de_tcobs_ua/ - ringB_di_cobs_rtt8__de_tcobs_ua/ - ringB_di_nopf_rtt32__de_tcobs_ua/ - ringB_di_nopf_rtt32__de_xtea_cobs_ua/ - ringB_di_nopf_rtt8__de_tcobs_ua/ - ringB_di_tcobs_rtt32__de_tcobs_ua/ - ringB_di_xtea_cobs_rtt32__de_xtea_cobs_ua/ - stackB_di_nopf_aux32/ - stackB_di_nopf_aux8/ - stackB_di_nopf_rtt32/ - stackB_di_nopf_rtt8/ - stackB_di_xtea_cobs_rtt8/ - staticB_di_nopf_aux32/ - staticB_di_nopf_aux8/ - staticB_di_nopf_rtt32/ - staticB_di_nopf_rtt8/ - staticB_di_tcobs_rtt32/ - staticB_di_tcobs_rtt8/ - staticB_di_xtea_cobs_rtt32/ -" - -for d in $CGOTESTDIRS -do - cp ./testdata/cgoPackage.go ./$d/generated_cgoPackage.go -done - -go clean -cache diff --git a/build_environment.sh b/build_environment.sh new file mode 100755 index 000000000..aa2b7061f --- /dev/null +++ b/build_environment.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +# Adapt build_environment.sh file to your system eventually. + +if ! command -v arm-none-eabi-gcc; then + echo arm-none-eabi-gcc not found +fi +if ! command -v clang; then + echo clang not found +fi + +# Put ARM Clang first in path temporary to avoid compiler variants issues. +# llvm-size path under Darwin mabe not set after clang install. +# ARM Clang uses the ARM GNU toolchain libraries and finds them over C_INCLUDE_PATH. + +if [[ "$OSTYPE" == "linux-gnu"* ]]; then + # which returns s.th. like /...-arm-none-eabi/bin//arm-none-eabi-gcc # 2 slashes + # <--- 22 chars ---> + loc=`which arm-none-eabi-gcc` && export C_INCLUDE_PATH=${loc:0:${#loc}-22}arm-none-eabi/include + export MAKE_JOBS="-j" + +elif [[ "$OSTYPE" == "darwin"* ]]; then + echo '$OSTYPE = darwin: MacOS' + # Check if Homebrew is installed + if ! command -v brew >/dev/null 2>&1; then + echo "Homebrew is not installed. Please install Homebrew first." + exit 1 + fi + + # Check if gcc-arm-embedded is installed via cask + if brew list --cask | grep -q "^gcc-arm-embedded$"; then + version=$(brew list --cask --versions gcc-arm-embedded | awk '{print $2}') + echo "Installed gcc-arm-embedded version: $version" + else + echo "gcc-arm-embedded is not installed via Homebrew Cask." + fi + + export PATH="/Library/Developer/CommandLineTools/usr/bin:$PATH" # needed for llvm-size + export PATH="/opt/homebrew/opt/binutils/bin:$PATH" + export C_INCLUDE_PATH="/Applications/ArmGNUToolchain/${version}/arm-none-eabi/arm-none-eabi/include" + export MAKE_JOBS="-j" + +elif [[ "$OSTYPE" == "cygwin" ]]; then + echo '$OSTYPE = cygwin: POSIX compatibility layer and Linux environment emulation for Windows' + export MAKE_JOBS="" # Enabling -j here can cause blocking. + +elif [[ "$OSTYPE" == "msys" ]]; then + echo '$OSTYPE msys: Lightweight shell and GNU utilities compiled for Windows (part of MinGW)' + # which returns s.th. like /...-arm-none-eabi/bin/arm-none-eabi-gcc # 1 slash + # <--- 22 chars ---> + loc=`which arm-none-eabi-gcc` && export C_INCLUDE_PATH=${loc:0:${#loc}-22}/arm-none-eabi/include + export MAKE_JOBS="" # Enabling -j here can cause blocking. + +elif [[ "$OSTYPE" == "win32" ]]; then + echo $OSTYPE # I'm not sure this can happen. + echo '$OSTYPE is win32' + +elif [[ "$OSTYPE" == "freebsd"* ]]; then + echo $OSTYPE # ... + echo '$OSTYPE is freebsd' + +else + echo $OSTYPE # Unknown. + echo '$OSTYPE is unknown' +fi + +echo "C_INCLUDE_PATH set to: $C_INCLUDE_PATH" + \ No newline at end of file diff --git a/clang-format.sh b/clang-format.sh index d9efbba60..39089a9ad 100755 --- a/clang-format.sh +++ b/clang-format.sh @@ -3,6 +3,4 @@ clang-format -i \ ./src/*.h \ ./_test/*/*.c \ ./_test/*/*.h \ -./examples/*/trice*.c \ -./examples/*/trice*.h \ - +./examples/*_inst/Core/Inc/trice*.h \ diff --git a/clean-dsstore.sh b/clean-dsstore.sh new file mode 100755 index 000000000..25e11a5cc --- /dev/null +++ b/clean-dsstore.sh @@ -0,0 +1,80 @@ +#!/bin/bash + +# ================================================ +# clean-dsstore-advanced.sh +# Deletes .DS_Store files recursively +# +# 📌 Usage: +# ./clean-dsstore-advanced.sh [TARGET_DIR] [--dry-run] +# +# ✅ Examples: +# ./clean-dsstore-advanced.sh # cleans current directory +# ./clean-dsstore-advanced.sh ~/Documents # cleans specific directory +# ./clean-dsstore-advanced.sh --dry-run # shows what would be deleted +# +# ⚠️ Notes: +# - Excludes system-protected macOS folders +# - Quits and restarts Finder only if it was running +# ================================================ + +# === Terminal colors === +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +BLUE='\033[1;34m' +NC='\033[0m' # No color + +# === Default settings === +TARGET_DIR="." +DRY_RUN=false + +# === Parse arguments === +for arg in "$@"; do + case "$arg" in + --dry-run) DRY_RUN=true ;; + /*) TARGET_DIR="$arg" ;; + esac +done + +COUNT=0 +OS_TYPE="$(uname)" + +if [[ $OS_TYPE == "Darwin" ]]; then + # === Check if Finder is running === + FINDER_WAS_RUNNING=false + if pgrep -xq "Finder"; then + FINDER_WAS_RUNNING=true + echo -e "${YELLOW}🛑 Quitting Finder to prevent interference...${NC}" + osascript -e 'tell application "Finder" to quit' + fi +fi + +echo -e "${BLUE}🔍 Scanning for .DS_Store files...${NC}" + +# === Main find/delete loop === +find "$TARGET_DIR" \ + -path "*/.Spotlight-V100" -prune -o \ + -path "*/.DocumentRevisions-V100" -prune -o \ + -path "*/.TemporaryItems" -prune -o \ + -name '.DS_Store' -type f -print | while read -r file; do + echo -e "${YELLOW}🗑️ Found: $file${NC}" + if [ "$DRY_RUN" = false ]; then + rm -f "$file" && ((COUNT++)) && \ + echo -e "${GREEN}✔️ Deleted${NC}" + else + ((COUNT++)) + fi +done + +# === Summary === +echo -e "${BLUE}✅ Done. Processed $COUNT file(s).${NC}" + +if [[ $OS_TYPE == "Darwin" ]]; then + # === Restart Finder if it was previously running === + if [ "$FINDER_WAS_RUNNING" = true ]; then + echo -e "${YELLOW}🔄 Restarting Finder...${NC}" + open -a Finder + else + echo -e "${BLUE}📎 Finder was not running before – not restarted.${NC}" + fi +fi diff --git a/cmd/trice/main.go b/cmd/trice/main.go index 12059f46c..e7816dd9a 100644 --- a/cmd/trice/main.go +++ b/cmd/trice/main.go @@ -25,7 +25,7 @@ var ( // main is the entry point. func main() { - fSys := &afero.Afero{Fs: afero.NewOsFs()} // os.DirFS("") + fSys := &afero.Afero{Fs: afero.NewOsFs()} e := doit(os.Stdout, fSys) if e != nil { log.Fatal(e) @@ -40,8 +40,6 @@ func doit(w io.Writer, fSys *afero.Afero) error { args.Commit = commit args.Date = date - //rand.Seed(time.Now().UnixNano()) - return args.Handler(w, fSys, os.Args) } diff --git a/cmd/trice/main_test.go b/cmd/trice/main_test.go index 5cf74eb89..19dc655c2 100644 --- a/cmd/trice/main_test.go +++ b/cmd/trice/main_test.go @@ -38,7 +38,7 @@ func setupTest(t *testing.T, fSys *afero.Afero) func() { id.Min = id.TriceID(1000) id.Max = id.TriceID(7999) id.SearchMethod = "random" - id.LiPathIsRelative = false + id.LIPathKind = "base" //id.Srcs ArrayFlag //id.IDData idData id.ExtendMacrosWithParamCount = false diff --git a/demoLI.json b/demoLI.json new file mode 100644 index 000000000..cea16482d --- /dev/null +++ b/demoLI.json @@ -0,0 +1,9190 @@ +{ + "13000": { + "File": "examples/F030_inst/Core/Src/stm32f0xx_it.c", + "Line": 162 + }, + "13001": { + "File": "examples/F030_inst/Core/Src/stm32f0xx_it.c", + "Line": 168 + }, + "13002": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 84 + }, + "13003": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 122 + }, + "13004": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 125 + }, + "13005": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 128 + }, + "13006": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 131 + }, + "13007": { + "File": "examples/G0B1_inst/Core/Src/stm32g0xx_it.c", + "Line": 119 + }, + "13008": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 337 + }, + "13009": { + "File": "examples/G0B1_inst/Core/Src/main.c", + "Line": 364 + }, + "13010": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 44 + }, + "13011": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 56 + }, + "13012": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 66 + }, + "13013": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 76 + }, + "13014": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 86 + }, + "13015": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 96 + }, + "13016": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 106 + }, + "13017": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 116 + }, + "13018": { + "File": "examples/L432_inst/Core/Src/stm32l4xx_it.c", + "Line": 191 + }, + "13019": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 126 + }, + "13020": { + "File": "examples/L432_inst/Core/Src/stm32l4xx_it.c", + "Line": 197 + }, + "13021": { + "File": "examples/L432_inst/Core/Src/main.c", + "Line": 338 + }, + "13022": { + "File": "examples/L432_inst/Core/Src/main.c", + "Line": 365 + }, + "13023": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 944 + }, + "13024": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 954 + }, + "13025": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 971 + }, + "13026": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 980 + }, + "13027": { + "File": "examples/L432_inst/Core/Inc/triceConfig.h", + "Line": 997 + }, + "13028": { + "File": "_test/testdata/triceCheck.c", + "Line": 36 + }, + "13029": { + "File": "_test/testdata/triceCheck.c", + "Line": 59 + }, + "13030": { + "File": "_test/testdata/triceCheck.c", + "Line": 61 + }, + "13031": { + "File": "_test/testdata/triceCheck.c", + "Line": 63 + }, + "13032": { + "File": "_test/testdata/triceCheck.c", + "Line": 64 + }, + "13033": { + "File": "_test/testdata/triceCheck.c", + "Line": 65 + }, + "13034": { + "File": "_test/testdata/triceCheck.c", + "Line": 141 + }, + "13035": { + "File": "_test/testdata/triceCheck.c", + "Line": 142 + }, + "13036": { + "File": "_test/testdata/triceCheck.c", + "Line": 143 + }, + "13037": { + "File": "_test/testdata/triceCheck.c", + "Line": 144 + }, + "13038": { + "File": "_test/testdata/triceCheck.c", + "Line": 145 + }, + "13039": { + "File": "_test/testdata/triceCheck.c", + "Line": 146 + }, + "13040": { + "File": "_test/testdata/triceCheck.c", + "Line": 147 + }, + "13041": { + "File": "_test/testdata/triceCheck.c", + "Line": 148 + }, + "13042": { + "File": "_test/testdata/triceCheck.c", + "Line": 149 + }, + "13043": { + "File": "_test/testdata/triceCheck.c", + "Line": 150 + }, + "13044": { + "File": "_test/testdata/triceCheck.c", + "Line": 151 + }, + "13045": { + "File": "_test/testdata/triceCheck.c", + "Line": 152 + }, + "13046": { + "File": "_test/testdata/triceCheck.c", + "Line": 153 + }, + "13047": { + "File": "_test/testdata/triceCheck.c", + "Line": 154 + }, + "13048": { + "File": "_test/testdata/triceCheck.c", + "Line": 156 + }, + "13049": { + "File": "_test/testdata/triceCheck.c", + "Line": 157 + }, + "13050": { + "File": "_test/testdata/triceCheck.c", + "Line": 158 + }, + "13051": { + "File": "_test/testdata/triceCheck.c", + "Line": 159 + }, + "13052": { + "File": "_test/testdata/triceCheck.c", + "Line": 160 + }, + "13053": { + "File": "_test/testdata/triceCheck.c", + "Line": 161 + }, + "13054": { + "File": "_test/testdata/triceCheck.c", + "Line": 162 + }, + "13055": { + "File": "_test/testdata/triceCheck.c", + "Line": 163 + }, + "13056": { + "File": "_test/testdata/triceCheck.c", + "Line": 164 + }, + "13057": { + "File": "_test/testdata/triceCheck.c", + "Line": 165 + }, + "13058": { + "File": "_test/testdata/triceCheck.c", + "Line": 166 + }, + "13059": { + "File": "_test/testdata/triceCheck.c", + "Line": 167 + }, + "13060": { + "File": "_test/testdata/triceCheck.c", + "Line": 168 + }, + "13061": { + "File": "_test/testdata/triceCheck.c", + "Line": 169 + }, + "13062": { + "File": "_test/testdata/triceCheck.c", + "Line": 171 + }, + "13063": { + "File": "_test/testdata/triceCheck.c", + "Line": 172 + }, + "13064": { + "File": "_test/testdata/triceCheck.c", + "Line": 173 + }, + "13065": { + "File": "_test/testdata/triceCheck.c", + "Line": 174 + }, + "13066": { + "File": "_test/testdata/triceCheck.c", + "Line": 175 + }, + "13067": { + "File": "_test/testdata/triceCheck.c", + "Line": 176 + }, + "13068": { + "File": "_test/testdata/triceCheck.c", + "Line": 177 + }, + "13069": { + "File": "_test/testdata/triceCheck.c", + "Line": 178 + }, + "13070": { + "File": "_test/testdata/triceCheck.c", + "Line": 179 + }, + "13071": { + "File": "_test/testdata/triceCheck.c", + "Line": 180 + }, + "13072": { + "File": "_test/testdata/triceCheck.c", + "Line": 181 + }, + "13073": { + "File": "_test/testdata/triceCheck.c", + "Line": 182 + }, + "13074": { + "File": "_test/testdata/triceCheck.c", + "Line": 183 + }, + "13075": { + "File": "_test/testdata/triceCheck.c", + "Line": 184 + }, + "13076": { + "File": "_test/testdata/triceCheck.c", + "Line": 186 + }, + "13077": { + "File": "_test/testdata/triceCheck.c", + "Line": 187 + }, + "13078": { + "File": "_test/testdata/triceCheck.c", + "Line": 188 + }, + "13079": { + "File": "_test/testdata/triceCheck.c", + "Line": 189 + }, + "13080": { + "File": "_test/testdata/triceCheck.c", + "Line": 190 + }, + "13081": { + "File": "_test/testdata/triceCheck.c", + "Line": 191 + }, + "13082": { + "File": "_test/testdata/triceCheck.c", + "Line": 192 + }, + "13083": { + "File": "_test/testdata/triceCheck.c", + "Line": 193 + }, + "13084": { + "File": "_test/testdata/triceCheck.c", + "Line": 194 + }, + "13085": { + "File": "_test/testdata/triceCheck.c", + "Line": 195 + }, + "13086": { + "File": "_test/testdata/triceCheck.c", + "Line": 196 + }, + "13087": { + "File": "_test/testdata/triceCheck.c", + "Line": 197 + }, + "13088": { + "File": "_test/testdata/triceCheck.c", + "Line": 198 + }, + "13089": { + "File": "_test/testdata/triceCheck.c", + "Line": 199 + }, + "13090": { + "File": "_test/testdata/triceCheck.c", + "Line": 200 + }, + "13091": { + "File": "_test/testdata/triceCheck.c", + "Line": 202 + }, + "13092": { + "File": "_test/testdata/triceCheck.c", + "Line": 203 + }, + "13093": { + "File": "_test/testdata/triceCheck.c", + "Line": 204 + }, + "13094": { + "File": "_test/testdata/triceCheck.c", + "Line": 205 + }, + "13095": { + "File": "_test/testdata/triceCheck.c", + "Line": 206 + }, + "13096": { + "File": "_test/testdata/triceCheck.c", + "Line": 207 + }, + "13097": { + "File": "_test/testdata/triceCheck.c", + "Line": 208 + }, + "13098": { + "File": "_test/testdata/triceCheck.c", + "Line": 209 + }, + "13099": { + "File": "_test/testdata/triceCheck.c", + "Line": 210 + }, + "13100": { + "File": "_test/testdata/triceCheck.c", + "Line": 211 + }, + "13101": { + "File": "_test/testdata/triceCheck.c", + "Line": 212 + }, + "13102": { + "File": "_test/testdata/triceCheck.c", + "Line": 213 + }, + "13103": { + "File": "_test/testdata/triceCheck.c", + "Line": 214 + }, + "13104": { + "File": "_test/testdata/triceCheck.c", + "Line": 215 + }, + "13105": { + "File": "_test/testdata/triceCheck.c", + "Line": 216 + }, + "13106": { + "File": "_test/testdata/triceCheck.c", + "Line": 218 + }, + "13107": { + "File": "_test/testdata/triceCheck.c", + "Line": 222 + }, + "13108": { + "File": "_test/testdata/triceCheck.c", + "Line": 226 + }, + "13109": { + "File": "_test/testdata/triceCheck.c", + "Line": 227 + }, + "13110": { + "File": "_test/testdata/triceCheck.c", + "Line": 229 + }, + "13111": { + "File": "_test/testdata/triceCheck.c", + "Line": 230 + }, + "13112": { + "File": "_test/testdata/triceCheck.c", + "Line": 232 + }, + "13113": { + "File": "_test/testdata/triceCheck.c", + "Line": 234 + }, + "13114": { + "File": "_test/testdata/triceCheck.c", + "Line": 236 + }, + "13115": { + "File": "_test/testdata/triceCheck.c", + "Line": 238 + }, + "13116": { + "File": "_test/testdata/triceCheck.c", + "Line": 241 + }, + "13117": { + "File": "_test/testdata/triceCheck.c", + "Line": 242 + }, + "13118": { + "File": "_test/testdata/triceCheck.c", + "Line": 243 + }, + "13119": { + "File": "_test/testdata/triceCheck.c", + "Line": 244 + }, + "13120": { + "File": "_test/testdata/triceCheck.c", + "Line": 245 + }, + "13121": { + "File": "_test/testdata/triceCheck.c", + "Line": 246 + }, + "13122": { + "File": "_test/testdata/triceCheck.c", + "Line": 247 + }, + "13123": { + "File": "_test/testdata/triceCheck.c", + "Line": 248 + }, + "13124": { + "File": "_test/testdata/triceCheck.c", + "Line": 249 + }, + "13125": { + "File": "_test/testdata/triceCheck.c", + "Line": 250 + }, + "13126": { + "File": "_test/testdata/triceCheck.c", + "Line": 251 + }, + "13127": { + "File": "_test/testdata/triceCheck.c", + "Line": 252 + }, + "13128": { + "File": "_test/testdata/triceCheck.c", + "Line": 253 + }, + "13129": { + "File": "_test/testdata/triceCheck.c", + "Line": 254 + }, + "13130": { + "File": "_test/testdata/triceCheck.c", + "Line": 255 + }, + "13131": { + "File": "_test/testdata/triceCheck.c", + "Line": 256 + }, + "13132": { + "File": "_test/testdata/triceCheck.c", + "Line": 257 + }, + "13133": { + "File": "_test/testdata/triceCheck.c", + "Line": 258 + }, + "13134": { + "File": "_test/testdata/triceCheck.c", + "Line": 259 + }, + "13135": { + "File": "_test/testdata/triceCheck.c", + "Line": 260 + }, + "13136": { + "File": "_test/testdata/triceCheck.c", + "Line": 261 + }, + "13137": { + "File": "_test/testdata/triceCheck.c", + "Line": 262 + }, + "13138": { + "File": "_test/testdata/triceCheck.c", + "Line": 263 + }, + "13139": { + "File": "_test/testdata/triceCheck.c", + "Line": 264 + }, + "13140": { + "File": "_test/testdata/triceCheck.c", + "Line": 266 + }, + "13141": { + "File": "_test/testdata/triceCheck.c", + "Line": 267 + }, + "13142": { + "File": "_test/testdata/triceCheck.c", + "Line": 268 + }, + "13143": { + "File": "_test/testdata/triceCheck.c", + "Line": 269 + }, + "13144": { + "File": "_test/testdata/triceCheck.c", + "Line": 270 + }, + "13145": { + "File": "_test/testdata/triceCheck.c", + "Line": 271 + }, + "13146": { + "File": "_test/testdata/triceCheck.c", + "Line": 272 + }, + "13147": { + "File": "_test/testdata/triceCheck.c", + "Line": 273 + }, + "13148": { + "File": "_test/testdata/triceCheck.c", + "Line": 274 + }, + "13149": { + "File": "_test/testdata/triceCheck.c", + "Line": 275 + }, + "13150": { + "File": "_test/testdata/triceCheck.c", + "Line": 276 + }, + "13151": { + "File": "_test/testdata/triceCheck.c", + "Line": 277 + }, + "13152": { + "File": "_test/testdata/triceCheck.c", + "Line": 278 + }, + "13153": { + "File": "_test/testdata/triceCheck.c", + "Line": 279 + }, + "13154": { + "File": "_test/testdata/triceCheck.c", + "Line": 280 + }, + "13155": { + "File": "_test/testdata/triceCheck.c", + "Line": 281 + }, + "13156": { + "File": "_test/testdata/triceCheck.c", + "Line": 282 + }, + "13157": { + "File": "_test/testdata/triceCheck.c", + "Line": 283 + }, + "13158": { + "File": "_test/testdata/triceCheck.c", + "Line": 284 + }, + "13159": { + "File": "_test/testdata/triceCheck.c", + "Line": 285 + }, + "13160": { + "File": "_test/testdata/triceCheck.c", + "Line": 286 + }, + "13161": { + "File": "_test/testdata/triceCheck.c", + "Line": 287 + }, + "13162": { + "File": "_test/testdata/triceCheck.c", + "Line": 288 + }, + "13163": { + "File": "_test/testdata/triceCheck.c", + "Line": 289 + }, + "13164": { + "File": "_test/testdata/triceCheck.c", + "Line": 292 + }, + "13165": { + "File": "_test/testdata/triceCheck.c", + "Line": 293 + }, + "13166": { + "File": "_test/testdata/triceCheck.c", + "Line": 294 + }, + "13167": { + "File": "_test/testdata/triceCheck.c", + "Line": 296 + }, + "13168": { + "File": "_test/testdata/triceCheck.c", + "Line": 297 + }, + "13169": { + "File": "_test/testdata/triceCheck.c", + "Line": 298 + }, + "13170": { + "File": "_test/testdata/triceCheck.c", + "Line": 299 + }, + "13171": { + "File": "_test/testdata/triceCheck.c", + "Line": 300 + }, + "13172": { + "File": "_test/testdata/triceCheck.c", + "Line": 301 + }, + "13173": { + "File": "_test/testdata/triceCheck.c", + "Line": 302 + }, + "13174": { + "File": "_test/testdata/triceCheck.c", + "Line": 303 + }, + "13175": { + "File": "_test/testdata/triceCheck.c", + "Line": 304 + }, + "13176": { + "File": "_test/testdata/triceCheck.c", + "Line": 306 + }, + "13177": { + "File": "_test/testdata/triceCheck.c", + "Line": 308 + }, + "13178": { + "File": "_test/testdata/triceCheck.c", + "Line": 309 + }, + "13179": { + "File": "_test/testdata/triceCheck.c", + "Line": 310 + }, + "13180": { + "File": "_test/testdata/triceCheck.c", + "Line": 313 + }, + "13181": { + "File": "_test/testdata/triceCheck.c", + "Line": 314 + }, + "13182": { + "File": "_test/testdata/triceCheck.c", + "Line": 315 + }, + "13183": { + "File": "_test/testdata/triceCheck.c", + "Line": 317 + }, + "13184": { + "File": "_test/testdata/triceCheck.c", + "Line": 318 + }, + "13185": { + "File": "_test/testdata/triceCheck.c", + "Line": 319 + }, + "13186": { + "File": "_test/testdata/triceCheck.c", + "Line": 320 + }, + "13187": { + "File": "_test/testdata/triceCheck.c", + "Line": 321 + }, + "13188": { + "File": "_test/testdata/triceCheck.c", + "Line": 322 + }, + "13189": { + "File": "_test/testdata/triceCheck.c", + "Line": 323 + }, + "13190": { + "File": "_test/testdata/triceCheck.c", + "Line": 324 + }, + "13191": { + "File": "_test/testdata/triceCheck.c", + "Line": 325 + }, + "13192": { + "File": "_test/testdata/triceCheck.c", + "Line": 326 + }, + "13193": { + "File": "_test/testdata/triceCheck.c", + "Line": 327 + }, + "13194": { + "File": "_test/testdata/triceCheck.c", + "Line": 328 + }, + "13195": { + "File": "_test/testdata/triceCheck.c", + "Line": 329 + }, + "13196": { + "File": "_test/testdata/triceCheck.c", + "Line": 330 + }, + "13197": { + "File": "_test/testdata/triceCheck.c", + "Line": 332 + }, + "13198": { + "File": "_test/testdata/triceCheck.c", + "Line": 333 + }, + "13199": { + "File": "_test/testdata/triceCheck.c", + "Line": 334 + }, + "13200": { + "File": "_test/testdata/triceCheck.c", + "Line": 335 + }, + "13201": { + "File": "_test/testdata/triceCheck.c", + "Line": 336 + }, + "13202": { + "File": "_test/testdata/triceCheck.c", + "Line": 337 + }, + "13203": { + "File": "_test/testdata/triceCheck.c", + "Line": 338 + }, + "13204": { + "File": "_test/testdata/triceCheck.c", + "Line": 339 + }, + "13205": { + "File": "_test/testdata/triceCheck.c", + "Line": 340 + }, + "13206": { + "File": "_test/testdata/triceCheck.c", + "Line": 341 + }, + "13207": { + "File": "_test/testdata/triceCheck.c", + "Line": 342 + }, + "13208": { + "File": "_test/testdata/triceCheck.c", + "Line": 343 + }, + "13209": { + "File": "_test/testdata/triceCheck.c", + "Line": 344 + }, + "13210": { + "File": "_test/testdata/triceCheck.c", + "Line": 346 + }, + "13211": { + "File": "_test/testdata/triceCheck.c", + "Line": 347 + }, + "13212": { + "File": "_test/testdata/triceCheck.c", + "Line": 348 + }, + "13213": { + "File": "_test/testdata/triceCheck.c", + "Line": 349 + }, + "13214": { + "File": "_test/testdata/triceCheck.c", + "Line": 350 + }, + "13215": { + "File": "_test/testdata/triceCheck.c", + "Line": 351 + }, + "13216": { + "File": "_test/testdata/triceCheck.c", + "Line": 352 + }, + "13217": { + "File": "_test/testdata/triceCheck.c", + "Line": 354 + }, + "13218": { + "File": "_test/testdata/triceCheck.c", + "Line": 355 + }, + "13219": { + "File": "_test/testdata/triceCheck.c", + "Line": 356 + }, + "13220": { + "File": "_test/testdata/triceCheck.c", + "Line": 357 + }, + "13221": { + "File": "_test/testdata/triceCheck.c", + "Line": 358 + }, + "13222": { + "File": "_test/testdata/triceCheck.c", + "Line": 359 + }, + "13223": { + "File": "_test/testdata/triceCheck.c", + "Line": 361 + }, + "13224": { + "File": "_test/testdata/triceCheck.c", + "Line": 362 + }, + "13225": { + "File": "_test/testdata/triceCheck.c", + "Line": 363 + }, + "13226": { + "File": "_test/testdata/triceCheck.c", + "Line": 364 + }, + "13227": { + "File": "_test/testdata/triceCheck.c", + "Line": 366 + }, + "13228": { + "File": "_test/testdata/triceCheck.c", + "Line": 367 + }, + "13229": { + "File": "_test/testdata/triceCheck.c", + "Line": 368 + }, + "13230": { + "File": "_test/testdata/triceCheck.c", + "Line": 369 + }, + "13231": { + "File": "_test/testdata/triceCheck.c", + "Line": 370 + }, + "13232": { + "File": "_test/testdata/triceCheck.c", + "Line": 371 + }, + "13233": { + "File": "_test/testdata/triceCheck.c", + "Line": 372 + }, + "13234": { + "File": "_test/testdata/triceCheck.c", + "Line": 373 + }, + "13235": { + "File": "_test/testdata/triceCheck.c", + "Line": 374 + }, + "13236": { + "File": "_test/testdata/triceCheck.c", + "Line": 376 + }, + "13237": { + "File": "_test/testdata/triceCheck.c", + "Line": 377 + }, + "13238": { + "File": "_test/testdata/triceCheck.c", + "Line": 378 + }, + "13239": { + "File": "_test/testdata/triceCheck.c", + "Line": 379 + }, + "13240": { + "File": "_test/testdata/triceCheck.c", + "Line": 380 + }, + "13241": { + "File": "_test/testdata/triceCheck.c", + "Line": 381 + }, + "13242": { + "File": "_test/testdata/triceCheck.c", + "Line": 382 + }, + "13243": { + "File": "_test/testdata/triceCheck.c", + "Line": 383 + }, + "13244": { + "File": "_test/testdata/triceCheck.c", + "Line": 384 + }, + "13245": { + "File": "_test/testdata/triceCheck.c", + "Line": 386 + }, + "13246": { + "File": "_test/testdata/triceCheck.c", + "Line": 387 + }, + "13247": { + "File": "_test/testdata/triceCheck.c", + "Line": 388 + }, + "13248": { + "File": "_test/testdata/triceCheck.c", + "Line": 389 + }, + "13249": { + "File": "_test/testdata/triceCheck.c", + "Line": 390 + }, + "13250": { + "File": "_test/testdata/triceCheck.c", + "Line": 391 + }, + "13251": { + "File": "_test/testdata/triceCheck.c", + "Line": 392 + }, + "13252": { + "File": "_test/testdata/triceCheck.c", + "Line": 393 + }, + "13253": { + "File": "_test/testdata/triceCheck.c", + "Line": 394 + }, + "13254": { + "File": "_test/testdata/triceCheck.c", + "Line": 396 + }, + "13255": { + "File": "_test/testdata/triceCheck.c", + "Line": 397 + }, + "13256": { + "File": "_test/testdata/triceCheck.c", + "Line": 398 + }, + "13257": { + "File": "_test/testdata/triceCheck.c", + "Line": 399 + }, + "13258": { + "File": "_test/testdata/triceCheck.c", + "Line": 400 + }, + "13259": { + "File": "_test/testdata/triceCheck.c", + "Line": 401 + }, + "13260": { + "File": "_test/testdata/triceCheck.c", + "Line": 402 + }, + "13261": { + "File": "_test/testdata/triceCheck.c", + "Line": 403 + }, + "13262": { + "File": "_test/testdata/triceCheck.c", + "Line": 404 + }, + "13263": { + "File": "_test/testdata/triceCheck.c", + "Line": 405 + }, + "13264": { + "File": "_test/testdata/triceCheck.c", + "Line": 406 + }, + "13265": { + "File": "_test/testdata/triceCheck.c", + "Line": 407 + }, + "13266": { + "File": "_test/testdata/triceCheck.c", + "Line": 408 + }, + "13267": { + "File": "_test/testdata/triceCheck.c", + "Line": 409 + }, + "13268": { + "File": "_test/testdata/triceCheck.c", + "Line": 410 + }, + "13269": { + "File": "_test/testdata/triceCheck.c", + "Line": 411 + }, + "13270": { + "File": "_test/testdata/triceCheck.c", + "Line": 413 + }, + "13271": { + "File": "_test/testdata/triceCheck.c", + "Line": 414 + }, + "13272": { + "File": "_test/testdata/triceCheck.c", + "Line": 415 + }, + "13273": { + "File": "_test/testdata/triceCheck.c", + "Line": 416 + }, + "13274": { + "File": "_test/testdata/triceCheck.c", + "Line": 417 + }, + "13275": { + "File": "_test/testdata/triceCheck.c", + "Line": 418 + }, + "13276": { + "File": "_test/testdata/triceCheck.c", + "Line": 419 + }, + "13277": { + "File": "_test/testdata/triceCheck.c", + "Line": 420 + }, + "13278": { + "File": "_test/testdata/triceCheck.c", + "Line": 421 + }, + "13279": { + "File": "_test/testdata/triceCheck.c", + "Line": 422 + }, + "13280": { + "File": "_test/testdata/triceCheck.c", + "Line": 423 + }, + "13281": { + "File": "_test/testdata/triceCheck.c", + "Line": 424 + }, + "13282": { + "File": "_test/testdata/triceCheck.c", + "Line": 425 + }, + "13283": { + "File": "_test/testdata/triceCheck.c", + "Line": 426 + }, + "13284": { + "File": "_test/testdata/triceCheck.c", + "Line": 427 + }, + "13285": { + "File": "_test/testdata/triceCheck.c", + "Line": 428 + }, + "13286": { + "File": "_test/testdata/triceCheck.c", + "Line": 429 + }, + "13287": { + "File": "_test/testdata/triceCheck.c", + "Line": 430 + }, + "13288": { + "File": "_test/testdata/triceCheck.c", + "Line": 432 + }, + "13289": { + "File": "_test/testdata/triceCheck.c", + "Line": 435 + }, + "13290": { + "File": "_test/testdata/triceCheck.c", + "Line": 443 + }, + "13291": { + "File": "_test/testdata/triceCheck.c", + "Line": 447 + }, + "13292": { + "File": "_test/testdata/triceCheck.c", + "Line": 449 + }, + "13293": { + "File": "_test/testdata/triceCheck.c", + "Line": 450 + }, + "13294": { + "File": "_test/testdata/triceCheck.c", + "Line": 451 + }, + "13295": { + "File": "_test/testdata/triceCheck.c", + "Line": 452 + }, + "13296": { + "File": "_test/testdata/triceCheck.c", + "Line": 453 + }, + "13297": { + "File": "_test/testdata/triceCheck.c", + "Line": 454 + }, + "13298": { + "File": "_test/testdata/triceCheck.c", + "Line": 455 + }, + "13299": { + "File": "_test/testdata/triceCheck.c", + "Line": 456 + }, + "13300": { + "File": "_test/testdata/triceCheck.c", + "Line": 457 + }, + "13301": { + "File": "_test/testdata/triceCheck.c", + "Line": 458 + }, + "13302": { + "File": "_test/testdata/triceCheck.c", + "Line": 459 + }, + "13303": { + "File": "_test/testdata/triceCheck.c", + "Line": 461 + }, + "13304": { + "File": "_test/testdata/triceCheck.c", + "Line": 463 + }, + "13305": { + "File": "_test/testdata/triceCheck.c", + "Line": 464 + }, + "13306": { + "File": "_test/testdata/triceCheck.c", + "Line": 465 + }, + "13307": { + "File": "_test/testdata/triceCheck.c", + "Line": 466 + }, + "13308": { + "File": "_test/testdata/triceCheck.c", + "Line": 467 + }, + "13309": { + "File": "_test/testdata/triceCheck.c", + "Line": 469 + }, + "13310": { + "File": "_test/testdata/triceCheck.c", + "Line": 470 + }, + "13311": { + "File": "_test/testdata/triceCheck.c", + "Line": 472 + }, + "13312": { + "File": "_test/testdata/triceCheck.c", + "Line": 473 + }, + "13313": { + "File": "_test/testdata/triceCheck.c", + "Line": 474 + }, + "13314": { + "File": "_test/testdata/triceCheck.c", + "Line": 475 + }, + "13315": { + "File": "_test/testdata/triceCheck.c", + "Line": 476 + }, + "13316": { + "File": "_test/testdata/triceCheck.c", + "Line": 477 + }, + "13317": { + "File": "_test/testdata/triceCheck.c", + "Line": 479 + }, + "13318": { + "File": "_test/testdata/triceCheck.c", + "Line": 480 + }, + "13319": { + "File": "_test/testdata/triceCheck.c", + "Line": 481 + }, + "13320": { + "File": "_test/testdata/triceCheck.c", + "Line": 482 + }, + "13321": { + "File": "_test/testdata/triceCheck.c", + "Line": 483 + }, + "13322": { + "File": "_test/testdata/triceCheck.c", + "Line": 484 + }, + "13323": { + "File": "_test/testdata/triceCheck.c", + "Line": 485 + }, + "13324": { + "File": "_test/testdata/triceCheck.c", + "Line": 486 + }, + "13325": { + "File": "_test/testdata/triceCheck.c", + "Line": 487 + }, + "13326": { + "File": "_test/testdata/triceCheck.c", + "Line": 488 + }, + "13327": { + "File": "_test/testdata/triceCheck.c", + "Line": 489 + }, + "13328": { + "File": "_test/testdata/triceCheck.c", + "Line": 490 + }, + "13329": { + "File": "_test/testdata/triceCheck.c", + "Line": 491 + }, + "13330": { + "File": "_test/testdata/triceCheck.c", + "Line": 493 + }, + "13331": { + "File": "_test/testdata/triceCheck.c", + "Line": 494 + }, + "13332": { + "File": "_test/testdata/triceCheck.c", + "Line": 495 + }, + "13333": { + "File": "_test/testdata/triceCheck.c", + "Line": 496 + }, + "13334": { + "File": "_test/testdata/triceCheck.c", + "Line": 497 + }, + "13335": { + "File": "_test/testdata/triceCheck.c", + "Line": 498 + }, + "13336": { + "File": "_test/testdata/triceCheck.c", + "Line": 499 + }, + "13337": { + "File": "_test/testdata/triceCheck.c", + "Line": 501 + }, + "13338": { + "File": "_test/testdata/triceCheck.c", + "Line": 505 + }, + "13339": { + "File": "_test/testdata/triceCheck.c", + "Line": 506 + }, + "13340": { + "File": "_test/testdata/triceCheck.c", + "Line": 507 + }, + "13341": { + "File": "_test/testdata/triceCheck.c", + "Line": 509 + }, + "13342": { + "File": "_test/testdata/triceCheck.c", + "Line": 511 + }, + "13343": { + "File": "_test/testdata/triceCheck.c", + "Line": 517 + }, + "13344": { + "File": "_test/testdata/triceCheck.c", + "Line": 518 + }, + "13345": { + "File": "_test/testdata/triceCheck.c", + "Line": 527 + }, + "13346": { + "File": "_test/testdata/triceCheck.c", + "Line": 528 + }, + "13347": { + "File": "_test/testdata/triceCheck.c", + "Line": 541 + }, + "13348": { + "File": "_test/testdata/triceCheck.c", + "Line": 542 + }, + "13349": { + "File": "_test/testdata/triceCheck.c", + "Line": 558 + }, + "13350": { + "File": "_test/testdata/triceCheck.c", + "Line": 559 + }, + "13351": { + "File": "_test/testdata/triceCheck.c", + "Line": 583 + }, + "13352": { + "File": "_test/testdata/triceCheck.c", + "Line": 584 + }, + "13353": { + "File": "_test/testdata/triceCheck.c", + "Line": 590 + }, + "13354": { + "File": "_test/testdata/triceCheck.c", + "Line": 591 + }, + "13355": { + "File": "_test/testdata/triceCheck.c", + "Line": 592 + }, + "13356": { + "File": "_test/testdata/triceCheck.c", + "Line": 593 + }, + "13357": { + "File": "_test/testdata/triceCheck.c", + "Line": 594 + }, + "13358": { + "File": "_test/testdata/triceCheck.c", + "Line": 595 + }, + "13359": { + "File": "_test/testdata/triceCheck.c", + "Line": 597 + }, + "13360": { + "File": "_test/testdata/triceCheck.c", + "Line": 598 + }, + "13361": { + "File": "_test/testdata/triceCheck.c", + "Line": 599 + }, + "13362": { + "File": "_test/testdata/triceCheck.c", + "Line": 600 + }, + "13363": { + "File": "_test/testdata/triceCheck.c", + "Line": 601 + }, + "13364": { + "File": "_test/testdata/triceCheck.c", + "Line": 602 + }, + "13365": { + "File": "_test/testdata/triceCheck.c", + "Line": 604 + }, + "13366": { + "File": "_test/testdata/triceCheck.c", + "Line": 605 + }, + "13367": { + "File": "_test/testdata/triceCheck.c", + "Line": 606 + }, + "13368": { + "File": "_test/testdata/triceCheck.c", + "Line": 607 + }, + "13369": { + "File": "_test/testdata/triceCheck.c", + "Line": 608 + }, + "13370": { + "File": "_test/testdata/triceCheck.c", + "Line": 609 + }, + "13371": { + "File": "_test/testdata/triceCheck.c", + "Line": 610 + }, + "13372": { + "File": "_test/testdata/triceCheck.c", + "Line": 611 + }, + "13373": { + "File": "_test/testdata/triceCheck.c", + "Line": 612 + }, + "13374": { + "File": "_test/testdata/triceCheck.c", + "Line": 613 + }, + "13375": { + "File": "_test/testdata/triceCheck.c", + "Line": 614 + }, + "13376": { + "File": "_test/testdata/triceCheck.c", + "Line": 615 + }, + "13377": { + "File": "_test/testdata/triceCheck.c", + "Line": 616 + }, + "13378": { + "File": "_test/testdata/triceCheck.c", + "Line": 618 + }, + "13379": { + "File": "_test/testdata/triceCheck.c", + "Line": 619 + }, + "13380": { + "File": "_test/testdata/triceCheck.c", + "Line": 620 + }, + "13381": { + "File": "_test/testdata/triceCheck.c", + "Line": 621 + }, + "13382": { + "File": "_test/testdata/triceCheck.c", + "Line": 622 + }, + "13383": { + "File": "_test/testdata/triceCheck.c", + "Line": 623 + }, + "13384": { + "File": "_test/testdata/triceCheck.c", + "Line": 624 + }, + "13385": { + "File": "_test/testdata/triceCheck.c", + "Line": 625 + }, + "13386": { + "File": "_test/testdata/triceCheck.c", + "Line": 626 + }, + "13387": { + "File": "_test/testdata/triceCheck.c", + "Line": 627 + }, + "13388": { + "File": "_test/testdata/triceCheck.c", + "Line": 628 + }, + "13389": { + "File": "_test/testdata/triceCheck.c", + "Line": 629 + }, + "13390": { + "File": "_test/testdata/triceCheck.c", + "Line": 630 + }, + "13391": { + "File": "_test/testdata/triceCheck.c", + "Line": 631 + }, + "13392": { + "File": "_test/testdata/triceCheck.c", + "Line": 632 + }, + "13393": { + "File": "_test/testdata/triceCheck.c", + "Line": 634 + }, + "13394": { + "File": "_test/testdata/triceCheck.c", + "Line": 635 + }, + "13395": { + "File": "_test/testdata/triceCheck.c", + "Line": 636 + }, + "13396": { + "File": "_test/testdata/triceCheck.c", + "Line": 637 + }, + "13397": { + "File": "_test/testdata/triceCheck.c", + "Line": 638 + }, + "13398": { + "File": "_test/testdata/triceCheck.c", + "Line": 639 + }, + "13399": { + "File": "_test/testdata/triceCheck.c", + "Line": 640 + }, + "13400": { + "File": "_test/testdata/triceCheck.c", + "Line": 641 + }, + "13401": { + "File": "_test/testdata/triceCheck.c", + "Line": 642 + }, + "13402": { + "File": "_test/testdata/triceCheck.c", + "Line": 643 + }, + "13403": { + "File": "_test/testdata/triceCheck.c", + "Line": 644 + }, + "13404": { + "File": "_test/testdata/triceCheck.c", + "Line": 645 + }, + "13405": { + "File": "_test/testdata/triceCheck.c", + "Line": 646 + }, + "13406": { + "File": "_test/testdata/triceCheck.c", + "Line": 647 + }, + "13407": { + "File": "_test/testdata/triceCheck.c", + "Line": 648 + }, + "13408": { + "File": "_test/testdata/triceCheck.c", + "Line": 650 + }, + "13409": { + "File": "_test/testdata/triceCheck.c", + "Line": 651 + }, + "13410": { + "File": "_test/testdata/triceCheck.c", + "Line": 652 + }, + "13411": { + "File": "_test/testdata/triceCheck.c", + "Line": 653 + }, + "13412": { + "File": "_test/testdata/triceCheck.c", + "Line": 654 + }, + "13413": { + "File": "_test/testdata/triceCheck.c", + "Line": 655 + }, + "13414": { + "File": "_test/testdata/triceCheck.c", + "Line": 656 + }, + "13415": { + "File": "_test/testdata/triceCheck.c", + "Line": 657 + }, + "13416": { + "File": "_test/testdata/triceCheck.c", + "Line": 658 + }, + "13417": { + "File": "_test/testdata/triceCheck.c", + "Line": 659 + }, + "13418": { + "File": "_test/testdata/triceCheck.c", + "Line": 660 + }, + "13419": { + "File": "_test/testdata/triceCheck.c", + "Line": 661 + }, + "13420": { + "File": "_test/testdata/triceCheck.c", + "Line": 662 + }, + "13421": { + "File": "_test/testdata/triceCheck.c", + "Line": 663 + }, + "13422": { + "File": "_test/testdata/triceCheck.c", + "Line": 664 + }, + "13423": { + "File": "_test/testdata/triceCheck.c", + "Line": 666 + }, + "13424": { + "File": "_test/testdata/triceCheck.c", + "Line": 667 + }, + "13425": { + "File": "_test/testdata/triceCheck.c", + "Line": 668 + }, + "13426": { + "File": "_test/testdata/triceCheck.c", + "Line": 669 + }, + "13427": { + "File": "_test/testdata/triceCheck.c", + "Line": 670 + }, + "13428": { + "File": "_test/testdata/triceCheck.c", + "Line": 671 + }, + "13429": { + "File": "_test/testdata/triceCheck.c", + "Line": 672 + }, + "13430": { + "File": "_test/testdata/triceCheck.c", + "Line": 673 + }, + "13431": { + "File": "_test/testdata/triceCheck.c", + "Line": 674 + }, + "13432": { + "File": "_test/testdata/triceCheck.c", + "Line": 675 + }, + "13433": { + "File": "_test/testdata/triceCheck.c", + "Line": 676 + }, + "13434": { + "File": "_test/testdata/triceCheck.c", + "Line": 677 + }, + "13435": { + "File": "_test/testdata/triceCheck.c", + "Line": 678 + }, + "13436": { + "File": "_test/testdata/triceCheck.c", + "Line": 679 + }, + "13437": { + "File": "_test/testdata/triceCheck.c", + "Line": 680 + }, + "13438": { + "File": "_test/testdata/triceCheck.c", + "Line": 681 + }, + "13439": { + "File": "_test/testdata/triceCheck.c", + "Line": 682 + }, + "13440": { + "File": "_test/testdata/triceCheck.c", + "Line": 683 + }, + "13441": { + "File": "_test/testdata/triceCheck.c", + "Line": 684 + }, + "13442": { + "File": "_test/testdata/triceCheck.c", + "Line": 685 + }, + "13443": { + "File": "_test/testdata/triceCheck.c", + "Line": 686 + }, + "13444": { + "File": "_test/testdata/triceCheck.c", + "Line": 688 + }, + "13445": { + "File": "_test/testdata/triceCheck.c", + "Line": 689 + }, + "13446": { + "File": "_test/testdata/triceCheck.c", + "Line": 690 + }, + "13447": { + "File": "_test/testdata/triceCheck.c", + "Line": 691 + }, + "13448": { + "File": "_test/testdata/triceCheck.c", + "Line": 692 + }, + "13449": { + "File": "_test/testdata/triceCheck.c", + "Line": 693 + }, + "13450": { + "File": "_test/testdata/triceCheck.c", + "Line": 694 + }, + "13451": { + "File": "_test/testdata/triceCheck.c", + "Line": 695 + }, + "13452": { + "File": "_test/testdata/triceCheck.c", + "Line": 696 + }, + "13453": { + "File": "_test/testdata/triceCheck.c", + "Line": 698 + }, + "13454": { + "File": "_test/testdata/triceCheck.c", + "Line": 699 + }, + "13455": { + "File": "_test/testdata/triceCheck.c", + "Line": 700 + }, + "13456": { + "File": "_test/testdata/triceCheck.c", + "Line": 701 + }, + "13457": { + "File": "_test/testdata/triceCheck.c", + "Line": 702 + }, + "13458": { + "File": "_test/testdata/triceCheck.c", + "Line": 703 + }, + "13459": { + "File": "_test/testdata/triceCheck.c", + "Line": 705 + }, + "13460": { + "File": "_test/testdata/triceCheck.c", + "Line": 706 + }, + "13461": { + "File": "_test/testdata/triceCheck.c", + "Line": 707 + }, + "13462": { + "File": "_test/testdata/triceCheck.c", + "Line": 708 + }, + "13463": { + "File": "_test/testdata/triceCheck.c", + "Line": 709 + }, + "13464": { + "File": "_test/testdata/triceCheck.c", + "Line": 710 + }, + "13465": { + "File": "_test/testdata/triceCheck.c", + "Line": 711 + }, + "13466": { + "File": "_test/testdata/triceCheck.c", + "Line": 712 + }, + "13467": { + "File": "_test/testdata/triceCheck.c", + "Line": 713 + }, + "13468": { + "File": "_test/testdata/triceCheck.c", + "Line": 714 + }, + "13469": { + "File": "_test/testdata/triceCheck.c", + "Line": 715 + }, + "13470": { + "File": "_test/testdata/triceCheck.c", + "Line": 716 + }, + "13471": { + "File": "_test/testdata/triceCheck.c", + "Line": 718 + }, + "13472": { + "File": "_test/testdata/triceCheck.c", + "Line": 719 + }, + "13473": { + "File": "_test/testdata/triceCheck.c", + "Line": 720 + }, + "13474": { + "File": "_test/testdata/triceCheck.c", + "Line": 721 + }, + "13475": { + "File": "_test/testdata/triceCheck.c", + "Line": 722 + }, + "13476": { + "File": "_test/testdata/triceCheck.c", + "Line": 723 + }, + "13477": { + "File": "_test/testdata/triceCheck.c", + "Line": 724 + }, + "13478": { + "File": "_test/testdata/triceCheck.c", + "Line": 725 + }, + "13479": { + "File": "_test/testdata/triceCheck.c", + "Line": 726 + }, + "13480": { + "File": "_test/testdata/triceCheck.c", + "Line": 727 + }, + "13481": { + "File": "_test/testdata/triceCheck.c", + "Line": 728 + }, + "13482": { + "File": "_test/testdata/triceCheck.c", + "Line": 729 + }, + "13483": { + "File": "_test/testdata/triceCheck.c", + "Line": 731 + }, + "13484": { + "File": "_test/testdata/triceCheck.c", + "Line": 732 + }, + "13485": { + "File": "_test/testdata/triceCheck.c", + "Line": 733 + }, + "13486": { + "File": "_test/testdata/triceCheck.c", + "Line": 734 + }, + "13487": { + "File": "_test/testdata/triceCheck.c", + "Line": 735 + }, + "13488": { + "File": "_test/testdata/triceCheck.c", + "Line": 736 + }, + "13489": { + "File": "_test/testdata/triceCheck.c", + "Line": 737 + }, + "13490": { + "File": "_test/testdata/triceCheck.c", + "Line": 738 + }, + "13491": { + "File": "_test/testdata/triceCheck.c", + "Line": 739 + }, + "13492": { + "File": "_test/testdata/triceCheck.c", + "Line": 740 + }, + "13493": { + "File": "_test/testdata/triceCheck.c", + "Line": 741 + }, + "13494": { + "File": "_test/testdata/triceCheck.c", + "Line": 742 + }, + "13495": { + "File": "_test/testdata/triceCheck.c", + "Line": 744 + }, + "13496": { + "File": "_test/testdata/triceCheck.c", + "Line": 745 + }, + "13497": { + "File": "_test/testdata/triceCheck.c", + "Line": 746 + }, + "13498": { + "File": "_test/testdata/triceCheck.c", + "Line": 747 + }, + "13499": { + "File": "_test/testdata/triceCheck.c", + "Line": 748 + }, + "13500": { + "File": "_test/testdata/triceCheck.c", + "Line": 749 + }, + "13501": { + "File": "_test/testdata/triceCheck.c", + "Line": 750 + }, + "13502": { + "File": "_test/testdata/triceCheck.c", + "Line": 751 + }, + "13503": { + "File": "_test/testdata/triceCheck.c", + "Line": 752 + }, + "13504": { + "File": "_test/testdata/triceCheck.c", + "Line": 753 + }, + "13505": { + "File": "_test/testdata/triceCheck.c", + "Line": 754 + }, + "13506": { + "File": "_test/testdata/triceCheck.c", + "Line": 755 + }, + "13507": { + "File": "_test/testdata/triceCheck.c", + "Line": 759 + }, + "13508": { + "File": "_test/testdata/triceCheck.c", + "Line": 760 + }, + "13509": { + "File": "_test/testdata/triceCheck.c", + "Line": 761 + }, + "13510": { + "File": "_test/testdata/triceCheck.c", + "Line": 762 + }, + "13511": { + "File": "_test/testdata/triceCheck.c", + "Line": 763 + }, + "13512": { + "File": "_test/testdata/triceCheck.c", + "Line": 764 + }, + "13513": { + "File": "_test/testdata/triceCheck.c", + "Line": 765 + }, + "13514": { + "File": "_test/testdata/triceCheck.c", + "Line": 766 + }, + "13515": { + "File": "_test/testdata/triceCheck.c", + "Line": 767 + }, + "13516": { + "File": "_test/testdata/triceCheck.c", + "Line": 768 + }, + "13517": { + "File": "_test/testdata/triceCheck.c", + "Line": 769 + }, + "13518": { + "File": "_test/testdata/triceCheck.c", + "Line": 770 + }, + "13519": { + "File": "_test/testdata/triceCheck.c", + "Line": 772 + }, + "13520": { + "File": "_test/testdata/triceCheck.c", + "Line": 773 + }, + "13521": { + "File": "_test/testdata/triceCheck.c", + "Line": 774 + }, + "13522": { + "File": "_test/testdata/triceCheck.c", + "Line": 775 + }, + "13523": { + "File": "_test/testdata/triceCheck.c", + "Line": 776 + }, + "13524": { + "File": "_test/testdata/triceCheck.c", + "Line": 777 + }, + "13525": { + "File": "_test/testdata/triceCheck.c", + "Line": 778 + }, + "13526": { + "File": "_test/testdata/triceCheck.c", + "Line": 779 + }, + "13527": { + "File": "_test/testdata/triceCheck.c", + "Line": 780 + }, + "13528": { + "File": "_test/testdata/triceCheck.c", + "Line": 781 + }, + "13529": { + "File": "_test/testdata/triceCheck.c", + "Line": 782 + }, + "13530": { + "File": "_test/testdata/triceCheck.c", + "Line": 783 + }, + "13531": { + "File": "_test/testdata/triceCheck.c", + "Line": 785 + }, + "13532": { + "File": "_test/testdata/triceCheck.c", + "Line": 786 + }, + "13533": { + "File": "_test/testdata/triceCheck.c", + "Line": 787 + }, + "13534": { + "File": "_test/testdata/triceCheck.c", + "Line": 788 + }, + "13535": { + "File": "_test/testdata/triceCheck.c", + "Line": 789 + }, + "13536": { + "File": "_test/testdata/triceCheck.c", + "Line": 790 + }, + "13537": { + "File": "_test/testdata/triceCheck.c", + "Line": 791 + }, + "13538": { + "File": "_test/testdata/triceCheck.c", + "Line": 792 + }, + "13539": { + "File": "_test/testdata/triceCheck.c", + "Line": 793 + }, + "13540": { + "File": "_test/testdata/triceCheck.c", + "Line": 794 + }, + "13541": { + "File": "_test/testdata/triceCheck.c", + "Line": 795 + }, + "13542": { + "File": "_test/testdata/triceCheck.c", + "Line": 796 + }, + "13543": { + "File": "_test/testdata/triceCheck.c", + "Line": 798 + }, + "13544": { + "File": "_test/testdata/triceCheck.c", + "Line": 799 + }, + "13545": { + "File": "_test/testdata/triceCheck.c", + "Line": 800 + }, + "13546": { + "File": "_test/testdata/triceCheck.c", + "Line": 801 + }, + "13547": { + "File": "_test/testdata/triceCheck.c", + "Line": 802 + }, + "13548": { + "File": "_test/testdata/triceCheck.c", + "Line": 803 + }, + "13549": { + "File": "_test/testdata/triceCheck.c", + "Line": 804 + }, + "13550": { + "File": "_test/testdata/triceCheck.c", + "Line": 805 + }, + "13551": { + "File": "_test/testdata/triceCheck.c", + "Line": 806 + }, + "13552": { + "File": "_test/testdata/triceCheck.c", + "Line": 807 + }, + "13553": { + "File": "_test/testdata/triceCheck.c", + "Line": 808 + }, + "13554": { + "File": "_test/testdata/triceCheck.c", + "Line": 809 + }, + "13555": { + "File": "_test/testdata/triceCheck.c", + "Line": 811 + }, + "13556": { + "File": "_test/testdata/triceCheck.c", + "Line": 812 + }, + "13557": { + "File": "_test/testdata/triceCheck.c", + "Line": 813 + }, + "13558": { + "File": "_test/testdata/triceCheck.c", + "Line": 814 + }, + "13559": { + "File": "_test/testdata/triceCheck.c", + "Line": 815 + }, + "13560": { + "File": "_test/testdata/triceCheck.c", + "Line": 816 + }, + "13561": { + "File": "_test/testdata/triceCheck.c", + "Line": 817 + }, + "13562": { + "File": "_test/testdata/triceCheck.c", + "Line": 818 + }, + "13563": { + "File": "_test/testdata/triceCheck.c", + "Line": 819 + }, + "13564": { + "File": "_test/testdata/triceCheck.c", + "Line": 820 + }, + "13565": { + "File": "_test/testdata/triceCheck.c", + "Line": 821 + }, + "13566": { + "File": "_test/testdata/triceCheck.c", + "Line": 822 + }, + "13567": { + "File": "_test/testdata/triceCheck.c", + "Line": 824 + }, + "13568": { + "File": "_test/testdata/triceCheck.c", + "Line": 825 + }, + "13569": { + "File": "_test/testdata/triceCheck.c", + "Line": 826 + }, + "13570": { + "File": "_test/testdata/triceCheck.c", + "Line": 827 + }, + "13571": { + "File": "_test/testdata/triceCheck.c", + "Line": 828 + }, + "13572": { + "File": "_test/testdata/triceCheck.c", + "Line": 829 + }, + "13573": { + "File": "_test/testdata/triceCheck.c", + "Line": 830 + }, + "13574": { + "File": "_test/testdata/triceCheck.c", + "Line": 831 + }, + "13575": { + "File": "_test/testdata/triceCheck.c", + "Line": 832 + }, + "13576": { + "File": "_test/testdata/triceCheck.c", + "Line": 833 + }, + "13577": { + "File": "_test/testdata/triceCheck.c", + "Line": 834 + }, + "13578": { + "File": "_test/testdata/triceCheck.c", + "Line": 835 + }, + "13579": { + "File": "_test/testdata/triceCheck.c", + "Line": 837 + }, + "13580": { + "File": "_test/testdata/triceCheck.c", + "Line": 838 + }, + "13581": { + "File": "_test/testdata/triceCheck.c", + "Line": 839 + }, + "13582": { + "File": "_test/testdata/triceCheck.c", + "Line": 840 + }, + "13583": { + "File": "_test/testdata/triceCheck.c", + "Line": 841 + }, + "13584": { + "File": "_test/testdata/triceCheck.c", + "Line": 842 + }, + "13585": { + "File": "_test/testdata/triceCheck.c", + "Line": 843 + }, + "13586": { + "File": "_test/testdata/triceCheck.c", + "Line": 844 + }, + "13587": { + "File": "_test/testdata/triceCheck.c", + "Line": 845 + }, + "13588": { + "File": "_test/testdata/triceCheck.c", + "Line": 846 + }, + "13589": { + "File": "_test/testdata/triceCheck.c", + "Line": 847 + }, + "13590": { + "File": "_test/testdata/triceCheck.c", + "Line": 848 + }, + "13591": { + "File": "_test/testdata/triceCheck.c", + "Line": 850 + }, + "13592": { + "File": "_test/testdata/triceCheck.c", + "Line": 851 + }, + "13593": { + "File": "_test/testdata/triceCheck.c", + "Line": 852 + }, + "13594": { + "File": "_test/testdata/triceCheck.c", + "Line": 853 + }, + "13595": { + "File": "_test/testdata/triceCheck.c", + "Line": 854 + }, + "13596": { + "File": "_test/testdata/triceCheck.c", + "Line": 855 + }, + "13597": { + "File": "_test/testdata/triceCheck.c", + "Line": 856 + }, + "13598": { + "File": "_test/testdata/triceCheck.c", + "Line": 857 + }, + "13599": { + "File": "_test/testdata/triceCheck.c", + "Line": 858 + }, + "13600": { + "File": "_test/testdata/triceCheck.c", + "Line": 859 + }, + "13601": { + "File": "_test/testdata/triceCheck.c", + "Line": 860 + }, + "13602": { + "File": "_test/testdata/triceCheck.c", + "Line": 861 + }, + "13603": { + "File": "_test/testdata/triceCheck.c", + "Line": 864 + }, + "13604": { + "File": "_test/testdata/triceCheck.c", + "Line": 865 + }, + "13605": { + "File": "_test/testdata/triceCheck.c", + "Line": 866 + }, + "13606": { + "File": "_test/testdata/triceCheck.c", + "Line": 867 + }, + "13607": { + "File": "_test/testdata/triceCheck.c", + "Line": 868 + }, + "13608": { + "File": "_test/testdata/triceCheck.c", + "Line": 869 + }, + "13609": { + "File": "_test/testdata/triceCheck.c", + "Line": 872 + }, + "13610": { + "File": "_test/testdata/triceCheck.c", + "Line": 873 + }, + "13611": { + "File": "_test/testdata/triceCheck.c", + "Line": 874 + }, + "13612": { + "File": "_test/testdata/triceCheck.c", + "Line": 875 + }, + "13613": { + "File": "_test/testdata/triceCheck.c", + "Line": 876 + }, + "13614": { + "File": "_test/testdata/triceCheck.c", + "Line": 877 + }, + "13615": { + "File": "_test/testdata/triceCheck.c", + "Line": 880 + }, + "13616": { + "File": "_test/testdata/triceCheck.c", + "Line": 881 + }, + "13617": { + "File": "_test/testdata/triceCheck.c", + "Line": 882 + }, + "13618": { + "File": "_test/testdata/triceCheck.c", + "Line": 883 + }, + "13619": { + "File": "_test/testdata/triceCheck.c", + "Line": 884 + }, + "13620": { + "File": "_test/testdata/triceCheck.c", + "Line": 885 + }, + "13621": { + "File": "_test/testdata/triceCheck.c", + "Line": 888 + }, + "13622": { + "File": "_test/testdata/triceCheck.c", + "Line": 889 + }, + "13623": { + "File": "_test/testdata/triceCheck.c", + "Line": 890 + }, + "13624": { + "File": "_test/testdata/triceCheck.c", + "Line": 891 + }, + "13625": { + "File": "_test/testdata/triceCheck.c", + "Line": 892 + }, + "13626": { + "File": "_test/testdata/triceCheck.c", + "Line": 893 + }, + "13627": { + "File": "_test/testdata/triceCheck.c", + "Line": 896 + }, + "13628": { + "File": "_test/testdata/triceCheck.c", + "Line": 897 + }, + "13629": { + "File": "_test/testdata/triceCheck.c", + "Line": 898 + }, + "13630": { + "File": "_test/testdata/triceCheck.c", + "Line": 899 + }, + "13631": { + "File": "_test/testdata/triceCheck.c", + "Line": 902 + }, + "13632": { + "File": "_test/testdata/triceCheck.c", + "Line": 903 + }, + "13633": { + "File": "_test/testdata/triceCheck.c", + "Line": 906 + }, + "13634": { + "File": "_test/testdata/triceCheck.c", + "Line": 907 + }, + "13635": { + "File": "_test/testdata/triceCheck.c", + "Line": 908 + }, + "13636": { + "File": "_test/testdata/triceCheck.c", + "Line": 909 + }, + "13637": { + "File": "_test/testdata/triceCheck.c", + "Line": 912 + }, + "13638": { + "File": "_test/testdata/triceCheck.c", + "Line": 913 + }, + "13639": { + "File": "_test/testdata/triceCheck.c", + "Line": 914 + }, + "13640": { + "File": "_test/testdata/triceCheck.c", + "Line": 915 + }, + "13641": { + "File": "_test/testdata/triceCheck.c", + "Line": 918 + }, + "13642": { + "File": "_test/testdata/triceCheck.c", + "Line": 919 + }, + "13643": { + "File": "_test/testdata/triceCheck.c", + "Line": 920 + }, + "13644": { + "File": "_test/testdata/triceCheck.c", + "Line": 921 + }, + "13645": { + "File": "_test/testdata/triceCheck.c", + "Line": 925 + }, + "13646": { + "File": "_test/testdata/triceCheck.c", + "Line": 926 + }, + "13647": { + "File": "_test/testdata/triceCheck.c", + "Line": 927 + }, + "13648": { + "File": "_test/testdata/triceCheck.c", + "Line": 928 + }, + "13649": { + "File": "_test/testdata/triceCheck.c", + "Line": 929 + }, + "13650": { + "File": "_test/testdata/triceCheck.c", + "Line": 930 + }, + "13651": { + "File": "_test/testdata/triceCheck.c", + "Line": 931 + }, + "13652": { + "File": "_test/testdata/triceCheck.c", + "Line": 932 + }, + "13653": { + "File": "_test/testdata/triceCheck.c", + "Line": 933 + }, + "13654": { + "File": "_test/testdata/triceCheck.c", + "Line": 934 + }, + "13655": { + "File": "_test/testdata/triceCheck.c", + "Line": 935 + }, + "13656": { + "File": "_test/testdata/triceCheck.c", + "Line": 936 + }, + "13657": { + "File": "_test/testdata/triceCheck.c", + "Line": 937 + }, + "13658": { + "File": "_test/testdata/triceCheck.c", + "Line": 938 + }, + "13659": { + "File": "_test/testdata/triceCheck.c", + "Line": 939 + }, + "13660": { + "File": "_test/testdata/triceCheck.c", + "Line": 940 + }, + "13661": { + "File": "_test/testdata/triceCheck.c", + "Line": 941 + }, + "13662": { + "File": "_test/testdata/triceCheck.c", + "Line": 942 + }, + "13663": { + "File": "_test/testdata/triceCheck.c", + "Line": 943 + }, + "13664": { + "File": "_test/testdata/triceCheck.c", + "Line": 944 + }, + "13665": { + "File": "_test/testdata/triceCheck.c", + "Line": 945 + }, + "13666": { + "File": "_test/testdata/triceCheck.c", + "Line": 946 + }, + "13667": { + "File": "_test/testdata/triceCheck.c", + "Line": 947 + }, + "13668": { + "File": "_test/testdata/triceCheck.c", + "Line": 948 + }, + "13669": { + "File": "_test/testdata/triceCheck.c", + "Line": 949 + }, + "13670": { + "File": "_test/testdata/triceCheck.c", + "Line": 950 + }, + "13671": { + "File": "_test/testdata/triceCheck.c", + "Line": 951 + }, + "13672": { + "File": "_test/testdata/triceCheck.c", + "Line": 952 + }, + "13673": { + "File": "_test/testdata/triceCheck.c", + "Line": 953 + }, + "13674": { + "File": "_test/testdata/triceCheck.c", + "Line": 954 + }, + "13675": { + "File": "_test/testdata/triceCheck.c", + "Line": 955 + }, + "13676": { + "File": "_test/testdata/triceCheck.c", + "Line": 956 + }, + "13677": { + "File": "_test/testdata/triceCheck.c", + "Line": 957 + }, + "13678": { + "File": "_test/testdata/triceCheck.c", + "Line": 958 + }, + "13679": { + "File": "_test/testdata/triceCheck.c", + "Line": 959 + }, + "13680": { + "File": "_test/testdata/triceCheck.c", + "Line": 960 + }, + "13681": { + "File": "_test/testdata/triceCheck.c", + "Line": 961 + }, + "13682": { + "File": "_test/testdata/triceCheck.c", + "Line": 962 + }, + "13683": { + "File": "_test/testdata/triceCheck.c", + "Line": 963 + }, + "13684": { + "File": "_test/testdata/triceCheck.c", + "Line": 964 + }, + "13685": { + "File": "_test/testdata/triceCheck.c", + "Line": 965 + }, + "13686": { + "File": "_test/testdata/triceCheck.c", + "Line": 966 + }, + "13687": { + "File": "_test/testdata/triceCheck.c", + "Line": 967 + }, + "13688": { + "File": "_test/testdata/triceCheck.c", + "Line": 968 + }, + "13689": { + "File": "_test/testdata/triceCheck.c", + "Line": 969 + }, + "13690": { + "File": "_test/testdata/triceCheck.c", + "Line": 970 + }, + "13691": { + "File": "_test/testdata/triceCheck.c", + "Line": 971 + }, + "13692": { + "File": "_test/testdata/triceCheck.c", + "Line": 972 + }, + "13693": { + "File": "_test/testdata/triceCheck.c", + "Line": 973 + }, + "13694": { + "File": "_test/testdata/triceCheck.c", + "Line": 974 + }, + "13695": { + "File": "_test/testdata/triceCheck.c", + "Line": 976 + }, + "13696": { + "File": "_test/testdata/triceCheck.c", + "Line": 977 + }, + "13697": { + "File": "_test/testdata/triceCheck.c", + "Line": 978 + }, + "13698": { + "File": "_test/testdata/triceCheck.c", + "Line": 979 + }, + "13699": { + "File": "_test/testdata/triceCheck.c", + "Line": 980 + }, + "13700": { + "File": "_test/testdata/triceCheck.c", + "Line": 981 + }, + "13701": { + "File": "_test/testdata/triceCheck.c", + "Line": 982 + }, + "13702": { + "File": "_test/testdata/triceCheck.c", + "Line": 983 + }, + "13703": { + "File": "_test/testdata/triceCheck.c", + "Line": 984 + }, + "13704": { + "File": "_test/testdata/triceCheck.c", + "Line": 985 + }, + "13705": { + "File": "_test/testdata/triceCheck.c", + "Line": 986 + }, + "13706": { + "File": "_test/testdata/triceCheck.c", + "Line": 987 + }, + "13707": { + "File": "_test/testdata/triceCheck.c", + "Line": 988 + }, + "13708": { + "File": "_test/testdata/triceCheck.c", + "Line": 989 + }, + "13709": { + "File": "_test/testdata/triceCheck.c", + "Line": 990 + }, + "13710": { + "File": "_test/testdata/triceCheck.c", + "Line": 991 + }, + "13711": { + "File": "_test/testdata/triceCheck.c", + "Line": 992 + }, + "13712": { + "File": "_test/testdata/triceCheck.c", + "Line": 993 + }, + "13713": { + "File": "_test/testdata/triceCheck.c", + "Line": 994 + }, + "13714": { + "File": "_test/testdata/triceCheck.c", + "Line": 995 + }, + "13715": { + "File": "_test/testdata/triceCheck.c", + "Line": 996 + }, + "13716": { + "File": "_test/testdata/triceCheck.c", + "Line": 997 + }, + "13717": { + "File": "_test/testdata/triceCheck.c", + "Line": 998 + }, + "13718": { + "File": "_test/testdata/triceCheck.c", + "Line": 999 + }, + "13719": { + "File": "_test/testdata/triceCheck.c", + "Line": 1000 + }, + "13720": { + "File": "_test/testdata/triceCheck.c", + "Line": 1001 + }, + "13721": { + "File": "_test/testdata/triceCheck.c", + "Line": 1002 + }, + "13722": { + "File": "_test/testdata/triceCheck.c", + "Line": 1003 + }, + "13723": { + "File": "_test/testdata/triceCheck.c", + "Line": 1004 + }, + "13724": { + "File": "_test/testdata/triceCheck.c", + "Line": 1005 + }, + "13725": { + "File": "_test/testdata/triceCheck.c", + "Line": 1006 + }, + "13726": { + "File": "_test/testdata/triceCheck.c", + "Line": 1007 + }, + "13727": { + "File": "_test/testdata/triceCheck.c", + "Line": 1008 + }, + "13728": { + "File": "_test/testdata/triceCheck.c", + "Line": 1009 + }, + "13729": { + "File": "_test/testdata/triceCheck.c", + "Line": 1010 + }, + "13730": { + "File": "_test/testdata/triceCheck.c", + "Line": 1011 + }, + "13731": { + "File": "_test/testdata/triceCheck.c", + "Line": 1012 + }, + "13732": { + "File": "_test/testdata/triceCheck.c", + "Line": 1013 + }, + "13733": { + "File": "_test/testdata/triceCheck.c", + "Line": 1014 + }, + "13734": { + "File": "_test/testdata/triceCheck.c", + "Line": 1015 + }, + "13735": { + "File": "_test/testdata/triceCheck.c", + "Line": 1016 + }, + "13736": { + "File": "_test/testdata/triceCheck.c", + "Line": 1017 + }, + "13737": { + "File": "_test/testdata/triceCheck.c", + "Line": 1018 + }, + "13738": { + "File": "_test/testdata/triceCheck.c", + "Line": 1019 + }, + "13739": { + "File": "_test/testdata/triceCheck.c", + "Line": 1020 + }, + "13740": { + "File": "_test/testdata/triceCheck.c", + "Line": 1021 + }, + "13741": { + "File": "_test/testdata/triceCheck.c", + "Line": 1022 + }, + "13742": { + "File": "_test/testdata/triceCheck.c", + "Line": 1023 + }, + "13743": { + "File": "_test/testdata/triceCheck.c", + "Line": 1024 + }, + "13744": { + "File": "_test/testdata/triceCheck.c", + "Line": 1025 + }, + "13745": { + "File": "_test/testdata/triceCheck.c", + "Line": 1027 + }, + "13746": { + "File": "_test/testdata/triceCheck.c", + "Line": 1028 + }, + "13747": { + "File": "_test/testdata/triceCheck.c", + "Line": 1029 + }, + "13748": { + "File": "_test/testdata/triceCheck.c", + "Line": 1030 + }, + "13749": { + "File": "_test/testdata/triceCheck.c", + "Line": 1031 + }, + "13750": { + "File": "_test/testdata/triceCheck.c", + "Line": 1032 + }, + "13751": { + "File": "_test/testdata/triceCheck.c", + "Line": 1033 + }, + "13752": { + "File": "_test/testdata/triceCheck.c", + "Line": 1034 + }, + "13753": { + "File": "_test/testdata/triceCheck.c", + "Line": 1035 + }, + "13754": { + "File": "_test/testdata/triceCheck.c", + "Line": 1036 + }, + "13755": { + "File": "_test/testdata/triceCheck.c", + "Line": 1037 + }, + "13756": { + "File": "_test/testdata/triceCheck.c", + "Line": 1038 + }, + "13757": { + "File": "_test/testdata/triceCheck.c", + "Line": 1039 + }, + "13758": { + "File": "_test/testdata/triceCheck.c", + "Line": 1040 + }, + "13759": { + "File": "_test/testdata/triceCheck.c", + "Line": 1041 + }, + "13760": { + "File": "_test/testdata/triceCheck.c", + "Line": 1042 + }, + "13761": { + "File": "_test/testdata/triceCheck.c", + "Line": 1043 + }, + "13762": { + "File": "_test/testdata/triceCheck.c", + "Line": 1044 + }, + "13763": { + "File": "_test/testdata/triceCheck.c", + "Line": 1045 + }, + "13764": { + "File": "_test/testdata/triceCheck.c", + "Line": 1046 + }, + "13765": { + "File": "_test/testdata/triceCheck.c", + "Line": 1047 + }, + "13766": { + "File": "_test/testdata/triceCheck.c", + "Line": 1048 + }, + "13767": { + "File": "_test/testdata/triceCheck.c", + "Line": 1049 + }, + "13768": { + "File": "_test/testdata/triceCheck.c", + "Line": 1050 + }, + "13769": { + "File": "_test/testdata/triceCheck.c", + "Line": 1051 + }, + "13770": { + "File": "_test/testdata/triceCheck.c", + "Line": 1052 + }, + "13771": { + "File": "_test/testdata/triceCheck.c", + "Line": 1053 + }, + "13772": { + "File": "_test/testdata/triceCheck.c", + "Line": 1054 + }, + "13773": { + "File": "_test/testdata/triceCheck.c", + "Line": 1055 + }, + "13774": { + "File": "_test/testdata/triceCheck.c", + "Line": 1056 + }, + "13775": { + "File": "_test/testdata/triceCheck.c", + "Line": 1057 + }, + "13776": { + "File": "_test/testdata/triceCheck.c", + "Line": 1058 + }, + "13777": { + "File": "_test/testdata/triceCheck.c", + "Line": 1059 + }, + "13778": { + "File": "_test/testdata/triceCheck.c", + "Line": 1060 + }, + "13779": { + "File": "_test/testdata/triceCheck.c", + "Line": 1061 + }, + "13780": { + "File": "_test/testdata/triceCheck.c", + "Line": 1062 + }, + "13781": { + "File": "_test/testdata/triceCheck.c", + "Line": 1063 + }, + "13782": { + "File": "_test/testdata/triceCheck.c", + "Line": 1064 + }, + "13783": { + "File": "_test/testdata/triceCheck.c", + "Line": 1065 + }, + "13784": { + "File": "_test/testdata/triceCheck.c", + "Line": 1066 + }, + "13785": { + "File": "_test/testdata/triceCheck.c", + "Line": 1067 + }, + "13786": { + "File": "_test/testdata/triceCheck.c", + "Line": 1068 + }, + "13787": { + "File": "_test/testdata/triceCheck.c", + "Line": 1069 + }, + "13788": { + "File": "_test/testdata/triceCheck.c", + "Line": 1070 + }, + "13789": { + "File": "_test/testdata/triceCheck.c", + "Line": 1071 + }, + "13790": { + "File": "_test/testdata/triceCheck.c", + "Line": 1072 + }, + "13791": { + "File": "_test/testdata/triceCheck.c", + "Line": 1073 + }, + "13792": { + "File": "_test/testdata/triceCheck.c", + "Line": 1074 + }, + "13793": { + "File": "_test/testdata/triceCheck.c", + "Line": 1075 + }, + "13794": { + "File": "_test/testdata/triceCheck.c", + "Line": 1076 + }, + "13795": { + "File": "_test/testdata/triceCheck.c", + "Line": 1078 + }, + "13796": { + "File": "_test/testdata/triceCheck.c", + "Line": 1079 + }, + "13797": { + "File": "_test/testdata/triceCheck.c", + "Line": 1080 + }, + "13798": { + "File": "_test/testdata/triceCheck.c", + "Line": 1081 + }, + "13799": { + "File": "_test/testdata/triceCheck.c", + "Line": 1082 + }, + "13800": { + "File": "_test/testdata/triceCheck.c", + "Line": 1083 + }, + "13801": { + "File": "_test/testdata/triceCheck.c", + "Line": 1084 + }, + "13802": { + "File": "_test/testdata/triceCheck.c", + "Line": 1085 + }, + "13803": { + "File": "_test/testdata/triceCheck.c", + "Line": 1086 + }, + "13804": { + "File": "_test/testdata/triceCheck.c", + "Line": 1087 + }, + "13805": { + "File": "_test/testdata/triceCheck.c", + "Line": 1088 + }, + "13806": { + "File": "_test/testdata/triceCheck.c", + "Line": 1089 + }, + "13807": { + "File": "_test/testdata/triceCheck.c", + "Line": 1090 + }, + "13808": { + "File": "_test/testdata/triceCheck.c", + "Line": 1091 + }, + "13809": { + "File": "_test/testdata/triceCheck.c", + "Line": 1092 + }, + "13810": { + "File": "_test/testdata/triceCheck.c", + "Line": 1093 + }, + "13811": { + "File": "_test/testdata/triceCheck.c", + "Line": 1094 + }, + "13812": { + "File": "_test/testdata/triceCheck.c", + "Line": 1095 + }, + "13813": { + "File": "_test/testdata/triceCheck.c", + "Line": 1096 + }, + "13814": { + "File": "_test/testdata/triceCheck.c", + "Line": 1097 + }, + "13815": { + "File": "_test/testdata/triceCheck.c", + "Line": 1098 + }, + "13816": { + "File": "_test/testdata/triceCheck.c", + "Line": 1099 + }, + "13817": { + "File": "_test/testdata/triceCheck.c", + "Line": 1100 + }, + "13818": { + "File": "_test/testdata/triceCheck.c", + "Line": 1101 + }, + "13819": { + "File": "_test/testdata/triceCheck.c", + "Line": 1102 + }, + "13820": { + "File": "_test/testdata/triceCheck.c", + "Line": 1103 + }, + "13821": { + "File": "_test/testdata/triceCheck.c", + "Line": 1104 + }, + "13822": { + "File": "_test/testdata/triceCheck.c", + "Line": 1105 + }, + "13823": { + "File": "_test/testdata/triceCheck.c", + "Line": 1106 + }, + "13824": { + "File": "_test/testdata/triceCheck.c", + "Line": 1107 + }, + "13825": { + "File": "_test/testdata/triceCheck.c", + "Line": 1108 + }, + "13826": { + "File": "_test/testdata/triceCheck.c", + "Line": 1109 + }, + "13827": { + "File": "_test/testdata/triceCheck.c", + "Line": 1110 + }, + "13828": { + "File": "_test/testdata/triceCheck.c", + "Line": 1111 + }, + "13829": { + "File": "_test/testdata/triceCheck.c", + "Line": 1112 + }, + "13830": { + "File": "_test/testdata/triceCheck.c", + "Line": 1113 + }, + "13831": { + "File": "_test/testdata/triceCheck.c", + "Line": 1114 + }, + "13832": { + "File": "_test/testdata/triceCheck.c", + "Line": 1115 + }, + "13833": { + "File": "_test/testdata/triceCheck.c", + "Line": 1116 + }, + "13834": { + "File": "_test/testdata/triceCheck.c", + "Line": 1117 + }, + "13835": { + "File": "_test/testdata/triceCheck.c", + "Line": 1118 + }, + "13836": { + "File": "_test/testdata/triceCheck.c", + "Line": 1119 + }, + "13837": { + "File": "_test/testdata/triceCheck.c", + "Line": 1120 + }, + "13838": { + "File": "_test/testdata/triceCheck.c", + "Line": 1121 + }, + "13839": { + "File": "_test/testdata/triceCheck.c", + "Line": 1122 + }, + "13840": { + "File": "_test/testdata/triceCheck.c", + "Line": 1123 + }, + "13841": { + "File": "_test/testdata/triceCheck.c", + "Line": 1124 + }, + "13842": { + "File": "_test/testdata/triceCheck.c", + "Line": 1125 + }, + "13843": { + "File": "_test/testdata/triceCheck.c", + "Line": 1126 + }, + "13844": { + "File": "_test/testdata/triceCheck.c", + "Line": 1127 + }, + "13845": { + "File": "_test/testdata/triceCheck.c", + "Line": 1129 + }, + "13846": { + "File": "_test/testdata/triceCheck.c", + "Line": 1130 + }, + "13847": { + "File": "_test/testdata/triceCheck.c", + "Line": 1131 + }, + "13848": { + "File": "_test/testdata/triceCheck.c", + "Line": 1132 + }, + "13849": { + "File": "_test/testdata/triceCheck.c", + "Line": 1133 + }, + "13850": { + "File": "_test/testdata/triceCheck.c", + "Line": 1134 + }, + "13851": { + "File": "_test/testdata/triceCheck.c", + "Line": 1135 + }, + "13852": { + "File": "_test/testdata/triceCheck.c", + "Line": 1136 + }, + "13853": { + "File": "_test/testdata/triceCheck.c", + "Line": 1137 + }, + "13854": { + "File": "_test/testdata/triceCheck.c", + "Line": 1138 + }, + "13855": { + "File": "_test/testdata/triceCheck.c", + "Line": 1139 + }, + "13856": { + "File": "_test/testdata/triceCheck.c", + "Line": 1140 + }, + "13857": { + "File": "_test/testdata/triceCheck.c", + "Line": 1141 + }, + "13858": { + "File": "_test/testdata/triceCheck.c", + "Line": 1142 + }, + "13859": { + "File": "_test/testdata/triceCheck.c", + "Line": 1143 + }, + "13860": { + "File": "_test/testdata/triceCheck.c", + "Line": 1144 + }, + "13861": { + "File": "_test/testdata/triceCheck.c", + "Line": 1145 + }, + "13862": { + "File": "_test/testdata/triceCheck.c", + "Line": 1146 + }, + "13863": { + "File": "_test/testdata/triceCheck.c", + "Line": 1147 + }, + "13864": { + "File": "_test/testdata/triceCheck.c", + "Line": 1148 + }, + "13865": { + "File": "_test/testdata/triceCheck.c", + "Line": 1149 + }, + "13866": { + "File": "_test/testdata/triceCheck.c", + "Line": 1150 + }, + "13867": { + "File": "_test/testdata/triceCheck.c", + "Line": 1151 + }, + "13868": { + "File": "_test/testdata/triceCheck.c", + "Line": 1152 + }, + "13869": { + "File": "_test/testdata/triceCheck.c", + "Line": 1153 + }, + "13870": { + "File": "_test/testdata/triceCheck.c", + "Line": 1154 + }, + "13871": { + "File": "_test/testdata/triceCheck.c", + "Line": 1155 + }, + "13872": { + "File": "_test/testdata/triceCheck.c", + "Line": 1156 + }, + "13873": { + "File": "_test/testdata/triceCheck.c", + "Line": 1157 + }, + "13874": { + "File": "_test/testdata/triceCheck.c", + "Line": 1158 + }, + "13875": { + "File": "_test/testdata/triceCheck.c", + "Line": 1159 + }, + "13876": { + "File": "_test/testdata/triceCheck.c", + "Line": 1160 + }, + "13877": { + "File": "_test/testdata/triceCheck.c", + "Line": 1161 + }, + "13878": { + "File": "_test/testdata/triceCheck.c", + "Line": 1162 + }, + "13879": { + "File": "_test/testdata/triceCheck.c", + "Line": 1163 + }, + "13880": { + "File": "_test/testdata/triceCheck.c", + "Line": 1164 + }, + "13881": { + "File": "_test/testdata/triceCheck.c", + "Line": 1165 + }, + "13882": { + "File": "_test/testdata/triceCheck.c", + "Line": 1166 + }, + "13883": { + "File": "_test/testdata/triceCheck.c", + "Line": 1167 + }, + "13884": { + "File": "_test/testdata/triceCheck.c", + "Line": 1168 + }, + "13885": { + "File": "_test/testdata/triceCheck.c", + "Line": 1169 + }, + "13886": { + "File": "_test/testdata/triceCheck.c", + "Line": 1170 + }, + "13887": { + "File": "_test/testdata/triceCheck.c", + "Line": 1171 + }, + "13888": { + "File": "_test/testdata/triceCheck.c", + "Line": 1172 + }, + "13889": { + "File": "_test/testdata/triceCheck.c", + "Line": 1173 + }, + "13890": { + "File": "_test/testdata/triceCheck.c", + "Line": 1174 + }, + "13891": { + "File": "_test/testdata/triceCheck.c", + "Line": 1175 + }, + "13892": { + "File": "_test/testdata/triceCheck.c", + "Line": 1176 + }, + "13893": { + "File": "_test/testdata/triceCheck.c", + "Line": 1177 + }, + "13894": { + "File": "_test/testdata/triceCheck.c", + "Line": 1178 + }, + "13895": { + "File": "_test/testdata/triceCheck.c", + "Line": 1180 + }, + "13896": { + "File": "_test/testdata/triceCheck.c", + "Line": 1181 + }, + "13897": { + "File": "_test/testdata/triceCheck.c", + "Line": 1182 + }, + "13898": { + "File": "_test/testdata/triceCheck.c", + "Line": 1183 + }, + "13899": { + "File": "_test/testdata/triceCheck.c", + "Line": 1184 + }, + "13900": { + "File": "_test/testdata/triceCheck.c", + "Line": 1185 + }, + "13901": { + "File": "_test/testdata/triceCheck.c", + "Line": 1186 + }, + "13902": { + "File": "_test/testdata/triceCheck.c", + "Line": 1187 + }, + "13903": { + "File": "_test/testdata/triceCheck.c", + "Line": 1188 + }, + "13904": { + "File": "_test/testdata/triceCheck.c", + "Line": 1189 + }, + "13905": { + "File": "_test/testdata/triceCheck.c", + "Line": 1190 + }, + "13906": { + "File": "_test/testdata/triceCheck.c", + "Line": 1191 + }, + "13907": { + "File": "_test/testdata/triceCheck.c", + "Line": 1192 + }, + "13908": { + "File": "_test/testdata/triceCheck.c", + "Line": 1193 + }, + "13909": { + "File": "_test/testdata/triceCheck.c", + "Line": 1194 + }, + "13910": { + "File": "_test/testdata/triceCheck.c", + "Line": 1195 + }, + "13911": { + "File": "_test/testdata/triceCheck.c", + "Line": 1196 + }, + "13912": { + "File": "_test/testdata/triceCheck.c", + "Line": 1197 + }, + "13913": { + "File": "_test/testdata/triceCheck.c", + "Line": 1198 + }, + "13914": { + "File": "_test/testdata/triceCheck.c", + "Line": 1199 + }, + "13915": { + "File": "_test/testdata/triceCheck.c", + "Line": 1200 + }, + "13916": { + "File": "_test/testdata/triceCheck.c", + "Line": 1201 + }, + "13917": { + "File": "_test/testdata/triceCheck.c", + "Line": 1202 + }, + "13918": { + "File": "_test/testdata/triceCheck.c", + "Line": 1203 + }, + "13919": { + "File": "_test/testdata/triceCheck.c", + "Line": 1204 + }, + "13920": { + "File": "_test/testdata/triceCheck.c", + "Line": 1205 + }, + "13921": { + "File": "_test/testdata/triceCheck.c", + "Line": 1206 + }, + "13922": { + "File": "_test/testdata/triceCheck.c", + "Line": 1207 + }, + "13923": { + "File": "_test/testdata/triceCheck.c", + "Line": 1208 + }, + "13924": { + "File": "_test/testdata/triceCheck.c", + "Line": 1209 + }, + "13925": { + "File": "_test/testdata/triceCheck.c", + "Line": 1210 + }, + "13926": { + "File": "_test/testdata/triceCheck.c", + "Line": 1211 + }, + "13927": { + "File": "_test/testdata/triceCheck.c", + "Line": 1212 + }, + "13928": { + "File": "_test/testdata/triceCheck.c", + "Line": 1213 + }, + "13929": { + "File": "_test/testdata/triceCheck.c", + "Line": 1214 + }, + "13930": { + "File": "_test/testdata/triceCheck.c", + "Line": 1215 + }, + "13931": { + "File": "_test/testdata/triceCheck.c", + "Line": 1216 + }, + "13932": { + "File": "_test/testdata/triceCheck.c", + "Line": 1217 + }, + "13933": { + "File": "_test/testdata/triceCheck.c", + "Line": 1218 + }, + "13934": { + "File": "_test/testdata/triceCheck.c", + "Line": 1219 + }, + "13935": { + "File": "_test/testdata/triceCheck.c", + "Line": 1220 + }, + "13936": { + "File": "_test/testdata/triceCheck.c", + "Line": 1221 + }, + "13937": { + "File": "_test/testdata/triceCheck.c", + "Line": 1222 + }, + "13938": { + "File": "_test/testdata/triceCheck.c", + "Line": 1223 + }, + "13939": { + "File": "_test/testdata/triceCheck.c", + "Line": 1224 + }, + "13940": { + "File": "_test/testdata/triceCheck.c", + "Line": 1225 + }, + "13941": { + "File": "_test/testdata/triceCheck.c", + "Line": 1226 + }, + "13942": { + "File": "_test/testdata/triceCheck.c", + "Line": 1227 + }, + "13943": { + "File": "_test/testdata/triceCheck.c", + "Line": 1228 + }, + "13944": { + "File": "_test/testdata/triceCheck.c", + "Line": 1229 + }, + "13945": { + "File": "_test/testdata/triceCheck.c", + "Line": 1233 + }, + "13946": { + "File": "_test/testdata/triceCheck.c", + "Line": 1235 + }, + "13947": { + "File": "_test/testdata/triceCheck.c", + "Line": 1236 + }, + "13948": { + "File": "_test/testdata/triceCheck.c", + "Line": 1237 + }, + "13949": { + "File": "_test/testdata/triceCheck.c", + "Line": 1238 + }, + "13950": { + "File": "_test/testdata/triceCheck.c", + "Line": 1239 + }, + "13951": { + "File": "_test/testdata/triceCheck.c", + "Line": 1240 + }, + "13952": { + "File": "_test/testdata/triceCheck.c", + "Line": 1241 + }, + "13953": { + "File": "_test/testdata/triceCheck.c", + "Line": 1242 + }, + "13954": { + "File": "_test/testdata/triceCheck.c", + "Line": 1243 + }, + "13955": { + "File": "_test/testdata/triceCheck.c", + "Line": 1244 + }, + "13956": { + "File": "_test/testdata/triceCheck.c", + "Line": 1245 + }, + "13957": { + "File": "_test/testdata/triceCheck.c", + "Line": 1246 + }, + "13958": { + "File": "_test/testdata/triceCheck.c", + "Line": 1247 + }, + "13959": { + "File": "_test/testdata/triceCheck.c", + "Line": 1248 + }, + "13960": { + "File": "_test/testdata/triceCheck.c", + "Line": 1249 + }, + "13961": { + "File": "_test/testdata/triceCheck.c", + "Line": 1250 + }, + "13962": { + "File": "_test/testdata/triceCheck.c", + "Line": 1251 + }, + "13963": { + "File": "_test/testdata/triceCheck.c", + "Line": 1252 + }, + "13964": { + "File": "_test/testdata/triceCheck.c", + "Line": 1253 + }, + "13965": { + "File": "_test/testdata/triceCheck.c", + "Line": 1254 + }, + "13966": { + "File": "_test/testdata/triceCheck.c", + "Line": 1255 + }, + "13967": { + "File": "_test/testdata/triceCheck.c", + "Line": 1256 + }, + "13968": { + "File": "_test/testdata/triceCheck.c", + "Line": 1257 + }, + "13969": { + "File": "_test/testdata/triceCheck.c", + "Line": 1258 + }, + "13970": { + "File": "_test/testdata/triceCheck.c", + "Line": 1259 + }, + "13971": { + "File": "_test/testdata/triceCheck.c", + "Line": 1260 + }, + "13972": { + "File": "_test/testdata/triceCheck.c", + "Line": 1261 + }, + "13973": { + "File": "_test/testdata/triceCheck.c", + "Line": 1262 + }, + "13974": { + "File": "_test/testdata/triceCheck.c", + "Line": 1263 + }, + "13975": { + "File": "_test/testdata/triceCheck.c", + "Line": 1264 + }, + "13976": { + "File": "_test/testdata/triceCheck.c", + "Line": 1265 + }, + "13977": { + "File": "_test/testdata/triceCheck.c", + "Line": 1266 + }, + "13978": { + "File": "_test/testdata/triceCheck.c", + "Line": 1267 + }, + "13979": { + "File": "_test/testdata/triceCheck.c", + "Line": 1268 + }, + "13980": { + "File": "_test/testdata/triceCheck.c", + "Line": 1269 + }, + "13981": { + "File": "_test/testdata/triceCheck.c", + "Line": 1270 + }, + "13982": { + "File": "_test/testdata/triceCheck.c", + "Line": 1271 + }, + "13983": { + "File": "_test/testdata/triceCheck.c", + "Line": 1274 + }, + "13984": { + "File": "_test/testdata/triceCheck.c", + "Line": 1275 + }, + "13985": { + "File": "_test/testdata/triceCheck.c", + "Line": 1276 + }, + "13986": { + "File": "_test/testdata/triceCheck.c", + "Line": 1277 + }, + "13987": { + "File": "_test/testdata/triceCheck.c", + "Line": 1278 + }, + "13988": { + "File": "_test/testdata/triceCheck.c", + "Line": 1279 + }, + "13989": { + "File": "_test/testdata/triceCheck.c", + "Line": 1280 + }, + "13990": { + "File": "_test/testdata/triceCheck.c", + "Line": 1281 + }, + "13991": { + "File": "_test/testdata/triceCheck.c", + "Line": 1282 + }, + "13992": { + "File": "_test/testdata/triceCheck.c", + "Line": 1283 + }, + "13993": { + "File": "_test/testdata/triceCheck.c", + "Line": 1284 + }, + "13994": { + "File": "_test/testdata/triceCheck.c", + "Line": 1285 + }, + "13995": { + "File": "_test/testdata/triceCheck.c", + "Line": 1286 + }, + "13996": { + "File": "_test/testdata/triceCheck.c", + "Line": 1287 + }, + "13997": { + "File": "_test/testdata/triceCheck.c", + "Line": 1288 + }, + "13998": { + "File": "_test/testdata/triceCheck.c", + "Line": 1289 + }, + "13999": { + "File": "_test/testdata/triceCheck.c", + "Line": 1290 + }, + "14000": { + "File": "_test/testdata/triceCheck.c", + "Line": 1291 + }, + "14001": { + "File": "_test/testdata/triceCheck.c", + "Line": 1292 + }, + "14002": { + "File": "_test/testdata/triceCheck.c", + "Line": 1293 + }, + "14003": { + "File": "_test/testdata/triceCheck.c", + "Line": 1294 + }, + "14004": { + "File": "_test/testdata/triceCheck.c", + "Line": 1295 + }, + "14005": { + "File": "_test/testdata/triceCheck.c", + "Line": 1296 + }, + "14006": { + "File": "_test/testdata/triceCheck.c", + "Line": 1297 + }, + "14007": { + "File": "_test/testdata/triceCheck.c", + "Line": 1298 + }, + "14008": { + "File": "_test/testdata/triceCheck.c", + "Line": 1299 + }, + "14009": { + "File": "_test/testdata/triceCheck.c", + "Line": 1300 + }, + "14010": { + "File": "_test/testdata/triceCheck.c", + "Line": 1301 + }, + "14011": { + "File": "_test/testdata/triceCheck.c", + "Line": 1302 + }, + "14012": { + "File": "_test/testdata/triceCheck.c", + "Line": 1303 + }, + "14013": { + "File": "_test/testdata/triceCheck.c", + "Line": 1304 + }, + "14014": { + "File": "_test/testdata/triceCheck.c", + "Line": 1305 + }, + "14015": { + "File": "_test/testdata/triceCheck.c", + "Line": 1306 + }, + "14016": { + "File": "_test/testdata/triceCheck.c", + "Line": 1307 + }, + "14017": { + "File": "_test/testdata/triceCheck.c", + "Line": 1308 + }, + "14018": { + "File": "_test/testdata/triceCheck.c", + "Line": 1309 + }, + "14019": { + "File": "_test/testdata/triceCheck.c", + "Line": 1310 + }, + "14020": { + "File": "_test/testdata/triceCheck.c", + "Line": 1313 + }, + "14021": { + "File": "_test/testdata/triceCheck.c", + "Line": 1314 + }, + "14022": { + "File": "_test/testdata/triceCheck.c", + "Line": 1315 + }, + "14023": { + "File": "_test/testdata/triceCheck.c", + "Line": 1316 + }, + "14024": { + "File": "_test/testdata/triceCheck.c", + "Line": 1317 + }, + "14025": { + "File": "_test/testdata/triceCheck.c", + "Line": 1318 + }, + "14026": { + "File": "_test/testdata/triceCheck.c", + "Line": 1319 + }, + "14027": { + "File": "_test/testdata/triceCheck.c", + "Line": 1320 + }, + "14028": { + "File": "_test/testdata/triceCheck.c", + "Line": 1321 + }, + "14029": { + "File": "_test/testdata/triceCheck.c", + "Line": 1322 + }, + "14030": { + "File": "_test/testdata/triceCheck.c", + "Line": 1323 + }, + "14031": { + "File": "_test/testdata/triceCheck.c", + "Line": 1324 + }, + "14032": { + "File": "_test/testdata/triceCheck.c", + "Line": 1325 + }, + "14033": { + "File": "_test/testdata/triceCheck.c", + "Line": 1326 + }, + "14034": { + "File": "_test/testdata/triceCheck.c", + "Line": 1327 + }, + "14035": { + "File": "_test/testdata/triceCheck.c", + "Line": 1328 + }, + "14036": { + "File": "_test/testdata/triceCheck.c", + "Line": 1329 + }, + "14037": { + "File": "_test/testdata/triceCheck.c", + "Line": 1330 + }, + "14038": { + "File": "_test/testdata/triceCheck.c", + "Line": 1331 + }, + "14039": { + "File": "_test/testdata/triceCheck.c", + "Line": 1332 + }, + "14040": { + "File": "_test/testdata/triceCheck.c", + "Line": 1333 + }, + "14041": { + "File": "_test/testdata/triceCheck.c", + "Line": 1334 + }, + "14042": { + "File": "_test/testdata/triceCheck.c", + "Line": 1335 + }, + "14043": { + "File": "_test/testdata/triceCheck.c", + "Line": 1336 + }, + "14044": { + "File": "_test/testdata/triceCheck.c", + "Line": 1337 + }, + "14045": { + "File": "_test/testdata/triceCheck.c", + "Line": 1338 + }, + "14046": { + "File": "_test/testdata/triceCheck.c", + "Line": 1339 + }, + "14047": { + "File": "_test/testdata/triceCheck.c", + "Line": 1340 + }, + "14048": { + "File": "_test/testdata/triceCheck.c", + "Line": 1341 + }, + "14049": { + "File": "_test/testdata/triceCheck.c", + "Line": 1342 + }, + "14050": { + "File": "_test/testdata/triceCheck.c", + "Line": 1343 + }, + "14051": { + "File": "_test/testdata/triceCheck.c", + "Line": 1344 + }, + "14052": { + "File": "_test/testdata/triceCheck.c", + "Line": 1345 + }, + "14053": { + "File": "_test/testdata/triceCheck.c", + "Line": 1346 + }, + "14054": { + "File": "_test/testdata/triceCheck.c", + "Line": 1347 + }, + "14055": { + "File": "_test/testdata/triceCheck.c", + "Line": 1348 + }, + "14056": { + "File": "_test/testdata/triceCheck.c", + "Line": 1349 + }, + "14057": { + "File": "_test/testdata/triceCheck.c", + "Line": 1351 + }, + "14058": { + "File": "_test/testdata/triceCheck.c", + "Line": 1352 + }, + "14059": { + "File": "_test/testdata/triceCheck.c", + "Line": 1353 + }, + "14060": { + "File": "_test/testdata/triceCheck.c", + "Line": 1354 + }, + "14061": { + "File": "_test/testdata/triceCheck.c", + "Line": 1355 + }, + "14062": { + "File": "_test/testdata/triceCheck.c", + "Line": 1356 + }, + "14063": { + "File": "_test/testdata/triceCheck.c", + "Line": 1357 + }, + "14064": { + "File": "_test/testdata/triceCheck.c", + "Line": 1358 + }, + "14065": { + "File": "_test/testdata/triceCheck.c", + "Line": 1359 + }, + "14066": { + "File": "_test/testdata/triceCheck.c", + "Line": 1360 + }, + "14067": { + "File": "_test/testdata/triceCheck.c", + "Line": 1361 + }, + "14068": { + "File": "_test/testdata/triceCheck.c", + "Line": 1362 + }, + "14069": { + "File": "_test/testdata/triceCheck.c", + "Line": 1363 + }, + "14070": { + "File": "_test/testdata/triceCheck.c", + "Line": 1364 + }, + "14071": { + "File": "_test/testdata/triceCheck.c", + "Line": 1365 + }, + "14072": { + "File": "_test/testdata/triceCheck.c", + "Line": 1366 + }, + "14073": { + "File": "_test/testdata/triceCheck.c", + "Line": 1367 + }, + "14074": { + "File": "_test/testdata/triceCheck.c", + "Line": 1368 + }, + "14075": { + "File": "_test/testdata/triceCheck.c", + "Line": 1369 + }, + "14076": { + "File": "_test/testdata/triceCheck.c", + "Line": 1370 + }, + "14077": { + "File": "_test/testdata/triceCheck.c", + "Line": 1371 + }, + "14078": { + "File": "_test/testdata/triceCheck.c", + "Line": 1372 + }, + "14079": { + "File": "_test/testdata/triceCheck.c", + "Line": 1373 + }, + "14080": { + "File": "_test/testdata/triceCheck.c", + "Line": 1374 + }, + "14081": { + "File": "_test/testdata/triceCheck.c", + "Line": 1375 + }, + "14082": { + "File": "_test/testdata/triceCheck.c", + "Line": 1376 + }, + "14083": { + "File": "_test/testdata/triceCheck.c", + "Line": 1377 + }, + "14084": { + "File": "_test/testdata/triceCheck.c", + "Line": 1378 + }, + "14085": { + "File": "_test/testdata/triceCheck.c", + "Line": 1379 + }, + "14086": { + "File": "_test/testdata/triceCheck.c", + "Line": 1380 + }, + "14087": { + "File": "_test/testdata/triceCheck.c", + "Line": 1381 + }, + "14088": { + "File": "_test/testdata/triceCheck.c", + "Line": 1382 + }, + "14089": { + "File": "_test/testdata/triceCheck.c", + "Line": 1383 + }, + "14090": { + "File": "_test/testdata/triceCheck.c", + "Line": 1384 + }, + "14091": { + "File": "_test/testdata/triceCheck.c", + "Line": 1385 + }, + "14092": { + "File": "_test/testdata/triceCheck.c", + "Line": 1386 + }, + "14093": { + "File": "_test/testdata/triceCheck.c", + "Line": 1387 + }, + "14094": { + "File": "_test/testdata/triceCheck.c", + "Line": 1389 + }, + "14095": { + "File": "_test/testdata/triceCheck.c", + "Line": 1390 + }, + "14096": { + "File": "_test/testdata/triceCheck.c", + "Line": 1391 + }, + "14097": { + "File": "_test/testdata/triceCheck.c", + "Line": 1392 + }, + "14098": { + "File": "_test/testdata/triceCheck.c", + "Line": 1393 + }, + "14099": { + "File": "_test/testdata/triceCheck.c", + "Line": 1394 + }, + "14100": { + "File": "_test/testdata/triceCheck.c", + "Line": 1395 + }, + "14101": { + "File": "_test/testdata/triceCheck.c", + "Line": 1396 + }, + "14102": { + "File": "_test/testdata/triceCheck.c", + "Line": 1397 + }, + "14103": { + "File": "_test/testdata/triceCheck.c", + "Line": 1398 + }, + "14104": { + "File": "_test/testdata/triceCheck.c", + "Line": 1399 + }, + "14105": { + "File": "_test/testdata/triceCheck.c", + "Line": 1400 + }, + "14106": { + "File": "_test/testdata/triceCheck.c", + "Line": 1401 + }, + "14107": { + "File": "_test/testdata/triceCheck.c", + "Line": 1402 + }, + "14108": { + "File": "_test/testdata/triceCheck.c", + "Line": 1403 + }, + "14109": { + "File": "_test/testdata/triceCheck.c", + "Line": 1404 + }, + "14110": { + "File": "_test/testdata/triceCheck.c", + "Line": 1405 + }, + "14111": { + "File": "_test/testdata/triceCheck.c", + "Line": 1406 + }, + "14112": { + "File": "_test/testdata/triceCheck.c", + "Line": 1407 + }, + "14113": { + "File": "_test/testdata/triceCheck.c", + "Line": 1408 + }, + "14114": { + "File": "_test/testdata/triceCheck.c", + "Line": 1409 + }, + "14115": { + "File": "_test/testdata/triceCheck.c", + "Line": 1410 + }, + "14116": { + "File": "_test/testdata/triceCheck.c", + "Line": 1411 + }, + "14117": { + "File": "_test/testdata/triceCheck.c", + "Line": 1412 + }, + "14118": { + "File": "_test/testdata/triceCheck.c", + "Line": 1413 + }, + "14119": { + "File": "_test/testdata/triceCheck.c", + "Line": 1414 + }, + "14120": { + "File": "_test/testdata/triceCheck.c", + "Line": 1415 + }, + "14121": { + "File": "_test/testdata/triceCheck.c", + "Line": 1416 + }, + "14122": { + "File": "_test/testdata/triceCheck.c", + "Line": 1417 + }, + "14123": { + "File": "_test/testdata/triceCheck.c", + "Line": 1418 + }, + "14124": { + "File": "_test/testdata/triceCheck.c", + "Line": 1419 + }, + "14125": { + "File": "_test/testdata/triceCheck.c", + "Line": 1420 + }, + "14126": { + "File": "_test/testdata/triceCheck.c", + "Line": 1421 + }, + "14127": { + "File": "_test/testdata/triceCheck.c", + "Line": 1422 + }, + "14128": { + "File": "_test/testdata/triceCheck.c", + "Line": 1423 + }, + "14129": { + "File": "_test/testdata/triceCheck.c", + "Line": 1424 + }, + "14130": { + "File": "_test/testdata/triceCheck.c", + "Line": 1425 + }, + "14131": { + "File": "_test/testdata/triceCheck.c", + "Line": 1427 + }, + "14132": { + "File": "_test/testdata/triceCheck.c", + "Line": 1428 + }, + "14133": { + "File": "_test/testdata/triceCheck.c", + "Line": 1429 + }, + "14134": { + "File": "_test/testdata/triceCheck.c", + "Line": 1430 + }, + "14135": { + "File": "_test/testdata/triceCheck.c", + "Line": 1431 + }, + "14136": { + "File": "_test/testdata/triceCheck.c", + "Line": 1432 + }, + "14137": { + "File": "_test/testdata/triceCheck.c", + "Line": 1433 + }, + "14138": { + "File": "_test/testdata/triceCheck.c", + "Line": 1434 + }, + "14139": { + "File": "_test/testdata/triceCheck.c", + "Line": 1435 + }, + "14140": { + "File": "_test/testdata/triceCheck.c", + "Line": 1436 + }, + "14141": { + "File": "_test/testdata/triceCheck.c", + "Line": 1437 + }, + "14142": { + "File": "_test/testdata/triceCheck.c", + "Line": 1438 + }, + "14143": { + "File": "_test/testdata/triceCheck.c", + "Line": 1439 + }, + "14144": { + "File": "_test/testdata/triceCheck.c", + "Line": 1440 + }, + "14145": { + "File": "_test/testdata/triceCheck.c", + "Line": 1441 + }, + "14146": { + "File": "_test/testdata/triceCheck.c", + "Line": 1442 + }, + "14147": { + "File": "_test/testdata/triceCheck.c", + "Line": 1443 + }, + "14148": { + "File": "_test/testdata/triceCheck.c", + "Line": 1444 + }, + "14149": { + "File": "_test/testdata/triceCheck.c", + "Line": 1445 + }, + "14150": { + "File": "_test/testdata/triceCheck.c", + "Line": 1446 + }, + "14151": { + "File": "_test/testdata/triceCheck.c", + "Line": 1447 + }, + "14152": { + "File": "_test/testdata/triceCheck.c", + "Line": 1448 + }, + "14153": { + "File": "_test/testdata/triceCheck.c", + "Line": 1449 + }, + "14154": { + "File": "_test/testdata/triceCheck.c", + "Line": 1450 + }, + "14155": { + "File": "_test/testdata/triceCheck.c", + "Line": 1451 + }, + "14156": { + "File": "_test/testdata/triceCheck.c", + "Line": 1452 + }, + "14157": { + "File": "_test/testdata/triceCheck.c", + "Line": 1453 + }, + "14158": { + "File": "_test/testdata/triceCheck.c", + "Line": 1454 + }, + "14159": { + "File": "_test/testdata/triceCheck.c", + "Line": 1455 + }, + "14160": { + "File": "_test/testdata/triceCheck.c", + "Line": 1456 + }, + "14161": { + "File": "_test/testdata/triceCheck.c", + "Line": 1457 + }, + "14162": { + "File": "_test/testdata/triceCheck.c", + "Line": 1458 + }, + "14163": { + "File": "_test/testdata/triceCheck.c", + "Line": 1459 + }, + "14164": { + "File": "_test/testdata/triceCheck.c", + "Line": 1460 + }, + "14165": { + "File": "_test/testdata/triceCheck.c", + "Line": 1461 + }, + "14166": { + "File": "_test/testdata/triceCheck.c", + "Line": 1462 + }, + "14167": { + "File": "_test/testdata/triceCheck.c", + "Line": 1463 + }, + "14168": { + "File": "_test/testdata/triceCheck.c", + "Line": 1465 + }, + "14169": { + "File": "_test/testdata/triceCheck.c", + "Line": 1466 + }, + "14170": { + "File": "_test/testdata/triceCheck.c", + "Line": 1467 + }, + "14171": { + "File": "_test/testdata/triceCheck.c", + "Line": 1468 + }, + "14172": { + "File": "_test/testdata/triceCheck.c", + "Line": 1469 + }, + "14173": { + "File": "_test/testdata/triceCheck.c", + "Line": 1470 + }, + "14174": { + "File": "_test/testdata/triceCheck.c", + "Line": 1471 + }, + "14175": { + "File": "_test/testdata/triceCheck.c", + "Line": 1472 + }, + "14176": { + "File": "_test/testdata/triceCheck.c", + "Line": 1473 + }, + "14177": { + "File": "_test/testdata/triceCheck.c", + "Line": 1474 + }, + "14178": { + "File": "_test/testdata/triceCheck.c", + "Line": 1475 + }, + "14179": { + "File": "_test/testdata/triceCheck.c", + "Line": 1476 + }, + "14180": { + "File": "_test/testdata/triceCheck.c", + "Line": 1477 + }, + "14181": { + "File": "_test/testdata/triceCheck.c", + "Line": 1478 + }, + "14182": { + "File": "_test/testdata/triceCheck.c", + "Line": 1479 + }, + "14183": { + "File": "_test/testdata/triceCheck.c", + "Line": 1480 + }, + "14184": { + "File": "_test/testdata/triceCheck.c", + "Line": 1481 + }, + "14185": { + "File": "_test/testdata/triceCheck.c", + "Line": 1482 + }, + "14186": { + "File": "_test/testdata/triceCheck.c", + "Line": 1483 + }, + "14187": { + "File": "_test/testdata/triceCheck.c", + "Line": 1484 + }, + "14188": { + "File": "_test/testdata/triceCheck.c", + "Line": 1485 + }, + "14189": { + "File": "_test/testdata/triceCheck.c", + "Line": 1486 + }, + "14190": { + "File": "_test/testdata/triceCheck.c", + "Line": 1487 + }, + "14191": { + "File": "_test/testdata/triceCheck.c", + "Line": 1488 + }, + "14192": { + "File": "_test/testdata/triceCheck.c", + "Line": 1489 + }, + "14193": { + "File": "_test/testdata/triceCheck.c", + "Line": 1490 + }, + "14194": { + "File": "_test/testdata/triceCheck.c", + "Line": 1491 + }, + "14195": { + "File": "_test/testdata/triceCheck.c", + "Line": 1492 + }, + "14196": { + "File": "_test/testdata/triceCheck.c", + "Line": 1493 + }, + "14197": { + "File": "_test/testdata/triceCheck.c", + "Line": 1494 + }, + "14198": { + "File": "_test/testdata/triceCheck.c", + "Line": 1495 + }, + "14199": { + "File": "_test/testdata/triceCheck.c", + "Line": 1496 + }, + "14200": { + "File": "_test/testdata/triceCheck.c", + "Line": 1497 + }, + "14201": { + "File": "_test/testdata/triceCheck.c", + "Line": 1498 + }, + "14202": { + "File": "_test/testdata/triceCheck.c", + "Line": 1499 + }, + "14203": { + "File": "_test/testdata/triceCheck.c", + "Line": 1500 + }, + "14204": { + "File": "_test/testdata/triceCheck.c", + "Line": 1501 + }, + "14205": { + "File": "_test/testdata/triceCheck.c", + "Line": 1503 + }, + "14206": { + "File": "_test/testdata/triceCheck.c", + "Line": 1504 + }, + "14207": { + "File": "_test/testdata/triceCheck.c", + "Line": 1505 + }, + "14208": { + "File": "_test/testdata/triceCheck.c", + "Line": 1506 + }, + "14209": { + "File": "_test/testdata/triceCheck.c", + "Line": 1507 + }, + "14210": { + "File": "_test/testdata/triceCheck.c", + "Line": 1508 + }, + "14211": { + "File": "_test/testdata/triceCheck.c", + "Line": 1509 + }, + "14212": { + "File": "_test/testdata/triceCheck.c", + "Line": 1510 + }, + "14213": { + "File": "_test/testdata/triceCheck.c", + "Line": 1511 + }, + "14214": { + "File": "_test/testdata/triceCheck.c", + "Line": 1512 + }, + "14215": { + "File": "_test/testdata/triceCheck.c", + "Line": 1513 + }, + "14216": { + "File": "_test/testdata/triceCheck.c", + "Line": 1514 + }, + "14217": { + "File": "_test/testdata/triceCheck.c", + "Line": 1515 + }, + "14218": { + "File": "_test/testdata/triceCheck.c", + "Line": 1516 + }, + "14219": { + "File": "_test/testdata/triceCheck.c", + "Line": 1517 + }, + "14220": { + "File": "_test/testdata/triceCheck.c", + "Line": 1518 + }, + "14221": { + "File": "_test/testdata/triceCheck.c", + "Line": 1519 + }, + "14222": { + "File": "_test/testdata/triceCheck.c", + "Line": 1520 + }, + "14223": { + "File": "_test/testdata/triceCheck.c", + "Line": 1521 + }, + "14224": { + "File": "_test/testdata/triceCheck.c", + "Line": 1522 + }, + "14225": { + "File": "_test/testdata/triceCheck.c", + "Line": 1523 + }, + "14226": { + "File": "_test/testdata/triceCheck.c", + "Line": 1524 + }, + "14227": { + "File": "_test/testdata/triceCheck.c", + "Line": 1525 + }, + "14228": { + "File": "_test/testdata/triceCheck.c", + "Line": 1526 + }, + "14229": { + "File": "_test/testdata/triceCheck.c", + "Line": 1527 + }, + "14230": { + "File": "_test/testdata/triceCheck.c", + "Line": 1528 + }, + "14231": { + "File": "_test/testdata/triceCheck.c", + "Line": 1529 + }, + "14232": { + "File": "_test/testdata/triceCheck.c", + "Line": 1530 + }, + "14233": { + "File": "_test/testdata/triceCheck.c", + "Line": 1531 + }, + "14234": { + "File": "_test/testdata/triceCheck.c", + "Line": 1532 + }, + "14235": { + "File": "_test/testdata/triceCheck.c", + "Line": 1533 + }, + "14236": { + "File": "_test/testdata/triceCheck.c", + "Line": 1534 + }, + "14237": { + "File": "_test/testdata/triceCheck.c", + "Line": 1535 + }, + "14238": { + "File": "_test/testdata/triceCheck.c", + "Line": 1536 + }, + "14239": { + "File": "_test/testdata/triceCheck.c", + "Line": 1537 + }, + "14240": { + "File": "_test/testdata/triceCheck.c", + "Line": 1538 + }, + "14241": { + "File": "_test/testdata/triceCheck.c", + "Line": 1539 + }, + "14242": { + "File": "_test/testdata/triceCheck.c", + "Line": 1541 + }, + "14243": { + "File": "_test/testdata/triceCheck.c", + "Line": 1542 + }, + "14244": { + "File": "_test/testdata/triceCheck.c", + "Line": 1543 + }, + "14245": { + "File": "_test/testdata/triceCheck.c", + "Line": 1544 + }, + "14246": { + "File": "_test/testdata/triceCheck.c", + "Line": 1545 + }, + "14247": { + "File": "_test/testdata/triceCheck.c", + "Line": 1546 + }, + "14248": { + "File": "_test/testdata/triceCheck.c", + "Line": 1547 + }, + "14249": { + "File": "_test/testdata/triceCheck.c", + "Line": 1548 + }, + "14250": { + "File": "_test/testdata/triceCheck.c", + "Line": 1549 + }, + "14251": { + "File": "_test/testdata/triceCheck.c", + "Line": 1550 + }, + "14252": { + "File": "_test/testdata/triceCheck.c", + "Line": 1551 + }, + "14253": { + "File": "_test/testdata/triceCheck.c", + "Line": 1552 + }, + "14254": { + "File": "_test/testdata/triceCheck.c", + "Line": 1553 + }, + "14255": { + "File": "_test/testdata/triceCheck.c", + "Line": 1554 + }, + "14256": { + "File": "_test/testdata/triceCheck.c", + "Line": 1555 + }, + "14257": { + "File": "_test/testdata/triceCheck.c", + "Line": 1556 + }, + "14258": { + "File": "_test/testdata/triceCheck.c", + "Line": 1557 + }, + "14259": { + "File": "_test/testdata/triceCheck.c", + "Line": 1558 + }, + "14260": { + "File": "_test/testdata/triceCheck.c", + "Line": 1559 + }, + "14261": { + "File": "_test/testdata/triceCheck.c", + "Line": 1560 + }, + "14262": { + "File": "_test/testdata/triceCheck.c", + "Line": 1561 + }, + "14263": { + "File": "_test/testdata/triceCheck.c", + "Line": 1562 + }, + "14264": { + "File": "_test/testdata/triceCheck.c", + "Line": 1563 + }, + "14265": { + "File": "_test/testdata/triceCheck.c", + "Line": 1564 + }, + "14266": { + "File": "_test/testdata/triceCheck.c", + "Line": 1565 + }, + "14267": { + "File": "_test/testdata/triceCheck.c", + "Line": 1566 + }, + "14268": { + "File": "_test/testdata/triceCheck.c", + "Line": 1567 + }, + "14269": { + "File": "_test/testdata/triceCheck.c", + "Line": 1568 + }, + "14270": { + "File": "_test/testdata/triceCheck.c", + "Line": 1569 + }, + "14271": { + "File": "_test/testdata/triceCheck.c", + "Line": 1570 + }, + "14272": { + "File": "_test/testdata/triceCheck.c", + "Line": 1571 + }, + "14273": { + "File": "_test/testdata/triceCheck.c", + "Line": 1572 + }, + "14274": { + "File": "_test/testdata/triceCheck.c", + "Line": 1573 + }, + "14275": { + "File": "_test/testdata/triceCheck.c", + "Line": 1574 + }, + "14276": { + "File": "_test/testdata/triceCheck.c", + "Line": 1575 + }, + "14277": { + "File": "_test/testdata/triceCheck.c", + "Line": 1576 + }, + "14278": { + "File": "_test/testdata/triceCheck.c", + "Line": 1577 + }, + "14279": { + "File": "_test/testdata/triceCheck.c", + "Line": 1579 + }, + "14280": { + "File": "_test/testdata/triceCheck.c", + "Line": 1580 + }, + "14281": { + "File": "_test/testdata/triceCheck.c", + "Line": 1581 + }, + "14282": { + "File": "_test/testdata/triceCheck.c", + "Line": 1582 + }, + "14283": { + "File": "_test/testdata/triceCheck.c", + "Line": 1583 + }, + "14284": { + "File": "_test/testdata/triceCheck.c", + "Line": 1584 + }, + "14285": { + "File": "_test/testdata/triceCheck.c", + "Line": 1585 + }, + "14286": { + "File": "_test/testdata/triceCheck.c", + "Line": 1586 + }, + "14287": { + "File": "_test/testdata/triceCheck.c", + "Line": 1587 + }, + "14288": { + "File": "_test/testdata/triceCheck.c", + "Line": 1588 + }, + "14289": { + "File": "_test/testdata/triceCheck.c", + "Line": 1589 + }, + "14290": { + "File": "_test/testdata/triceCheck.c", + "Line": 1590 + }, + "14291": { + "File": "_test/testdata/triceCheck.c", + "Line": 1591 + }, + "14292": { + "File": "_test/testdata/triceCheck.c", + "Line": 1592 + }, + "14293": { + "File": "_test/testdata/triceCheck.c", + "Line": 1593 + }, + "14294": { + "File": "_test/testdata/triceCheck.c", + "Line": 1594 + }, + "14295": { + "File": "_test/testdata/triceCheck.c", + "Line": 1595 + }, + "14296": { + "File": "_test/testdata/triceCheck.c", + "Line": 1596 + }, + "14297": { + "File": "_test/testdata/triceCheck.c", + "Line": 1597 + }, + "14298": { + "File": "_test/testdata/triceCheck.c", + "Line": 1598 + }, + "14299": { + "File": "_test/testdata/triceCheck.c", + "Line": 1599 + }, + "14300": { + "File": "_test/testdata/triceCheck.c", + "Line": 1600 + }, + "14301": { + "File": "_test/testdata/triceCheck.c", + "Line": 1601 + }, + "14302": { + "File": "_test/testdata/triceCheck.c", + "Line": 1602 + }, + "14303": { + "File": "_test/testdata/triceCheck.c", + "Line": 1603 + }, + "14304": { + "File": "_test/testdata/triceCheck.c", + "Line": 1604 + }, + "14305": { + "File": "_test/testdata/triceCheck.c", + "Line": 1605 + }, + "14306": { + "File": "_test/testdata/triceCheck.c", + "Line": 1606 + }, + "14307": { + "File": "_test/testdata/triceCheck.c", + "Line": 1607 + }, + "14308": { + "File": "_test/testdata/triceCheck.c", + "Line": 1608 + }, + "14309": { + "File": "_test/testdata/triceCheck.c", + "Line": 1609 + }, + "14310": { + "File": "_test/testdata/triceCheck.c", + "Line": 1610 + }, + "14311": { + "File": "_test/testdata/triceCheck.c", + "Line": 1611 + }, + "14312": { + "File": "_test/testdata/triceCheck.c", + "Line": 1612 + }, + "14313": { + "File": "_test/testdata/triceCheck.c", + "Line": 1613 + }, + "14314": { + "File": "_test/testdata/triceCheck.c", + "Line": 1614 + }, + "14315": { + "File": "_test/testdata/triceCheck.c", + "Line": 1615 + }, + "14316": { + "File": "_test/testdata/triceCheck.c", + "Line": 1617 + }, + "14317": { + "File": "_test/testdata/triceCheck.c", + "Line": 1618 + }, + "14318": { + "File": "_test/testdata/triceCheck.c", + "Line": 1619 + }, + "14319": { + "File": "_test/testdata/triceCheck.c", + "Line": 1620 + }, + "14320": { + "File": "_test/testdata/triceCheck.c", + "Line": 1621 + }, + "14321": { + "File": "_test/testdata/triceCheck.c", + "Line": 1622 + }, + "14322": { + "File": "_test/testdata/triceCheck.c", + "Line": 1623 + }, + "14323": { + "File": "_test/testdata/triceCheck.c", + "Line": 1624 + }, + "14324": { + "File": "_test/testdata/triceCheck.c", + "Line": 1625 + }, + "14325": { + "File": "_test/testdata/triceCheck.c", + "Line": 1626 + }, + "14326": { + "File": "_test/testdata/triceCheck.c", + "Line": 1627 + }, + "14327": { + "File": "_test/testdata/triceCheck.c", + "Line": 1628 + }, + "14328": { + "File": "_test/testdata/triceCheck.c", + "Line": 1629 + }, + "14329": { + "File": "_test/testdata/triceCheck.c", + "Line": 1630 + }, + "14330": { + "File": "_test/testdata/triceCheck.c", + "Line": 1631 + }, + "14331": { + "File": "_test/testdata/triceCheck.c", + "Line": 1632 + }, + "14332": { + "File": "_test/testdata/triceCheck.c", + "Line": 1633 + }, + "14333": { + "File": "_test/testdata/triceCheck.c", + "Line": 1634 + }, + "14334": { + "File": "_test/testdata/triceCheck.c", + "Line": 1635 + }, + "14335": { + "File": "_test/testdata/triceCheck.c", + "Line": 1636 + }, + "14336": { + "File": "_test/testdata/triceCheck.c", + "Line": 1637 + }, + "14337": { + "File": "_test/testdata/triceCheck.c", + "Line": 1638 + }, + "14338": { + "File": "_test/testdata/triceCheck.c", + "Line": 1639 + }, + "14339": { + "File": "_test/testdata/triceCheck.c", + "Line": 1640 + }, + "14340": { + "File": "_test/testdata/triceCheck.c", + "Line": 1641 + }, + "14341": { + "File": "_test/testdata/triceCheck.c", + "Line": 1642 + }, + "14342": { + "File": "_test/testdata/triceCheck.c", + "Line": 1643 + }, + "14343": { + "File": "_test/testdata/triceCheck.c", + "Line": 1644 + }, + "14344": { + "File": "_test/testdata/triceCheck.c", + "Line": 1645 + }, + "14345": { + "File": "_test/testdata/triceCheck.c", + "Line": 1646 + }, + "14346": { + "File": "_test/testdata/triceCheck.c", + "Line": 1647 + }, + "14347": { + "File": "_test/testdata/triceCheck.c", + "Line": 1648 + }, + "14348": { + "File": "_test/testdata/triceCheck.c", + "Line": 1649 + }, + "14349": { + "File": "_test/testdata/triceCheck.c", + "Line": 1650 + }, + "14350": { + "File": "_test/testdata/triceCheck.c", + "Line": 1651 + }, + "14351": { + "File": "_test/testdata/triceCheck.c", + "Line": 1652 + }, + "14352": { + "File": "_test/testdata/triceCheck.c", + "Line": 1653 + }, + "14353": { + "File": "_test/testdata/triceCheck.c", + "Line": 1655 + }, + "14354": { + "File": "_test/testdata/triceCheck.c", + "Line": 1656 + }, + "14355": { + "File": "_test/testdata/triceCheck.c", + "Line": 1657 + }, + "14356": { + "File": "_test/testdata/triceCheck.c", + "Line": 1658 + }, + "14357": { + "File": "_test/testdata/triceCheck.c", + "Line": 1659 + }, + "14358": { + "File": "_test/testdata/triceCheck.c", + "Line": 1660 + }, + "14359": { + "File": "_test/testdata/triceCheck.c", + "Line": 1661 + }, + "14360": { + "File": "_test/testdata/triceCheck.c", + "Line": 1662 + }, + "14361": { + "File": "_test/testdata/triceCheck.c", + "Line": 1663 + }, + "14362": { + "File": "_test/testdata/triceCheck.c", + "Line": 1664 + }, + "14363": { + "File": "_test/testdata/triceCheck.c", + "Line": 1665 + }, + "14364": { + "File": "_test/testdata/triceCheck.c", + "Line": 1666 + }, + "14365": { + "File": "_test/testdata/triceCheck.c", + "Line": 1667 + }, + "14366": { + "File": "_test/testdata/triceCheck.c", + "Line": 1668 + }, + "14367": { + "File": "_test/testdata/triceCheck.c", + "Line": 1669 + }, + "14368": { + "File": "_test/testdata/triceCheck.c", + "Line": 1670 + }, + "14369": { + "File": "_test/testdata/triceCheck.c", + "Line": 1671 + }, + "14370": { + "File": "_test/testdata/triceCheck.c", + "Line": 1672 + }, + "14371": { + "File": "_test/testdata/triceCheck.c", + "Line": 1673 + }, + "14372": { + "File": "_test/testdata/triceCheck.c", + "Line": 1674 + }, + "14373": { + "File": "_test/testdata/triceCheck.c", + "Line": 1675 + }, + "14374": { + "File": "_test/testdata/triceCheck.c", + "Line": 1676 + }, + "14375": { + "File": "_test/testdata/triceCheck.c", + "Line": 1677 + }, + "14376": { + "File": "_test/testdata/triceCheck.c", + "Line": 1678 + }, + "14377": { + "File": "_test/testdata/triceCheck.c", + "Line": 1679 + }, + "14378": { + "File": "_test/testdata/triceCheck.c", + "Line": 1680 + }, + "14379": { + "File": "_test/testdata/triceCheck.c", + "Line": 1681 + }, + "14380": { + "File": "_test/testdata/triceCheck.c", + "Line": 1682 + }, + "14381": { + "File": "_test/testdata/triceCheck.c", + "Line": 1683 + }, + "14382": { + "File": "_test/testdata/triceCheck.c", + "Line": 1684 + }, + "14383": { + "File": "_test/testdata/triceCheck.c", + "Line": 1685 + }, + "14384": { + "File": "_test/testdata/triceCheck.c", + "Line": 1686 + }, + "14385": { + "File": "_test/testdata/triceCheck.c", + "Line": 1687 + }, + "14386": { + "File": "_test/testdata/triceCheck.c", + "Line": 1688 + }, + "14387": { + "File": "_test/testdata/triceCheck.c", + "Line": 1689 + }, + "14388": { + "File": "_test/testdata/triceCheck.c", + "Line": 1690 + }, + "14389": { + "File": "_test/testdata/triceCheck.c", + "Line": 1691 + }, + "14390": { + "File": "_test/testdata/triceCheck.c", + "Line": 1693 + }, + "14391": { + "File": "_test/testdata/triceCheck.c", + "Line": 1694 + }, + "14392": { + "File": "_test/testdata/triceCheck.c", + "Line": 1695 + }, + "14393": { + "File": "_test/testdata/triceCheck.c", + "Line": 1696 + }, + "14394": { + "File": "_test/testdata/triceCheck.c", + "Line": 1697 + }, + "14395": { + "File": "_test/testdata/triceCheck.c", + "Line": 1698 + }, + "14396": { + "File": "_test/testdata/triceCheck.c", + "Line": 1699 + }, + "14397": { + "File": "_test/testdata/triceCheck.c", + "Line": 1700 + }, + "14398": { + "File": "_test/testdata/triceCheck.c", + "Line": 1701 + }, + "14399": { + "File": "_test/testdata/triceCheck.c", + "Line": 1702 + }, + "14400": { + "File": "_test/testdata/triceCheck.c", + "Line": 1703 + }, + "14401": { + "File": "_test/testdata/triceCheck.c", + "Line": 1704 + }, + "14402": { + "File": "_test/testdata/triceCheck.c", + "Line": 1705 + }, + "14403": { + "File": "_test/testdata/triceCheck.c", + "Line": 1706 + }, + "14404": { + "File": "_test/testdata/triceCheck.c", + "Line": 1707 + }, + "14405": { + "File": "_test/testdata/triceCheck.c", + "Line": 1708 + }, + "14406": { + "File": "_test/testdata/triceCheck.c", + "Line": 1709 + }, + "14407": { + "File": "_test/testdata/triceCheck.c", + "Line": 1710 + }, + "14408": { + "File": "_test/testdata/triceCheck.c", + "Line": 1711 + }, + "14409": { + "File": "_test/testdata/triceCheck.c", + "Line": 1712 + }, + "14410": { + "File": "_test/testdata/triceCheck.c", + "Line": 1713 + }, + "14411": { + "File": "_test/testdata/triceCheck.c", + "Line": 1714 + }, + "14412": { + "File": "_test/testdata/triceCheck.c", + "Line": 1715 + }, + "14413": { + "File": "_test/testdata/triceCheck.c", + "Line": 1716 + }, + "14414": { + "File": "_test/testdata/triceCheck.c", + "Line": 1717 + }, + "14415": { + "File": "_test/testdata/triceCheck.c", + "Line": 1718 + }, + "14416": { + "File": "_test/testdata/triceCheck.c", + "Line": 1719 + }, + "14417": { + "File": "_test/testdata/triceCheck.c", + "Line": 1720 + }, + "14418": { + "File": "_test/testdata/triceCheck.c", + "Line": 1721 + }, + "14419": { + "File": "_test/testdata/triceCheck.c", + "Line": 1722 + }, + "14420": { + "File": "_test/testdata/triceCheck.c", + "Line": 1723 + }, + "14421": { + "File": "_test/testdata/triceCheck.c", + "Line": 1724 + }, + "14422": { + "File": "_test/testdata/triceCheck.c", + "Line": 1725 + }, + "14423": { + "File": "_test/testdata/triceCheck.c", + "Line": 1726 + }, + "14424": { + "File": "_test/testdata/triceCheck.c", + "Line": 1727 + }, + "14425": { + "File": "_test/testdata/triceCheck.c", + "Line": 1728 + }, + "14426": { + "File": "_test/testdata/triceCheck.c", + "Line": 1729 + }, + "14427": { + "File": "_test/testdata/triceCheck.c", + "Line": 1731 + }, + "14428": { + "File": "_test/testdata/triceCheck.c", + "Line": 1732 + }, + "14429": { + "File": "_test/testdata/triceCheck.c", + "Line": 1733 + }, + "14430": { + "File": "_test/testdata/triceCheck.c", + "Line": 1734 + }, + "14431": { + "File": "_test/testdata/triceCheck.c", + "Line": 1735 + }, + "14432": { + "File": "_test/testdata/triceCheck.c", + "Line": 1736 + }, + "14433": { + "File": "_test/testdata/triceCheck.c", + "Line": 1737 + }, + "14434": { + "File": "_test/testdata/triceCheck.c", + "Line": 1738 + }, + "14435": { + "File": "_test/testdata/triceCheck.c", + "Line": 1739 + }, + "14436": { + "File": "_test/testdata/triceCheck.c", + "Line": 1740 + }, + "14437": { + "File": "_test/testdata/triceCheck.c", + "Line": 1741 + }, + "14438": { + "File": "_test/testdata/triceCheck.c", + "Line": 1742 + }, + "14439": { + "File": "_test/testdata/triceCheck.c", + "Line": 1743 + }, + "14440": { + "File": "_test/testdata/triceCheck.c", + "Line": 1744 + }, + "14441": { + "File": "_test/testdata/triceCheck.c", + "Line": 1745 + }, + "14442": { + "File": "_test/testdata/triceCheck.c", + "Line": 1746 + }, + "14443": { + "File": "_test/testdata/triceCheck.c", + "Line": 1747 + }, + "14444": { + "File": "_test/testdata/triceCheck.c", + "Line": 1748 + }, + "14445": { + "File": "_test/testdata/triceCheck.c", + "Line": 1749 + }, + "14446": { + "File": "_test/testdata/triceCheck.c", + "Line": 1750 + }, + "14447": { + "File": "_test/testdata/triceCheck.c", + "Line": 1751 + }, + "14448": { + "File": "_test/testdata/triceCheck.c", + "Line": 1752 + }, + "14449": { + "File": "_test/testdata/triceCheck.c", + "Line": 1753 + }, + "14450": { + "File": "_test/testdata/triceCheck.c", + "Line": 1754 + }, + "14451": { + "File": "_test/testdata/triceCheck.c", + "Line": 1755 + }, + "14452": { + "File": "_test/testdata/triceCheck.c", + "Line": 1756 + }, + "14453": { + "File": "_test/testdata/triceCheck.c", + "Line": 1757 + }, + "14454": { + "File": "_test/testdata/triceCheck.c", + "Line": 1758 + }, + "14455": { + "File": "_test/testdata/triceCheck.c", + "Line": 1759 + }, + "14456": { + "File": "_test/testdata/triceCheck.c", + "Line": 1760 + }, + "14457": { + "File": "_test/testdata/triceCheck.c", + "Line": 1761 + }, + "14458": { + "File": "_test/testdata/triceCheck.c", + "Line": 1762 + }, + "14459": { + "File": "_test/testdata/triceCheck.c", + "Line": 1763 + }, + "14460": { + "File": "_test/testdata/triceCheck.c", + "Line": 1764 + }, + "14461": { + "File": "_test/testdata/triceCheck.c", + "Line": 1765 + }, + "14462": { + "File": "_test/testdata/triceCheck.c", + "Line": 1766 + }, + "14463": { + "File": "_test/testdata/triceCheck.c", + "Line": 1767 + }, + "14464": { + "File": "_test/testdata/triceCheck.c", + "Line": 1769 + }, + "14465": { + "File": "_test/testdata/triceCheck.c", + "Line": 1771 + }, + "14466": { + "File": "_test/testdata/triceCheck.c", + "Line": 1772 + }, + "14467": { + "File": "_test/testdata/triceCheck.c", + "Line": 1773 + }, + "14468": { + "File": "_test/testdata/triceCheck.c", + "Line": 1774 + }, + "14469": { + "File": "_test/testdata/triceCheck.c", + "Line": 1775 + }, + "14470": { + "File": "_test/testdata/triceCheck.c", + "Line": 1776 + }, + "14471": { + "File": "_test/testdata/triceCheck.c", + "Line": 1777 + }, + "14472": { + "File": "_test/testdata/triceCheck.c", + "Line": 1778 + }, + "14473": { + "File": "_test/testdata/triceCheck.c", + "Line": 1779 + }, + "14474": { + "File": "_test/testdata/triceCheck.c", + "Line": 1780 + }, + "14475": { + "File": "_test/testdata/triceCheck.c", + "Line": 1781 + }, + "14476": { + "File": "_test/testdata/triceCheck.c", + "Line": 1782 + }, + "14477": { + "File": "_test/testdata/triceCheck.c", + "Line": 1783 + }, + "14478": { + "File": "_test/testdata/triceCheck.c", + "Line": 1784 + }, + "14479": { + "File": "_test/testdata/triceCheck.c", + "Line": 1785 + }, + "14480": { + "File": "_test/testdata/triceCheck.c", + "Line": 1786 + }, + "14481": { + "File": "_test/testdata/triceCheck.c", + "Line": 1787 + }, + "14482": { + "File": "_test/testdata/triceCheck.c", + "Line": 1788 + }, + "14483": { + "File": "_test/testdata/triceCheck.c", + "Line": 1789 + }, + "14484": { + "File": "_test/testdata/triceCheck.c", + "Line": 1790 + }, + "14485": { + "File": "_test/testdata/triceCheck.c", + "Line": 1791 + }, + "14486": { + "File": "_test/testdata/triceCheck.c", + "Line": 1792 + }, + "14487": { + "File": "_test/testdata/triceCheck.c", + "Line": 1793 + }, + "14488": { + "File": "_test/testdata/triceCheck.c", + "Line": 1794 + }, + "14489": { + "File": "_test/testdata/triceCheck.c", + "Line": 1795 + }, + "14490": { + "File": "_test/testdata/triceCheck.c", + "Line": 1796 + }, + "14491": { + "File": "_test/testdata/triceCheck.c", + "Line": 1797 + }, + "14492": { + "File": "_test/testdata/triceCheck.c", + "Line": 1798 + }, + "14493": { + "File": "_test/testdata/triceCheck.c", + "Line": 1799 + }, + "14494": { + "File": "_test/testdata/triceCheck.c", + "Line": 1800 + }, + "14495": { + "File": "_test/testdata/triceCheck.c", + "Line": 1801 + }, + "14496": { + "File": "_test/testdata/triceCheck.c", + "Line": 1802 + }, + "14497": { + "File": "_test/testdata/triceCheck.c", + "Line": 1803 + }, + "14498": { + "File": "_test/testdata/triceCheck.c", + "Line": 1804 + }, + "14499": { + "File": "_test/testdata/triceCheck.c", + "Line": 1805 + }, + "14500": { + "File": "_test/testdata/triceCheck.c", + "Line": 1806 + }, + "14501": { + "File": "_test/testdata/triceCheck.c", + "Line": 1808 + }, + "14502": { + "File": "_test/testdata/triceCheck.c", + "Line": 1809 + }, + "14503": { + "File": "_test/testdata/triceCheck.c", + "Line": 1810 + }, + "14504": { + "File": "_test/testdata/triceCheck.c", + "Line": 1811 + }, + "14505": { + "File": "_test/testdata/triceCheck.c", + "Line": 1812 + }, + "14506": { + "File": "_test/testdata/triceCheck.c", + "Line": 1813 + }, + "14507": { + "File": "_test/testdata/triceCheck.c", + "Line": 1814 + }, + "14508": { + "File": "_test/testdata/triceCheck.c", + "Line": 1815 + }, + "14509": { + "File": "_test/testdata/triceCheck.c", + "Line": 1816 + }, + "14510": { + "File": "_test/testdata/triceCheck.c", + "Line": 1817 + }, + "14511": { + "File": "_test/testdata/triceCheck.c", + "Line": 1818 + }, + "14512": { + "File": "_test/testdata/triceCheck.c", + "Line": 1819 + }, + "14513": { + "File": "_test/testdata/triceCheck.c", + "Line": 1820 + }, + "14514": { + "File": "_test/testdata/triceCheck.c", + "Line": 1821 + }, + "14515": { + "File": "_test/testdata/triceCheck.c", + "Line": 1822 + }, + "14516": { + "File": "_test/testdata/triceCheck.c", + "Line": 1823 + }, + "14517": { + "File": "_test/testdata/triceCheck.c", + "Line": 1824 + }, + "14518": { + "File": "_test/testdata/triceCheck.c", + "Line": 1825 + }, + "14519": { + "File": "_test/testdata/triceCheck.c", + "Line": 1826 + }, + "14520": { + "File": "_test/testdata/triceCheck.c", + "Line": 1827 + }, + "14521": { + "File": "_test/testdata/triceCheck.c", + "Line": 1828 + }, + "14522": { + "File": "_test/testdata/triceCheck.c", + "Line": 1829 + }, + "14523": { + "File": "_test/testdata/triceCheck.c", + "Line": 1830 + }, + "14524": { + "File": "_test/testdata/triceCheck.c", + "Line": 1831 + }, + "14525": { + "File": "_test/testdata/triceCheck.c", + "Line": 1832 + }, + "14526": { + "File": "_test/testdata/triceCheck.c", + "Line": 1833 + }, + "14527": { + "File": "_test/testdata/triceCheck.c", + "Line": 1834 + }, + "14528": { + "File": "_test/testdata/triceCheck.c", + "Line": 1835 + }, + "14529": { + "File": "_test/testdata/triceCheck.c", + "Line": 1836 + }, + "14530": { + "File": "_test/testdata/triceCheck.c", + "Line": 1837 + }, + "14531": { + "File": "_test/testdata/triceCheck.c", + "Line": 1838 + }, + "14532": { + "File": "_test/testdata/triceCheck.c", + "Line": 1839 + }, + "14533": { + "File": "_test/testdata/triceCheck.c", + "Line": 1840 + }, + "14534": { + "File": "_test/testdata/triceCheck.c", + "Line": 1841 + }, + "14535": { + "File": "_test/testdata/triceCheck.c", + "Line": 1842 + }, + "14536": { + "File": "_test/testdata/triceCheck.c", + "Line": 1843 + }, + "14537": { + "File": "_test/testdata/triceCheck.c", + "Line": 1844 + }, + "14538": { + "File": "_test/testdata/triceCheck.c", + "Line": 1846 + }, + "14539": { + "File": "_test/testdata/triceCheck.c", + "Line": 1847 + }, + "14540": { + "File": "_test/testdata/triceCheck.c", + "Line": 1848 + }, + "14541": { + "File": "_test/testdata/triceCheck.c", + "Line": 1849 + }, + "14542": { + "File": "_test/testdata/triceCheck.c", + "Line": 1850 + }, + "14543": { + "File": "_test/testdata/triceCheck.c", + "Line": 1851 + }, + "14544": { + "File": "_test/testdata/triceCheck.c", + "Line": 1852 + }, + "14545": { + "File": "_test/testdata/triceCheck.c", + "Line": 1853 + }, + "14546": { + "File": "_test/testdata/triceCheck.c", + "Line": 1854 + }, + "14547": { + "File": "_test/testdata/triceCheck.c", + "Line": 1855 + }, + "14548": { + "File": "_test/testdata/triceCheck.c", + "Line": 1856 + }, + "14549": { + "File": "_test/testdata/triceCheck.c", + "Line": 1857 + }, + "14550": { + "File": "_test/testdata/triceCheck.c", + "Line": 1858 + }, + "14551": { + "File": "_test/testdata/triceCheck.c", + "Line": 1859 + }, + "14552": { + "File": "_test/testdata/triceCheck.c", + "Line": 1860 + }, + "14553": { + "File": "_test/testdata/triceCheck.c", + "Line": 1861 + }, + "14554": { + "File": "_test/testdata/triceCheck.c", + "Line": 1862 + }, + "14555": { + "File": "_test/testdata/triceCheck.c", + "Line": 1863 + }, + "14556": { + "File": "_test/testdata/triceCheck.c", + "Line": 1864 + }, + "14557": { + "File": "_test/testdata/triceCheck.c", + "Line": 1865 + }, + "14558": { + "File": "_test/testdata/triceCheck.c", + "Line": 1866 + }, + "14559": { + "File": "_test/testdata/triceCheck.c", + "Line": 1867 + }, + "14560": { + "File": "_test/testdata/triceCheck.c", + "Line": 1868 + }, + "14561": { + "File": "_test/testdata/triceCheck.c", + "Line": 1869 + }, + "14562": { + "File": "_test/testdata/triceCheck.c", + "Line": 1870 + }, + "14563": { + "File": "_test/testdata/triceCheck.c", + "Line": 1871 + }, + "14564": { + "File": "_test/testdata/triceCheck.c", + "Line": 1872 + }, + "14565": { + "File": "_test/testdata/triceCheck.c", + "Line": 1873 + }, + "14566": { + "File": "_test/testdata/triceCheck.c", + "Line": 1874 + }, + "14567": { + "File": "_test/testdata/triceCheck.c", + "Line": 1875 + }, + "14568": { + "File": "_test/testdata/triceCheck.c", + "Line": 1876 + }, + "14569": { + "File": "_test/testdata/triceCheck.c", + "Line": 1877 + }, + "14570": { + "File": "_test/testdata/triceCheck.c", + "Line": 1878 + }, + "14571": { + "File": "_test/testdata/triceCheck.c", + "Line": 1879 + }, + "14572": { + "File": "_test/testdata/triceCheck.c", + "Line": 1880 + }, + "14573": { + "File": "_test/testdata/triceCheck.c", + "Line": 1881 + }, + "14574": { + "File": "_test/testdata/triceCheck.c", + "Line": 1882 + }, + "14575": { + "File": "_test/testdata/triceCheck.c", + "Line": 1884 + }, + "14576": { + "File": "_test/testdata/triceCheck.c", + "Line": 1885 + }, + "14577": { + "File": "_test/testdata/triceCheck.c", + "Line": 1886 + }, + "14578": { + "File": "_test/testdata/triceCheck.c", + "Line": 1887 + }, + "14579": { + "File": "_test/testdata/triceCheck.c", + "Line": 1888 + }, + "14580": { + "File": "_test/testdata/triceCheck.c", + "Line": 1889 + }, + "14581": { + "File": "_test/testdata/triceCheck.c", + "Line": 1890 + }, + "14582": { + "File": "_test/testdata/triceCheck.c", + "Line": 1891 + }, + "14583": { + "File": "_test/testdata/triceCheck.c", + "Line": 1892 + }, + "14584": { + "File": "_test/testdata/triceCheck.c", + "Line": 1893 + }, + "14585": { + "File": "_test/testdata/triceCheck.c", + "Line": 1894 + }, + "14586": { + "File": "_test/testdata/triceCheck.c", + "Line": 1895 + }, + "14587": { + "File": "_test/testdata/triceCheck.c", + "Line": 1896 + }, + "14588": { + "File": "_test/testdata/triceCheck.c", + "Line": 1897 + }, + "14589": { + "File": "_test/testdata/triceCheck.c", + "Line": 1898 + }, + "14590": { + "File": "_test/testdata/triceCheck.c", + "Line": 1899 + }, + "14591": { + "File": "_test/testdata/triceCheck.c", + "Line": 1900 + }, + "14592": { + "File": "_test/testdata/triceCheck.c", + "Line": 1901 + }, + "14593": { + "File": "_test/testdata/triceCheck.c", + "Line": 1902 + }, + "14594": { + "File": "_test/testdata/triceCheck.c", + "Line": 1903 + }, + "14595": { + "File": "_test/testdata/triceCheck.c", + "Line": 1904 + }, + "14596": { + "File": "_test/testdata/triceCheck.c", + "Line": 1905 + }, + "14597": { + "File": "_test/testdata/triceCheck.c", + "Line": 1906 + }, + "14598": { + "File": "_test/testdata/triceCheck.c", + "Line": 1907 + }, + "14599": { + "File": "_test/testdata/triceCheck.c", + "Line": 1908 + }, + "14600": { + "File": "_test/testdata/triceCheck.c", + "Line": 1909 + }, + "14601": { + "File": "_test/testdata/triceCheck.c", + "Line": 1910 + }, + "14602": { + "File": "_test/testdata/triceCheck.c", + "Line": 1911 + }, + "14603": { + "File": "_test/testdata/triceCheck.c", + "Line": 1912 + }, + "14604": { + "File": "_test/testdata/triceCheck.c", + "Line": 1913 + }, + "14605": { + "File": "_test/testdata/triceCheck.c", + "Line": 1914 + }, + "14606": { + "File": "_test/testdata/triceCheck.c", + "Line": 1915 + }, + "14607": { + "File": "_test/testdata/triceCheck.c", + "Line": 1916 + }, + "14608": { + "File": "_test/testdata/triceCheck.c", + "Line": 1917 + }, + "14609": { + "File": "_test/testdata/triceCheck.c", + "Line": 1918 + }, + "14610": { + "File": "_test/testdata/triceCheck.c", + "Line": 1919 + }, + "14611": { + "File": "_test/testdata/triceCheck.c", + "Line": 1920 + }, + "14612": { + "File": "_test/testdata/triceCheck.c", + "Line": 1922 + }, + "14613": { + "File": "_test/testdata/triceCheck.c", + "Line": 1923 + }, + "14614": { + "File": "_test/testdata/triceCheck.c", + "Line": 1924 + }, + "14615": { + "File": "_test/testdata/triceCheck.c", + "Line": 1925 + }, + "14616": { + "File": "_test/testdata/triceCheck.c", + "Line": 1926 + }, + "14617": { + "File": "_test/testdata/triceCheck.c", + "Line": 1927 + }, + "14618": { + "File": "_test/testdata/triceCheck.c", + "Line": 1928 + }, + "14619": { + "File": "_test/testdata/triceCheck.c", + "Line": 1929 + }, + "14620": { + "File": "_test/testdata/triceCheck.c", + "Line": 1930 + }, + "14621": { + "File": "_test/testdata/triceCheck.c", + "Line": 1931 + }, + "14622": { + "File": "_test/testdata/triceCheck.c", + "Line": 1932 + }, + "14623": { + "File": "_test/testdata/triceCheck.c", + "Line": 1933 + }, + "14624": { + "File": "_test/testdata/triceCheck.c", + "Line": 1934 + }, + "14625": { + "File": "_test/testdata/triceCheck.c", + "Line": 1935 + }, + "14626": { + "File": "_test/testdata/triceCheck.c", + "Line": 1936 + }, + "14627": { + "File": "_test/testdata/triceCheck.c", + "Line": 1937 + }, + "14628": { + "File": "_test/testdata/triceCheck.c", + "Line": 1938 + }, + "14629": { + "File": "_test/testdata/triceCheck.c", + "Line": 1939 + }, + "14630": { + "File": "_test/testdata/triceCheck.c", + "Line": 1940 + }, + "14631": { + "File": "_test/testdata/triceCheck.c", + "Line": 1941 + }, + "14632": { + "File": "_test/testdata/triceCheck.c", + "Line": 1942 + }, + "14633": { + "File": "_test/testdata/triceCheck.c", + "Line": 1943 + }, + "14634": { + "File": "_test/testdata/triceCheck.c", + "Line": 1944 + }, + "14635": { + "File": "_test/testdata/triceCheck.c", + "Line": 1945 + }, + "14636": { + "File": "_test/testdata/triceCheck.c", + "Line": 1946 + }, + "14637": { + "File": "_test/testdata/triceCheck.c", + "Line": 1947 + }, + "14638": { + "File": "_test/testdata/triceCheck.c", + "Line": 1948 + }, + "14639": { + "File": "_test/testdata/triceCheck.c", + "Line": 1949 + }, + "14640": { + "File": "_test/testdata/triceCheck.c", + "Line": 1950 + }, + "14641": { + "File": "_test/testdata/triceCheck.c", + "Line": 1951 + }, + "14642": { + "File": "_test/testdata/triceCheck.c", + "Line": 1952 + }, + "14643": { + "File": "_test/testdata/triceCheck.c", + "Line": 1953 + }, + "14644": { + "File": "_test/testdata/triceCheck.c", + "Line": 1954 + }, + "14645": { + "File": "_test/testdata/triceCheck.c", + "Line": 1955 + }, + "14646": { + "File": "_test/testdata/triceCheck.c", + "Line": 1956 + }, + "14647": { + "File": "_test/testdata/triceCheck.c", + "Line": 1957 + }, + "14648": { + "File": "_test/testdata/triceCheck.c", + "Line": 1958 + }, + "14649": { + "File": "_test/testdata/triceCheck.c", + "Line": 1961 + }, + "14650": { + "File": "_test/testdata/triceCheck.c", + "Line": 1962 + }, + "14651": { + "File": "_test/testdata/triceCheck.c", + "Line": 1963 + }, + "14652": { + "File": "_test/testdata/triceCheck.c", + "Line": 1964 + }, + "14653": { + "File": "_test/testdata/triceCheck.c", + "Line": 1965 + }, + "14654": { + "File": "_test/testdata/triceCheck.c", + "Line": 1966 + }, + "14655": { + "File": "_test/testdata/triceCheck.c", + "Line": 1967 + }, + "14656": { + "File": "_test/testdata/triceCheck.c", + "Line": 1968 + }, + "14657": { + "File": "_test/testdata/triceCheck.c", + "Line": 1969 + }, + "14658": { + "File": "_test/testdata/triceCheck.c", + "Line": 1970 + }, + "14659": { + "File": "_test/testdata/triceCheck.c", + "Line": 1971 + }, + "14660": { + "File": "_test/testdata/triceCheck.c", + "Line": 1972 + }, + "14661": { + "File": "_test/testdata/triceCheck.c", + "Line": 1973 + }, + "14662": { + "File": "_test/testdata/triceCheck.c", + "Line": 1974 + }, + "14663": { + "File": "_test/testdata/triceCheck.c", + "Line": 1975 + }, + "14664": { + "File": "_test/testdata/triceCheck.c", + "Line": 1976 + }, + "14665": { + "File": "_test/testdata/triceCheck.c", + "Line": 1977 + }, + "14666": { + "File": "_test/testdata/triceCheck.c", + "Line": 1978 + }, + "14667": { + "File": "_test/testdata/triceCheck.c", + "Line": 1979 + }, + "14668": { + "File": "_test/testdata/triceCheck.c", + "Line": 1980 + }, + "14669": { + "File": "_test/testdata/triceCheck.c", + "Line": 1983 + }, + "14670": { + "File": "_test/testdata/triceCheck.c", + "Line": 1984 + }, + "14671": { + "File": "_test/testdata/triceCheck.c", + "Line": 1985 + }, + "14672": { + "File": "_test/testdata/triceCheck.c", + "Line": 1986 + }, + "14673": { + "File": "_test/testdata/triceCheck.c", + "Line": 1987 + }, + "14674": { + "File": "_test/testdata/triceCheck.c", + "Line": 1988 + }, + "14675": { + "File": "_test/testdata/triceCheck.c", + "Line": 1989 + }, + "14676": { + "File": "_test/testdata/triceCheck.c", + "Line": 1990 + }, + "14677": { + "File": "_test/testdata/triceCheck.c", + "Line": 1991 + }, + "14678": { + "File": "_test/testdata/triceCheck.c", + "Line": 1992 + }, + "14679": { + "File": "_test/testdata/triceCheck.c", + "Line": 1993 + }, + "14680": { + "File": "_test/testdata/triceCheck.c", + "Line": 1994 + }, + "14681": { + "File": "_test/testdata/triceCheck.c", + "Line": 1995 + }, + "14682": { + "File": "_test/testdata/triceCheck.c", + "Line": 1996 + }, + "14683": { + "File": "_test/testdata/triceCheck.c", + "Line": 1997 + }, + "14684": { + "File": "_test/testdata/triceCheck.c", + "Line": 1998 + }, + "14685": { + "File": "_test/testdata/triceCheck.c", + "Line": 1999 + }, + "14686": { + "File": "_test/testdata/triceCheck.c", + "Line": 2000 + }, + "14687": { + "File": "_test/testdata/triceCheck.c", + "Line": 2001 + }, + "14688": { + "File": "_test/testdata/triceCheck.c", + "Line": 2002 + }, + "14689": { + "File": "_test/testdata/triceCheck.c", + "Line": 2003 + }, + "14690": { + "File": "_test/testdata/triceCheck.c", + "Line": 2004 + }, + "14691": { + "File": "_test/testdata/triceCheck.c", + "Line": 2005 + }, + "14692": { + "File": "_test/testdata/triceCheck.c", + "Line": 2006 + }, + "14693": { + "File": "_test/testdata/triceCheck.c", + "Line": 2007 + }, + "14694": { + "File": "_test/testdata/triceCheck.c", + "Line": 2008 + }, + "14695": { + "File": "_test/testdata/triceCheck.c", + "Line": 2009 + }, + "14696": { + "File": "_test/testdata/triceCheck.c", + "Line": 2010 + }, + "14697": { + "File": "_test/testdata/triceCheck.c", + "Line": 2012 + }, + "14698": { + "File": "_test/testdata/triceCheck.c", + "Line": 2013 + }, + "14699": { + "File": "_test/testdata/triceCheck.c", + "Line": 2014 + }, + "14700": { + "File": "_test/testdata/triceCheck.c", + "Line": 2015 + }, + "14701": { + "File": "_test/testdata/triceCheck.c", + "Line": 2016 + }, + "14702": { + "File": "_test/testdata/triceCheck.c", + "Line": 2017 + }, + "14703": { + "File": "_test/testdata/triceCheck.c", + "Line": 2018 + }, + "14704": { + "File": "_test/testdata/triceCheck.c", + "Line": 2019 + }, + "14705": { + "File": "_test/testdata/triceCheck.c", + "Line": 2021 + }, + "14706": { + "File": "_test/testdata/triceCheck.c", + "Line": 2022 + }, + "14707": { + "File": "_test/testdata/triceCheck.c", + "Line": 2023 + }, + "14708": { + "File": "_test/testdata/triceCheck.c", + "Line": 2024 + }, + "14709": { + "File": "_test/testdata/triceCheck.c", + "Line": 2025 + }, + "14710": { + "File": "_test/testdata/triceCheck.c", + "Line": 2026 + }, + "14711": { + "File": "_test/testdata/triceCheck.c", + "Line": 2027 + }, + "14712": { + "File": "_test/testdata/triceCheck.c", + "Line": 2028 + }, + "14713": { + "File": "_test/testdata/triceCheck.c", + "Line": 2029 + }, + "14714": { + "File": "_test/testdata/triceCheck.c", + "Line": 2030 + }, + "14715": { + "File": "_test/testdata/triceCheck.c", + "Line": 2031 + }, + "14716": { + "File": "_test/testdata/triceCheck.c", + "Line": 2032 + }, + "14717": { + "File": "_test/testdata/triceCheck.c", + "Line": 2033 + }, + "14718": { + "File": "_test/testdata/triceCheck.c", + "Line": 2034 + }, + "14719": { + "File": "_test/testdata/triceCheck.c", + "Line": 2035 + }, + "14720": { + "File": "_test/testdata/triceCheck.c", + "Line": 2036 + }, + "14721": { + "File": "_test/testdata/triceCheck.c", + "Line": 2037 + }, + "14722": { + "File": "_test/testdata/triceCheck.c", + "Line": 2039 + }, + "14723": { + "File": "_test/testdata/triceCheck.c", + "Line": 2041 + }, + "14724": { + "File": "_test/testdata/triceCheck.c", + "Line": 2042 + }, + "14725": { + "File": "_test/testdata/triceCheck.c", + "Line": 2043 + }, + "14726": { + "File": "_test/testdata/triceCheck.c", + "Line": 2044 + }, + "14727": { + "File": "_test/testdata/triceCheck.c", + "Line": 2047 + }, + "14728": { + "File": "_test/testdata/triceCheck.c", + "Line": 2048 + }, + "14729": { + "File": "_test/testdata/triceCheck.c", + "Line": 2049 + }, + "14730": { + "File": "_test/testdata/triceCheck.c", + "Line": 2050 + }, + "14731": { + "File": "_test/testdata/triceCheck.c", + "Line": 2051 + }, + "14732": { + "File": "_test/testdata/triceCheck.c", + "Line": 2052 + }, + "14733": { + "File": "_test/testdata/triceCheck.c", + "Line": 2053 + }, + "14734": { + "File": "_test/testdata/triceCheck.c", + "Line": 2054 + }, + "14735": { + "File": "_test/testdata/triceCheck.c", + "Line": 2057 + }, + "14736": { + "File": "_test/testdata/triceCheck.c", + "Line": 2058 + }, + "14737": { + "File": "_test/testdata/triceCheck.c", + "Line": 2059 + }, + "14738": { + "File": "_test/testdata/triceCheck.c", + "Line": 2060 + }, + "14739": { + "File": "_test/testdata/triceCheck.c", + "Line": 2061 + }, + "14740": { + "File": "_test/testdata/triceCheck.c", + "Line": 2062 + }, + "14741": { + "File": "_test/testdata/triceCheck.c", + "Line": 2065 + }, + "14742": { + "File": "_test/testdata/triceCheck.c", + "Line": 2066 + }, + "14743": { + "File": "_test/testdata/triceCheck.c", + "Line": 2067 + }, + "14744": { + "File": "_test/testdata/triceCheck.c", + "Line": 2068 + }, + "14745": { + "File": "_test/testdata/triceCheck.c", + "Line": 2071 + }, + "14746": { + "File": "_test/testdata/triceCheck.c", + "Line": 2072 + }, + "14747": { + "File": "_test/testdata/triceCheck.c", + "Line": 2073 + }, + "14748": { + "File": "_test/testdata/triceCheck.c", + "Line": 2074 + }, + "14749": { + "File": "_test/testdata/triceCheck.c", + "Line": 2077 + }, + "14750": { + "File": "_test/testdata/triceCheck.c", + "Line": 2079 + }, + "14751": { + "File": "_test/testdata/triceCheck.c", + "Line": 2080 + }, + "14752": { + "File": "_test/testdata/triceCheck.c", + "Line": 2081 + }, + "14753": { + "File": "_test/testdata/triceCheck.c", + "Line": 2082 + }, + "14754": { + "File": "_test/testdata/triceCheck.c", + "Line": 2083 + }, + "14755": { + "File": "_test/testdata/triceCheck.c", + "Line": 2084 + }, + "14756": { + "File": "_test/testdata/triceCheck.c", + "Line": 2085 + }, + "14757": { + "File": "_test/testdata/triceCheck.c", + "Line": 2086 + }, + "14758": { + "File": "_test/testdata/triceCheck.c", + "Line": 2087 + }, + "14759": { + "File": "_test/testdata/triceCheck.c", + "Line": 2088 + }, + "14760": { + "File": "_test/testdata/triceCheck.c", + "Line": 2089 + }, + "14761": { + "File": "_test/testdata/triceCheck.c", + "Line": 2090 + }, + "14762": { + "File": "_test/testdata/triceCheck.c", + "Line": 2091 + }, + "14763": { + "File": "_test/testdata/triceCheck.c", + "Line": 2092 + }, + "14764": { + "File": "_test/testdata/triceCheck.c", + "Line": 2093 + }, + "14765": { + "File": "_test/testdata/triceCheck.c", + "Line": 2094 + }, + "14766": { + "File": "_test/testdata/triceCheck.c", + "Line": 2095 + }, + "14767": { + "File": "_test/testdata/triceCheck.c", + "Line": 2096 + }, + "14768": { + "File": "_test/testdata/triceCheck.c", + "Line": 2097 + }, + "14769": { + "File": "_test/testdata/triceCheck.c", + "Line": 2097 + }, + "14770": { + "File": "_test/testdata/triceCheck.c", + "Line": 2097 + }, + "14771": { + "File": "_test/testdata/triceCheck.c", + "Line": 2098 + }, + "14772": { + "File": "_test/testdata/triceCheck.c", + "Line": 2098 + }, + "14773": { + "File": "_test/testdata/triceCheck.c", + "Line": 2098 + }, + "14774": { + "File": "_test/testdata/triceCheck.c", + "Line": 2101 + }, + "14775": { + "File": "_test/testdata/triceCheck.c", + "Line": 2103 + }, + "14776": { + "File": "_test/testdata/triceCheck.c", + "Line": 2104 + }, + "14777": { + "File": "_test/testdata/triceCheck.c", + "Line": 2105 + }, + "14778": { + "File": "_test/testdata/triceCheck.c", + "Line": 2106 + }, + "14779": { + "File": "_test/testdata/triceCheck.c", + "Line": 2107 + }, + "14780": { + "File": "_test/testdata/triceCheck.c", + "Line": 2108 + }, + "14781": { + "File": "_test/testdata/triceCheck.c", + "Line": 2109 + }, + "14782": { + "File": "_test/testdata/triceCheck.c", + "Line": 2110 + }, + "14783": { + "File": "_test/testdata/triceCheck.c", + "Line": 2111 + }, + "14784": { + "File": "_test/testdata/triceCheck.c", + "Line": 2112 + }, + "14785": { + "File": "_test/testdata/triceCheck.c", + "Line": 2113 + }, + "14786": { + "File": "_test/testdata/triceCheck.c", + "Line": 2114 + }, + "14787": { + "File": "_test/testdata/triceCheck.c", + "Line": 2115 + }, + "14788": { + "File": "_test/testdata/triceCheck.c", + "Line": 2118 + }, + "14789": { + "File": "_test/testdata/triceCheck.c", + "Line": 2119 + }, + "14790": { + "File": "_test/testdata/triceCheck.c", + "Line": 2120 + }, + "14791": { + "File": "_test/testdata/triceCheck.c", + "Line": 2121 + }, + "14792": { + "File": "_test/testdata/triceCheck.c", + "Line": 2122 + }, + "14793": { + "File": "_test/testdata/triceCheck.c", + "Line": 2123 + }, + "14794": { + "File": "_test/testdata/triceCheck.c", + "Line": 2124 + }, + "14795": { + "File": "_test/testdata/triceCheck.c", + "Line": 2125 + }, + "14796": { + "File": "_test/testdata/triceCheck.c", + "Line": 2126 + }, + "14797": { + "File": "_test/testdata/triceCheck.c", + "Line": 2127 + }, + "14798": { + "File": "_test/testdata/triceCheck.c", + "Line": 2128 + }, + "14799": { + "File": "_test/testdata/triceCheck.c", + "Line": 2129 + }, + "14800": { + "File": "_test/testdata/triceCheck.c", + "Line": 2130 + }, + "14801": { + "File": "_test/testdata/triceCheck.c", + "Line": 2131 + }, + "14802": { + "File": "_test/testdata/triceCheck.c", + "Line": 2133 + }, + "14803": { + "File": "_test/testdata/triceCheck.c", + "Line": 2135 + }, + "14804": { + "File": "_test/testdata/triceCheck.c", + "Line": 2136 + }, + "14805": { + "File": "_test/testdata/triceCheck.c", + "Line": 2137 + }, + "14806": { + "File": "_test/testdata/triceCheck.c", + "Line": 2138 + }, + "14807": { + "File": "_test/testdata/triceCheck.c", + "Line": 2139 + }, + "14808": { + "File": "_test/testdata/triceCheck.c", + "Line": 2140 + }, + "14809": { + "File": "_test/testdata/triceCheck.c", + "Line": 2141 + }, + "14810": { + "File": "_test/testdata/triceCheck.c", + "Line": 2142 + }, + "14811": { + "File": "_test/testdata/triceCheck.c", + "Line": 2143 + }, + "14812": { + "File": "_test/testdata/triceCheck.c", + "Line": 2144 + }, + "14813": { + "File": "_test/testdata/triceCheck.c", + "Line": 2145 + }, + "14814": { + "File": "_test/testdata/triceCheck.c", + "Line": 2146 + }, + "14815": { + "File": "_test/testdata/triceCheck.c", + "Line": 2147 + }, + "14816": { + "File": "_test/testdata/triceCheck.c", + "Line": 2150 + }, + "14817": { + "File": "_test/testdata/triceCheck.c", + "Line": 2151 + }, + "14818": { + "File": "_test/testdata/triceCheck.c", + "Line": 2152 + }, + "14819": { + "File": "_test/testdata/triceCheck.c", + "Line": 2153 + }, + "14820": { + "File": "_test/testdata/triceCheck.c", + "Line": 2154 + }, + "14821": { + "File": "_test/testdata/triceCheck.c", + "Line": 2155 + }, + "14822": { + "File": "_test/testdata/triceCheck.c", + "Line": 2156 + }, + "14823": { + "File": "_test/testdata/triceCheck.c", + "Line": 2157 + }, + "14824": { + "File": "_test/testdata/triceCheck.c", + "Line": 2158 + }, + "14825": { + "File": "_test/testdata/triceCheck.c", + "Line": 2159 + }, + "14826": { + "File": "_test/testdata/triceCheck.c", + "Line": 2160 + }, + "14827": { + "File": "_test/testdata/triceCheck.c", + "Line": 2161 + }, + "14828": { + "File": "_test/testdata/triceCheck.c", + "Line": 2162 + }, + "14829": { + "File": "_test/testdata/triceCheck.c", + "Line": 2164 + }, + "14830": { + "File": "_test/testdata/triceCheck.c", + "Line": 2166 + }, + "14831": { + "File": "_test/testdata/triceCheck.c", + "Line": 2167 + }, + "14832": { + "File": "_test/testdata/triceCheck.c", + "Line": 2168 + }, + "14833": { + "File": "_test/testdata/triceCheck.c", + "Line": 2169 + }, + "14834": { + "File": "_test/testdata/triceCheck.c", + "Line": 2170 + }, + "14835": { + "File": "_test/testdata/triceCheck.c", + "Line": 2171 + }, + "14836": { + "File": "_test/testdata/triceCheck.c", + "Line": 2172 + }, + "14837": { + "File": "_test/testdata/triceCheck.c", + "Line": 2173 + }, + "14838": { + "File": "_test/testdata/triceCheck.c", + "Line": 2174 + }, + "14839": { + "File": "_test/testdata/triceCheck.c", + "Line": 2175 + }, + "14840": { + "File": "_test/testdata/triceCheck.c", + "Line": 2176 + }, + "14841": { + "File": "_test/testdata/triceCheck.c", + "Line": 2177 + }, + "14842": { + "File": "_test/testdata/triceCheck.c", + "Line": 2178 + }, + "14843": { + "File": "_test/testdata/triceCheck.c", + "Line": 2181 + }, + "14844": { + "File": "_test/testdata/triceCheck.c", + "Line": 2182 + }, + "14845": { + "File": "_test/testdata/triceCheck.c", + "Line": 2183 + }, + "14846": { + "File": "_test/testdata/triceCheck.c", + "Line": 2184 + }, + "14847": { + "File": "_test/testdata/triceCheck.c", + "Line": 2185 + }, + "14848": { + "File": "_test/testdata/triceCheck.c", + "Line": 2186 + }, + "14849": { + "File": "_test/testdata/triceCheck.c", + "Line": 2187 + }, + "14850": { + "File": "_test/testdata/triceCheck.c", + "Line": 2188 + }, + "14851": { + "File": "_test/testdata/triceCheck.c", + "Line": 2189 + }, + "14852": { + "File": "_test/testdata/triceCheck.c", + "Line": 2190 + }, + "14853": { + "File": "_test/testdata/triceCheck.c", + "Line": 2191 + }, + "14854": { + "File": "_test/testdata/triceCheck.c", + "Line": 2192 + }, + "14855": { + "File": "_test/testdata/triceCheck.c", + "Line": 2193 + }, + "14856": { + "File": "_test/testdata/triceCheck.c", + "Line": 2194 + }, + "14857": { + "File": "_test/testdata/triceCheck.c", + "Line": 2196 + }, + "14858": { + "File": "_test/testdata/triceCheck.c", + "Line": 2197 + }, + "14859": { + "File": "_test/testdata/triceCheck.c", + "Line": 2198 + }, + "14860": { + "File": "_test/testdata/triceCheck.c", + "Line": 2199 + }, + "14861": { + "File": "_test/testdata/triceCheck.c", + "Line": 2200 + }, + "14862": { + "File": "_test/testdata/triceCheck.c", + "Line": 2201 + }, + "14863": { + "File": "_test/testdata/triceCheck.c", + "Line": 2202 + }, + "14864": { + "File": "_test/testdata/triceCheck.c", + "Line": 2203 + }, + "14865": { + "File": "_test/testdata/triceCheck.c", + "Line": 2204 + }, + "14866": { + "File": "_test/testdata/triceCheck.c", + "Line": 2205 + }, + "14867": { + "File": "_test/testdata/triceCheck.c", + "Line": 2206 + }, + "14868": { + "File": "_test/testdata/triceCheck.c", + "Line": 2207 + }, + "14869": { + "File": "_test/testdata/triceCheck.c", + "Line": 2208 + }, + "14870": { + "File": "_test/testdata/triceCheck.c", + "Line": 2209 + }, + "14871": { + "File": "_test/testdata/triceCheck.c", + "Line": 2210 + }, + "14872": { + "File": "_test/testdata/triceCheck.c", + "Line": 2211 + }, + "14873": { + "File": "_test/testdata/triceCheck.c", + "Line": 2212 + }, + "14874": { + "File": "_test/testdata/triceCheck.c", + "Line": 2213 + }, + "14875": { + "File": "_test/testdata/triceCheck.c", + "Line": 2214 + }, + "14876": { + "File": "_test/testdata/triceCheck.c", + "Line": 2215 + }, + "14877": { + "File": "_test/testdata/triceCheck.c", + "Line": 2216 + }, + "14878": { + "File": "_test/testdata/triceCheck.c", + "Line": 2217 + }, + "14879": { + "File": "_test/testdata/triceCheck.c", + "Line": 2218 + }, + "14880": { + "File": "_test/testdata/triceCheck.c", + "Line": 2219 + }, + "14881": { + "File": "_test/testdata/triceCheck.c", + "Line": 2220 + }, + "14882": { + "File": "_test/testdata/triceCheck.c", + "Line": 2221 + }, + "14883": { + "File": "_test/testdata/triceCheck.c", + "Line": 2222 + }, + "14884": { + "File": "_test/testdata/triceCheck.c", + "Line": 2224 + }, + "14885": { + "File": "_test/testdata/triceCheck.c", + "Line": 2226 + }, + "14886": { + "File": "_test/testdata/triceCheck.c", + "Line": 2227 + }, + "14887": { + "File": "_test/testdata/triceCheck.c", + "Line": 2228 + }, + "14888": { + "File": "_test/testdata/triceCheck.c", + "Line": 2229 + }, + "14889": { + "File": "_test/testdata/triceCheck.c", + "Line": 2230 + }, + "14890": { + "File": "_test/testdata/triceCheck.c", + "Line": 2231 + }, + "14891": { + "File": "_test/testdata/triceCheck.c", + "Line": 2232 + }, + "14892": { + "File": "_test/testdata/triceCheck.c", + "Line": 2233 + }, + "14893": { + "File": "_test/testdata/triceCheck.c", + "Line": 2234 + }, + "14894": { + "File": "_test/testdata/triceCheck.c", + "Line": 2235 + }, + "14895": { + "File": "_test/testdata/triceCheck.c", + "Line": 2236 + }, + "14896": { + "File": "_test/testdata/triceCheck.c", + "Line": 2237 + }, + "14897": { + "File": "_test/testdata/triceCheck.c", + "Line": 2238 + }, + "14898": { + "File": "_test/testdata/triceCheck.c", + "Line": 2239 + }, + "14899": { + "File": "_test/testdata/triceCheck.c", + "Line": 2240 + }, + "14900": { + "File": "_test/testdata/triceCheck.c", + "Line": 2241 + }, + "14901": { + "File": "_test/testdata/triceCheck.c", + "Line": 2242 + }, + "14902": { + "File": "_test/testdata/triceCheck.c", + "Line": 2243 + }, + "14903": { + "File": "_test/testdata/triceCheck.c", + "Line": 2244 + }, + "14904": { + "File": "_test/testdata/triceCheck.c", + "Line": 2245 + }, + "14905": { + "File": "_test/testdata/triceCheck.c", + "Line": 2246 + }, + "14906": { + "File": "_test/testdata/triceCheck.c", + "Line": 2247 + }, + "14907": { + "File": "_test/testdata/triceCheck.c", + "Line": 2248 + }, + "14908": { + "File": "_test/testdata/triceCheck.c", + "Line": 2249 + }, + "14909": { + "File": "_test/testdata/triceCheck.c", + "Line": 2250 + }, + "14910": { + "File": "_test/testdata/triceCheck.c", + "Line": 2251 + }, + "14911": { + "File": "_test/testdata/triceCheck.c", + "Line": 2252 + }, + "14912": { + "File": "_test/testdata/triceCheck.c", + "Line": 2253 + }, + "14913": { + "File": "_test/testdata/triceCheck.c", + "Line": 2254 + }, + "14914": { + "File": "_test/testdata/triceCheck.c", + "Line": 2255 + }, + "14915": { + "File": "_test/testdata/triceCheck.c", + "Line": 2258 + }, + "14916": { + "File": "_test/testdata/triceCheck.c", + "Line": 2259 + }, + "14917": { + "File": "_test/testdata/triceCheck.c", + "Line": 2260 + }, + "14918": { + "File": "_test/testdata/triceCheck.c", + "Line": 2261 + }, + "14919": { + "File": "_test/testdata/triceCheck.c", + "Line": 2262 + }, + "14920": { + "File": "_test/testdata/triceCheck.c", + "Line": 2263 + }, + "14921": { + "File": "_test/testdata/triceCheck.c", + "Line": 2264 + }, + "14922": { + "File": "_test/testdata/triceCheck.c", + "Line": 2265 + }, + "14923": { + "File": "_test/testdata/triceCheck.c", + "Line": 2266 + }, + "14924": { + "File": "_test/testdata/triceCheck.c", + "Line": 2267 + }, + "14925": { + "File": "_test/testdata/triceCheck.c", + "Line": 2268 + }, + "14926": { + "File": "_test/testdata/triceCheck.c", + "Line": 2269 + }, + "14927": { + "File": "_test/testdata/triceCheck.c", + "Line": 2270 + }, + "14928": { + "File": "_test/testdata/triceCheck.c", + "Line": 2271 + }, + "14929": { + "File": "_test/testdata/triceCheck.c", + "Line": 2272 + }, + "14930": { + "File": "_test/testdata/triceCheck.c", + "Line": 2273 + }, + "14931": { + "File": "_test/testdata/triceCheck.c", + "Line": 2274 + }, + "14932": { + "File": "_test/testdata/triceCheck.c", + "Line": 2275 + }, + "14933": { + "File": "_test/testdata/triceCheck.c", + "Line": 2276 + }, + "14934": { + "File": "_test/testdata/triceCheck.c", + "Line": 2277 + }, + "14935": { + "File": "_test/testdata/triceCheck.c", + "Line": 2278 + }, + "14936": { + "File": "_test/testdata/triceCheck.c", + "Line": 2279 + }, + "14937": { + "File": "_test/testdata/triceCheck.c", + "Line": 2280 + }, + "14938": { + "File": "_test/testdata/triceCheck.c", + "Line": 2281 + }, + "14939": { + "File": "_test/testdata/triceCheck.c", + "Line": 2282 + }, + "14940": { + "File": "_test/testdata/triceCheck.c", + "Line": 2283 + }, + "14941": { + "File": "_test/testdata/triceCheck.c", + "Line": 2284 + }, + "14942": { + "File": "_test/testdata/triceCheck.c", + "Line": 2285 + }, + "14943": { + "File": "_test/testdata/triceCheck.c", + "Line": 2286 + }, + "14944": { + "File": "_test/testdata/triceCheck.c", + "Line": 2287 + }, + "14945": { + "File": "_test/testdata/triceCheck.c", + "Line": 2288 + }, + "14946": { + "File": "_test/testdata/triceCheck.c", + "Line": 2289 + }, + "14947": { + "File": "_test/testdata/triceCheck.c", + "Line": 2290 + }, + "14948": { + "File": "_test/testdata/triceCheck.c", + "Line": 2291 + }, + "14949": { + "File": "_test/testdata/triceCheck.c", + "Line": 2292 + }, + "14950": { + "File": "_test/testdata/triceCheck.c", + "Line": 2293 + }, + "14951": { + "File": "_test/testdata/triceCheck.c", + "Line": 2294 + }, + "14952": { + "File": "_test/testdata/triceCheck.c", + "Line": 2295 + }, + "14953": { + "File": "_test/testdata/triceCheck.c", + "Line": 2296 + }, + "14954": { + "File": "_test/testdata/triceCheck.c", + "Line": 2297 + }, + "14955": { + "File": "_test/testdata/triceCheck.c", + "Line": 2298 + }, + "14956": { + "File": "_test/testdata/triceCheck.c", + "Line": 2299 + }, + "14957": { + "File": "_test/testdata/triceCheck.c", + "Line": 2300 + }, + "14958": { + "File": "_test/testdata/triceCheck.c", + "Line": 2301 + }, + "14959": { + "File": "_test/testdata/triceCheck.c", + "Line": 2303 + }, + "14960": { + "File": "_test/testdata/triceCheck.c", + "Line": 2305 + }, + "14961": { + "File": "_test/testdata/triceCheck.c", + "Line": 2306 + }, + "14962": { + "File": "_test/testdata/triceCheck.c", + "Line": 2307 + }, + "14963": { + "File": "_test/testdata/triceCheck.c", + "Line": 2308 + }, + "14964": { + "File": "_test/testdata/triceCheck.c", + "Line": 2309 + }, + "14965": { + "File": "_test/testdata/triceCheck.c", + "Line": 2310 + }, + "14966": { + "File": "_test/testdata/triceCheck.c", + "Line": 2312 + }, + "14967": { + "File": "_test/testdata/triceCheck.c", + "Line": 2314 + }, + "14968": { + "File": "_test/testdata/triceCheck.c", + "Line": 2315 + }, + "14969": { + "File": "_test/testdata/triceCheck.c", + "Line": 2316 + }, + "14970": { + "File": "_test/testdata/triceCheck.c", + "Line": 2317 + }, + "14971": { + "File": "_test/testdata/triceCheck.c", + "Line": 2318 + }, + "14972": { + "File": "_test/testdata/triceCheck.c", + "Line": 2319 + }, + "14973": { + "File": "_test/testdata/triceCheck.c", + "Line": 2321 + }, + "14974": { + "File": "_test/testdata/triceCheck.c", + "Line": 2323 + }, + "14975": { + "File": "_test/testdata/triceCheck.c", + "Line": 2324 + }, + "14976": { + "File": "_test/testdata/triceCheck.c", + "Line": 2325 + }, + "14977": { + "File": "_test/testdata/triceCheck.c", + "Line": 2326 + }, + "14978": { + "File": "_test/testdata/triceCheck.c", + "Line": 2327 + }, + "14979": { + "File": "_test/testdata/triceCheck.c", + "Line": 2328 + }, + "14980": { + "File": "_test/testdata/triceCheck.c", + "Line": 2329 + }, + "14981": { + "File": "_test/testdata/triceCheck.c", + "Line": 2330 + }, + "14982": { + "File": "_test/testdata/triceCheck.c", + "Line": 2331 + }, + "14983": { + "File": "_test/testdata/triceCheck.c", + "Line": 2334 + }, + "14984": { + "File": "_test/testdata/triceCheck.c", + "Line": 2335 + }, + "14985": { + "File": "_test/testdata/triceCheck.c", + "Line": 2336 + }, + "14986": { + "File": "_test/testdata/triceCheck.c", + "Line": 2337 + }, + "14987": { + "File": "_test/testdata/triceCheck.c", + "Line": 2338 + }, + "14988": { + "File": "_test/testdata/triceCheck.c", + "Line": 2339 + }, + "14989": { + "File": "_test/testdata/triceCheck.c", + "Line": 2340 + }, + "14990": { + "File": "_test/testdata/triceCheck.c", + "Line": 2341 + }, + "14991": { + "File": "_test/testdata/triceCheck.c", + "Line": 2342 + }, + "14992": { + "File": "_test/testdata/triceCheck.c", + "Line": 2343 + }, + "14993": { + "File": "_test/testdata/triceCheck.c", + "Line": 2344 + }, + "14994": { + "File": "_test/testdata/triceCheck.c", + "Line": 2345 + }, + "14995": { + "File": "_test/testdata/triceCheck.c", + "Line": 2346 + }, + "14996": { + "File": "_test/testdata/triceCheck.c", + "Line": 2347 + }, + "14997": { + "File": "_test/testdata/triceCheck.c", + "Line": 2349 + }, + "14998": { + "File": "_test/testdata/triceCheck.c", + "Line": 2350 + }, + "14999": { + "File": "_test/testdata/triceCheck.c", + "Line": 2351 + }, + "15000": { + "File": "_test/testdata/triceCheck.c", + "Line": 2352 + }, + "15001": { + "File": "_test/testdata/triceCheck.c", + "Line": 2353 + }, + "15002": { + "File": "_test/testdata/triceCheck.c", + "Line": 2354 + }, + "15003": { + "File": "_test/testdata/triceCheck.c", + "Line": 2355 + }, + "15004": { + "File": "_test/testdata/triceCheck.c", + "Line": 2356 + }, + "15005": { + "File": "_test/testdata/triceCheck.c", + "Line": 2357 + }, + "15006": { + "File": "_test/testdata/triceCheck.c", + "Line": 2358 + }, + "15007": { + "File": "_test/testdata/triceCheck.c", + "Line": 2359 + }, + "15008": { + "File": "_test/testdata/triceCheck.c", + "Line": 2360 + }, + "15009": { + "File": "_test/testdata/triceCheck.c", + "Line": 2361 + }, + "15010": { + "File": "_test/testdata/triceCheck.c", + "Line": 2362 + }, + "15011": { + "File": "_test/testdata/triceCheck.c", + "Line": 2363 + }, + "15012": { + "File": "_test/testdata/triceCheck.c", + "Line": 2364 + }, + "15013": { + "File": "_test/testdata/triceCheck.c", + "Line": 2365 + }, + "15014": { + "File": "_test/testdata/triceCheck.c", + "Line": 2366 + }, + "15015": { + "File": "_test/testdata/triceCheck.c", + "Line": 2367 + }, + "15016": { + "File": "_test/testdata/triceCheck.c", + "Line": 2368 + }, + "15017": { + "File": "_test/testdata/triceCheck.c", + "Line": 2369 + }, + "15018": { + "File": "_test/testdata/triceCheck.c", + "Line": 2370 + }, + "15019": { + "File": "_test/testdata/triceCheck.c", + "Line": 2371 + }, + "15020": { + "File": "_test/testdata/triceCheck.c", + "Line": 2372 + }, + "15021": { + "File": "_test/testdata/triceCheck.c", + "Line": 2373 + }, + "15022": { + "File": "_test/testdata/triceCheck.c", + "Line": 2374 + }, + "15023": { + "File": "_test/testdata/triceCheck.c", + "Line": 2375 + }, + "15024": { + "File": "_test/testdata/triceCheck.c", + "Line": 2376 + }, + "15025": { + "File": "_test/testdata/triceCheck.c", + "Line": 2377 + }, + "15026": { + "File": "_test/testdata/triceCheck.c", + "Line": 2378 + }, + "15027": { + "File": "_test/testdata/triceCheck.c", + "Line": 2380 + }, + "15028": { + "File": "_test/testdata/triceCheck.c", + "Line": 2381 + }, + "15029": { + "File": "_test/testdata/triceCheck.c", + "Line": 2382 + }, + "15030": { + "File": "_test/testdata/triceCheck.c", + "Line": 2383 + }, + "15031": { + "File": "_test/testdata/triceCheck.c", + "Line": 2384 + }, + "15032": { + "File": "_test/testdata/triceCheck.c", + "Line": 2385 + }, + "15033": { + "File": "_test/testdata/triceCheck.c", + "Line": 2386 + }, + "15034": { + "File": "_test/testdata/triceCheck.c", + "Line": 2387 + }, + "15035": { + "File": "_test/testdata/triceCheck.c", + "Line": 2388 + }, + "15036": { + "File": "_test/testdata/triceCheck.c", + "Line": 2389 + }, + "15037": { + "File": "_test/testdata/triceCheck.c", + "Line": 2390 + }, + "15038": { + "File": "_test/testdata/triceCheck.c", + "Line": 2391 + }, + "15039": { + "File": "_test/testdata/triceCheck.c", + "Line": 2392 + }, + "15040": { + "File": "_test/testdata/triceCheck.c", + "Line": 2393 + }, + "15041": { + "File": "_test/testdata/triceCheck.c", + "Line": 2394 + }, + "15042": { + "File": "_test/testdata/triceCheck.c", + "Line": 2395 + }, + "15043": { + "File": "_test/testdata/triceCheck.c", + "Line": 2396 + }, + "15044": { + "File": "_test/testdata/triceCheck.c", + "Line": 2397 + }, + "15045": { + "File": "_test/testdata/triceCheck.c", + "Line": 2398 + }, + "15046": { + "File": "_test/testdata/triceCheck.c", + "Line": 2399 + }, + "15047": { + "File": "_test/testdata/triceCheck.c", + "Line": 2400 + }, + "15048": { + "File": "_test/testdata/triceCheck.c", + "Line": 2401 + }, + "15049": { + "File": "_test/testdata/triceCheck.c", + "Line": 2402 + }, + "15050": { + "File": "_test/testdata/triceCheck.c", + "Line": 2403 + }, + "15051": { + "File": "_test/testdata/triceCheck.c", + "Line": 2404 + }, + "15052": { + "File": "_test/testdata/triceCheck.c", + "Line": 2405 + }, + "15053": { + "File": "_test/testdata/triceCheck.c", + "Line": 2406 + }, + "15054": { + "File": "_test/testdata/triceCheck.c", + "Line": 2407 + }, + "15055": { + "File": "_test/testdata/triceCheck.c", + "Line": 2408 + }, + "15056": { + "File": "_test/testdata/triceCheck.c", + "Line": 2409 + }, + "15057": { + "File": "_test/testdata/triceCheck.c", + "Line": 2411 + }, + "15058": { + "File": "_test/testdata/triceCheck.c", + "Line": 2412 + }, + "15059": { + "File": "_test/testdata/triceCheck.c", + "Line": 2413 + }, + "15060": { + "File": "_test/testdata/triceCheck.c", + "Line": 2414 + }, + "15061": { + "File": "_test/testdata/triceCheck.c", + "Line": 2415 + }, + "15062": { + "File": "_test/testdata/triceCheck.c", + "Line": 2416 + }, + "15063": { + "File": "_test/testdata/triceCheck.c", + "Line": 2417 + }, + "15064": { + "File": "_test/testdata/triceCheck.c", + "Line": 2418 + }, + "15065": { + "File": "_test/testdata/triceCheck.c", + "Line": 2419 + }, + "15066": { + "File": "_test/testdata/triceCheck.c", + "Line": 2420 + }, + "15067": { + "File": "_test/testdata/triceCheck.c", + "Line": 2421 + }, + "15068": { + "File": "_test/testdata/triceCheck.c", + "Line": 2422 + }, + "15069": { + "File": "_test/testdata/triceCheck.c", + "Line": 2423 + }, + "15070": { + "File": "_test/testdata/triceCheck.c", + "Line": 2425 + }, + "15071": { + "File": "_test/testdata/triceCheck.c", + "Line": 2426 + }, + "15072": { + "File": "_test/testdata/triceCheck.c", + "Line": 2427 + }, + "15073": { + "File": "_test/testdata/triceCheck.c", + "Line": 2428 + }, + "15074": { + "File": "_test/testdata/triceCheck.c", + "Line": 2429 + }, + "15075": { + "File": "_test/testdata/triceCheck.c", + "Line": 2430 + }, + "15076": { + "File": "_test/testdata/triceCheck.c", + "Line": 2431 + }, + "15077": { + "File": "_test/testdata/triceCheck.c", + "Line": 2432 + }, + "15078": { + "File": "_test/testdata/triceCheck.c", + "Line": 2433 + }, + "15079": { + "File": "_test/testdata/triceCheck.c", + "Line": 2434 + }, + "15080": { + "File": "_test/testdata/triceCheck.c", + "Line": 2435 + }, + "15081": { + "File": "_test/testdata/triceCheck.c", + "Line": 2436 + }, + "15082": { + "File": "_test/testdata/triceCheck.c", + "Line": 2437 + }, + "15083": { + "File": "_test/testdata/triceCheck.c", + "Line": 2439 + }, + "15084": { + "File": "_test/testdata/triceCheck.c", + "Line": 2441 + }, + "15085": { + "File": "_test/testdata/triceCheck.c", + "Line": 2442 + }, + "15086": { + "File": "_test/testdata/triceCheck.c", + "Line": 2443 + }, + "15087": { + "File": "_test/testdata/triceCheck.c", + "Line": 2444 + }, + "15088": { + "File": "_test/testdata/triceCheck.c", + "Line": 2445 + }, + "15089": { + "File": "_test/testdata/triceCheck.c", + "Line": 2446 + }, + "15090": { + "File": "_test/testdata/triceCheck.c", + "Line": 2447 + }, + "15091": { + "File": "_test/testdata/triceCheck.c", + "Line": 2448 + }, + "15092": { + "File": "_test/testdata/triceCheck.c", + "Line": 2449 + }, + "15093": { + "File": "_test/testdata/triceCheck.c", + "Line": 2450 + }, + "15094": { + "File": "_test/testdata/triceCheck.c", + "Line": 2451 + }, + "15095": { + "File": "_test/testdata/triceCheck.c", + "Line": 2452 + }, + "15096": { + "File": "_test/testdata/triceCheck.c", + "Line": 2454 + }, + "15097": { + "File": "_test/testdata/triceCheck.c", + "Line": 2456 + }, + "15098": { + "File": "_test/testdata/triceCheck.c", + "Line": 2457 + }, + "15099": { + "File": "_test/testdata/triceCheck.c", + "Line": 2458 + }, + "15100": { + "File": "_test/testdata/triceCheck.c", + "Line": 2459 + }, + "15101": { + "File": "_test/testdata/triceCheck.c", + "Line": 2460 + }, + "15102": { + "File": "_test/testdata/triceCheck.c", + "Line": 2461 + }, + "15103": { + "File": "_test/testdata/triceCheck.c", + "Line": 2462 + }, + "15104": { + "File": "_test/testdata/triceCheck.c", + "Line": 2463 + }, + "15105": { + "File": "_test/testdata/triceCheck.c", + "Line": 2464 + }, + "15106": { + "File": "_test/testdata/triceCheck.c", + "Line": 2465 + }, + "15107": { + "File": "_test/testdata/triceCheck.c", + "Line": 2466 + }, + "15108": { + "File": "_test/testdata/triceCheck.c", + "Line": 2467 + }, + "15109": { + "File": "_test/testdata/triceCheck.c", + "Line": 2470 + }, + "15110": { + "File": "_test/testdata/triceCheck.c", + "Line": 2471 + }, + "15111": { + "File": "_test/testdata/triceCheck.c", + "Line": 2472 + }, + "15112": { + "File": "_test/testdata/triceCheck.c", + "Line": 2473 + }, + "15113": { + "File": "_test/testdata/triceCheck.c", + "Line": 2474 + }, + "15114": { + "File": "_test/testdata/triceCheck.c", + "Line": 2475 + }, + "15115": { + "File": "_test/testdata/triceCheck.c", + "Line": 2476 + }, + "15116": { + "File": "_test/testdata/triceCheck.c", + "Line": 2478 + }, + "15117": { + "File": "_test/testdata/triceCheck.c", + "Line": 2479 + }, + "15118": { + "File": "_test/testdata/triceCheck.c", + "Line": 2480 + }, + "15119": { + "File": "_test/testdata/triceCheck.c", + "Line": 2481 + }, + "15120": { + "File": "_test/testdata/triceCheck.c", + "Line": 2482 + }, + "15121": { + "File": "_test/testdata/triceCheck.c", + "Line": 2483 + }, + "15122": { + "File": "_test/testdata/triceCheck.c", + "Line": 2484 + }, + "15123": { + "File": "_test/testdata/triceCheck.c", + "Line": 2486 + }, + "15124": { + "File": "_test/testdata/triceCheck.c", + "Line": 2487 + }, + "15125": { + "File": "_test/testdata/triceCheck.c", + "Line": 2488 + }, + "15126": { + "File": "_test/testdata/triceCheck.c", + "Line": 2489 + }, + "15127": { + "File": "_test/testdata/triceCheck.c", + "Line": 2490 + }, + "15128": { + "File": "_test/testdata/triceCheck.c", + "Line": 2491 + }, + "15129": { + "File": "_test/testdata/triceCheck.c", + "Line": 2492 + }, + "15130": { + "File": "_test/testdata/triceCheck.c", + "Line": 2494 + }, + "15131": { + "File": "_test/testdata/triceCheck.c", + "Line": 2495 + }, + "15132": { + "File": "_test/testdata/triceCheck.c", + "Line": 2496 + }, + "15133": { + "File": "_test/testdata/triceCheck.c", + "Line": 2497 + }, + "15134": { + "File": "_test/testdata/triceCheck.c", + "Line": 2498 + }, + "15135": { + "File": "_test/testdata/triceCheck.c", + "Line": 2499 + }, + "15136": { + "File": "_test/testdata/triceCheck.c", + "Line": 2500 + }, + "15137": { + "File": "_test/testdata/triceCheck.c", + "Line": 2502 + }, + "15138": { + "File": "_test/testdata/triceCheck.c", + "Line": 2503 + }, + "15139": { + "File": "_test/testdata/triceCheck.c", + "Line": 2504 + }, + "15140": { + "File": "_test/testdata/triceCheck.c", + "Line": 2505 + }, + "15141": { + "File": "_test/testdata/triceCheck.c", + "Line": 2506 + }, + "15142": { + "File": "_test/testdata/triceCheck.c", + "Line": 2507 + }, + "15143": { + "File": "_test/testdata/triceCheck.c", + "Line": 2508 + }, + "15144": { + "File": "_test/testdata/triceCheck.c", + "Line": 2510 + }, + "15145": { + "File": "_test/testdata/triceCheck.c", + "Line": 2511 + }, + "15146": { + "File": "_test/testdata/triceCheck.c", + "Line": 2512 + }, + "15147": { + "File": "_test/testdata/triceCheck.c", + "Line": 2513 + }, + "15148": { + "File": "_test/testdata/triceCheck.c", + "Line": 2514 + }, + "15149": { + "File": "_test/testdata/triceCheck.c", + "Line": 2515 + }, + "15150": { + "File": "_test/testdata/triceCheck.c", + "Line": 2516 + }, + "15151": { + "File": "_test/testdata/triceCheck.c", + "Line": 2518 + }, + "15152": { + "File": "_test/testdata/triceCheck.c", + "Line": 2519 + }, + "15153": { + "File": "_test/testdata/triceCheck.c", + "Line": 2520 + }, + "15154": { + "File": "_test/testdata/triceCheck.c", + "Line": 2521 + }, + "15155": { + "File": "_test/testdata/triceCheck.c", + "Line": 2522 + }, + "15156": { + "File": "_test/testdata/triceCheck.c", + "Line": 2523 + }, + "15157": { + "File": "_test/testdata/triceCheck.c", + "Line": 2524 + }, + "15158": { + "File": "_test/testdata/triceCheck.c", + "Line": 2526 + }, + "15159": { + "File": "_test/testdata/triceCheck.c", + "Line": 2527 + }, + "15160": { + "File": "_test/testdata/triceCheck.c", + "Line": 2528 + }, + "15161": { + "File": "_test/testdata/triceCheck.c", + "Line": 2529 + }, + "15162": { + "File": "_test/testdata/triceCheck.c", + "Line": 2530 + }, + "15163": { + "File": "_test/testdata/triceCheck.c", + "Line": 2531 + }, + "15164": { + "File": "_test/testdata/triceCheck.c", + "Line": 2532 + }, + "15165": { + "File": "_test/testdata/triceCheck.c", + "Line": 2534 + }, + "15166": { + "File": "_test/testdata/triceCheck.c", + "Line": 2535 + }, + "15167": { + "File": "_test/testdata/triceCheck.c", + "Line": 2536 + }, + "15168": { + "File": "_test/testdata/triceCheck.c", + "Line": 2537 + }, + "15169": { + "File": "_test/testdata/triceCheck.c", + "Line": 2538 + }, + "15170": { + "File": "_test/testdata/triceCheck.c", + "Line": 2539 + }, + "15171": { + "File": "_test/testdata/triceCheck.c", + "Line": 2540 + }, + "15172": { + "File": "_test/testdata/triceCheck.c", + "Line": 2542 + }, + "15173": { + "File": "_test/testdata/triceCheck.c", + "Line": 2543 + }, + "15174": { + "File": "_test/testdata/triceCheck.c", + "Line": 2544 + }, + "15175": { + "File": "_test/testdata/triceCheck.c", + "Line": 2545 + }, + "15176": { + "File": "_test/testdata/triceCheck.c", + "Line": 2546 + }, + "15177": { + "File": "_test/testdata/triceCheck.c", + "Line": 2547 + }, + "15178": { + "File": "_test/testdata/triceCheck.c", + "Line": 2548 + }, + "15179": { + "File": "_test/testdata/triceCheck.c", + "Line": 2550 + }, + "15180": { + "File": "_test/testdata/triceCheck.c", + "Line": 2551 + }, + "15181": { + "File": "_test/testdata/triceCheck.c", + "Line": 2552 + }, + "15182": { + "File": "_test/testdata/triceCheck.c", + "Line": 2553 + }, + "15183": { + "File": "_test/testdata/triceCheck.c", + "Line": 2554 + }, + "15184": { + "File": "_test/testdata/triceCheck.c", + "Line": 2555 + }, + "15185": { + "File": "_test/testdata/triceCheck.c", + "Line": 2556 + }, + "15186": { + "File": "_test/testdata/triceCheck.c", + "Line": 2558 + }, + "15187": { + "File": "_test/testdata/triceCheck.c", + "Line": 2559 + }, + "15188": { + "File": "_test/testdata/triceCheck.c", + "Line": 2560 + }, + "15189": { + "File": "_test/testdata/triceCheck.c", + "Line": 2561 + }, + "15190": { + "File": "_test/testdata/triceCheck.c", + "Line": 2562 + }, + "15191": { + "File": "_test/testdata/triceCheck.c", + "Line": 2563 + }, + "15192": { + "File": "_test/testdata/triceCheck.c", + "Line": 2564 + }, + "15193": { + "File": "_test/testdata/triceCheck.c", + "Line": 2600 + }, + "15194": { + "File": "_test/testdata/triceCheck.c", + "Line": 2601 + }, + "15195": { + "File": "_test/testdata/triceCheck.c", + "Line": 2611 + }, + "15196": { + "File": "_test/testdata/triceCheck.c", + "Line": 2612 + }, + "15197": { + "File": "_test/testdata/triceCheck.c", + "Line": 2732 + }, + "15198": { + "File": "_test/testdata/triceCheck.c", + "Line": 2733 + }, + "15199": { + "File": "_test/testdata/triceCheck.c", + "Line": 2734 + }, + "15200": { + "File": "_test/testdata/triceCheck.c", + "Line": 2736 + }, + "15201": { + "File": "_test/testdata/triceCheck.c", + "Line": 2737 + }, + "15202": { + "File": "_test/testdata/triceCheck.c", + "Line": 2738 + }, + "15203": { + "File": "_test/testdata/triceCheck.c", + "Line": 2744 + }, + "15204": { + "File": "_test/testdata/triceCheck.c", + "Line": 2745 + }, + "15205": { + "File": "_test/testdata/triceCheck.c", + "Line": 2746 + }, + "15206": { + "File": "_test/testdata/triceCheck.c", + "Line": 2748 + }, + "15207": { + "File": "_test/testdata/triceCheck.c", + "Line": 2749 + }, + "15208": { + "File": "_test/testdata/triceCheck.c", + "Line": 2750 + }, + "15209": { + "File": "_test/testdata/triceCheck.c", + "Line": 2761 + }, + "15210": { + "File": "_test/testdata/triceCheck.c", + "Line": 2769 + }, + "15211": { + "File": "_test/testdata/triceCheck.c", + "Line": 2770 + }, + "15212": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 13 + }, + "15213": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 14 + }, + "15214": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 15 + }, + "15215": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 16 + }, + "15216": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 17 + }, + "15217": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 18 + }, + "15218": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 19 + }, + "15219": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 20 + }, + "15220": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 21 + }, + "15221": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 22 + }, + "15222": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 23 + }, + "15223": { + "File": "_test/_ringB_protect_de_tcobs_ua/TargetActivity.c", + "Line": 7 + }, + "15224": { + "File": "_test/_ringB_protect_de_tcobs_ua/TargetActivity.c", + "Line": 8 + }, + "15225": { + "File": "_test/_ringB_protect_de_tcobs_ua/TargetActivity.c", + "Line": 9 + }, + "15226": { + "File": "_test/_ringB_protect_de_tcobs_ua/TargetActivity.c", + "Line": 11 + }, + "15227": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 24 + }, + "15228": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 25 + }, + "15229": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 26 + }, + "15230": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 27 + }, + "15231": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 28 + }, + "15232": { + "File": "_test/special_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 29 + }, + "15233": { + "File": "_test/special_for_debug/TargetActivity.c", + "Line": 5 + }, + "15234": { + "File": "_test/special_for_debug/TargetActivity.c", + "Line": 6 + }, + "15235": { + "File": "_test/special_protect_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 6 + }, + "15236": { + "File": "_test/special_protect_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 7 + }, + "15237": { + "File": "_test/special_protect_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 8 + }, + "15238": { + "File": "_test/special_protect_dblB_de_tcobs_ua/TargetActivity.c", + "Line": 10 + }, + "16326": { + "File": "examples/exampleData/triceExamples.c", + "Line": 77 + }, + "16327": { + "File": "examples/exampleData/triceExamples.c", + "Line": 76 + }, + "16328": { + "File": "examples/exampleData/triceExamples.c", + "Line": 74 + }, + "16329": { + "File": "examples/exampleData/triceExamples.c", + "Line": 72 + }, + "16330": { + "File": "examples/exampleData/triceExamples.c", + "Line": 69 + }, + "16331": { + "File": "examples/exampleData/triceExamples.c", + "Line": 67 + }, + "16332": { + "File": "examples/exampleData/triceExamples.c", + "Line": 65 + }, + "16333": { + "File": "examples/exampleData/triceExamples.c", + "Line": 63 + }, + "16334": { + "File": "examples/exampleData/triceExamples.c", + "Line": 61 + }, + "16335": { + "File": "examples/exampleData/triceExamples.c", + "Line": 52 + }, + "16336": { + "File": "examples/exampleData/triceExamples.c", + "Line": 50 + }, + "16337": { + "File": "examples/exampleData/triceExamples.c", + "Line": 49 + }, + "16338": { + "File": "examples/exampleData/triceExamples.c", + "Line": 48 + }, + "16339": { + "File": "examples/exampleData/triceExamples.c", + "Line": 47 + }, + "16340": { + "File": "examples/exampleData/triceExamples.c", + "Line": 46 + }, + "16341": { + "File": "examples/exampleData/triceExamples.c", + "Line": 45 + }, + "16342": { + "File": "examples/exampleData/triceExamples.c", + "Line": 44 + }, + "16343": { + "File": "examples/exampleData/triceExamples.c", + "Line": 43 + }, + "16344": { + "File": "examples/exampleData/triceExamples.c", + "Line": 42 + }, + "16345": { + "File": "examples/exampleData/triceExamples.c", + "Line": 40 + }, + "16346": { + "File": "examples/exampleData/triceExamples.c", + "Line": 39 + }, + "16347": { + "File": "examples/exampleData/triceExamples.c", + "Line": 38 + }, + "16348": { + "File": "examples/exampleData/triceExamples.c", + "Line": 37 + }, + "16349": { + "File": "examples/exampleData/triceExamples.c", + "Line": 36 + }, + "16350": { + "File": "examples/exampleData/triceExamples.c", + "Line": 35 + }, + "16351": { + "File": "examples/exampleData/triceExamples.c", + "Line": 34 + }, + "16352": { + "File": "examples/exampleData/triceExamples.c", + "Line": 33 + }, + "16353": { + "File": "examples/exampleData/triceExamples.c", + "Line": 32 + }, + "16354": { + "File": "examples/exampleData/triceExamples.c", + "Line": 31 + }, + "16355": { + "File": "examples/exampleData/triceExamples.c", + "Line": 30 + }, + "16356": { + "File": "examples/exampleData/triceExamples.c", + "Line": 29 + }, + "16357": { + "File": "examples/exampleData/triceExamples.c", + "Line": 28 + }, + "16358": { + "File": "examples/exampleData/triceExamples.c", + "Line": 27 + }, + "16359": { + "File": "examples/exampleData/triceExamples.c", + "Line": 26 + }, + "16360": { + "File": "examples/exampleData/triceExamples.c", + "Line": 25 + }, + "16361": { + "File": "examples/exampleData/triceExamples.c", + "Line": 24 + }, + "16362": { + "File": "examples/exampleData/triceExamples.c", + "Line": 23 + }, + "16363": { + "File": "examples/exampleData/triceExamples.c", + "Line": 22 + }, + "16364": { + "File": "examples/exampleData/triceExamples.c", + "Line": 21 + }, + "16365": { + "File": "examples/exampleData/triceExamples.c", + "Line": 20 + }, + "16366": { + "File": "examples/exampleData/triceExamples.c", + "Line": 19 + }, + "16367": { + "File": "examples/exampleData/triceExamples.c", + "Line": 18 + }, + "16368": { + "File": "examples/exampleData/triceExamples.c", + "Line": 17 + }, + "16369": { + "File": "examples/exampleData/triceExamples.c", + "Line": 12 + }, + "16370": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 77 + }, + "16371": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 75 + }, + "16372": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 69 + }, + "16373": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 67 + }, + "16374": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 56 + }, + "16375": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 52 + }, + "16376": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 50 + }, + "16377": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 46 + }, + "16378": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 44 + }, + "16379": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 37 + }, + "16380": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 32 + }, + "16381": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 26 + }, + "16382": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 21 + }, + "16383": { + "File": "examples/exampleData/triceLogDiagData.c", + "Line": 19 + } +} \ No newline at end of file diff --git a/_test/testdata/til.json b/demoTIL.json similarity index 84% rename from _test/testdata/til.json rename to demoTIL.json index ebf3c19be..886ed1add 100644 --- a/_test/testdata/til.json +++ b/demoTIL.json @@ -1,8672 +1,9136 @@ { - "14000": { + "13000": { + "Type": "TRice", + "Strg": "WARNING:USARTq OverRun Error Flag is set!\\n" + }, + "13001": { + "Type": "TRICE_S", + "Strg": "rx:received command:%s\\n" + }, + "13002": { + "Type": "TRice", + "Strg": "Fun %x!\\n" + }, + "13003": { + "Type": "trice", + "Strg": "CUSTOM_PRINT example: the right answer is: %d\\n" + }, + "13004": { + "Type": "triceS", + "Strg": "SAlias_Strg('theFastFoundAnswer == theRightAnswer')SAlias_Strg" + }, + "13005": { + "Type": "triceS", + "Strg": "SAlias_Strg('theFastFoundAnswer == theRightAnswer, (char*)theQuestion ')SAlias_Strg" + }, + "13006": { + "Type": "triceS", + "Strg": "SAlias_Strg('theFastFoundAnswer == theRightAnswer, (char*)\"'%s' Am, it is %d\"')SAlias_Strg" + }, + "13007": { + "Type": "trice", + "Strg": "isr:TIM17_FDCAN_IT1_IRQHandler! (%u ms)\\n" + }, + "13008": { + "Type": "TRice", + "Strg": "msg:StartDefaultTask\\n" + }, + "13009": { + "Type": "TRice", + "Strg": "msg:StartTask02:Diagnostics and TriceTransfer\\n" + }, + "13010": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13011": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13012": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13013": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13014": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13015": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13016": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13017": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13018": { + "Type": "TRice", + "Strg": "WARNING:USARTq OverRun Error Flag is set!\\n" + }, + "13019": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13020": { + "Type": "TRICE_S", + "Strg": "rx:received command:%s\\n" + }, + "13021": { + "Type": "TRice", + "Strg": "msg:StartDefaultTask\\n" + }, + "13022": { + "Type": "TRice", + "Strg": "msg:StartTask02:Diagnostics and TriceTransfer\\n" + }, + "13023": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration with direct RTT output only and optimized for speed\\n" + }, + "13024": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - UART, no cycle counter, no critical sections.\\n" + }, + "13025": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An minimum configuration example.\\n" + }, + "13026": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration with direct RTT output and parallel deferred UART output.\\n" + }, + "13027": { + "Type": "trice8", + "Strg": "dbg:CONFIGURATION == %d - An example configuration\\n" + }, + "13028": { + "Type": "TRice", + "Strg": "\\rTriceCheck %4d" + }, + "13029": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14001": { + "13030": { "Type": "TRice", "Strg": "Hello World!\\n" }, - "14002": { + "13031": { "Type": "TRice", "Strg": "info:This is a message without values and a 32-bit stamp.\\n" }, - "14003": { + "13032": { "Type": "Trice", "Strg": "info:This is a message without values and a 16-bit stamp.\\n" }, - "14004": { + "13033": { "Type": "trice", "Strg": "info:This is a message without values and without stamp.\\n" }, - "14005": { + "13034": { + "Type": "trice", + "Strg": "sig:trice without stamp and with 0 to 12 values (most common use cases)\\n" + }, + "13035": { + "Type": "trice", + "Strg": "rd:trice\\n" + }, + "13036": { + "Type": "trice", + "Strg": "rd:trice %d\\n" + }, + "13037": { + "Type": "trice", + "Strg": "rd:trice %d, %d\\n" + }, + "13038": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d\\n" + }, + "13039": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d\\n" + }, + "13040": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d\\n" + }, + "13041": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d\\n" + }, + "13042": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13043": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13044": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13045": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13046": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13047": { + "Type": "trice", + "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13048": { + "Type": "Trice", + "Strg": "sig:Trice with 16-bit stamp and with 0 to 12 values (common use cases)\\n" + }, + "13049": { + "Type": "Trice", + "Strg": "rd:Trice\\n" + }, + "13050": { + "Type": "Trice", + "Strg": "rd:Trice %d\\n" + }, + "13051": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d\\n" + }, + "13052": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d\\n" + }, + "13053": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d\\n" + }, + "13054": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d\\n" + }, + "13055": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d\\n" + }, + "13056": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13057": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13058": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13059": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13060": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13061": { + "Type": "Trice", + "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13062": { + "Type": "TRice", + "Strg": "sig:TRice with 32-bit stamp and with 0 to 12 values (common use cases)\\n" + }, + "13063": { + "Type": "TRice", + "Strg": "rd:TRice\\n" + }, + "13064": { + "Type": "TRice", + "Strg": "rd:TRice %d\\n" + }, + "13065": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d\\n" + }, + "13066": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d\\n" + }, + "13067": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d\\n" + }, + "13068": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d\\n" + }, + "13069": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d\\n" + }, + "13070": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13071": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13072": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13073": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13074": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13075": { + "Type": "TRice", + "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" + }, + "13076": { "Type": "trice", "Strg": "sig:trice16 with 1 to 12 pointer\\n" }, - "14006": { + "13077": { "Type": "trice16", "Strg": "rd:trice16 %p\\n" }, - "14007": { + "13078": { "Type": "trice16", "Strg": "rd:trice16 %p, %p\\n" }, - "14008": { + "13079": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p\\n" }, - "14009": { + "13080": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p\\n" }, - "14010": { + "13081": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p\\n" }, - "14011": { + "13082": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p\\n" }, - "14012": { + "13083": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p, %p\\n" }, - "14013": { + "13084": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14014": { + "13085": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14015": { + "13086": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14016": { + "13087": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14017": { + "13088": { "Type": "trice16", "Strg": "rd:trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14018": { + "13089": { "Type": "trice8", "Strg": "rd:trice8 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14019": { + "13090": { "Type": "trice32", "Strg": "rd:trice32 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "14020": { + "13091": { "Type": "trice", "Strg": "sig:trice16 with 1 to 12 hex\\n" }, - "14021": { + "13092": { "Type": "trice16", "Strg": "rd:trice16 %X\\n" }, - "14022": { + "13093": { "Type": "trice16", "Strg": "rd:trice16 %X, %X\\n" }, - "14023": { + "13094": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X\\n" }, - "14024": { + "13095": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X\\n" }, - "14025": { + "13096": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X\\n" }, - "14026": { + "13097": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X\\n" }, - "14027": { + "13098": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X, %X\\n" }, - "14028": { + "13099": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14029": { + "13100": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14030": { + "13101": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14031": { + "13102": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14032": { + "13103": { "Type": "trice16", "Strg": "rd:trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14033": { + "13104": { "Type": "trice8", "Strg": "rd:trice8 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14034": { + "13105": { "Type": "trice32", "Strg": "rd:trice32 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "14035": { + "13106": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14036": { + "13107": { "Type": "trice", "Strg": "--------------------------------------------------\\n" }, - "14037": { + "13108": { "Type": "trice32", "Strg": "msg: message = %08x %08x %08x %08x %08x %08x\\n" }, - "14038": { + "13109": { "Type": "trice32", "Strg": "tim: pre TriceEncryption SysTick=%d\\n" }, - "14039": { + "13110": { "Type": "trice32", "Strg": "tim: post TriceEncryption SysTick=%d\\n" }, - "14040": { + "13111": { "Type": "trice32", "Strg": "att: TriceEncrypted = %08x %08x %08x %08x %08x %08x\\n" }, - "14041": { + "13112": { "Type": "trice16_1", "Strg": "tim: pre TriceDecryption SysTick=%d\\n" }, - "14042": { + "13113": { "Type": "trice16_1", "Strg": "tim: post TriceDecryption SysTick=%d\\n" }, - "14043": { + "13114": { "Type": "trice32", "Strg": "msg: messge = %08x %08x %08x %08x %08x %08x\\n" }, - "14044": { + "13115": { "Type": "trice", "Strg": "--------------------------------------------------\\n" }, - "14045": { + "13116": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14046": { + "13117": { "Type": "trice", "Strg": "dbg:Hi!\\n" }, - "14047": { + "13118": { "Type": "trice", "Strg": "dbg:\tHi!\\n" }, - "14048": { + "13119": { "Type": "trice", "Strg": "sig:Some time measurements\\n" }, - "14049": { + "13120": { "Type": "trice", "Strg": "isr:trice isr message, SysTick is %6d\\n" }, - "14050": { + "13121": { "Type": "trice", "Strg": "isr:trice isr message, SysTick is %6d\\n" }, - "14051": { + "13122": { "Type": "trice", "Strg": "isr:trice isr message, SysTick is %6d\\n" }, - "14052": { + "13123": { "Type": "trice", "Strg": "isr:trice isr message, SysTick is %6d\\n" }, - "14053": { + "13124": { "Type": "trice_1", "Strg": "isr:trice_1 isr message, SysTick is %6d\\n" }, - "14054": { + "13125": { "Type": "trice_1", "Strg": "isr:trice_1 isr message, SysTick is %6d\\n" }, - "14055": { + "13126": { "Type": "trice_1", "Strg": "isr:trice_1 isr message, SysTick is %6d\\n" }, - "14056": { + "13127": { "Type": "trice_1", "Strg": "isr:trice_1 isr message, SysTick is %6d\\n" }, - "14057": { + "13128": { "Type": "TRICE16_1", "Strg": "isr:TRICE16_1 isr message, SysTick is %6d\\n" }, - "14058": { + "13129": { "Type": "TRICE16_1", "Strg": "isr:TRICE16_1 isr message, SysTick is %6d\\n" }, - "14059": { + "13130": { "Type": "TRICE16_1", "Strg": "isr:TRICE16_1 isr message, SysTick is %6d\\n" }, - "14060": { + "13131": { "Type": "TRICE16_1", "Strg": "isr:TRICE16_1 isr message, SysTick is %6d\\n" }, - "14061": { + "13132": { "Type": "TRICE_1", "Strg": "isr:TRICE_1 isr message, SysTick is %6d\\n" }, - "14062": { + "13133": { "Type": "TRICE_1", "Strg": "isr:TRICE_1 isr message, SysTick is %6d\\n" }, - "14063": { + "13134": { "Type": "TRICE_1", "Strg": "isr:TRICE_1 isr message, SysTick is %6d\\n" }, - "14064": { + "13135": { "Type": "TRICE_1", "Strg": "isr:TRICE_1 isr message, SysTick is %6d\\n" }, - "14065": { + "13136": { "Type": "TRICE", "Strg": "isr:TRICE isr message, SysTick is %6d\\n" }, - "14066": { + "13137": { "Type": "TRICE", "Strg": "isr:TRICE isr message, SysTick is %6d\\n" }, - "14067": { + "13138": { "Type": "TRICE", "Strg": "isr:TRICE isr message, SysTick is %6d\\n" }, - "14068": { + "13139": { "Type": "TRICE", "Strg": "isr:TRICE isr message, SysTick is %6d\\n" }, - "14069": { + "13140": { "Type": "trice", "Strg": "tim:trice START time message\\n" }, - "14070": { + "13141": { "Type": "trice", "Strg": "tim:trice STOP time message\\n" }, - "14071": { + "13142": { "Type": "trice", "Strg": "tim:trice START time message\\n" }, - "14072": { + "13143": { "Type": "trice", "Strg": "tim:trice STOP time message\\n" }, - "14073": { + "13144": { "Type": "trice", "Strg": "tim:trice START time message\\n" }, - "14074": { + "13145": { "Type": "trice64", "Strg": "rd:trice64 %d, %d\\n" }, - "14075": { + "13146": { "Type": "trice", "Strg": "tim:trice STOP time message\\n" }, - "14076": { + "13147": { "Type": "TRICE", "Strg": "tim:TRICE START time message\\n" }, - "14077": { + "13148": { "Type": "TRICE", "Strg": "tim:TRICE STOP time message\\n" }, - "14078": { + "13149": { "Type": "TRICE", "Strg": "tim:TRICE START time message\\n" }, - "14079": { + "13150": { "Type": "TRICE", "Strg": "tim:TRICE STOP time message\\n" }, - "14080": { + "13151": { "Type": "TRICE", "Strg": "tim:TRICE START time message\\n" }, - "14081": { + "13152": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d\\n" }, - "14082": { + "13153": { "Type": "TRICE", "Strg": "tim:TRICE STOP time message\\n" }, - "14083": { + "13154": { "Type": "trice", "Strg": "tim:trice --------------------------------------------------\\n" }, - "14084": { + "13155": { "Type": "trice", "Strg": "tim:trice --------------------------------------------------\\n" }, - "14085": { + "13156": { "Type": "trice64", "Strg": "rd:trice64 %d, %d\\n" }, - "14086": { + "13157": { "Type": "trice", "Strg": "tim:trice --------------------------------------------------\\n" }, - "14087": { + "13158": { "Type": "trice", "Strg": "tim:trice --------------------------------------------------\\n" }, - "14088": { + "13159": { "Type": "trice64", "Strg": "rd:trice64 %d, %d\\n" }, - "14089": { + "13160": { "Type": "trice32_1", "Strg": "rd:trice32_1 %d\\n" }, - "14090": { + "13161": { "Type": "trice64_1", "Strg": "rd:trice64_1 %d\\n" }, - "14091": { + "13162": { "Type": "trice32_2", "Strg": "rd:trice32_2 %d,%d\\n" }, - "14092": { + "13163": { "Type": "trice64_2", "Strg": "rd:trice64_2 %d,%d\\n" }, - "14093": { + "13164": { "Type": "TRice64", "Strg": "info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\\n" }, - "14094": { + "13165": { "Type": "Trice64", "Strg": "info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\\n" }, - "14095": { + "13166": { "Type": "trice64", "Strg": "info:12 64-bit values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\\n" }, - "14096": { + "13167": { "Type": "TRice32", "Strg": "info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\\n" }, - "14097": { + "13168": { "Type": "Trice32", "Strg": "info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\\n" }, - "14098": { + "13169": { "Type": "trice32", "Strg": "info:12 32-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\\n" }, - "14099": { + "13170": { "Type": "TRice16", "Strg": "info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\\n" }, - "14100": { + "13171": { "Type": "Trice16", "Strg": "info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\\n" }, - "14101": { + "13172": { "Type": "trice16", "Strg": "info:12 16-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\\n" }, - "14102": { + "13173": { "Type": "TRice8", "Strg": "info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 32-bit stamp.\\n" }, - "14103": { + "13174": { "Type": "Trice8", "Strg": "info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and a 16-bit stamp.\\n" }, - "14104": { + "13175": { "Type": "trice8", "Strg": "info:12 8-bit values %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d and without stamp.\\n" }, - "14105": { + "13176": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14106": { + "13177": { "Type": "TRice16", "Strg": "att: 0x8888 == %04xh\\n" }, - "14107": { + "13178": { "Type": "Trice16", "Strg": "att: 0x8888 == %04xh\\n" }, - "14108": { + "13179": { "Type": "trice16", "Strg": "att: 0x8888 == %04xh\\n" }, - "14109": { + "13180": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14110": { + "13181": { "Type": "trice8", "Strg": "value=%x\\n" }, - "14111": { + "13182": { "Type": "trice8", "Strg": "value=%x\\n" }, - "14112": { + "13183": { "Type": "trice", "Strg": "att:mixed int \u0026 float \u0026 double \u0026 bits\\n" }, - "14113": { + "13184": { "Type": "TRice32", "Strg": "rd:TRice32 int %d, float %f (%%f), %08x, %032b\\n" }, - "14114": { + "13185": { "Type": "TRice32", "Strg": "rd:TRice32 int %d, float %f (%%f), %08x, %032b\\n" }, - "14115": { + "13186": { "Type": "TRice32", "Strg": "rd:TRice32 int %x, float %f (%%f), %08x, %032b\\n" }, - "14116": { + "13187": { "Type": "TRice32", "Strg": "rd:TRice32 int %d, float %f (%%f), %08x, %032b\\n" }, - "14117": { + "13188": { "Type": "TRice32", "Strg": "rd:TRice32 int %d, float %f (%%f), %08x, %032b\\n" }, - "14118": { + "13189": { "Type": "TRice32", "Strg": "rd:TRice32 int %d, float %f (%%f), %08x, %032b\\n" }, - "14119": { + "13190": { "Type": "TRice32", "Strg": "rd:TRice32 int %X, float %f (%%f), %08x, %032b\\n" }, - "14120": { + "13191": { "Type": "TRice64", "Strg": "rd:TRice64 int %d, double %f (%%f), %016x, %064b\\n" }, - "14121": { + "13192": { "Type": "TRice64", "Strg": "rd:TRice64 int %d, double %f (%%f), %016x, %064b\\n" }, - "14122": { + "13193": { "Type": "TRice64", "Strg": "rd:TRice64 int %d, double %f (%%f), %016x, %064b\\n" }, - "14123": { + "13194": { "Type": "TRice64", "Strg": "rd:TRice64 int %d, double %f (%%f), %016x, %064b\\n" }, - "14124": { + "13195": { "Type": "TRice64", "Strg": "rd:TRice64 int %d, double %f (%%f), %016x, %064b\\n" }, - "14125": { + "13196": { "Type": "TRice64", "Strg": "rd:TRice64 int %X, double %f (%%f), %016x, %064b\\n" }, - "14126": { + "13197": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14127": { + "13198": { "Type": "triceS", "Strg": "msg:With triceS:%s\\n" }, - "14128": { + "13199": { "Type": "triceN", "Strg": "sig:With triceN:%s\\n" }, - "14129": { + "13200": { "Type": "TriceS", "Strg": "msg:With TriceS:%s\\n" }, - "14130": { + "13201": { "Type": "TriceN", "Strg": "sig:With TriceN:%s\\n" }, - "14131": { + "13202": { "Type": "TRiceS", "Strg": "msg:With TRiceS:%s\\n" }, - "14132": { + "13203": { "Type": "TRiceN", "Strg": "sig:With TRiceN:%s\\n" }, - "14133": { + "13204": { "Type": "TRICE_S", "Strg": "msg:With TRICE_S:%s\\n" }, - "14134": { + "13205": { "Type": "TRICE_N", "Strg": "sig:With TRICE_N:%s\\n" }, - "14135": { + "13206": { "Type": "TRICE_S", "Strg": "msg:With TRICE_S:%s\\n" }, - "14136": { + "13207": { "Type": "TRICE_N", "Strg": "sig:With TRICE_N:%s\\n" }, - "14137": { + "13208": { "Type": "TRICE_S", "Strg": "msg:With TRICE_S:%s\\n" }, - "14138": { + "13209": { "Type": "TRICE_N", "Strg": "sig:With TRICE_N:%s\\n" }, - "14139": { + "13210": { "Type": "TRICE8_B", "Strg": " %02x" }, - "14140": { + "13211": { "Type": "trice", "Strg": "\\n" }, - "14141": { + "13212": { "Type": "TRICE8_B", "Strg": "BUF: %02x\\n" }, - "14142": { + "13213": { "Type": "TRICE8_B", "Strg": "%4d" }, - "14143": { + "13214": { "Type": "trice", "Strg": "\\n" }, - "14144": { + "13215": { "Type": "TRICE8_B", "Strg": " %02x" }, - "14145": { + "13216": { "Type": "trice", "Strg": "\\n" }, - "14146": { + "13217": { "Type": "TRice8B", "Strg": " %02x" }, - "14147": { + "13218": { "Type": "trice", "Strg": "\\n" }, - "14148": { + "13219": { "Type": "Trice8B", "Strg": " %02x" }, - "14149": { + "13220": { "Type": "trice", "Strg": "\\n" }, - "14150": { + "13221": { "Type": "trice8B", "Strg": " %02x" }, - "14151": { + "13222": { "Type": "trice", "Strg": "\\n" }, - "14152": { + "13223": { "Type": "trice8B", "Strg": "att: %02x\\n" }, - "14153": { + "13224": { "Type": "trice8B", "Strg": "rd: %02x" }, - "14154": { + "13225": { "Type": "trice", "Strg": "\\n" }, - "14155": { + "13226": { "Type": "trice8B", "Strg": " %02x\\n" }, - "14156": { + "13227": { "Type": "TRICE16_B", "Strg": " %04x" }, - "14157": { + "13228": { "Type": "trice", "Strg": "\\n" }, - "14158": { + "13229": { "Type": "TRice16B", "Strg": " %04x" }, - "14159": { + "13230": { "Type": "trice", "Strg": "\\n" }, - "14160": { + "13231": { "Type": "Trice16B", "Strg": " %04x" }, - "14161": { + "13232": { "Type": "trice", "Strg": "\\n" }, - "14162": { + "13233": { "Type": "trice16B", "Strg": " %04x" }, - "14163": { + "13234": { "Type": "trice", "Strg": "\\n" }, - "14164": { + "13235": { "Type": "trice16B", "Strg": "msg: %04x\\n" }, - "14165": { + "13236": { "Type": "TRICE32_B", "Strg": " %08x" }, - "14166": { + "13237": { "Type": "trice", "Strg": "\\n" }, - "14167": { + "13238": { "Type": "TRice32B", "Strg": " %08x" }, - "14168": { + "13239": { "Type": "trice", "Strg": "\\n" }, - "14169": { + "13240": { "Type": "Trice32B", "Strg": " %08x" }, - "14170": { + "13241": { "Type": "trice", "Strg": "\\n" }, - "14171": { + "13242": { "Type": "trice32B", "Strg": " %08x" }, - "14172": { + "13243": { "Type": "trice", "Strg": "\\n" }, - "14173": { + "13244": { "Type": "trice32B", "Strg": "att: %08x\\n" }, - "14174": { + "13245": { "Type": "TRICE64_B", "Strg": " %016x" }, - "14175": { + "13246": { "Type": "trice", "Strg": "\\n" }, - "14176": { + "13247": { "Type": "TRice64B", "Strg": " %016x" }, - "14177": { + "13248": { "Type": "trice", "Strg": "\\n" }, - "14178": { + "13249": { "Type": "Trice64B", "Strg": " %016x" }, - "14179": { + "13250": { "Type": "trice", "Strg": "\\n" }, - "14180": { + "13251": { "Type": "trice64B", "Strg": " %016x" }, - "14181": { + "13252": { "Type": "trice", "Strg": "\\n" }, - "14182": { + "13253": { "Type": "trice64B", "Strg": "SIG: %016x\\n" }, - "14183": { + "13254": { "Type": "TRICE8_F", - "Strg": "info:FunctionNameW" + "Strg": "info:FunctionNameWa" }, - "14184": { + "13255": { "Type": "TRice8F", - "Strg": "call:FunctionNameW" + "Strg": "call:FunctionNameWb" }, - "14185": { + "13256": { "Type": "Trice8F", - "Strg": "call:FunctionNameW" + "Strg": "call:FunctionNameWc" }, - "14186": { + "13257": { "Type": "trice8F", - "Strg": "call:FunctionNameW" + "Strg": "call:FunctionNameWd" }, - "14187": { + "13258": { "Type": "TRICE16_F", - "Strg": "info:FunctionNameX" + "Strg": "info:FunctionNameXa" }, - "14188": { + "13259": { "Type": "TRice16F", - "Strg": "call:FunctionNameX" + "Strg": "call:FunctionNameXb" }, - "14189": { + "13260": { "Type": "Trice16F", - "Strg": "call:FunctionNameX" + "Strg": "call:FunctionNameXc" }, - "14190": { + "13261": { "Type": "trice16F", - "Strg": "call:FunctionNameX" + "Strg": "call:FunctionNameXd" }, - "14191": { + "13262": { "Type": "TRICE32_F", - "Strg": "info:FunctionNameY" + "Strg": "info:FunctionNameYa" }, - "14192": { + "13263": { "Type": "TRice32F", - "Strg": "call:FunctionNameY" + "Strg": "rpc:FunctionNameYb" }, - "14193": { + "13264": { "Type": "Trice32F", - "Strg": "call:FunctionNameY" + "Strg": "rpc:FunctionNameYc" }, - "14194": { + "13265": { "Type": "trice32F", - "Strg": "call:FunctionNameY" + "Strg": "call:FunctionNameYd" }, - "14195": { + "13266": { "Type": "TRICE64_F", - "Strg": "info:FunctionNameZ" + "Strg": "info:FunctionNameZa" }, - "14196": { + "13267": { "Type": "TRice64F", - "Strg": "call:FunctionNameZ" + "Strg": "call:FunctionNameZb" }, - "14197": { + "13268": { "Type": "Trice64F", - "Strg": "call:FunctionNameZ" + "Strg": "RPC:FunctionNameZc" }, - "14198": { + "13269": { "Type": "trice64F", - "Strg": "call:FunctionNameZ" + "Strg": "RPC:FunctionNameZd" }, - "14199": { + "13270": { "Type": "TRiceS", "Strg": "msg:Hi %s!\\n" }, - "14200": { + "13271": { "Type": "TriceS", "Strg": "msg:Hi %s!\\n" }, - "14201": { + "13272": { "Type": "triceS", "Strg": "msg:Hi %s!\\n" }, - "14202": { + "13273": { "Type": "TRiceN", "Strg": "msg:Hi %s!\\n" }, - "14203": { + "13274": { "Type": "TriceN", "Strg": "msg:Hi %s!\\n" }, - "14204": { + "13275": { "Type": "triceN", "Strg": "msg:Hi %s!\\n" }, - "14205": { + "13276": { "Type": "TRICE_S", "Strg": "sig:TRICE_S=%s\\n" }, - "14206": { + "13277": { "Type": "TRICE_N", "Strg": "sig:TRICE_N=%s\\n" }, - "14207": { + "13278": { "Type": "TRICE_S", "Strg": "sig:TRICE_S=%s\\n" }, - "14208": { + "13279": { "Type": "TRICE_N", "Strg": "sig:TRICE_N=%s\\n" }, - "14209": { + "13280": { "Type": "TRICE_S", "Strg": "sig:TRICE_S=%s\\n" }, - "14210": { + "13281": { "Type": "TRICE_N", "Strg": "sig:TRICE_N=%s\\n" }, - "14211": { + "13282": { "Type": "triceS", "Strg": "sig:triceS=%s\\n" }, - "14212": { + "13283": { "Type": "triceN", "Strg": "sig:triceN=%s\\n" }, - "14213": { + "13284": { "Type": "TriceS", "Strg": "sig:TriceS=%s\\n" }, - "14214": { + "13285": { "Type": "TriceN", "Strg": "sig:TriceN=%s\\n" }, - "14215": { + "13286": { "Type": "TRiceS", "Strg": "sig:TRiceS=%s\\n" }, - "14216": { + "13287": { "Type": "TRiceN", "Strg": "sig:TRiceN=%s\\n" }, - "14217": { + "13288": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14218": { + "13289": { "Type": "TRICE", "Strg": "MSG:1/11 = %g\\n" }, - "14219": { + "13290": { "Type": "TRice", "Strg": "msg:x = %g = %d.%03d, %d.%03d\\n" }, - "14220": { + "13291": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14221": { + "13292": { "Type": "TRice", "Strg": "sig:Integer (indent, base, sign) - see https://yourbasic.org/golang/fmt-printf-reference-cheat-sheet/\\n" }, - "14222": { + "13293": { "Type": "TRice", "Strg": "rd: 15 \t%d \tBase 10\\n" }, - "14223": { + "13294": { "Type": "TRice", "Strg": "rd: +15 \t%+d \tAlways show sign\\n" }, - "14224": { + "13295": { "Type": "TRice", "Strg": "rd: 15\t%4d \tPad with spaces (width 4, right justified)\\n" }, - "14225": { + "13296": { "Type": "TRice", "Strg": "rd: 15\t%-4d\tPad with spaces (width 4, left justified)\\n" }, - "14226": { + "13297": { "Type": "TRice", "Strg": "rd: 0015\t%04d\tPad with zeroes (width 4)\\n" }, - "14227": { + "13298": { "Type": "TRice", "Strg": "rd: 1111 \t%b \tBase 2\\n" }, - "14228": { + "13299": { "Type": "TRice", "Strg": "rd: 17 \t%o \tBase 8\\n" }, - "14229": { + "13300": { "Type": "TRice", "Strg": "rd: f \t%x \tBase 16, lowercase\\n" }, - "14230": { + "13301": { "Type": "TRice", "Strg": "rd: F \t%X \tBase 16, uppercase\\n" }, - "14231": { + "13302": { "Type": "TRice", "Strg": "rd: 0xf \t%#x \tBase 16, with leading 0x\\n" }, - "14232": { + "13303": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14233": { - "Type": "TRICE", + "13304": { + "Type": "trice", "Strg": "sig:Character (quoted, Unicode)\\n" }, - "14234": { - "Type": "TRICE", + "13305": { + "Type": "trice", "Strg": "rd: A \t%c \tCharacter\\n" }, - "14235": { - "Type": "TRICE", + "13306": { + "Type": "trice", "Strg": "rd: 'A' \t%q \tQuoted character\\n" }, - "14236": { - "Type": "TRICE", + "13307": { + "Type": "trice", "Strg": "rd: U+0041 \t%U \tUnicode\\n" }, - "14237": { - "Type": "TRICE", + "13308": { + "Type": "trice", "Strg": "rd: U+0041 'A' \t%#U \tUnicode with character\\n" }, - "14238": { - "Type": "TRICE", + "13309": { + "Type": "trice", "Strg": "sig:Boolean (true/false)\\n" }, - "14239": { - "Type": "TRICE", + "13310": { + "Type": "trice", "Strg": "rd:Use %%t to format a boolean as true (%t) or false (%t).\\n" }, - "14240": { - "Type": "TRICE", + "13311": { + "Type": "trice", "Strg": "sig:Pointer (hex)\\n" }, - "14241": { - "Type": "TRICE8", + "13312": { + "Type": "trice8", "Strg": "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\\n" }, - "14242": { - "Type": "TRICE16", + "13313": { + "Type": "trice16", "Strg": "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\\n" }, - "14243": { - "Type": "TRICE32", + "13314": { + "Type": "trice32", "Strg": "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\\n" }, - "14244": { - "Type": "TRICE64", + "13315": { + "Type": "trice64", "Strg": "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\\n" }, - "14245": { - "Type": "TRICE", + "13316": { + "Type": "trice", "Strg": "rd:Use %%p to format a pointer in base 16 notation with leading 0x. (%p)\\n" }, - "14246": { + "13317": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14247": { - "Type": "TRICE", + "13318": { + "Type": "trice", "Strg": "sig:Float (indent, precision, scientific notation)\\n" }, - "14248": { - "Type": "TRICE", + "13319": { + "Type": "trice", "Strg": "rd: 1.234560e+02\t\t%e \t%%e Scientific notation\\n" }, - "14249": { - "Type": "TRICE", + "13320": { + "Type": "trice", "Strg": "rd: 123.456000\t\t%f \t%%f Decimal point, no exponent\\n" }, - "14250": { - "Type": "TRICE", + "13321": { + "Type": "trice", "Strg": "rd: 123.46\t\t\t%.2f\t\t%%.2f Default width, precision 2\\n" }, - "14251": { - "Type": "TRICE", + "13322": { + "Type": "trice", "Strg": "rd: ␣␣123.46\t\t%8.2f\t%%8.2f Width 8, precision 2\\n" }, - "14252": { - "Type": "TRICE", + "13323": { + "Type": "trice", "Strg": "rd: 123.456\t\t%g\t\t%%g Exponent as needed, necessary digits only\\n" }, - "14253": { - "Type": "TRICE", + "13324": { + "Type": "trice", "Strg": "sig:Double (indent, precision, scientific notation)\\n" }, - "14254": { - "Type": "TRICE64", + "13325": { + "Type": "trice64", "Strg": "rd: 1.234560e+02\t\t%e \t%%e Scientific notation\\n" }, - "14255": { - "Type": "TRICE64", + "13326": { + "Type": "trice64", "Strg": "rd: 123.456000\t\t%f \t%%f Decimal point, no exponent\\n" }, - "14256": { - "Type": "TRICE64", + "13327": { + "Type": "trice64", "Strg": "rd: 123.46\t\t\t%.2f \t%%.2f Default width, precision 2\\n" }, - "14257": { - "Type": "TRICE64", + "13328": { + "Type": "trice64", "Strg": "rd: ␣␣123.46\t\t%8.2f \t%%8.2f Width 8, precision 2\\n" }, - "14258": { - "Type": "TRICE64", + "13329": { + "Type": "trice64", "Strg": "rd: 123.456\t\t%g\t\t%%g Exponent as needed, necessary digits only\\n" }, - "14259": { - "Type": "TRICE", + "13330": { + "Type": "trice", "Strg": "sig:String or byte slice (quote, indent, hex)\\n" }, - "14260": { - "Type": "TRICE_S", + "13331": { + "Type": "triceS", "Strg": "rd: café \t\t\t%s\t\tPlain string\\n" }, - "14261": { - "Type": "TRICE_S", + "13332": { + "Type": "triceS", "Strg": "rd: ␣␣café \t\t%6s \t\tWidth 6, right justify\\n" }, - "14262": { - "Type": "TRICE_S", + "13333": { + "Type": "triceS", "Strg": "rd: café␣␣ \t\t%-6s \t\tWidth 6, left justify\\n" }, - "14263": { - "Type": "TRICE_S", + "13334": { + "Type": "triceS", "Strg": "rd: \\\"café\\\" \t\t%q\t\tQuoted string\\n" }, - "14264": { - "Type": "TRICE_S", + "13335": { + "Type": "triceS", "Strg": "rd: 636166c3a9 \t\t%x\tHex dump of byte values\\n" }, - "14265": { - "Type": "TRICE_S", + "13336": { + "Type": "triceS", "Strg": "rd: 63 61 66 c3 a9 \t% x\tHex dump with spaces\\n" }, - "14266": { + "13337": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14267": { + "13338": { "Type": "TRice", "Strg": "info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\\n" }, - "14268": { + "13339": { "Type": "Trice", "Strg": "info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\\n" }, - "14269": { + "13340": { "Type": "trice", "Strg": "info:12 default bit width values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\\n" }, - "14270": { + "13341": { "Type": "trice16", "Strg": "att: line %u\\n" }, - "14271": { - "Type": "TRICE", + "13342": { + "Type": "trice", "Strg": "sig:Runtime generated strings\\n" }, - "14272": { + "13343": { "Type": "TRICE32", "Strg": "dbg:len=%u:" }, - "14273": { + "13344": { "Type": "TRICE_S", "Strg": "sig:%s\\n" }, - "14274": { + "13345": { "Type": "TRICE32", "Strg": "dbg:len=%u:" }, - "14275": { + "13346": { "Type": "TRICE_S", "Strg": "sig:%s\\n" }, - "14276": { + "13347": { "Type": "TRICE32", "Strg": "dbg:len=%u: " }, - "14277": { + "13348": { "Type": "TRICE_S", "Strg": "sig:%s\\n" }, - "14278": { + "13349": { "Type": "TRICE32", "Strg": "dbg:len=%u: " }, - "14279": { + "13350": { "Type": "TRICE_S", "Strg": "sig:%s\\n" }, - "14280": { + "13351": { "Type": "TRICE32", "Strg": "dbg:len=%u: " }, - "14281": { + "13352": { "Type": "TRICE_S", "Strg": "sig:%s\\n" }, - "14282": { - "Type": "TRICE", + "13353": { + "Type": "trice", "Strg": "rd:%E (%%E)\\n" }, - "14283": { - "Type": "TRICE", + "13354": { + "Type": "trice", "Strg": "rd:%F (%%F)\\n" }, - "14284": { - "Type": "TRICE", + "13355": { + "Type": "trice", "Strg": "rd:%G (%%G)\\n" }, - "14285": { - "Type": "TRICE64", + "13356": { + "Type": "trice64", "Strg": "rd:%E (%%E)\\n" }, - "14286": { - "Type": "TRICE64", + "13357": { + "Type": "trice64", "Strg": "rd:%F (%%F)\\n" }, - "14287": { - "Type": "TRICE64", + "13358": { + "Type": "trice64", "Strg": "rd:%G (%%G)\\n" }, - "14288": { - "Type": "TRICE", + "13359": { + "Type": "trice", "Strg": "rd:%e (%%e)\\n" }, - "14289": { - "Type": "TRICE", + "13360": { + "Type": "trice", "Strg": "rd:%f (%%f)\\n" }, - "14290": { - "Type": "TRICE", + "13361": { + "Type": "trice", "Strg": "rd:%g (%%g)\\n" }, - "14291": { - "Type": "TRICE64", + "13362": { + "Type": "trice64", "Strg": "rd:%e (%%e)\\n" }, - "14292": { - "Type": "TRICE64", + "13363": { + "Type": "trice64", "Strg": "rd:%f (%%f)\\n" }, - "14293": { - "Type": "TRICE64", + "13364": { + "Type": "trice64", "Strg": "rd:%g (%%g)\\n" }, - "14294": { - "Type": "TRICE32", + "13365": { + "Type": "trice32", "Strg": "msg:%u (%%u)\\n" }, - "14295": { - "Type": "TRICE32", + "13366": { + "Type": "trice32", "Strg": "msg:%b (%%b)\\n" }, - "14296": { - "Type": "TRICE32", + "13367": { + "Type": "trice32", "Strg": "msg:%o (%%o)\\n" }, - "14297": { - "Type": "TRICE32", + "13368": { + "Type": "trice32", "Strg": "msg:%O (%%O)\\n" }, - "14298": { - "Type": "TRICE32", + "13369": { + "Type": "trice32", "Strg": "msg:%X (%%X)\\n" }, - "14299": { - "Type": "TRICE32", + "13370": { + "Type": "trice32", "Strg": "msg:%x (%%x)\\n" }, - "14300": { - "Type": "TRICE32", + "13371": { + "Type": "trice32", "Strg": "msg:%d (%%d)\\n" }, - "14301": { - "Type": "TRICE64", + "13372": { + "Type": "trice64", "Strg": "msg:%u (%%u)\\n" }, - "14302": { - "Type": "TRICE64", + "13373": { + "Type": "trice64", "Strg": "msg:%b (%%b)\\n" }, - "14303": { - "Type": "TRICE64", + "13374": { + "Type": "trice64", "Strg": "msg:%o (%%o)\\n" }, - "14304": { - "Type": "TRICE64", + "13375": { + "Type": "trice64", "Strg": "msg:%O (%%O)\\n" }, - "14305": { - "Type": "TRICE64", + "13376": { + "Type": "trice64", "Strg": "msg:%X (%%X)\\n" }, - "14306": { - "Type": "TRICE64", + "13377": { + "Type": "trice64", "Strg": "msg:%x (%%x)\\n" }, - "14307": { + "13378": { "Type": "TRice", "Strg": "value=%d\\n" }, - "14308": { + "13379": { "Type": "Trice", "Strg": "value=%d\\n" }, - "14309": { + "13380": { "Type": "trice", "Strg": "value=%d\\n" }, - "14310": { + "13381": { "Type": "TRice8", "Strg": "value=%d\\n" }, - "14311": { + "13382": { "Type": "Trice8", "Strg": "value=%d\\n" }, - "14312": { + "13383": { "Type": "trice8", "Strg": "value=%d\\n" }, - "14313": { + "13384": { "Type": "TRice16", "Strg": "value=%d\\n" }, - "14314": { + "13385": { "Type": "Trice16", "Strg": "value=%d\\n" }, - "14315": { + "13386": { "Type": "trice16", "Strg": "value=%d\\n" }, - "14316": { + "13387": { "Type": "TRice32", "Strg": "value=%d\\n" }, - "14317": { + "13388": { "Type": "Trice32", "Strg": "value=%d\\n" }, - "14318": { + "13389": { "Type": "trice32", "Strg": "value=%d\\n" }, - "14319": { + "13390": { "Type": "TRice64", "Strg": "value=%d\\n" }, - "14320": { + "13391": { "Type": "Trice64", "Strg": "value=%d\\n" }, - "14321": { + "13392": { "Type": "trice64", "Strg": "value=%d\\n" }, - "14322": { + "13393": { "Type": "TRice_1", "Strg": "value=%d\\n" }, - "14323": { + "13394": { "Type": "Trice_1", "Strg": "value=%d\\n" }, - "14324": { + "13395": { "Type": "trice_1", "Strg": "value=%d\\n" }, - "14325": { + "13396": { "Type": "TRice8_1", "Strg": "value=%d\\n" }, - "14326": { + "13397": { "Type": "Trice8_1", "Strg": "value=%d\\n" }, - "14327": { + "13398": { "Type": "trice8_1", "Strg": "value=%d\\n" }, - "14328": { + "13399": { "Type": "TRice16_1", "Strg": "value=%d\\n" }, - "14329": { + "13400": { "Type": "Trice16_1", "Strg": "value=%d\\n" }, - "14330": { + "13401": { "Type": "trice16_1", "Strg": "value=%d\\n" }, - "14331": { + "13402": { "Type": "TRice32_1", "Strg": "value=%d\\n" }, - "14332": { + "13403": { "Type": "Trice32_1", "Strg": "value=%d\\n" }, - "14333": { + "13404": { "Type": "trice32_1", "Strg": "value=%d\\n" }, - "14334": { + "13405": { "Type": "TRice64_1", "Strg": "value=%d\\n" }, - "14335": { + "13406": { "Type": "Trice64_1", "Strg": "value=%d\\n" }, - "14336": { + "13407": { "Type": "trice64_1", "Strg": "value=%d\\n" }, - "14337": { + "13408": { "Type": "TRice", "Strg": "no value" }, - "14338": { + "13409": { "Type": "Trice", "Strg": "no value" }, - "14339": { + "13410": { "Type": "trice", "Strg": "no value" }, - "14340": { + "13411": { "Type": "TRice8", "Strg": "no value" }, - "14341": { + "13412": { "Type": "Trice8", "Strg": "no value" }, - "14342": { + "13413": { "Type": "trice8", "Strg": "no value" }, - "14343": { + "13414": { "Type": "TRice16", "Strg": "no value" }, - "14344": { + "13415": { "Type": "Trice16", "Strg": "no value" }, - "14345": { + "13416": { "Type": "trice16", "Strg": "no value" }, - "14346": { + "13417": { "Type": "TRice32", "Strg": "no value" }, - "14347": { + "13418": { "Type": "Trice32", "Strg": "no value" }, - "14348": { + "13419": { "Type": "trice32", "Strg": "no value" }, - "14349": { + "13420": { "Type": "TRice64", "Strg": "no value" }, - "14350": { + "13421": { "Type": "Trice64", "Strg": "no value" }, - "14351": { + "13422": { "Type": "trice64", "Strg": "no value" }, - "14352": { + "13423": { "Type": "TRice_0", "Strg": "no value" }, - "14353": { + "13424": { "Type": "Trice_0", "Strg": "no value" }, - "14354": { + "13425": { "Type": "trice_0", "Strg": "no value" }, - "14355": { + "13426": { "Type": "TRice8_0", "Strg": "no value" }, - "14356": { + "13427": { "Type": "Trice8_0", "Strg": "no value" }, - "14357": { + "13428": { "Type": "trice8_0", "Strg": "no value" }, - "14358": { + "13429": { "Type": "TRice16_0", "Strg": "no value" }, - "14359": { + "13430": { "Type": "Trice16_0", "Strg": "no value" }, - "14360": { + "13431": { "Type": "trice16_0", "Strg": "no value" }, - "14361": { + "13432": { "Type": "TRice32_0", "Strg": "no value" }, - "14362": { + "13433": { "Type": "Trice32_0", "Strg": "no value" }, - "14363": { + "13434": { "Type": "trice32_0", "Strg": "no value" }, - "14364": { + "13435": { "Type": "TRice64_0", "Strg": "no value" }, - "14365": { + "13436": { "Type": "Trice64_0", "Strg": "no value" }, - "14366": { + "13437": { "Type": "trice64_0", "Strg": "no value" }, - "14367": { + "13438": { "Type": "TRice0", "Strg": "no value" }, - "14368": { + "13439": { "Type": "Trice0", "Strg": "no value" }, - "14369": { + "13440": { "Type": "trice0", "Strg": "no value" }, - "14370": { + "13441": { "Type": "TRice", "Strg": "no value" }, - "14371": { + "13442": { "Type": "Trice", "Strg": "no value" }, - "14372": { + "13443": { "Type": "trice", "Strg": "no value" }, - "14373": { + "13444": { "Type": "TRice", "Strg": "info:This is a message with one value %d and a 32-bit stamp.\\n" }, - "14374": { + "13445": { "Type": "Trice", "Strg": "info:This is a message with one value %d and a 16-bit stamp.\\n" }, - "14375": { + "13446": { "Type": "trice", "Strg": "info:This is a message with one value %d and without stamp.\\n" }, - "14376": { + "13447": { "Type": "TRICE", "Strg": "info:This is a message without values and a 32-bit stamp.\\n" }, - "14377": { + "13448": { "Type": "TRICE", "Strg": "info:This is a message without values and a 16-bit stamp.\\n" }, - "14378": { + "13449": { "Type": "TRICE", "Strg": "info:This is a message without values and without stamp.\\n" }, - "14379": { + "13450": { "Type": "TRICE", "Strg": "info:This is a message with one value %d and a 32-bit stamp.\\n" }, - "14380": { + "13451": { "Type": "TRICE", "Strg": "info:This is a message with one value %d and a 16-bit stamp.\\n" }, - "14381": { + "13452": { "Type": "TRICE", "Strg": "info:This is a message with one value %d and without stamp.\\n" }, - "14382": { + "13453": { "Type": "TRICE", "Strg": "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\\n" }, - "14383": { + "13454": { "Type": "TRICE", "Strg": "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\\n" }, - "14384": { + "13455": { "Type": "TRICE", "Strg": "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\\n" }, - "14385": { + "13456": { "Type": "TRICE32", "Strg": "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 32-bit stamp.\\n" }, - "14386": { + "13457": { "Type": "TRICE32", "Strg": "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and a 16-bit stamp.\\n" }, - "14387": { + "13458": { "Type": "TRICE32", "Strg": "info:12 values %d, %u, %x, %X, %t, %e, %f, %g, %E, %F, %G, 0xb%08b and without stamp.\\n" }, - "14388": { + "13459": { "Type": "TRICE8", "Strg": "msg:value=%u\\n" }, - "14389": { + "13460": { "Type": "TRICE8_1", "Strg": "msg:value=%u\\n" }, - "14390": { + "13461": { "Type": "TRICE8", "Strg": "msg:value=%u\\n" }, - "14391": { + "13462": { "Type": "TRICE8_1", "Strg": "msg:value=%u\\n" }, - "14392": { + "13463": { "Type": "TRICE8", "Strg": "msg:value=%u\\n" }, - "14393": { + "13464": { "Type": "TRICE8_1", "Strg": "msg:value=%u\\n" }, - "14394": { + "13465": { "Type": "trice8", "Strg": "msg:value=%u\\n" }, - "14395": { + "13466": { "Type": "trice8_1", "Strg": "msg:value=%u\\n" }, - "14396": { + "13467": { "Type": "Trice8", "Strg": "msg:value=%u\\n" }, - "14397": { + "13468": { "Type": "Trice8_1", "Strg": "msg:value=%u\\n" }, - "14398": { + "13469": { "Type": "TRice8", "Strg": "msg:value=%u\\n" }, - "14399": { + "13470": { "Type": "TRice8_1", "Strg": "msg:value=%u\\n" }, - "14400": { + "13471": { "Type": "TRICE16", "Strg": "msg:value=%u\\n" }, - "14401": { + "13472": { "Type": "TRICE16_1", "Strg": "msg:value=%u\\n" }, - "14402": { + "13473": { "Type": "TRICE16", "Strg": "msg:value=%u\\n" }, - "14403": { + "13474": { "Type": "TRICE16_1", "Strg": "msg:value=%u\\n" }, - "14404": { + "13475": { "Type": "TRICE16", "Strg": "msg:value=%u\\n" }, - "14405": { + "13476": { "Type": "TRICE16_1", "Strg": "msg:value=%u\\n" }, - "14406": { + "13477": { "Type": "trice16", "Strg": "msg:value=%u\\n" }, - "14407": { + "13478": { "Type": "trice16_1", "Strg": "msg:value=%u\\n" }, - "14408": { + "13479": { "Type": "Trice16", "Strg": "msg:value=%u\\n" }, - "14409": { + "13480": { "Type": "Trice16_1", "Strg": "msg:value=%u\\n" }, - "14410": { + "13481": { "Type": "TRice16", "Strg": "msg:value=%u\\n" }, - "14411": { + "13482": { "Type": "TRice16_1", "Strg": "msg:value=%u\\n" }, - "14412": { + "13483": { "Type": "TRICE32", "Strg": "msg:value=%u\\n" }, - "14413": { + "13484": { "Type": "TRICE32_1", "Strg": "msg:value=%u\\n" }, - "14414": { + "13485": { "Type": "TRICE32", "Strg": "msg:value=%u\\n" }, - "14415": { + "13486": { "Type": "TRICE32_1", "Strg": "msg:value=%u\\n" }, - "14416": { + "13487": { "Type": "TRICE32", "Strg": "msg:value=%u\\n" }, - "14417": { + "13488": { "Type": "TRICE32_1", "Strg": "msg:value=%u\\n" }, - "14418": { + "13489": { "Type": "trice32", "Strg": "msg:value=%u\\n" }, - "14419": { + "13490": { "Type": "trice32_1", "Strg": "msg:value=%u\\n" }, - "14420": { + "13491": { "Type": "Trice32", "Strg": "msg:value=%u\\n" }, - "14421": { + "13492": { "Type": "Trice32_1", "Strg": "msg:value=%u\\n" }, - "14422": { + "13493": { "Type": "TRice32", "Strg": "msg:value=%u\\n" }, - "14423": { + "13494": { "Type": "TRice32_1", "Strg": "msg:value=%u\\n" }, - "14424": { + "13495": { "Type": "TRICE64", "Strg": "msg:value=%u\\n" }, - "14425": { + "13496": { "Type": "TRICE64_1", "Strg": "msg:value=%u\\n" }, - "14426": { + "13497": { "Type": "TRICE64", "Strg": "msg:value=%u\\n" }, - "14427": { + "13498": { "Type": "TRICE64_1", "Strg": "msg:value=%u\\n" }, - "14428": { + "13499": { "Type": "TRICE64", "Strg": "msg:value=%u\\n" }, - "14429": { + "13500": { "Type": "TRICE64_1", "Strg": "msg:value=%u\\n" }, - "14430": { + "13501": { "Type": "trice64", "Strg": "msg:value=%u\\n" }, - "14431": { + "13502": { "Type": "trice64_1", "Strg": "msg:value=%u\\n" }, - "14432": { + "13503": { "Type": "Trice64", "Strg": "msg:value=%u\\n" }, - "14433": { + "13504": { "Type": "Trice64_1", "Strg": "msg:value=%u\\n" }, - "14434": { + "13505": { "Type": "TRice64", "Strg": "msg:value=%u\\n" }, - "14435": { + "13506": { "Type": "TRice64_1", "Strg": "msg:value=%u\\n" }, - "14436": { + "13507": { "Type": "TRice8", "Strg": "msg:value=%d\\n" }, - "14437": { + "13508": { "Type": "Trice8", "Strg": "msg:value=%d, %d\\n" }, - "14438": { + "13509": { "Type": "trice8", "Strg": "msg:value=%d, %d, %d\\n" }, - "14439": { + "13510": { "Type": "TRice8", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14440": { + "13511": { "Type": "Trice8", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14441": { + "13512": { "Type": "trice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14442": { + "13513": { "Type": "TRice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14443": { + "13514": { "Type": "Trice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14444": { + "13515": { "Type": "trice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14445": { + "13516": { "Type": "TRice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14446": { + "13517": { "Type": "Trice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14447": { + "13518": { "Type": "trice8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14448": { + "13519": { "Type": "TRice16", "Strg": "msg:value=%d\\n" }, - "14449": { + "13520": { "Type": "Trice16", "Strg": "msg:value=%d, %d\\n" }, - "14450": { + "13521": { "Type": "trice16", "Strg": "msg:value=%d, %d, %d\\n" }, - "14451": { + "13522": { "Type": "TRice16", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14452": { + "13523": { "Type": "Trice16", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14453": { + "13524": { "Type": "trice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14454": { + "13525": { "Type": "TRice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14455": { + "13526": { "Type": "Trice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14456": { + "13527": { "Type": "trice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14457": { + "13528": { "Type": "TRice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14458": { + "13529": { "Type": "Trice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14459": { + "13530": { "Type": "trice16", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14460": { + "13531": { "Type": "TRice32", "Strg": "msg:value=%d\\n" }, - "14461": { + "13532": { "Type": "Trice32", "Strg": "msg:value=%d, %d\\n" }, - "14462": { + "13533": { "Type": "trice32", "Strg": "msg:value=%d, %d, %d\\n" }, - "14463": { + "13534": { "Type": "TRice32", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14464": { + "13535": { "Type": "Trice32", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14465": { + "13536": { "Type": "trice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14466": { + "13537": { "Type": "TRice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14467": { + "13538": { "Type": "Trice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14468": { + "13539": { "Type": "trice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14469": { + "13540": { "Type": "TRice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14470": { + "13541": { "Type": "Trice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14471": { + "13542": { "Type": "trice32", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14472": { + "13543": { "Type": "TRice64", "Strg": "msg:value=%d\\n" }, - "14473": { + "13544": { "Type": "Trice64", "Strg": "msg:value=%d, %d\\n" }, - "14474": { + "13545": { "Type": "trice64", "Strg": "msg:value=%d, %d, %d\\n" }, - "14475": { + "13546": { "Type": "TRice64", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14476": { + "13547": { "Type": "Trice64", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14477": { + "13548": { "Type": "trice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14478": { + "13549": { "Type": "TRice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14479": { + "13550": { "Type": "Trice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14480": { + "13551": { "Type": "trice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14481": { + "13552": { "Type": "TRice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14482": { + "13553": { "Type": "Trice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14483": { + "13554": { "Type": "trice64", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14484": { + "13555": { "Type": "TRice8_1", "Strg": "msg:value=%d\\n" }, - "14485": { + "13556": { "Type": "Trice8_2", "Strg": "msg:value=%d, %d\\n" }, - "14486": { + "13557": { "Type": "trice8_3", "Strg": "msg:value=%d, %d, %d\\n" }, - "14487": { + "13558": { "Type": "TRice8_4", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14488": { + "13559": { "Type": "Trice8_5", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14489": { + "13560": { "Type": "trice8_6", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14490": { + "13561": { "Type": "TRice8_7", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14491": { + "13562": { "Type": "Trice8_8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14492": { + "13563": { "Type": "trice8_9", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14493": { + "13564": { "Type": "TRice8_10", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14494": { + "13565": { "Type": "Trice8_11", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14495": { + "13566": { "Type": "trice8_12", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14496": { + "13567": { "Type": "TRice16_1", "Strg": "msg:value=%d\\n" }, - "14497": { + "13568": { "Type": "Trice16_2", "Strg": "msg:value=%d, %d\\n" }, - "14498": { + "13569": { "Type": "trice16_3", "Strg": "msg:value=%d, %d, %d\\n" }, - "14499": { + "13570": { "Type": "TRice16_4", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14500": { + "13571": { "Type": "Trice16_5", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14501": { + "13572": { "Type": "trice16_6", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14502": { + "13573": { "Type": "TRice16_7", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14503": { + "13574": { "Type": "Trice16_8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14504": { + "13575": { "Type": "trice16_9", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14505": { + "13576": { "Type": "TRice16_10", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14506": { + "13577": { "Type": "Trice16_11", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14507": { + "13578": { "Type": "trice16_12", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14508": { + "13579": { "Type": "TRice32_1", "Strg": "msg:value=%d\\n" }, - "14509": { + "13580": { "Type": "Trice32_2", "Strg": "msg:value=%d, %d\\n" }, - "14510": { + "13581": { "Type": "trice32_3", "Strg": "msg:value=%d, %d, %d\\n" }, - "14511": { + "13582": { "Type": "TRice32_4", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14512": { + "13583": { "Type": "Trice32_5", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14513": { + "13584": { "Type": "trice32_6", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14514": { + "13585": { "Type": "TRice32_7", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14515": { + "13586": { "Type": "Trice32_8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14516": { + "13587": { "Type": "trice32_9", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14517": { + "13588": { "Type": "TRice32_10", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14518": { + "13589": { "Type": "Trice32_11", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14519": { + "13590": { "Type": "trice32_12", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14520": { + "13591": { "Type": "TRice64_1", "Strg": "msg:value=%d\\n" }, - "14521": { + "13592": { "Type": "Trice64_2", "Strg": "msg:value=%d, %d\\n" }, - "14522": { + "13593": { "Type": "trice64_3", "Strg": "msg:value=%d, %d, %d\\n" }, - "14523": { + "13594": { "Type": "TRice64_4", "Strg": "msg:value=%d, %d, %d, %d\\n" }, - "14524": { + "13595": { "Type": "Trice64_5", "Strg": "msg:value=%d, %d, %d, %d, %d\\n" }, - "14525": { + "13596": { "Type": "trice64_6", "Strg": "msg:value=%d, %d, %d, %d, %d, %d\\n" }, - "14526": { + "13597": { "Type": "TRice64_7", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d\\n" }, - "14527": { + "13598": { "Type": "Trice64_8", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14528": { + "13599": { "Type": "trice64_9", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14529": { + "13600": { "Type": "TRice64_10", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14530": { + "13601": { "Type": "Trice64_11", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14531": { + "13602": { "Type": "trice64_12", "Strg": "msg:value=%d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14532": { + "13603": { "Type": "trice8", "Strg": "value=%d\\n" }, - "14533": { + "13604": { "Type": "Trice8", "Strg": "value=%d\\n" }, - "14534": { + "13605": { "Type": "TRice8", "Strg": "value=%d\\n" }, - "14535": { + "13606": { "Type": "trice8_1", "Strg": "value=%d\\n" }, - "14536": { + "13607": { "Type": "Trice8_1", "Strg": "value=%d\\n" }, - "14537": { + "13608": { "Type": "TRice8_1", "Strg": "value=%d\\n" }, - "14538": { + "13609": { "Type": "trice16", "Strg": "value=%d\\n" }, - "14539": { + "13610": { "Type": "Trice16", "Strg": "value=%d\\n" }, - "14540": { + "13611": { "Type": "TRice16", "Strg": "value=%d\\n" }, - "14541": { + "13612": { "Type": "trice16_1", "Strg": "value=%d\\n" }, - "14542": { + "13613": { "Type": "Trice16_1", "Strg": "value=%d\\n" }, - "14543": { + "13614": { "Type": "TRice16_1", "Strg": "value=%d\\n" }, - "14544": { + "13615": { "Type": "trice32", "Strg": "value=%d\\n" }, - "14545": { + "13616": { "Type": "Trice32", "Strg": "value=%d\\n" }, - "14546": { + "13617": { "Type": "TRice32", "Strg": "value=%d\\n" }, - "14547": { + "13618": { "Type": "trice32_1", "Strg": "value=%d\\n" }, - "14548": { + "13619": { "Type": "Trice32_1", "Strg": "value=%d\\n" }, - "14549": { + "13620": { "Type": "TRice32_1", "Strg": "value=%d\\n" }, - "14550": { + "13621": { "Type": "trice64", "Strg": "value=%d\\n" }, - "14551": { + "13622": { "Type": "Trice64", "Strg": "value=%d\\n" }, - "14552": { + "13623": { "Type": "TRice64", "Strg": "value=%d\\n" }, - "14553": { + "13624": { "Type": "trice64_1", "Strg": "value=%d\\n" }, - "14554": { + "13625": { "Type": "Trice64_1", "Strg": "value=%d\\n" }, - "14555": { + "13626": { "Type": "TRice64_1", "Strg": "value=%d\\n" }, - "14556": { + "13627": { "Type": "TRICE", "Strg": "value=%d\\n" }, - "14557": { + "13628": { "Type": "TRICE", "Strg": "value=%d\\n" }, - "14558": { + "13629": { "Type": "TRICE", "Strg": "value=%d\\n" }, - "14559": { + "13630": { "Type": "TRICE", "Strg": "value=%d\\n" }, - "14560": { + "13631": { "Type": "TRICE8", "Strg": "value=%d\\n" }, - "14561": { + "13632": { "Type": "TRICE8_1", "Strg": "value=%d\\n" }, - "14562": { + "13633": { "Type": "trice8", "Strg": "value=%d\\n" }, - "14563": { + "13634": { "Type": "trice8_1", "Strg": "value=%d\\n" }, - "14564": { + "13635": { "Type": "TRICE8", "Strg": "value=%d\\n" }, - "14565": { + "13636": { "Type": "TRICE8_1", "Strg": "value=%d\\n" }, - "14566": { + "13637": { "Type": "Trice8", "Strg": "value=%d\\n" }, - "14567": { + "13638": { "Type": "Trice8_1", "Strg": "value=%d\\n" }, - "14568": { + "13639": { "Type": "TRICE8", "Strg": "value=%d\\n" }, - "14569": { + "13640": { "Type": "TRICE8_1", "Strg": "value=%d\\n" }, - "14570": { + "13641": { "Type": "TRice8", "Strg": "value=%d\\n" }, - "14571": { + "13642": { "Type": "TRice8_1", "Strg": "value=%d\\n" }, - "14572": { + "13643": { "Type": "TRICE8", "Strg": "value=%d\\n" }, - "14573": { + "13644": { "Type": "TRICE8_1", "Strg": "value=%d\\n" }, - "14574": { + "13645": { "Type": "TRICE", "Strg": "FATAL:magenta+b:red\\n" }, - "14575": { + "13646": { "Type": "TRICE", "Strg": "CRITICAL:red+i:default+h\\n" }, - "14576": { + "13647": { "Type": "TRICE", "Strg": "EMERGENCY:red+i:blue\\n" }, - "14577": { + "13648": { "Type": "TRICE", "Strg": "ERROR:11:red\\n" }, - "14578": { + "13649": { "Type": "TRICE", "Strg": "WARNING:11+i:red\\n" }, - "14579": { + "13650": { "Type": "TRICE", "Strg": "ATTENTION:11:green\\n" }, - "14580": { + "13651": { "Type": "TRICE", "Strg": "INFO:cyan+b:default+h\\n" }, - "14581": { + "13652": { "Type": "TRICE", "Strg": "DEBUG:130+i\\n" }, - "14582": { + "13653": { "Type": "TRICE", "Strg": "TRACE:default+i:default+h\\n" }, - "14583": { + "13654": { "Type": "TRICE", "Strg": "TIME:blue+i:blue+h\\n" }, - "14584": { + "13655": { "Type": "TRICE", "Strg": "MESSAGE:green+h:black\\n" }, - "14585": { + "13656": { "Type": "TRICE", "Strg": "READ:black+i:yellow+h\\n" }, - "14586": { + "13657": { "Type": "TRICE", "Strg": "WRITE:black+u:yellow+h\\n" }, - "14587": { + "13658": { "Type": "TRICE", "Strg": "RECEIVE:black+h:black\\n" }, - "14588": { + "13659": { "Type": "TRICE", "Strg": "TRANSMIT:black:black+h\\n" }, - "14589": { + "13660": { "Type": "TRICE", "Strg": "DIAG:yellow+i:default+h\\n" }, - "14590": { + "13661": { "Type": "TRICE", "Strg": "INTERRUPT:magenta+i:default+h\\n" }, - "14591": { + "13662": { "Type": "TRICE", "Strg": "SIGNAL:118+i\\n" }, - "14592": { + "13663": { "Type": "TRICE", "Strg": "TEST:yellow+h:black\\n" }, - "14593": { + "13664": { "Type": "TRICE", "Strg": "DEFAULT:off\\n" }, - "14594": { + "13665": { "Type": "TRICE", "Strg": "NOTICE:blue:white+h\\n" }, - "14595": { + "13666": { "Type": "TRICE", "Strg": "ALERT:magenta:magenta+h\\n" }, - "14596": { + "13667": { "Type": "TRICE", "Strg": "ASSERT:yellow+i:blue\\n" }, - "14597": { + "13668": { "Type": "TRICE", "Strg": "ALARM:red+i:white+h\\n" }, - "14598": { - "Type": "TRICE", - "Strg": "CYCLE:blue+i:default+h\\n" - }, - "14599": { + "13669": { "Type": "TRICE", "Strg": "VERBOSE:blue:default\\n" }, - "14600": { + "13670": { "Type": "TRICE", "Strg": "fatal:magenta+b:red\\n" }, - "14601": { + "13671": { "Type": "TRICE", "Strg": "critical:red+i:default+h\\n" }, - "14602": { + "13672": { "Type": "TRICE", "Strg": "emergency:red+i:blue\\n" }, - "14603": { + "13673": { "Type": "TRICE", "Strg": "error:11:red\\n" }, - "14604": { + "13674": { "Type": "TRICE", "Strg": "warning:11+i:red\\n" }, - "14605": { + "13675": { "Type": "TRICE", "Strg": "attention:11:green\\n" }, - "14606": { + "13676": { "Type": "TRICE", "Strg": "info:cyan+b:default+h\\n" }, - "14607": { + "13677": { "Type": "TRICE", "Strg": "debug:130+i\\n" }, - "14608": { + "13678": { "Type": "TRICE", "Strg": "trace:default+i:default+h\\n" }, - "14609": { + "13679": { "Type": "TRICE", "Strg": "time:blue+i:blue+h\\n" }, - "14610": { + "13680": { "Type": "TRICE", "Strg": "message:green+h:black\\n" }, - "14611": { + "13681": { "Type": "TRICE", "Strg": "read:black+i:yellow+h\\n" }, - "14612": { + "13682": { "Type": "TRICE", "Strg": "write:black+u:yellow+h\\n" }, - "14613": { + "13683": { "Type": "TRICE", "Strg": "receive:black+h:black\\n" }, - "14614": { + "13684": { "Type": "TRICE", "Strg": "transmit:black:black+h\\n" }, - "14615": { + "13685": { "Type": "TRICE", "Strg": "diag:yellow+i:default+h\\n" }, - "14616": { + "13686": { "Type": "TRICE", "Strg": "interrupt:magenta+i:default+h\\n" }, - "14617": { + "13687": { "Type": "TRICE", "Strg": "signal:118+i\\n" }, - "14618": { + "13688": { "Type": "TRICE", "Strg": "test:yellow+h:black\\n" }, - "14619": { + "13689": { "Type": "TRICE", "Strg": "default:off\\n" }, - "14620": { + "13690": { "Type": "TRICE", "Strg": "notice:blue:white+h\\n" }, - "14621": { + "13691": { "Type": "TRICE", "Strg": "alert:magenta:magenta+h\\n" }, - "14622": { + "13692": { "Type": "TRICE", "Strg": "assert:yellow+i:blue\\n" }, - "14623": { + "13693": { "Type": "TRICE", "Strg": "alarm:red+i:white+h\\n" }, - "14624": { - "Type": "TRICE", - "Strg": "cycle:blue+i:default+h\\n" - }, - "14625": { + "13694": { "Type": "TRICE", "Strg": "verbose:blue:default\\n" }, - "14626": { + "13695": { "Type": "trice", "Strg": "FATAL:magenta+b:red\\n" }, - "14627": { + "13696": { "Type": "trice", "Strg": "CRITICAL:red+i:default+h\\n" }, - "14628": { + "13697": { "Type": "trice", "Strg": "EMERGENCY:red+i:blue\\n" }, - "14629": { + "13698": { "Type": "trice", "Strg": "ERROR:11:red\\n" }, - "14630": { + "13699": { "Type": "trice", "Strg": "WARNING:11+i:red\\n" }, - "14631": { + "13700": { "Type": "trice", "Strg": "ATTENTION:11:green\\n" }, - "14632": { + "13701": { "Type": "trice", "Strg": "INFO:cyan+b:default+h\\n" }, - "14633": { + "13702": { "Type": "trice", "Strg": "DEBUG:130+i\\n" }, - "14634": { + "13703": { "Type": "trice", "Strg": "TRACE:default+i:default+h\\n" }, - "14635": { + "13704": { "Type": "trice", "Strg": "TIME:blue+i:blue+h\\n" }, - "14636": { + "13705": { "Type": "trice", "Strg": "MESSAGE:green+h:black\\n" }, - "14637": { + "13706": { "Type": "trice", "Strg": "READ:black+i:yellow+h\\n" }, - "14638": { + "13707": { "Type": "trice", "Strg": "WRITE:black+u:yellow+h\\n" }, - "14639": { + "13708": { "Type": "trice", "Strg": "RECEIVE:black+h:black\\n" }, - "14640": { + "13709": { "Type": "trice", "Strg": "TRANSMIT:black:black+h\\n" }, - "14641": { + "13710": { "Type": "trice", "Strg": "DIAG:yellow+i:default+h\\n" }, - "14642": { + "13711": { "Type": "trice", "Strg": "INTERRUPT:magenta+i:default+h\\n" }, - "14643": { + "13712": { "Type": "trice", "Strg": "SIGNAL:118+i\\n" }, - "14644": { + "13713": { "Type": "trice", "Strg": "TEST:yellow+h:black\\n" }, - "14645": { + "13714": { "Type": "trice", "Strg": "DEFAULT:off\\n" }, - "14646": { + "13715": { "Type": "trice", "Strg": "NOTICE:blue:white+h\\n" }, - "14647": { + "13716": { "Type": "trice", "Strg": "ALERT:magenta:magenta+h\\n" }, - "14648": { + "13717": { "Type": "trice", "Strg": "ASSERT:yellow+i:blue\\n" }, - "14649": { + "13718": { "Type": "trice", "Strg": "ALARM:red+i:white+h\\n" }, - "14650": { - "Type": "trice", - "Strg": "CYCLE:blue+i:default+h\\n" - }, - "14651": { + "13719": { "Type": "trice", "Strg": "VERBOSE:blue:default\\n" }, - "14652": { + "13720": { "Type": "trice", "Strg": "fatal:magenta+b:red\\n" }, - "14653": { + "13721": { "Type": "trice", "Strg": "critical:red+i:default+h\\n" }, - "14654": { + "13722": { "Type": "trice", "Strg": "emergency:red+i:blue\\n" }, - "14655": { + "13723": { "Type": "trice", "Strg": "error:11:red\\n" }, - "14656": { + "13724": { "Type": "trice", "Strg": "warning:11+i:red\\n" }, - "14657": { + "13725": { "Type": "trice", "Strg": "attention:11:green\\n" }, - "14658": { + "13726": { "Type": "trice", "Strg": "info:cyan+b:default+h\\n" }, - "14659": { + "13727": { "Type": "trice", "Strg": "debug:130+i\\n" }, - "14660": { + "13728": { "Type": "trice", "Strg": "trace:default+i:default+h\\n" }, - "14661": { + "13729": { "Type": "trice", "Strg": "time:blue+i:blue+h\\n" }, - "14662": { + "13730": { "Type": "trice", "Strg": "message:green+h:black\\n" }, - "14663": { + "13731": { "Type": "trice", "Strg": "read:black+i:yellow+h\\n" }, - "14664": { + "13732": { "Type": "trice", "Strg": "write:black+u:yellow+h\\n" }, - "14665": { + "13733": { "Type": "trice", "Strg": "receive:black+h:black\\n" }, - "14666": { + "13734": { "Type": "trice", "Strg": "transmit:black:black+h\\n" }, - "14667": { + "13735": { "Type": "trice", "Strg": "diag:yellow+i:default+h\\n" }, - "14668": { + "13736": { "Type": "trice", "Strg": "interrupt:magenta+i:default+h\\n" }, - "14669": { + "13737": { "Type": "trice", "Strg": "signal:118+i\\n" }, - "14670": { + "13738": { "Type": "trice", "Strg": "test:yellow+h:black\\n" }, - "14671": { + "13739": { "Type": "trice", "Strg": "default:off\\n" }, - "14672": { + "13740": { "Type": "trice", "Strg": "notice:blue:white+h\\n" }, - "14673": { + "13741": { "Type": "trice", "Strg": "alert:magenta:magenta+h\\n" }, - "14674": { + "13742": { "Type": "trice", "Strg": "assert:yellow+i:blue\\n" }, - "14675": { + "13743": { "Type": "trice", "Strg": "alarm:red+i:white+h\\n" }, - "14676": { - "Type": "trice", - "Strg": "cycle:blue+i:default+h\\n" - }, - "14677": { + "13744": { "Type": "trice", "Strg": "verbose:blue:default\\n" }, - "14678": { + "13745": { "Type": "TRICE", "Strg": "FATAL:magenta+b:red\\n" }, - "14679": { + "13746": { "Type": "TRICE", "Strg": "CRITICAL:red+i:default+h\\n" }, - "14680": { + "13747": { "Type": "TRICE", "Strg": "EMERGENCY:red+i:blue\\n" }, - "14681": { + "13748": { "Type": "TRICE", "Strg": "ERROR:11:red\\n" }, - "14682": { + "13749": { "Type": "TRICE", "Strg": "WARNING:11+i:red\\n" }, - "14683": { + "13750": { "Type": "TRICE", "Strg": "ATTENTION:11:green\\n" }, - "14684": { + "13751": { "Type": "TRICE", "Strg": "INFO:cyan+b:default+h\\n" }, - "14685": { + "13752": { "Type": "TRICE", "Strg": "DEBUG:130+i\\n" }, - "14686": { + "13753": { "Type": "TRICE", "Strg": "TRACE:default+i:default+h\\n" }, - "14687": { + "13754": { "Type": "TRICE", "Strg": "TIME:blue+i:blue+h\\n" }, - "14688": { + "13755": { "Type": "TRICE", "Strg": "MESSAGE:green+h:black\\n" }, - "14689": { + "13756": { "Type": "TRICE", "Strg": "READ:black+i:yellow+h\\n" }, - "14690": { + "13757": { "Type": "TRICE", "Strg": "WRITE:black+u:yellow+h\\n" }, - "14691": { + "13758": { "Type": "TRICE", "Strg": "RECEIVE:black+h:black\\n" }, - "14692": { + "13759": { "Type": "TRICE", "Strg": "TRANSMIT:black:black+h\\n" }, - "14693": { + "13760": { "Type": "TRICE", "Strg": "DIAG:yellow+i:default+h\\n" }, - "14694": { + "13761": { "Type": "TRICE", "Strg": "INTERRUPT:magenta+i:default+h\\n" }, - "14695": { + "13762": { "Type": "TRICE", "Strg": "SIGNAL:118+i\\n" }, - "14696": { + "13763": { "Type": "TRICE", "Strg": "TEST:yellow+h:black\\n" }, - "14697": { + "13764": { "Type": "TRICE", "Strg": "DEFAULT:off\\n" }, - "14698": { + "13765": { "Type": "TRICE", "Strg": "NOTICE:blue:white+h\\n" }, - "14699": { + "13766": { "Type": "TRICE", "Strg": "ALERT:magenta:magenta+h\\n" }, - "14700": { + "13767": { "Type": "TRICE", "Strg": "ASSERT:yellow+i:blue\\n" }, - "14701": { + "13768": { "Type": "TRICE", "Strg": "ALARM:red+i:white+h\\n" }, - "14702": { - "Type": "TRICE", - "Strg": "CYCLE:blue+i:default+h\\n" - }, - "14703": { + "13769": { "Type": "TRICE", "Strg": "VERBOSE:blue:default\\n" }, - "14704": { + "13770": { "Type": "TRICE", "Strg": "fatal:magenta+b:red\\n" }, - "14705": { + "13771": { "Type": "TRICE", "Strg": "critical:red+i:default+h\\n" }, - "14706": { + "13772": { "Type": "TRICE", "Strg": "emergency:red+i:blue\\n" }, - "14707": { + "13773": { "Type": "TRICE", "Strg": "error:11:red\\n" }, - "14708": { + "13774": { "Type": "TRICE", "Strg": "warning:11+i:red\\n" }, - "14709": { + "13775": { "Type": "TRICE", "Strg": "attention:11:green\\n" }, - "14710": { + "13776": { "Type": "TRICE", "Strg": "info:cyan+b:default+h\\n" }, - "14711": { + "13777": { "Type": "TRICE", "Strg": "debug:130+i\\n" }, - "14712": { + "13778": { "Type": "TRICE", "Strg": "trace:default+i:default+h\\n" }, - "14713": { + "13779": { "Type": "TRICE", "Strg": "time:blue+i:blue+h\\n" }, - "14714": { + "13780": { "Type": "TRICE", "Strg": "message:green+h:black\\n" }, - "14715": { + "13781": { "Type": "TRICE", "Strg": "read:black+i:yellow+h\\n" }, - "14716": { + "13782": { "Type": "TRICE", "Strg": "write:black+u:yellow+h\\n" }, - "14717": { + "13783": { "Type": "TRICE", "Strg": "receive:black+h:black\\n" }, - "14718": { + "13784": { "Type": "TRICE", "Strg": "transmit:black:black+h\\n" }, - "14719": { + "13785": { "Type": "TRICE", "Strg": "diag:yellow+i:default+h\\n" }, - "14720": { + "13786": { "Type": "TRICE", "Strg": "interrupt:magenta+i:default+h\\n" }, - "14721": { + "13787": { "Type": "TRICE", "Strg": "signal:118+i\\n" }, - "14722": { + "13788": { "Type": "TRICE", "Strg": "test:yellow+h:black\\n" }, - "14723": { + "13789": { "Type": "TRICE", "Strg": "default:off\\n" }, - "14724": { + "13790": { "Type": "TRICE", "Strg": "notice:blue:white+h\\n" }, - "14725": { + "13791": { "Type": "TRICE", "Strg": "alert:magenta:magenta+h\\n" }, - "14726": { + "13792": { "Type": "TRICE", "Strg": "assert:yellow+i:blue\\n" }, - "14727": { + "13793": { "Type": "TRICE", "Strg": "alarm:red+i:white+h\\n" }, - "14728": { - "Type": "TRICE", - "Strg": "cycle:blue+i:default+h\\n" - }, - "14729": { + "13794": { "Type": "TRICE", "Strg": "verbose:blue:default\\n" }, - "14730": { + "13795": { "Type": "Trice", "Strg": "FATAL:magenta+b:red\\n" }, - "14731": { + "13796": { "Type": "Trice", "Strg": "CRITICAL:red+i:default+h\\n" }, - "14732": { + "13797": { "Type": "Trice", "Strg": "EMERGENCY:red+i:blue\\n" }, - "14733": { + "13798": { "Type": "Trice", "Strg": "ERROR:11:red\\n" }, - "14734": { + "13799": { "Type": "Trice", "Strg": "WARNING:11+i:red\\n" }, - "14735": { + "13800": { "Type": "Trice", "Strg": "ATTENTION:11:green\\n" }, - "14736": { + "13801": { "Type": "Trice", "Strg": "INFO:cyan+b:default+h\\n" }, - "14737": { + "13802": { "Type": "Trice", "Strg": "DEBUG:130+i\\n" }, - "14738": { + "13803": { "Type": "Trice", "Strg": "TRACE:default+i:default+h\\n" }, - "14739": { + "13804": { "Type": "Trice", "Strg": "TIME:blue+i:blue+h\\n" }, - "14740": { + "13805": { "Type": "Trice", "Strg": "MESSAGE:green+h:black\\n" }, - "14741": { + "13806": { "Type": "Trice", "Strg": "READ:black+i:yellow+h\\n" }, - "14742": { + "13807": { "Type": "Trice", "Strg": "WRITE:black+u:yellow+h\\n" }, - "14743": { + "13808": { "Type": "Trice", "Strg": "RECEIVE:black+h:black\\n" }, - "14744": { + "13809": { "Type": "Trice", "Strg": "TRANSMIT:black:black+h\\n" }, - "14745": { + "13810": { "Type": "Trice", "Strg": "DIAG:yellow+i:default+h\\n" }, - "14746": { + "13811": { "Type": "Trice", "Strg": "INTERRUPT:magenta+i:default+h\\n" }, - "14747": { + "13812": { "Type": "Trice", "Strg": "SIGNAL:118+i\\n" }, - "14748": { + "13813": { "Type": "Trice", "Strg": "TEST:yellow+h:black\\n" }, - "14749": { + "13814": { "Type": "Trice", "Strg": "DEFAULT:off\\n" }, - "14750": { + "13815": { "Type": "Trice", "Strg": "NOTICE:blue:white+h\\n" }, - "14751": { + "13816": { "Type": "Trice", "Strg": "ALERT:magenta:magenta+h\\n" }, - "14752": { + "13817": { "Type": "Trice", "Strg": "ASSERT:yellow+i:blue\\n" }, - "14753": { + "13818": { "Type": "Trice", "Strg": "ALARM:red+i:white+h\\n" }, - "14754": { - "Type": "Trice", - "Strg": "CYCLE:blue+i:default+h\\n" - }, - "14755": { + "13819": { "Type": "Trice", "Strg": "VERBOSE:blue:default\\n" }, - "14756": { + "13820": { "Type": "Trice", "Strg": "fatal:magenta+b:red\\n" }, - "14757": { + "13821": { "Type": "Trice", "Strg": "critical:red+i:default+h\\n" }, - "14758": { + "13822": { "Type": "Trice", "Strg": "emergency:red+i:blue\\n" }, - "14759": { + "13823": { "Type": "Trice", "Strg": "error:11:red\\n" }, - "14760": { + "13824": { "Type": "Trice", "Strg": "warning:11+i:red\\n" }, - "14761": { + "13825": { "Type": "Trice", "Strg": "attention:11:green\\n" }, - "14762": { + "13826": { "Type": "Trice", "Strg": "info:cyan+b:default+h\\n" }, - "14763": { + "13827": { "Type": "Trice", "Strg": "debug:130+i\\n" }, - "14764": { + "13828": { "Type": "Trice", "Strg": "trace:default+i:default+h\\n" }, - "14765": { + "13829": { "Type": "Trice", "Strg": "time:blue+i:blue+h\\n" }, - "14766": { + "13830": { "Type": "Trice", "Strg": "message:green+h:black\\n" }, - "14767": { + "13831": { "Type": "Trice", "Strg": "read:black+i:yellow+h\\n" }, - "14768": { + "13832": { "Type": "Trice", "Strg": "write:black+u:yellow+h\\n" }, - "14769": { + "13833": { "Type": "Trice", "Strg": "receive:black+h:black\\n" }, - "14770": { + "13834": { "Type": "Trice", "Strg": "transmit:black:black+h\\n" }, - "14771": { + "13835": { "Type": "Trice", "Strg": "diag:yellow+i:default+h\\n" }, - "14772": { + "13836": { "Type": "Trice", "Strg": "interrupt:magenta+i:default+h\\n" }, - "14773": { + "13837": { "Type": "Trice", "Strg": "signal:118+i\\n" }, - "14774": { + "13838": { "Type": "Trice", "Strg": "test:yellow+h:black\\n" }, - "14775": { + "13839": { "Type": "Trice", "Strg": "default:off\\n" }, - "14776": { + "13840": { "Type": "Trice", "Strg": "notice:blue:white+h\\n" }, - "14777": { + "13841": { "Type": "Trice", "Strg": "alert:magenta:magenta+h\\n" }, - "14778": { + "13842": { "Type": "Trice", "Strg": "assert:yellow+i:blue\\n" }, - "14779": { + "13843": { "Type": "Trice", "Strg": "alarm:red+i:white+h\\n" }, - "14780": { - "Type": "Trice", - "Strg": "cycle:blue+i:default+h\\n" - }, - "14781": { + "13844": { "Type": "Trice", "Strg": "verbose:blue:default\\n" }, - "14782": { + "13845": { "Type": "TRICE", "Strg": "FATAL:magenta+b:red\\n" }, - "14783": { + "13846": { "Type": "TRICE", "Strg": "CRITICAL:red+i:default+h\\n" }, - "14784": { + "13847": { "Type": "TRICE", "Strg": "EMERGENCY:red+i:blue\\n" }, - "14785": { + "13848": { "Type": "TRICE", "Strg": "ERROR:11:red\\n" }, - "14786": { + "13849": { "Type": "TRICE", "Strg": "WARNING:11+i:red\\n" }, - "14787": { + "13850": { "Type": "TRICE", "Strg": "ATTENTION:11:green\\n" }, - "14788": { + "13851": { "Type": "TRICE", "Strg": "INFO:cyan+b:default+h\\n" }, - "14789": { + "13852": { "Type": "TRICE", "Strg": "DEBUG:130+i\\n" }, - "14790": { + "13853": { "Type": "TRICE", "Strg": "TRACE:default+i:default+h\\n" }, - "14791": { + "13854": { "Type": "TRICE", "Strg": "TIME:blue+i:blue+h\\n" }, - "14792": { + "13855": { "Type": "TRICE", "Strg": "MESSAGE:green+h:black\\n" }, - "14793": { + "13856": { "Type": "TRICE", "Strg": "READ:black+i:yellow+h\\n" }, - "14794": { + "13857": { "Type": "TRICE", "Strg": "WRITE:black+u:yellow+h\\n" }, - "14795": { + "13858": { "Type": "TRICE", "Strg": "RECEIVE:black+h:black\\n" }, - "14796": { + "13859": { "Type": "TRICE", "Strg": "TRANSMIT:black:black+h\\n" }, - "14797": { + "13860": { "Type": "TRICE", "Strg": "DIAG:yellow+i:default+h\\n" }, - "14798": { + "13861": { "Type": "TRICE", "Strg": "INTERRUPT:magenta+i:default+h\\n" }, - "14799": { + "13862": { "Type": "TRICE", "Strg": "SIGNAL:118+i\\n" }, - "14800": { + "13863": { "Type": "TRICE", "Strg": "TEST:yellow+h:black\\n" }, - "14801": { + "13864": { "Type": "TRICE", "Strg": "DEFAULT:off\\n" }, - "14802": { + "13865": { "Type": "TRICE", "Strg": "NOTICE:blue:white+h\\n" }, - "14803": { + "13866": { "Type": "TRICE", "Strg": "ALERT:magenta:magenta+h\\n" }, - "14804": { + "13867": { "Type": "TRICE", "Strg": "ASSERT:yellow+i:blue\\n" }, - "14805": { + "13868": { "Type": "TRICE", "Strg": "ALARM:red+i:white+h\\n" }, - "14806": { - "Type": "TRICE", - "Strg": "CYCLE:blue+i:default+h\\n" - }, - "14807": { + "13869": { "Type": "TRICE", "Strg": "VERBOSE:blue:default\\n" }, - "14808": { + "13870": { "Type": "TRICE", "Strg": "fatal:magenta+b:red\\n" }, - "14809": { + "13871": { "Type": "TRICE", "Strg": "critical:red+i:default+h\\n" }, - "14810": { + "13872": { "Type": "TRICE", "Strg": "emergency:red+i:blue\\n" }, - "14811": { + "13873": { "Type": "TRICE", "Strg": "error:11:red\\n" }, - "14812": { + "13874": { "Type": "TRICE", "Strg": "warning:11+i:red\\n" }, - "14813": { + "13875": { "Type": "TRICE", "Strg": "attention:11:green\\n" }, - "14814": { + "13876": { "Type": "TRICE", "Strg": "info:cyan+b:default+h\\n" }, - "14815": { + "13877": { "Type": "TRICE", "Strg": "debug:130+i\\n" }, - "14816": { + "13878": { "Type": "TRICE", "Strg": "trace:default+i:default+h\\n" }, - "14817": { + "13879": { "Type": "TRICE", "Strg": "time:blue+i:blue+h\\n" }, - "14818": { + "13880": { "Type": "TRICE", "Strg": "message:green+h:black\\n" }, - "14819": { + "13881": { "Type": "TRICE", "Strg": "read:black+i:yellow+h\\n" }, - "14820": { + "13882": { "Type": "TRICE", "Strg": "write:black+u:yellow+h\\n" }, - "14821": { + "13883": { "Type": "TRICE", "Strg": "receive:black+h:black\\n" }, - "14822": { + "13884": { "Type": "TRICE", "Strg": "transmit:black:black+h\\n" }, - "14823": { + "13885": { "Type": "TRICE", "Strg": "diag:yellow+i:default+h\\n" }, - "14824": { + "13886": { "Type": "TRICE", "Strg": "interrupt:magenta+i:default+h\\n" }, - "14825": { + "13887": { "Type": "TRICE", "Strg": "signal:118+i\\n" }, - "14826": { + "13888": { "Type": "TRICE", "Strg": "test:yellow+h:black\\n" }, - "14827": { + "13889": { "Type": "TRICE", "Strg": "default:off\\n" }, - "14828": { + "13890": { "Type": "TRICE", "Strg": "notice:blue:white+h\\n" }, - "14829": { + "13891": { "Type": "TRICE", "Strg": "alert:magenta:magenta+h\\n" }, - "14830": { + "13892": { "Type": "TRICE", "Strg": "assert:yellow+i:blue\\n" }, - "14831": { + "13893": { "Type": "TRICE", "Strg": "alarm:red+i:white+h\\n" }, - "14832": { - "Type": "TRICE", - "Strg": "cycle:blue+i:default+h\\n" - }, - "14833": { + "13894": { "Type": "TRICE", "Strg": "verbose:blue:default\\n" }, - "14834": { + "13895": { "Type": "TRice", "Strg": "FATAL:magenta+b:red\\n" }, - "14835": { + "13896": { "Type": "TRice", "Strg": "CRITICAL:red+i:default+h\\n" }, - "14836": { + "13897": { "Type": "TRice", "Strg": "EMERGENCY:red+i:blue\\n" }, - "14837": { + "13898": { "Type": "TRice", "Strg": "ERROR:11:red\\n" }, - "14838": { + "13899": { "Type": "TRice", "Strg": "WARNING:11+i:red\\n" }, - "14839": { + "13900": { "Type": "TRice", "Strg": "ATTENTION:11:green\\n" }, - "14840": { + "13901": { "Type": "TRice", "Strg": "INFO:cyan+b:default+h\\n" }, - "14841": { + "13902": { "Type": "TRice", "Strg": "DEBUG:130+i\\n" }, - "14842": { + "13903": { "Type": "TRice", "Strg": "TRACE:default+i:default+h\\n" }, - "14843": { + "13904": { "Type": "TRice", "Strg": "TIME:blue+i:blue+h\\n" }, - "14844": { + "13905": { "Type": "TRice", "Strg": "MESSAGE:green+h:black\\n" }, - "14845": { + "13906": { "Type": "TRice", "Strg": "READ:black+i:yellow+h\\n" }, - "14846": { + "13907": { "Type": "TRice", "Strg": "WRITE:black+u:yellow+h\\n" }, - "14847": { + "13908": { "Type": "TRice", "Strg": "RECEIVE:black+h:black\\n" }, - "14848": { + "13909": { "Type": "TRice", "Strg": "TRANSMIT:black:black+h\\n" }, - "14849": { + "13910": { "Type": "TRice", "Strg": "DIAG:yellow+i:default+h\\n" }, - "14850": { + "13911": { "Type": "TRice", "Strg": "INTERRUPT:magenta+i:default+h\\n" }, - "14851": { + "13912": { "Type": "TRice", "Strg": "SIGNAL:118+i\\n" }, - "14852": { + "13913": { "Type": "TRice", "Strg": "TEST:yellow+h:black\\n" }, - "14853": { + "13914": { "Type": "TRice", "Strg": "DEFAULT:off\\n" }, - "14854": { + "13915": { "Type": "TRice", "Strg": "NOTICE:blue:white+h\\n" }, - "14855": { + "13916": { "Type": "TRice", "Strg": "ALERT:magenta:magenta+h\\n" }, - "14856": { + "13917": { "Type": "TRice", "Strg": "ASSERT:yellow+i:blue\\n" }, - "14857": { + "13918": { "Type": "TRice", "Strg": "ALARM:red+i:white+h\\n" }, - "14858": { - "Type": "TRice", - "Strg": "CYCLE:blue+i:default+h\\n" - }, - "14859": { + "13919": { "Type": "TRice", "Strg": "VERBOSE:blue:default\\n" }, - "14860": { + "13920": { "Type": "TRice", "Strg": "fatal:magenta+b:red\\n" }, - "14861": { + "13921": { "Type": "TRice", "Strg": "critical:red+i:default+h\\n" }, - "14862": { + "13922": { "Type": "TRice", "Strg": "emergency:red+i:blue\\n" }, - "14863": { + "13923": { "Type": "TRice", "Strg": "error:11:red\\n" }, - "14864": { + "13924": { "Type": "TRice", "Strg": "warning:11+i:red\\n" }, - "14865": { + "13925": { "Type": "TRice", "Strg": "attention:11:green\\n" }, - "14866": { + "13926": { "Type": "TRice", "Strg": "info:cyan+b:default+h\\n" }, - "14867": { + "13927": { "Type": "TRice", "Strg": "debug:130+i\\n" }, - "14868": { + "13928": { "Type": "TRice", "Strg": "trace:default+i:default+h\\n" }, - "14869": { + "13929": { "Type": "TRice", "Strg": "time:blue+i:blue+h\\n" }, - "14870": { + "13930": { "Type": "TRice", "Strg": "message:green+h:black\\n" }, - "14871": { + "13931": { "Type": "TRice", "Strg": "read:black+i:yellow+h\\n" }, - "14872": { + "13932": { "Type": "TRice", "Strg": "write:black+u:yellow+h\\n" }, - "14873": { + "13933": { "Type": "TRice", "Strg": "receive:black+h:black\\n" }, - "14874": { + "13934": { "Type": "TRice", "Strg": "transmit:black:black+h\\n" }, - "14875": { + "13935": { "Type": "TRice", "Strg": "diag:yellow+i:default+h\\n" }, - "14876": { + "13936": { "Type": "TRice", "Strg": "interrupt:magenta+i:default+h\\n" }, - "14877": { + "13937": { "Type": "TRice", "Strg": "signal:118+i\\n" }, - "14878": { + "13938": { "Type": "TRice", "Strg": "test:yellow+h:black\\n" }, - "14879": { + "13939": { "Type": "TRice", "Strg": "default:off\\n" }, - "14880": { + "13940": { "Type": "TRice", "Strg": "notice:blue:white+h\\n" }, - "14881": { + "13941": { "Type": "TRice", "Strg": "alert:magenta:magenta+h\\n" }, - "14882": { + "13942": { "Type": "TRice", "Strg": "assert:yellow+i:blue\\n" }, - "14883": { + "13943": { "Type": "TRice", "Strg": "alarm:red+i:white+h\\n" }, - "14884": { - "Type": "TRice", - "Strg": "cycle:blue+i:default+h\\n" - }, - "14885": { + "13944": { "Type": "TRice", "Strg": "verbose:blue:default\\n" }, - "14886": { + "13945": { "Type": "TRICE64", "Strg": "msg:%d (%%d)\\n" }, - "14887": { + "13946": { "Type": "trice", "Strg": "sig:TRICE8 with 1 to 12 values\\n" }, - "14888": { - "Type": "TRICE", + "13947": { + "Type": "trice", "Strg": "rd:TRICE %d\\n" }, - "14889": { - "Type": "TRICE", + "13948": { + "Type": "trice", "Strg": "rd:TRICE %d, %d\\n" }, - "14890": { - "Type": "TRICE", + "13949": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d\\n" }, - "14891": { - "Type": "TRICE", + "13950": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d\\n" }, - "14892": { - "Type": "TRICE", + "13951": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d\\n" }, - "14893": { - "Type": "TRICE", + "13952": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d\\n" }, - "14894": { - "Type": "TRICE", + "13953": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d\\n" }, - "14895": { - "Type": "TRICE", + "13954": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14896": { - "Type": "TRICE", + "13955": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14897": { - "Type": "TRICE", + "13956": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14898": { - "Type": "TRICE", + "13957": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14899": { - "Type": "TRICE", + "13958": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14900": { - "Type": "TRICE", + "13959": { + "Type": "trice", "Strg": "rd:TRICE %d\\n" }, - "14901": { - "Type": "TRICE", + "13960": { + "Type": "trice", "Strg": "rd:TRICE %d, %d\\n" }, - "14902": { - "Type": "TRICE", + "13961": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d\\n" }, - "14903": { - "Type": "TRICE", + "13962": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d\\n" }, - "14904": { - "Type": "TRICE", + "13963": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d\\n" }, - "14905": { - "Type": "TRICE", + "13964": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d\\n" }, - "14906": { - "Type": "TRICE", + "13965": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d\\n" }, - "14907": { - "Type": "TRICE", + "13966": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14908": { - "Type": "TRICE", + "13967": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14909": { - "Type": "TRICE", + "13968": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14910": { - "Type": "TRICE", + "13969": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14911": { - "Type": "TRICE", + "13970": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14912": { - "Type": "TRICE", + "13971": { + "Type": "trice", "Strg": "rd:TRICE %d\\n" }, - "14913": { - "Type": "TRICE", + "13972": { + "Type": "trice", "Strg": "rd:TRICE %d, %d\\n" }, - "14914": { - "Type": "TRICE", + "13973": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d\\n" }, - "14915": { - "Type": "TRICE", + "13974": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d\\n" }, - "14916": { - "Type": "TRICE", + "13975": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d\\n" }, - "14917": { - "Type": "TRICE", + "13976": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d\\n" }, - "14918": { - "Type": "TRICE", + "13977": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d\\n" }, - "14919": { - "Type": "TRICE", + "13978": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14920": { - "Type": "TRICE", + "13979": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14921": { - "Type": "TRICE", + "13980": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14922": { - "Type": "TRICE", + "13981": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14923": { - "Type": "TRICE", + "13982": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14924": { + "13983": { "Type": "trice", "Strg": "sig:TRICE_n with 1 to 12 values\\n" }, - "14925": { + "13984": { "Type": "TRICE_1", "Strg": "rd:TRICE_1 %d\\n" }, - "14926": { + "13985": { "Type": "TRICE_2", "Strg": "rd:TRICE_2 %d, %d\\n" }, - "14927": { + "13986": { "Type": "TRICE_3", "Strg": "rd:TRICE_3 %d, %d, %d\\n" }, - "14928": { + "13987": { "Type": "TRICE_4", "Strg": "rd:TRICE_4 %d, %d, %d, %d\\n" }, - "14929": { + "13988": { "Type": "TRICE_5", "Strg": "rd:TRICE_5 %d, %d, %d, %d, %d\\n" }, - "14930": { + "13989": { "Type": "TRICE_6", "Strg": "rd:TRICE_6 %d, %d, %d, %d, %d, %d\\n" }, - "14931": { + "13990": { "Type": "TRICE_7", "Strg": "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "14932": { + "13991": { "Type": "TRICE_8", "Strg": "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14933": { + "13992": { "Type": "TRICE_9", "Strg": "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14934": { + "13993": { "Type": "TRICE_10", "Strg": "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14935": { + "13994": { "Type": "TRICE_11", "Strg": "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14936": { + "13995": { "Type": "TRICE_12", "Strg": "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14937": { + "13996": { "Type": "TRICE_1", "Strg": "rd:TRICE_1 %d\\n" }, - "14938": { + "13997": { "Type": "TRICE_2", "Strg": "rd:TRICE_2 %d, %d\\n" }, - "14939": { + "13998": { "Type": "TRICE_3", "Strg": "rd:TRICE_3 %d, %d, %d\\n" }, - "14940": { + "13999": { "Type": "TRICE_4", "Strg": "rd:TRICE_4 %d, %d, %d, %d\\n" }, - "14941": { + "14000": { "Type": "TRICE_5", "Strg": "rd:TRICE_5 %d, %d, %d, %d, %d\\n" }, - "14942": { + "14001": { "Type": "TRICE_6", "Strg": "rd:TRICE_6 %d, %d, %d, %d, %d, %d\\n" }, - "14943": { + "14002": { "Type": "TRICE_7", "Strg": "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "14944": { + "14003": { "Type": "TRICE_8", "Strg": "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14945": { + "14004": { "Type": "TRICE_9", "Strg": "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14946": { + "14005": { "Type": "TRICE_10", "Strg": "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14947": { + "14006": { "Type": "TRICE_11", "Strg": "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14948": { + "14007": { "Type": "TRICE_12", "Strg": "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14949": { + "14008": { "Type": "TRICE_1", "Strg": "rd:TRICE_1 %d\\n" }, - "14950": { + "14009": { "Type": "TRICE_2", "Strg": "rd:TRICE_2 %d, %d\\n" }, - "14951": { + "14010": { "Type": "TRICE_3", "Strg": "rd:TRICE_3 %d, %d, %d\\n" }, - "14952": { + "14011": { "Type": "TRICE_4", "Strg": "rd:TRICE_4 %d, %d, %d, %d\\n" }, - "14953": { + "14012": { "Type": "TRICE_5", "Strg": "rd:TRICE_5 %d, %d, %d, %d, %d\\n" }, - "14954": { + "14013": { "Type": "TRICE_6", "Strg": "rd:TRICE_6 %d, %d, %d, %d, %d, %d\\n" }, - "14955": { + "14014": { "Type": "TRICE_7", "Strg": "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "14956": { + "14015": { "Type": "TRICE_8", "Strg": "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14957": { + "14016": { "Type": "TRICE_9", "Strg": "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14958": { + "14017": { "Type": "TRICE_10", "Strg": "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14959": { + "14018": { "Type": "TRICE_11", "Strg": "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14960": { + "14019": { "Type": "TRICE_12", "Strg": "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "14961": { - "Type": "trice", - "Strg": "sig:trice with 1 to 12 values\\n" - }, - "14962": { - "Type": "trice", - "Strg": "rd:trice %d\\n" - }, - "14963": { - "Type": "trice", - "Strg": "rd:trice %d, %d\\n" - }, - "14964": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d\\n" - }, - "14965": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d\\n" - }, - "14966": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d\\n" - }, - "14967": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d\\n" - }, - "14968": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14969": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14970": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14971": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14972": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14973": { - "Type": "trice", - "Strg": "rd:trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14974": { - "Type": "Trice", - "Strg": "rd:Trice %d\\n" - }, - "14975": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d\\n" - }, - "14976": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d\\n" - }, - "14977": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d\\n" - }, - "14978": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d\\n" - }, - "14979": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d\\n" - }, - "14980": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14981": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14982": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14983": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14984": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14985": { - "Type": "Trice", - "Strg": "rd:Trice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14986": { - "Type": "TRice", - "Strg": "rd:TRice %d\\n" - }, - "14987": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d\\n" - }, - "14988": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d\\n" - }, - "14989": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d\\n" - }, - "14990": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d\\n" - }, - "14991": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d\\n" - }, - "14992": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14993": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14994": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14995": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14996": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14997": { - "Type": "TRice", - "Strg": "rd:TRice %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" - }, - "14998": { + "14020": { "Type": "TRICE", "Strg": "sig:trice_n with 1 to 12 values\\n" }, - "14999": { + "14021": { "Type": "trice_1", "Strg": "rd:trice_1 %d\\n" }, - "15000": { + "14022": { "Type": "trice_2", "Strg": "rd:trice_2 %d, %d\\n" }, - "15001": { + "14023": { "Type": "trice_3", "Strg": "rd:trice_3 %d, %d, %d\\n" }, - "15002": { + "14024": { "Type": "trice_4", "Strg": "rd:trice_4 %d, %d, %d, %d\\n" }, - "15003": { + "14025": { "Type": "trice_5", "Strg": "rd:trice_5 %d, %d, %d, %d, %d\\n" }, - "15004": { + "14026": { "Type": "trice_6", "Strg": "rd:trice_6 %d, %d, %d, %d, %d, %d\\n" }, - "15005": { + "14027": { "Type": "trice_7", "Strg": "rd:trice_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15006": { + "14028": { "Type": "trice_8", "Strg": "rd:trice_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15007": { + "14029": { "Type": "trice_9", "Strg": "rd:trice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15008": { + "14030": { "Type": "trice_10", "Strg": "rd:trice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15009": { + "14031": { "Type": "trice_11", "Strg": "rd:trice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15010": { + "14032": { "Type": "trice_12", "Strg": "rd:trice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15011": { + "14033": { "Type": "Trice_1", "Strg": "rd:Trice_1 %d\\n" }, - "15012": { + "14034": { "Type": "Trice_2", "Strg": "rd:Trice_2 %d, %d\\n" }, - "15013": { + "14035": { "Type": "Trice_3", "Strg": "rd:Trice_3 %d, %d, %d\\n" }, - "15014": { + "14036": { "Type": "Trice_4", "Strg": "rd:Trice_4 %d, %d, %d, %d\\n" }, - "15015": { + "14037": { "Type": "Trice_5", "Strg": "rd:Trice_5 %d, %d, %d, %d, %d\\n" }, - "15016": { + "14038": { "Type": "Trice_6", "Strg": "rd:Trice_6 %d, %d, %d, %d, %d, %d\\n" }, - "15017": { + "14039": { "Type": "Trice_7", "Strg": "rd:Trice_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15018": { + "14040": { "Type": "Trice_8", "Strg": "rd:Trice_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15019": { + "14041": { "Type": "Trice_9", "Strg": "rd:Trice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15020": { + "14042": { "Type": "Trice_10", "Strg": "rd:Trice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15021": { + "14043": { "Type": "Trice_11", "Strg": "rd:Trice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15022": { + "14044": { "Type": "Trice_12", "Strg": "rd:Trice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15023": { + "14045": { "Type": "TRice_1", "Strg": "rd:TRice_1 %d\\n" }, - "15024": { + "14046": { "Type": "TRice_2", "Strg": "rd:TRice_2 %d, %d\\n" }, - "15025": { + "14047": { "Type": "TRice_3", "Strg": "rd:TRice_3 %d, %d, %d\\n" }, - "15026": { + "14048": { "Type": "TRice_4", "Strg": "rd:TRice_4 %d, %d, %d, %d\\n" }, - "15027": { + "14049": { "Type": "TRice_5", "Strg": "rd:TRice_5 %d, %d, %d, %d, %d\\n" }, - "15028": { + "14050": { "Type": "TRice_6", "Strg": "rd:TRice_6 %d, %d, %d, %d, %d, %d\\n" }, - "15029": { + "14051": { "Type": "TRice_7", "Strg": "rd:TRice_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15030": { + "14052": { "Type": "TRice_8", "Strg": "rd:TRice_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15031": { + "14053": { "Type": "TRice_9", "Strg": "rd:TRice_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15032": { + "14054": { "Type": "TRice_10", "Strg": "rd:TRice_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15033": { + "14055": { "Type": "TRice_11", "Strg": "rd:TRice_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15034": { + "14056": { "Type": "TRice_12", "Strg": "rd:TRice_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15035": { + "14057": { "Type": "trice", "Strg": "sig:TRICE8 with 1 to 12 values\\n" }, - "15036": { + "14058": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d\\n" }, - "15037": { + "14059": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d\\n" }, - "15038": { + "14060": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d\\n" }, - "15039": { + "14061": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d\\n" }, - "15040": { + "14062": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d\\n" }, - "15041": { + "14063": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d\\n" }, - "15042": { + "14064": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15043": { + "14065": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15044": { + "14066": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15045": { + "14067": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15046": { + "14068": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15047": { + "14069": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15048": { + "14070": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d\\n" }, - "15049": { + "14071": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d\\n" }, - "15050": { + "14072": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d\\n" }, - "15051": { + "14073": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d\\n" }, - "15052": { + "14074": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d\\n" }, - "15053": { + "14075": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d\\n" }, - "15054": { + "14076": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15055": { + "14077": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15056": { + "14078": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15057": { + "14079": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15058": { + "14080": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15059": { + "14081": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15060": { + "14082": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d\\n" }, - "15061": { + "14083": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d\\n" }, - "15062": { + "14084": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d\\n" }, - "15063": { + "14085": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d\\n" }, - "15064": { + "14086": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d\\n" }, - "15065": { + "14087": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d\\n" }, - "15066": { + "14088": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15067": { + "14089": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15068": { + "14090": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15069": { + "14091": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15070": { + "14092": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15071": { + "14093": { "Type": "TRICE8", "Strg": "rd:TRICE8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15072": { + "14094": { "Type": "trice", "Strg": "sig:TRICE8_n with 1 to 12 values\\n" }, - "15073": { + "14095": { "Type": "TRICE8_1", "Strg": "rd:TRICE8_1 %d\\n" }, - "15074": { + "14096": { "Type": "TRICE8_2", "Strg": "rd:TRICE8_2 %d, %d\\n" }, - "15075": { + "14097": { "Type": "TRICE8_3", "Strg": "rd:TRICE8_3 %d, %d, %d\\n" }, - "15076": { + "14098": { "Type": "TRICE8_4", "Strg": "rd:TRICE8_4 %d, %d, %d, %d\\n" }, - "15077": { + "14099": { "Type": "TRICE8_5", "Strg": "rd:TRICE8_5 %d, %d, %d, %d, %d\\n" }, - "15078": { + "14100": { "Type": "TRICE8_6", "Strg": "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\\n" }, - "15079": { + "14101": { "Type": "TRICE8_7", "Strg": "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15080": { + "14102": { "Type": "TRICE8_8", "Strg": "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15081": { + "14103": { "Type": "TRICE8_9", "Strg": "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15082": { + "14104": { "Type": "TRICE8_10", "Strg": "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15083": { + "14105": { "Type": "TRICE8_11", "Strg": "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15084": { + "14106": { "Type": "TRICE8_12", "Strg": "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15085": { + "14107": { "Type": "TRICE8_1", "Strg": "rd:TRICE8_1 %d\\n" }, - "15086": { + "14108": { "Type": "TRICE8_2", "Strg": "rd:TRICE8_2 %d, %d\\n" }, - "15087": { + "14109": { "Type": "TRICE8_3", "Strg": "rd:TRICE8_3 %d, %d, %d\\n" }, - "15088": { + "14110": { "Type": "TRICE8_4", "Strg": "rd:TRICE8_4 %d, %d, %d, %d\\n" }, - "15089": { + "14111": { "Type": "TRICE8_5", "Strg": "rd:TRICE8_5 %d, %d, %d, %d, %d\\n" }, - "15090": { + "14112": { "Type": "TRICE8_6", "Strg": "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\\n" }, - "15091": { + "14113": { "Type": "TRICE8_7", "Strg": "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15092": { + "14114": { "Type": "TRICE8_8", "Strg": "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15093": { + "14115": { "Type": "TRICE8_9", "Strg": "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15094": { + "14116": { "Type": "TRICE8_10", "Strg": "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15095": { + "14117": { "Type": "TRICE8_11", "Strg": "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15096": { + "14118": { "Type": "TRICE8_12", "Strg": "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15097": { + "14119": { "Type": "TRICE8_1", "Strg": "rd:TRICE8_1 %d\\n" }, - "15098": { + "14120": { "Type": "TRICE8_2", "Strg": "rd:TRICE8_2 %d, %d\\n" }, - "15099": { + "14121": { "Type": "TRICE8_3", "Strg": "rd:TRICE8_3 %d, %d, %d\\n" }, - "15100": { + "14122": { "Type": "TRICE8_4", "Strg": "rd:TRICE8_4 %d, %d, %d, %d\\n" }, - "15101": { + "14123": { "Type": "TRICE8_5", "Strg": "rd:TRICE8_5 %d, %d, %d, %d, %d\\n" }, - "15102": { + "14124": { "Type": "TRICE8_6", "Strg": "rd:TRICE8_6 %d, %d, %d, %d, %d, %d\\n" }, - "15103": { + "14125": { "Type": "TRICE8_7", "Strg": "rd:TRICE8_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15104": { + "14126": { "Type": "TRICE8_8", "Strg": "rd:TRICE8_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15105": { + "14127": { "Type": "TRICE8_9", "Strg": "rd:TRICE8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15106": { + "14128": { "Type": "TRICE8_10", "Strg": "rd:TRICE8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15107": { + "14129": { "Type": "TRICE8_11", "Strg": "rd:TRICE8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15108": { + "14130": { "Type": "TRICE8_12", "Strg": "rd:TRICE8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15109": { + "14131": { "Type": "trice", "Strg": "sig:trice8 with 1 to 12 values\\n" }, - "15110": { + "14132": { "Type": "trice8", "Strg": "rd:trice8 %d\\n" }, - "15111": { + "14133": { "Type": "trice8", "Strg": "rd:trice8 %d, %d\\n" }, - "15112": { + "14134": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d\\n" }, - "15113": { + "14135": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d\\n" }, - "15114": { + "14136": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d\\n" }, - "15115": { + "14137": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d\\n" }, - "15116": { + "14138": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15117": { + "14139": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15118": { + "14140": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15119": { + "14141": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15120": { + "14142": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15121": { + "14143": { "Type": "trice8", "Strg": "rd:trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15122": { + "14144": { "Type": "Trice8", "Strg": "rd:Trice8 %d\\n" }, - "15123": { + "14145": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d\\n" }, - "15124": { + "14146": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d\\n" }, - "15125": { + "14147": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d\\n" }, - "15126": { + "14148": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d\\n" }, - "15127": { + "14149": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d\\n" }, - "15128": { + "14150": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15129": { + "14151": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15130": { + "14152": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15131": { + "14153": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15132": { + "14154": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15133": { + "14155": { "Type": "Trice8", "Strg": "rd:Trice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15134": { + "14156": { "Type": "TRice8", "Strg": "rd:TRice8 %d\\n" }, - "15135": { + "14157": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d\\n" }, - "15136": { + "14158": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d\\n" }, - "15137": { + "14159": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d\\n" }, - "15138": { + "14160": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d\\n" }, - "15139": { + "14161": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d\\n" }, - "15140": { + "14162": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15141": { + "14163": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15142": { + "14164": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15143": { + "14165": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15144": { + "14166": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15145": { + "14167": { "Type": "TRice8", "Strg": "rd:TRice8 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15146": { + "14168": { "Type": "TRICE", "Strg": "sig:trice8_n with 1 to 12 values\\n" }, - "15147": { + "14169": { "Type": "trice8_1", "Strg": "rd:trice8_1 %d\\n" }, - "15148": { + "14170": { "Type": "trice8_2", "Strg": "rd:trice8_2 %d, %d\\n" }, - "15149": { + "14171": { "Type": "trice8_3", "Strg": "rd:trice8_3 %d, %d, %d\\n" }, - "15150": { + "14172": { "Type": "trice8_4", "Strg": "rd:trice8_4 %d, %d, %d, %d\\n" }, - "15151": { + "14173": { "Type": "trice8_5", "Strg": "rd:trice8_5 %d, %d, %d, %d, %d\\n" }, - "15152": { + "14174": { "Type": "trice8_6", "Strg": "rd:trice8_6 %d, %d, %d, %d, %d, %d\\n" }, - "15153": { + "14175": { "Type": "trice8_7", "Strg": "rd:trice8_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15154": { + "14176": { "Type": "trice8_8", "Strg": "rd:trice8_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15155": { + "14177": { "Type": "trice8_9", "Strg": "rd:trice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15156": { + "14178": { "Type": "trice8_10", "Strg": "rd:trice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15157": { + "14179": { "Type": "trice8_11", "Strg": "rd:trice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15158": { + "14180": { "Type": "trice8_12", "Strg": "rd:trice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15159": { + "14181": { "Type": "Trice8_1", "Strg": "rd:Trice8_1 %d\\n" }, - "15160": { + "14182": { "Type": "Trice8_2", "Strg": "rd:Trice8_2 %d, %d\\n" }, - "15161": { + "14183": { "Type": "Trice8_3", "Strg": "rd:Trice8_3 %d, %d, %d\\n" }, - "15162": { + "14184": { "Type": "Trice8_4", "Strg": "rd:Trice8_4 %d, %d, %d, %d\\n" }, - "15163": { + "14185": { "Type": "Trice8_5", "Strg": "rd:Trice8_5 %d, %d, %d, %d, %d\\n" }, - "15164": { + "14186": { "Type": "Trice8_6", "Strg": "rd:Trice8_6 %d, %d, %d, %d, %d, %d\\n" }, - "15165": { + "14187": { "Type": "Trice8_7", "Strg": "rd:Trice8_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15166": { + "14188": { "Type": "Trice8_8", "Strg": "rd:Trice8_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15167": { + "14189": { "Type": "Trice8_9", "Strg": "rd:Trice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15168": { + "14190": { "Type": "Trice8_10", "Strg": "rd:Trice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15169": { + "14191": { "Type": "Trice8_11", "Strg": "rd:Trice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15170": { + "14192": { "Type": "Trice8_12", "Strg": "rd:Trice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15171": { + "14193": { "Type": "TRice8_1", "Strg": "rd:TRice8_1 %d\\n" }, - "15172": { + "14194": { "Type": "TRice8_2", "Strg": "rd:TRice8_2 %d, %d\\n" }, - "15173": { + "14195": { "Type": "TRice8_3", "Strg": "rd:TRice8_3 %d, %d, %d\\n" }, - "15174": { + "14196": { "Type": "TRice8_4", "Strg": "rd:TRice8_4 %d, %d, %d, %d\\n" }, - "15175": { + "14197": { "Type": "TRice8_5", "Strg": "rd:TRice8_5 %d, %d, %d, %d, %d\\n" }, - "15176": { + "14198": { "Type": "TRice8_6", "Strg": "rd:TRice8_6 %d, %d, %d, %d, %d, %d\\n" }, - "15177": { + "14199": { "Type": "TRice8_7", "Strg": "rd:TRice8_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15178": { + "14200": { "Type": "TRice8_8", "Strg": "rd:TRice8_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15179": { + "14201": { "Type": "TRice8_9", "Strg": "rd:TRice8_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15180": { + "14202": { "Type": "TRice8_10", "Strg": "rd:TRice8_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15181": { + "14203": { "Type": "TRice8_11", "Strg": "rd:TRice8_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15182": { + "14204": { "Type": "TRice8_12", "Strg": "rd:TRice8_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15183": { + "14205": { "Type": "trice", "Strg": "sig:TRICE16 with 1 to 12 values (line %d)\\n" }, - "15184": { - "Type": "TRICE16", + "14206": { + "Type": "trice16", "Strg": "rd:TRICE16 %d\\n" }, - "15185": { - "Type": "TRICE16", + "14207": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d\\n" }, - "15186": { - "Type": "TRICE16", + "14208": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d\\n" }, - "15187": { - "Type": "TRICE16", + "14209": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d\\n" }, - "15188": { - "Type": "TRICE16", + "14210": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d\\n" }, - "15189": { - "Type": "TRICE16", + "14211": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d\\n" }, - "15190": { - "Type": "TRICE16", + "14212": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15191": { - "Type": "TRICE16", + "14213": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15192": { - "Type": "TRICE16", + "14214": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15193": { - "Type": "TRICE16", + "14215": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15194": { - "Type": "TRICE16", + "14216": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15195": { - "Type": "TRICE16", + "14217": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15196": { - "Type": "TRICE16", + "14218": { + "Type": "trice16", "Strg": "rd:TRICE16 %d\\n" }, - "15197": { - "Type": "TRICE16", + "14219": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d\\n" }, - "15198": { - "Type": "TRICE16", + "14220": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d\\n" }, - "15199": { - "Type": "TRICE16", + "14221": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d\\n" }, - "15200": { - "Type": "TRICE16", + "14222": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d\\n" }, - "15201": { - "Type": "TRICE16", + "14223": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d\\n" }, - "15202": { - "Type": "TRICE16", + "14224": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15203": { - "Type": "TRICE16", + "14225": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15204": { - "Type": "TRICE16", + "14226": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15205": { - "Type": "TRICE16", + "14227": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15206": { - "Type": "TRICE16", + "14228": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15207": { - "Type": "TRICE16", + "14229": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15208": { - "Type": "TRICE16", + "14230": { + "Type": "trice16", "Strg": "rd:TRICE16 %d\\n" }, - "15209": { - "Type": "TRICE16", + "14231": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d\\n" }, - "15210": { - "Type": "TRICE16", + "14232": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d\\n" }, - "15211": { - "Type": "TRICE16", + "14233": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d\\n" }, - "15212": { - "Type": "TRICE16", + "14234": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d\\n" }, - "15213": { - "Type": "TRICE16", + "14235": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d\\n" }, - "15214": { - "Type": "TRICE16", + "14236": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15215": { - "Type": "TRICE16", + "14237": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15216": { - "Type": "TRICE16", + "14238": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15217": { - "Type": "TRICE16", + "14239": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15218": { - "Type": "TRICE16", + "14240": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15219": { - "Type": "TRICE16", + "14241": { + "Type": "trice16", "Strg": "rd:TRICE16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15220": { + "14242": { "Type": "trice", "Strg": "sig:TRICE16_n with 1 to 12 values (line %d)\\n" }, - "15221": { + "14243": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 %d\\n" }, - "15222": { + "14244": { "Type": "TRICE16_2", "Strg": "rd:TRICE16_2 %d, %d\\n" }, - "15223": { + "14245": { "Type": "TRICE16_3", "Strg": "rd:TRICE16_3 %d, %d, %d\\n" }, - "15224": { + "14246": { "Type": "TRICE16_4", "Strg": "rd:TRICE16_4 %d, %d, %d, %d\\n" }, - "15225": { + "14247": { "Type": "TRICE16_5", "Strg": "rd:TRICE16_5 %d, %d, %d, %d, %d\\n" }, - "15226": { + "14248": { "Type": "TRICE16_6", "Strg": "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\\n" }, - "15227": { + "14249": { "Type": "TRICE16_7", "Strg": "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15228": { + "14250": { "Type": "TRICE16_8", "Strg": "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15229": { + "14251": { "Type": "TRICE16_9", "Strg": "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15230": { + "14252": { "Type": "TRICE16_10", "Strg": "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15231": { + "14253": { "Type": "TRICE16_11", "Strg": "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15232": { + "14254": { "Type": "TRICE16_12", "Strg": "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15233": { + "14255": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 %d\\n" }, - "15234": { + "14256": { "Type": "TRICE16_2", "Strg": "rd:TRICE16_2 %d, %d\\n" }, - "15235": { + "14257": { "Type": "TRICE16_3", "Strg": "rd:TRICE16_3 %d, %d, %d\\n" }, - "15236": { + "14258": { "Type": "TRICE16_4", "Strg": "rd:TRICE16_4 %d, %d, %d, %d\\n" }, - "15237": { + "14259": { "Type": "TRICE16_5", "Strg": "rd:TRICE16_5 %d, %d, %d, %d, %d\\n" }, - "15238": { + "14260": { "Type": "TRICE16_6", "Strg": "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\\n" }, - "15239": { + "14261": { "Type": "TRICE16_7", "Strg": "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15240": { + "14262": { "Type": "TRICE16_8", "Strg": "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15241": { + "14263": { "Type": "TRICE16_9", "Strg": "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15242": { + "14264": { "Type": "TRICE16_10", "Strg": "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15243": { + "14265": { "Type": "TRICE16_11", "Strg": "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15244": { + "14266": { "Type": "TRICE16_12", "Strg": "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15245": { + "14267": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 %d\\n" }, - "15246": { + "14268": { "Type": "TRICE16_2", "Strg": "rd:TRICE16_2 %d, %d\\n" }, - "15247": { + "14269": { "Type": "TRICE16_3", "Strg": "rd:TRICE16_3 %d, %d, %d\\n" }, - "15248": { + "14270": { "Type": "TRICE16_4", "Strg": "rd:TRICE16_4 %d, %d, %d, %d\\n" }, - "15249": { + "14271": { "Type": "TRICE16_5", "Strg": "rd:TRICE16_5 %d, %d, %d, %d, %d\\n" }, - "15250": { + "14272": { "Type": "TRICE16_6", "Strg": "rd:TRICE16_6 %d, %d, %d, %d, %d, %d\\n" }, - "15251": { + "14273": { "Type": "TRICE16_7", "Strg": "rd:TRICE16_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15252": { + "14274": { "Type": "TRICE16_8", "Strg": "rd:TRICE16_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15253": { + "14275": { "Type": "TRICE16_9", "Strg": "rd:TRICE16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15254": { + "14276": { "Type": "TRICE16_10", "Strg": "rd:TRICE16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15255": { + "14277": { "Type": "TRICE16_11", "Strg": "rd:TRICE16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15256": { + "14278": { "Type": "TRICE16_12", "Strg": "rd:TRICE16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15257": { + "14279": { "Type": "trice", "Strg": "sig:trice16 with 1 to 12 values (line %d)\\n" }, - "15258": { + "14280": { "Type": "trice16", "Strg": "rd:trice16 %d\\n" }, - "15259": { + "14281": { "Type": "trice16", "Strg": "rd:trice16 %d, %d\\n" }, - "15260": { + "14282": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d\\n" }, - "15261": { + "14283": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d\\n" }, - "15262": { + "14284": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d\\n" }, - "15263": { + "14285": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d\\n" }, - "15264": { + "14286": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15265": { + "14287": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15266": { + "14288": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15267": { + "14289": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15268": { + "14290": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15269": { + "14291": { "Type": "trice16", "Strg": "rd:trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15270": { + "14292": { "Type": "Trice16", "Strg": "rd:Trice16 %d\\n" }, - "15271": { + "14293": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d\\n" }, - "15272": { + "14294": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d\\n" }, - "15273": { + "14295": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d\\n" }, - "15274": { + "14296": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d\\n" }, - "15275": { + "14297": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d\\n" }, - "15276": { + "14298": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15277": { + "14299": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15278": { + "14300": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15279": { + "14301": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15280": { + "14302": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15281": { + "14303": { "Type": "Trice16", "Strg": "rd:Trice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15282": { + "14304": { "Type": "TRice16", "Strg": "rd:TRice16 %d\\n" }, - "15283": { + "14305": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d\\n" }, - "15284": { + "14306": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d\\n" }, - "15285": { + "14307": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d\\n" }, - "15286": { + "14308": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d\\n" }, - "15287": { + "14309": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d\\n" }, - "15288": { + "14310": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15289": { + "14311": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15290": { + "14312": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15291": { + "14313": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15292": { + "14314": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15293": { + "14315": { "Type": "TRice16", "Strg": "rd:TRice16 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15294": { + "14316": { "Type": "trice", "Strg": "sig:trice16_n with 1 to 12 values (line %d)\\n" }, - "15295": { + "14317": { "Type": "trice16_1", "Strg": "rd:trice16_1 %d\\n" }, - "15296": { + "14318": { "Type": "trice16_2", "Strg": "rd:trice16_2 %d, %d\\n" }, - "15297": { + "14319": { "Type": "trice16_3", "Strg": "rd:trice16_3 %d, %d, %d\\n" }, - "15298": { + "14320": { "Type": "trice16_4", "Strg": "rd:trice16_4 %d, %d, %d, %d\\n" }, - "15299": { + "14321": { "Type": "trice16_5", "Strg": "rd:trice16_5 %d, %d, %d, %d, %d\\n" }, - "15300": { + "14322": { "Type": "trice16_6", "Strg": "rd:trice16_6 %d, %d, %d, %d, %d, %d\\n" }, - "15301": { + "14323": { "Type": "trice16_7", "Strg": "rd:trice16_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15302": { + "14324": { "Type": "trice16_8", "Strg": "rd:trice16_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15303": { + "14325": { "Type": "trice16_9", "Strg": "rd:trice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15304": { + "14326": { "Type": "trice16_10", "Strg": "rd:trice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15305": { + "14327": { "Type": "trice16_11", "Strg": "rd:trice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15306": { + "14328": { "Type": "trice16_12", "Strg": "rd:trice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15307": { + "14329": { "Type": "Trice16_1", "Strg": "rd:Trice16_1 %d\\n" }, - "15308": { + "14330": { "Type": "Trice16_2", "Strg": "rd:Trice16_2 %d, %d\\n" }, - "15309": { + "14331": { "Type": "Trice16_3", "Strg": "rd:Trice16_3 %d, %d, %d\\n" }, - "15310": { + "14332": { "Type": "Trice16_4", "Strg": "rd:Trice16_4 %d, %d, %d, %d\\n" }, - "15311": { + "14333": { "Type": "Trice16_5", "Strg": "rd:Trice16_5 %d, %d, %d, %d, %d\\n" }, - "15312": { + "14334": { "Type": "Trice16_6", "Strg": "rd:Trice16_6 %d, %d, %d, %d, %d, %d\\n" }, - "15313": { + "14335": { "Type": "Trice16_7", "Strg": "rd:Trice16_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15314": { + "14336": { "Type": "Trice16_8", "Strg": "rd:Trice16_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15315": { + "14337": { "Type": "Trice16_9", "Strg": "rd:Trice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15316": { + "14338": { "Type": "Trice16_10", "Strg": "rd:Trice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15317": { + "14339": { "Type": "Trice16_11", "Strg": "rd:Trice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15318": { + "14340": { "Type": "Trice16_12", "Strg": "rd:Trice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15319": { + "14341": { "Type": "TRice16_1", "Strg": "rd:TRice16_1 %d\\n" }, - "15320": { + "14342": { "Type": "TRice16_2", "Strg": "rd:TRice16_2 %d, %d\\n" }, - "15321": { + "14343": { "Type": "TRice16_3", "Strg": "rd:TRice16_3 %d, %d, %d\\n" }, - "15322": { + "14344": { "Type": "TRice16_4", "Strg": "rd:TRice16_4 %d, %d, %d, %d\\n" }, - "15323": { + "14345": { "Type": "TRice16_5", "Strg": "rd:TRice16_5 %d, %d, %d, %d, %d\\n" }, - "15324": { + "14346": { "Type": "TRice16_6", "Strg": "rd:TRice16_6 %d, %d, %d, %d, %d, %d\\n" }, - "15325": { + "14347": { "Type": "TRice16_7", "Strg": "rd:TRice16_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15326": { + "14348": { "Type": "TRice16_8", "Strg": "rd:TRice16_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15327": { + "14349": { "Type": "TRice16_9", "Strg": "rd:TRice16_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15328": { + "14350": { "Type": "TRice16_10", "Strg": "rd:TRice16_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15329": { + "14351": { "Type": "TRice16_11", "Strg": "rd:TRice16_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15330": { + "14352": { "Type": "TRice16_12", "Strg": "rd:TRice16_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15331": { + "14353": { "Type": "trice", "Strg": "sig:TRICE32 with 1 to 12 values (line %d)\\n" }, - "15332": { + "14354": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d\\n" }, - "15333": { + "14355": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d\\n" }, - "15334": { + "14356": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d\\n" }, - "15335": { + "14357": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d\\n" }, - "15336": { + "14358": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d\\n" }, - "15337": { + "14359": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d\\n" }, - "15338": { + "14360": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15339": { + "14361": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15340": { + "14362": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15341": { + "14363": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15342": { + "14364": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15343": { + "14365": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15344": { + "14366": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d\\n" }, - "15345": { + "14367": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d\\n" }, - "15346": { + "14368": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d\\n" }, - "15347": { + "14369": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d\\n" }, - "15348": { + "14370": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d\\n" }, - "15349": { + "14371": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d\\n" }, - "15350": { + "14372": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15351": { + "14373": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15352": { + "14374": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15353": { + "14375": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15354": { + "14376": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15355": { + "14377": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15356": { + "14378": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d\\n" }, - "15357": { + "14379": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d\\n" }, - "15358": { + "14380": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d\\n" }, - "15359": { + "14381": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d\\n" }, - "15360": { + "14382": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d\\n" }, - "15361": { + "14383": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d\\n" }, - "15362": { + "14384": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15363": { + "14385": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15364": { + "14386": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15365": { + "14387": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15366": { + "14388": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15367": { + "14389": { "Type": "TRICE32", "Strg": "rd:TRICE32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15368": { + "14390": { "Type": "trice", "Strg": "signal:TRICE32_n with 1 to 12 values (line %d)\\n" }, - "15369": { + "14391": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 %d\\n" }, - "15370": { + "14392": { "Type": "TRICE32_2", "Strg": "rd:TRICE32_2 %d, %d\\n" }, - "15371": { + "14393": { "Type": "TRICE32_3", "Strg": "rd:TRICE32_3 %d, %d, %d\\n" }, - "15372": { + "14394": { "Type": "TRICE32_4", "Strg": "rd:TRICE32_4 %d, %d, %d, %d\\n" }, - "15373": { + "14395": { "Type": "TRICE32_5", "Strg": "rd:TRICE32_5 %d, %d, %d, %d, %d\\n" }, - "15374": { + "14396": { "Type": "TRICE32_6", "Strg": "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\\n" }, - "15375": { + "14397": { "Type": "TRICE32_7", "Strg": "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15376": { + "14398": { "Type": "TRICE32_8", "Strg": "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15377": { + "14399": { "Type": "TRICE32_9", "Strg": "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15378": { + "14400": { "Type": "TRICE32_10", "Strg": "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15379": { + "14401": { "Type": "TRICE32_11", "Strg": "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15380": { + "14402": { "Type": "TRICE32_12", "Strg": "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15381": { + "14403": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 %d\\n" }, - "15382": { + "14404": { "Type": "TRICE32_2", "Strg": "rd:TRICE32_2 %d, %d\\n" }, - "15383": { + "14405": { "Type": "TRICE32_3", "Strg": "rd:TRICE32_3 %d, %d, %d\\n" }, - "15384": { + "14406": { "Type": "TRICE32_4", "Strg": "rd:TRICE32_4 %d, %d, %d, %d\\n" }, - "15385": { + "14407": { "Type": "TRICE32_5", "Strg": "rd:TRICE32_5 %d, %d, %d, %d, %d\\n" }, - "15386": { + "14408": { "Type": "TRICE32_6", "Strg": "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\\n" }, - "15387": { + "14409": { "Type": "TRICE32_7", "Strg": "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15388": { + "14410": { "Type": "TRICE32_8", "Strg": "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15389": { + "14411": { "Type": "TRICE32_9", "Strg": "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15390": { + "14412": { "Type": "TRICE32_10", "Strg": "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15391": { + "14413": { "Type": "TRICE32_11", "Strg": "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15392": { + "14414": { "Type": "TRICE32_12", "Strg": "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15393": { + "14415": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 %d\\n" }, - "15394": { + "14416": { "Type": "TRICE32_2", "Strg": "rd:TRICE32_2 %d, %d\\n" }, - "15395": { + "14417": { "Type": "TRICE32_3", "Strg": "rd:TRICE32_3 %d, %d, %d\\n" }, - "15396": { + "14418": { "Type": "TRICE32_4", "Strg": "rd:TRICE32_4 %d, %d, %d, %d\\n" }, - "15397": { + "14419": { "Type": "TRICE32_5", "Strg": "rd:TRICE32_5 %d, %d, %d, %d, %d\\n" }, - "15398": { + "14420": { "Type": "TRICE32_6", "Strg": "rd:TRICE32_6 %d, %d, %d, %d, %d, %d\\n" }, - "15399": { + "14421": { "Type": "TRICE32_7", "Strg": "rd:TRICE32_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15400": { + "14422": { "Type": "TRICE32_8", "Strg": "rd:TRICE32_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15401": { + "14423": { "Type": "TRICE32_9", "Strg": "rd:TRICE32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15402": { + "14424": { "Type": "TRICE32_10", "Strg": "rd:TRICE32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15403": { + "14425": { "Type": "TRICE32_11", "Strg": "rd:TRICE32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15404": { + "14426": { "Type": "TRICE32_12", "Strg": "rd:TRICE32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15405": { + "14427": { "Type": "trice", "Strg": "sig:trice32 with 1 to 12 values (line %d)\\n" }, - "15406": { + "14428": { "Type": "trice32", "Strg": "rd:trice32 %d\\n" }, - "15407": { + "14429": { "Type": "trice32", "Strg": "rd:trice32 %d, %d\\n" }, - "15408": { + "14430": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d\\n" }, - "15409": { + "14431": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d\\n" }, - "15410": { + "14432": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d\\n" }, - "15411": { + "14433": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d\\n" }, - "15412": { + "14434": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15413": { + "14435": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15414": { + "14436": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15415": { + "14437": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15416": { + "14438": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15417": { + "14439": { "Type": "trice32", "Strg": "rd:trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15418": { + "14440": { "Type": "Trice32", "Strg": "rd:Trice32 %d\\n" }, - "15419": { + "14441": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d\\n" }, - "15420": { + "14442": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d\\n" }, - "15421": { + "14443": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d\\n" }, - "15422": { + "14444": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d\\n" }, - "15423": { + "14445": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d\\n" }, - "15424": { + "14446": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15425": { + "14447": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15426": { + "14448": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15427": { + "14449": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15428": { + "14450": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15429": { + "14451": { "Type": "Trice32", "Strg": "rd:Trice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15430": { + "14452": { "Type": "TRice32", "Strg": "rd:TRice32 %d\\n" }, - "15431": { + "14453": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d\\n" }, - "15432": { + "14454": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d\\n" }, - "15433": { + "14455": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d\\n" }, - "15434": { + "14456": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d\\n" }, - "15435": { + "14457": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d\\n" }, - "15436": { + "14458": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15437": { + "14459": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15438": { + "14460": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15439": { + "14461": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15440": { + "14462": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15441": { + "14463": { "Type": "TRice32", "Strg": "rd:TRice32 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15442": { + "14464": { "Type": "trice", "Strg": "signal:trice32_n with 1 to 12 values (line %d)\\n" }, - "15443": { + "14465": { "Type": "trice32_1", "Strg": "rd:trice32_1 %d\\n" }, - "15444": { + "14466": { "Type": "trice32_2", "Strg": "rd:trice32_2 %d, %d\\n" }, - "15445": { + "14467": { "Type": "trice32_3", "Strg": "rd:trice32_3 %d, %d, %d\\n" }, - "15446": { + "14468": { "Type": "trice32_4", "Strg": "rd:trice32_4 %d, %d, %d, %d\\n" }, - "15447": { + "14469": { "Type": "trice32_5", "Strg": "rd:trice32_5 %d, %d, %d, %d, %d\\n" }, - "15448": { + "14470": { "Type": "trice32_6", "Strg": "rd:trice32_6 %d, %d, %d, %d, %d, %d\\n" }, - "15449": { + "14471": { "Type": "trice32_7", "Strg": "rd:trice32_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15450": { + "14472": { "Type": "trice32_8", "Strg": "rd:trice32_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15451": { + "14473": { "Type": "trice32_9", "Strg": "rd:trice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15452": { + "14474": { "Type": "trice32_10", "Strg": "rd:trice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15453": { + "14475": { "Type": "trice32_11", "Strg": "rd:trice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15454": { + "14476": { "Type": "trice32_12", "Strg": "rd:trice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15455": { + "14477": { "Type": "Trice32_1", "Strg": "rd:Trice32_1 %d\\n" }, - "15456": { + "14478": { "Type": "Trice32_2", "Strg": "rd:Trice32_2 %d, %d\\n" }, - "15457": { + "14479": { "Type": "Trice32_3", "Strg": "rd:Trice32_3 %d, %d, %d\\n" }, - "15458": { + "14480": { "Type": "Trice32_4", "Strg": "rd:Trice32_4 %d, %d, %d, %d\\n" }, - "15459": { + "14481": { "Type": "Trice32_5", "Strg": "rd:Trice32_5 %d, %d, %d, %d, %d\\n" }, - "15460": { + "14482": { "Type": "Trice32_6", "Strg": "rd:Trice32_6 %d, %d, %d, %d, %d, %d\\n" }, - "15461": { + "14483": { "Type": "Trice32_7", "Strg": "rd:Trice32_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15462": { + "14484": { "Type": "Trice32_8", "Strg": "rd:Trice32_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15463": { + "14485": { "Type": "Trice32_9", "Strg": "rd:Trice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15464": { + "14486": { "Type": "Trice32_10", "Strg": "rd:Trice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15465": { + "14487": { "Type": "Trice32_11", "Strg": "rd:Trice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15466": { + "14488": { "Type": "Trice32_12", "Strg": "rd:Trice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15467": { + "14489": { "Type": "TRice32_1", "Strg": "rd:TRice32_1 %d\\n" }, - "15468": { + "14490": { "Type": "TRice32_2", "Strg": "rd:TRice32_2 %d, %d\\n" }, - "15469": { + "14491": { "Type": "TRice32_3", "Strg": "rd:TRice32_3 %d, %d, %d\\n" }, - "15470": { + "14492": { "Type": "TRice32_4", "Strg": "rd:TRice32_4 %d, %d, %d, %d\\n" }, - "15471": { + "14493": { "Type": "TRice32_5", "Strg": "rd:TRice32_5 %d, %d, %d, %d, %d\\n" }, - "15472": { + "14494": { "Type": "TRice32_6", "Strg": "rd:TRice32_6 %d, %d, %d, %d, %d, %d\\n" }, - "15473": { + "14495": { "Type": "TRice32_7", "Strg": "rd:TRice32_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15474": { + "14496": { "Type": "TRice32_8", "Strg": "rd:TRice32_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15475": { + "14497": { "Type": "TRice32_9", "Strg": "rd:TRice32_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15476": { + "14498": { "Type": "TRice32_10", "Strg": "rd:TRice32_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15477": { + "14499": { "Type": "TRice32_11", "Strg": "rd:TRice32_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15478": { + "14500": { "Type": "TRice32_12", "Strg": "rd:TRice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15479": { + "14501": { "Type": "trice", "Strg": "sig:TRICE64 with 1 to 12 values (line %d)\\n" }, - "15480": { + "14502": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d\\n" }, - "15481": { + "14503": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d\\n" }, - "15482": { + "14504": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d\\n" }, - "15483": { + "14505": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d\\n" }, - "15484": { + "14506": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d\\n" }, - "15485": { + "14507": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d\\n" }, - "15486": { + "14508": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15487": { + "14509": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15488": { + "14510": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15489": { + "14511": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15490": { + "14512": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15491": { + "14513": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15492": { + "14514": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d\\n" }, - "15493": { + "14515": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d\\n" }, - "15494": { + "14516": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d\\n" }, - "15495": { + "14517": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d\\n" }, - "15496": { + "14518": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d\\n" }, - "15497": { + "14519": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d\\n" }, - "15498": { + "14520": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15499": { + "14521": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15500": { + "14522": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15501": { + "14523": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15502": { + "14524": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15503": { + "14525": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15504": { + "14526": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d\\n" }, - "15505": { + "14527": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d\\n" }, - "15506": { + "14528": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d\\n" }, - "15507": { + "14529": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d\\n" }, - "15508": { + "14530": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d\\n" }, - "15509": { + "14531": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d\\n" }, - "15510": { + "14532": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15511": { + "14533": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15512": { + "14534": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15513": { + "14535": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15514": { + "14536": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15515": { + "14537": { "Type": "TRICE64", "Strg": "rd:TRICE64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15516": { + "14538": { "Type": "trice", "Strg": "signal:TRICE64_n with 1 to 12 values (line %d)\\n" }, - "15517": { + "14539": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 %d\\n" }, - "15518": { + "14540": { "Type": "TRICE64_2", "Strg": "rd:TRICE64_2 %d, %d\\n" }, - "15519": { + "14541": { "Type": "TRICE64_3", "Strg": "rd:TRICE64_3 %d, %d, %d\\n" }, - "15520": { + "14542": { "Type": "TRICE64_4", "Strg": "rd:TRICE64_4 %d, %d, %d, %d\\n" }, - "15521": { + "14543": { "Type": "TRICE64_5", "Strg": "rd:TRICE64_5 %d, %d, %d, %d, %d\\n" }, - "15522": { + "14544": { "Type": "TRICE64_6", "Strg": "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\\n" }, - "15523": { + "14545": { "Type": "TRICE64_7", "Strg": "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15524": { + "14546": { "Type": "TRICE64_8", "Strg": "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15525": { + "14547": { "Type": "TRICE64_9", "Strg": "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15526": { + "14548": { "Type": "TRICE64_10", "Strg": "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15527": { + "14549": { "Type": "TRICE64_11", "Strg": "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15528": { + "14550": { "Type": "TRICE64_12", "Strg": "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15529": { + "14551": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 %d\\n" }, - "15530": { + "14552": { "Type": "TRICE64_2", "Strg": "rd:TRICE64_2 %d, %d\\n" }, - "15531": { + "14553": { "Type": "TRICE64_3", "Strg": "rd:TRICE64_3 %d, %d, %d\\n" }, - "15532": { + "14554": { "Type": "TRICE64_4", "Strg": "rd:TRICE64_4 %d, %d, %d, %d\\n" }, - "15533": { + "14555": { "Type": "TRICE64_5", "Strg": "rd:TRICE64_5 %d, %d, %d, %d, %d\\n" }, - "15534": { + "14556": { "Type": "TRICE64_6", "Strg": "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\\n" }, - "15535": { + "14557": { "Type": "TRICE64_7", "Strg": "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15536": { + "14558": { "Type": "TRICE64_8", "Strg": "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15537": { + "14559": { "Type": "TRICE64_9", "Strg": "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15538": { + "14560": { "Type": "TRICE64_10", "Strg": "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15539": { + "14561": { "Type": "TRICE64_11", "Strg": "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15540": { + "14562": { "Type": "TRICE64_12", "Strg": "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15541": { + "14563": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 %d\\n" }, - "15542": { + "14564": { "Type": "TRICE64_2", "Strg": "rd:TRICE64_2 %d, %d\\n" }, - "15543": { + "14565": { "Type": "TRICE64_3", "Strg": "rd:TRICE64_3 %d, %d, %d\\n" }, - "15544": { + "14566": { "Type": "TRICE64_4", "Strg": "rd:TRICE64_4 %d, %d, %d, %d\\n" }, - "15545": { + "14567": { "Type": "TRICE64_5", "Strg": "rd:TRICE64_5 %d, %d, %d, %d, %d\\n" }, - "15546": { + "14568": { "Type": "TRICE64_6", "Strg": "rd:TRICE64_6 %d, %d, %d, %d, %d, %d\\n" }, - "15547": { + "14569": { "Type": "TRICE64_7", "Strg": "rd:TRICE64_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15548": { + "14570": { "Type": "TRICE64_8", "Strg": "rd:TRICE64_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15549": { + "14571": { "Type": "TRICE64_9", "Strg": "rd:TRICE64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15550": { + "14572": { "Type": "TRICE64_10", "Strg": "rd:TRICE64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15551": { + "14573": { "Type": "TRICE64_11", "Strg": "rd:TRICE64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15552": { + "14574": { "Type": "TRICE64_12", "Strg": "rd:TRICE64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15553": { + "14575": { "Type": "trice", "Strg": "sig:trice64 with 1 to 12 values (line %d)\\n" }, - "15554": { + "14576": { "Type": "trice64", "Strg": "rd:trice64 %d\\n" }, - "15555": { + "14577": { "Type": "trice64", "Strg": "rd:trice64 %d, %d\\n" }, - "15556": { + "14578": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d\\n" }, - "15557": { + "14579": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d\\n" }, - "15558": { + "14580": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d\\n" }, - "15559": { + "14581": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d\\n" }, - "15560": { + "14582": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15561": { + "14583": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15562": { + "14584": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15563": { + "14585": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15564": { + "14586": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15565": { + "14587": { "Type": "trice64", "Strg": "rd:trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15566": { + "14588": { "Type": "Trice64", "Strg": "rd:Trice64 %d\\n" }, - "15567": { + "14589": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d\\n" }, - "15568": { + "14590": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d\\n" }, - "15569": { + "14591": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d\\n" }, - "15570": { + "14592": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d\\n" }, - "15571": { + "14593": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d\\n" }, - "15572": { + "14594": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15573": { + "14595": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15574": { + "14596": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15575": { + "14597": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15576": { + "14598": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15577": { + "14599": { "Type": "Trice64", "Strg": "rd:Trice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15578": { + "14600": { "Type": "TRice64", "Strg": "rd:TRice64 %d\\n" }, - "15579": { + "14601": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d\\n" }, - "15580": { + "14602": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d\\n" }, - "15581": { + "14603": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d\\n" }, - "15582": { + "14604": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d\\n" }, - "15583": { + "14605": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d\\n" }, - "15584": { + "14606": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15585": { + "14607": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15586": { + "14608": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15587": { + "14609": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15588": { + "14610": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15589": { + "14611": { "Type": "TRice64", "Strg": "rd:TRice64 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15590": { + "14612": { "Type": "trice", "Strg": "signal:trice64_n with 1 to 12 values (line %d)\\n" }, - "15591": { + "14613": { "Type": "trice64_1", "Strg": "rd:trice64_1 %d\\n" }, - "15592": { + "14614": { "Type": "trice64_2", "Strg": "rd:trice64_2 %d, %d\\n" }, - "15593": { + "14615": { "Type": "trice64_3", "Strg": "rd:trice64_3 %d, %d, %d\\n" }, - "15594": { + "14616": { "Type": "trice64_4", "Strg": "rd:trice64_4 %d, %d, %d, %d\\n" }, - "15595": { + "14617": { "Type": "trice64_5", "Strg": "rd:trice64_5 %d, %d, %d, %d, %d\\n" }, - "15596": { + "14618": { "Type": "trice64_6", "Strg": "rd:trice64_6 %d, %d, %d, %d, %d, %d\\n" }, - "15597": { + "14619": { "Type": "trice64_7", "Strg": "rd:trice64_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15598": { + "14620": { "Type": "trice64_8", "Strg": "rd:trice64_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15599": { + "14621": { "Type": "trice64_9", "Strg": "rd:trice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15600": { + "14622": { "Type": "trice64_10", "Strg": "rd:trice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15601": { + "14623": { "Type": "trice64_11", "Strg": "rd:trice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15602": { + "14624": { "Type": "trice64_12", "Strg": "rd:trice64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15603": { + "14625": { "Type": "Trice64_1", "Strg": "rd:Trice64_1 %d\\n" }, - "15604": { + "14626": { "Type": "Trice64_2", "Strg": "rd:Trice64_2 %d, %d\\n" }, - "15605": { + "14627": { "Type": "Trice64_3", "Strg": "rd:Trice64_3 %d, %d, %d\\n" }, - "15606": { + "14628": { "Type": "Trice64_4", "Strg": "rd:Trice64_4 %d, %d, %d, %d\\n" }, - "15607": { + "14629": { "Type": "Trice64_5", "Strg": "rd:Trice64_5 %d, %d, %d, %d, %d\\n" }, - "15608": { + "14630": { "Type": "Trice64_6", "Strg": "rd:Trice64_6 %d, %d, %d, %d, %d, %d\\n" }, - "15609": { + "14631": { "Type": "Trice64_7", "Strg": "rd:Trice64_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15610": { + "14632": { "Type": "Trice64_8", "Strg": "rd:Trice64_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15611": { + "14633": { "Type": "Trice64_9", "Strg": "rd:Trice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15612": { + "14634": { "Type": "Trice64_10", "Strg": "rd:Trice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15613": { + "14635": { "Type": "Trice64_11", "Strg": "rd:Trice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15614": { + "14636": { "Type": "Trice64_12", "Strg": "rd:Trice64_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15615": { + "14637": { "Type": "TRice64_1", "Strg": "rd:TRice64_1 %d\\n" }, - "15616": { + "14638": { "Type": "TRice64_2", "Strg": "rd:TRice64_2 %d, %d\\n" }, - "15617": { + "14639": { "Type": "TRice64_3", "Strg": "rd:TRice64_3 %d, %d, %d\\n" }, - "15618": { + "14640": { "Type": "TRice64_4", "Strg": "rd:TRice64_4 %d, %d, %d, %d\\n" }, - "15619": { + "14641": { "Type": "TRice64_5", "Strg": "rd:TRice64_5 %d, %d, %d, %d, %d\\n" }, - "15620": { + "14642": { "Type": "TRice64_6", "Strg": "rd:TRice64_6 %d, %d, %d, %d, %d, %d\\n" }, - "15621": { + "14643": { "Type": "TRice64_7", "Strg": "rd:TRice64_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "15622": { + "14644": { "Type": "TRice64_8", "Strg": "rd:TRice64_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15623": { + "14645": { "Type": "TRice64_9", "Strg": "rd:TRice64_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15624": { + "14646": { "Type": "TRice64_10", "Strg": "rd:TRice64_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15625": { + "14647": { "Type": "TRice64_11", "Strg": "rd:TRice64_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15626": { + "14648": { "Type": "TRice32_12", "Strg": "rd:TRice32_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "15627": { + "14649": { "Type": "TRICE", "Strg": "sig:Colors and ticks\\n" }, - "15628": { + "14650": { "Type": "TRICE", "Strg": "--------------------------------------------------\\n" }, - "15629": { + "14651": { "Type": "TRICE", "Strg": "--------------------------------------------------\\n" }, - "15630": { + "14652": { "Type": "TRICE", "Strg": "dbg:12345 as 16bit is %016b\\n" }, - "15631": { + "14653": { "Type": "TRICE", "Strg": "--------------------------------------------------\\n" }, - "15632": { + "14654": { "Type": "TRICE", "Strg": "sig:This ASSERT error is just a demo and no real error:\\n" }, - "15633": { + "14655": { "Type": "TRICE", "Strg": "--------------------------------------------------\\n" }, - "15634": { + "14656": { "Type": "TRICE", "Strg": "ERR:error message, SysTick is %6u\\n" }, - "15635": { + "14657": { "Type": "TRICE", "Strg": "WRN:warning message, SysTick is %6u\\n" }, - "15636": { + "14658": { "Type": "TRICE", "Strg": "ATT:attention message, SysTick is %6u\\n" }, - "15637": { + "14659": { "Type": "TRICE", "Strg": "DIA:diagnostics message, SysTick is %6u\\n" }, - "15638": { + "14660": { "Type": "TRICE", "Strg": "TIM:timing message, SysTick is %6u\\n" }, - "15639": { + "14661": { "Type": "TRICE", "Strg": "DBG:debug message, SysTick is %6u\\n" }, - "15640": { + "14662": { "Type": "TRICE", "Strg": "SIG:signal message, SysTick is %6u\\n" }, - "15641": { + "14663": { "Type": "TRICE", "Strg": "RD:read message, SysTick is %6u\\n" }, - "15642": { + "14664": { "Type": "TRICE", "Strg": "WR:write message, SysTick is %6u\\n" }, - "15643": { + "14665": { "Type": "TRICE", "Strg": "ISR:interrupt message, SysTick is %6u\\n" }, - "15644": { + "14666": { "Type": "TRICE", "Strg": "MSG:normal message, SysTick is %6u\\n" }, - "15645": { + "14667": { "Type": "TRICE", "Strg": "INFO:informal message, SysTick is %6u\\n" }, - "15646": { + "14668": { "Type": "TRICE", "Strg": "time:TRICE32_1 message, SysTick is %6u\\n" }, - "15647": { + "14669": { "Type": "TRICE", "Strg": "sig:Various ranges and formats\\n" }, - "15648": { + "14670": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%03x -\u003e %03x %03x %03x %03x\\n" }, - "15649": { + "14671": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%4d -\u003e %4d %4d %4d %4d\\n" }, - "15650": { + "14672": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%4u -\u003e %4u %4u %4u %4u\\n" }, - "15651": { + "14673": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%4o -\u003e %4o %4o %4o %4o\\n" }, - "15652": { + "14674": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%4O -\u003e %4O %4O %4O %4O\\n" }, - "15653": { + "14675": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%4X -\u003e %4X %4X %4X %4X\\n" }, - "15654": { + "14676": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%4x -\u003e %4x %4x %4x %4x\\n" }, - "15655": { + "14677": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%8b -\u003e %8b %8b %8b %8b\\n" }, - "15656": { + "14678": { "Type": "TRICE8", "Strg": "tst:TRICE8 %%08b -\u003e %08b %08b %08b %08b\\n" }, - "15657": { + "14679": { "Type": "TRICE16", "Strg": "tst:TRICE16 %%05x -\u003e %05x %05x %05x %05x\\n" }, - "15658": { + "14680": { "Type": "TRICE16", "Strg": "tst:TRICE16 %%6d -\u003e %6d %6d %6d %6d\\n" }, - "15659": { + "14681": { "Type": "TRICE16", "Strg": "tst:TRICE16 %%7o -\u003e %7o %7o %7o %7o\\n" }, - "15660": { + "14682": { "Type": "TRICE32", "Strg": "tst:TRICE32 %%09x -\u003e %09x %09x %09x %09x\\n" }, - "15661": { + "14683": { "Type": "TRICE32", "Strg": "tst:TRICE32 %%10d -\u003e %10d %10d %10d %10x\\n" }, - "15662": { + "14684": { "Type": "TRICE32", "Strg": "att:TRICE32 %40b\\n" }, - "15663": { + "14685": { "Type": "TRICE64", "Strg": "tst:TRICE64 %%09x -\u003e %09x %09x %09x %09x\\n" }, - "15664": { + "14686": { "Type": "TRICE64", "Strg": "tst:TRICE64 %%10d -\u003e %10d %10d %10d %10x\\n" }, - "15665": { + "14687": { "Type": "TRICE64", "Strg": "att:TRICE64 %70b\\n" }, - "15666": { + "14688": { "Type": "TRICE", "Strg": "sig:Legacy TRICE8\\n" }, - "15667": { + "14689": { "Type": "TRICE8_1", "Strg": "tst:TRICE8_1 %02x\\n" }, - "15668": { + "14690": { "Type": "TRICE8_2", "Strg": "tst:TRICE8_2 %02x %02x\\n" }, - "15669": { + "14691": { "Type": "TRICE8_3", "Strg": "tst:TRICE8_3 %02x %02x %02x\\n" }, - "15670": { + "14692": { "Type": "TRICE8_4", "Strg": "tst:TRICE8_4 %02x %02x %02x %02x\\n" }, - "15671": { + "14693": { "Type": "TRICE8_5", "Strg": "tst:TRICE8_5 %02x %02x %02x %02x %02x\\n" }, - "15672": { + "14694": { "Type": "TRICE8_6", "Strg": "tst:TRICE8_6 %02x %02x %02x %02x %02x %02x\\n" }, - "15673": { + "14695": { "Type": "TRICE8_7", "Strg": "tst:TRICE8_7 %02x %02x %02x %02x %02x %02x %02x\\n" }, - "15674": { + "14696": { "Type": "TRICE8_8", "Strg": "tst:TRICE8_8 %02X %02X %02X %02X %02x %02x %02x %02x\\n" }, - "15675": { + "14697": { "Type": "TRICE8_1", "Strg": "tst:TRICE8_1 %d\\n" }, - "15676": { + "14698": { "Type": "TRICE8_2", "Strg": "tst:TRICE8_2 %d %d\\n" }, - "15677": { + "14699": { "Type": "TRICE8_3", "Strg": "tst:TRICE8_3 %d %d %d\\n" }, - "15678": { + "14700": { "Type": "TRICE8_4", "Strg": "tst:TRICE8_4 %d %d %d %d\\n" }, - "15679": { + "14701": { "Type": "TRICE8_5", "Strg": "tst:TRICE8_5 %d %d %d %d %d\\n" }, - "15680": { + "14702": { "Type": "TRICE8_6", "Strg": "tst:TRICE8_6 %d %d %d %d %d %d\\n" }, - "15681": { + "14703": { "Type": "TRICE8_7", "Strg": "tst:TRICE8_7 %d %d %d %d %d %d %d\\n" }, - "15682": { + "14704": { "Type": "TRICE8_8", "Strg": "tst:TRICE8_8 %d %d %d %d %d %d %d %d\\n" }, - "15683": { + "14705": { "Type": "TRICE8_1", "Strg": "tst:TRICE8_1 %d\\n" }, - "15684": { + "14706": { "Type": "TRICE8_2", "Strg": "tst:TRICE8_2 %d %d\\n" }, - "15685": { + "14707": { "Type": "TRICE8_3", "Strg": "tst:TRICE8_3 %d %d %d\\n" }, - "15686": { + "14708": { "Type": "TRICE8_4", "Strg": "tst:TRICE8_4 %d %d %d %d\\n" }, - "15687": { + "14709": { "Type": "TRICE8_5", "Strg": "tst:TRICE8_5 %d %d %d %d %d\\n" }, - "15688": { + "14710": { "Type": "TRICE8_6", "Strg": "tst:TRICE8_6 %d %d %d %d %d %d\\n" }, - "15689": { + "14711": { "Type": "TRICE8_7", "Strg": "tst:TRICE8_7 %d %d %d %d %d %d %d\\n" }, - "15690": { + "14712": { "Type": "TRICE8_8", "Strg": "tst:TRICE8_8 %d %d %d %d %d %d %d %d\\n" }, - "15691": { + "14713": { "Type": "TRICE8_1", "Strg": "tst:TRICE8_1 %u\\n" }, - "15692": { + "14714": { "Type": "TRICE8_2", "Strg": "tst:TRICE8_2 %u %u\\n" }, - "15693": { + "14715": { "Type": "TRICE8_3", "Strg": "tst:TRICE8_3 %u %u %u\\n" }, - "15694": { + "14716": { "Type": "TRICE8_4", "Strg": "tst:TRICE8_4 %u %u %u %u\\n" }, - "15695": { + "14717": { "Type": "TRICE8_5", "Strg": "tst:TRICE8_5 %u %u %u %u %u\\n" }, - "15696": { + "14718": { "Type": "TRICE8_6", "Strg": "tst:TRICE8_6 %u %u %u %u %u %u\\n" }, - "15697": { + "14719": { "Type": "TRICE8_7", "Strg": "tst:TRICE8_7 %u %u %u %u %u %u %u\\n" }, - "15698": { + "14720": { "Type": "TRICE8_8", "Strg": "tst:TRICE8_8 %u %u %u %u %u %u %u %u\\n" }, - "15699": { + "14721": { "Type": "TRICE8_8", "Strg": "tst:TRICE8_1 %%d=%d, %%u=%u, 0x%%x=0x%x, 0x%%2x=0x%2x, 0x%%02x=0x%02x, 0x%%3x=0x%3x, 0x%%03x=0x%03x, %%b=%b\\n" }, - "15700": { + "14722": { "Type": "TRICE", "Strg": "sig:Legacy TRICE16-64\\n" }, - "15701": { + "14723": { "Type": "TRICE16_1", "Strg": "tst:TRICE16_1 %d\\n" }, - "15702": { + "14724": { "Type": "TRICE16_2", "Strg": "tst:TRICE16_2 %d %d\\n" }, - "15703": { + "14725": { "Type": "TRICE16_3", "Strg": "tst:TRICE16_3 %d %d %d\\n" }, - "15704": { + "14726": { "Type": "TRICE16_4", "Strg": "tst:TRICE16_4 %d %d %d %d\\n" }, - "15705": { + "14727": { "Type": "TRICE32_1", "Strg": "tst:TRICE32_1 %08x\\n" }, - "15706": { + "14728": { "Type": "TRICE32_1", "Strg": "tst:TRICE32_1 %d\\n" }, - "15707": { + "14729": { "Type": "TRICE32_2", "Strg": "tst:TRICE32_2 %x %x\\n" }, - "15708": { + "14730": { "Type": "TRICE32_2", "Strg": "tst:TRICE32_2 %d %d\\n" }, - "15709": { + "14731": { "Type": "TRICE32_3", "Strg": "tst:TRICE32_3 %x %x %x\\n" }, - "15710": { + "14732": { "Type": "TRICE32_3", "Strg": "tst:TRICE32_3 %d %d %d\\n" }, - "15711": { + "14733": { "Type": "TRICE32_4", "Strg": "tst:TRICE32_4 %x %x %x %x\\n" }, - "15712": { + "14734": { "Type": "TRICE32_4", "Strg": "tst:TRICE32_4 %d %d %d %d\\n" }, - "15713": { + "14735": { "Type": "TRICE64_1", "Strg": "tst:TRICE64_1 %d\\n" }, - "15714": { + "14736": { "Type": "TRICE64_2", "Strg": "tst:TRICE64_2 %d %d\\n" }, - "15715": { + "14737": { "Type": "TRICE16_1", "Strg": "tst:TRICE16_1 %u\\n" }, - "15716": { + "14738": { "Type": "TRICE16_2", "Strg": "tst:TRICE16_2 %u %u\\n" }, - "15717": { + "14739": { "Type": "TRICE16_3", "Strg": "tst:TRICE16_3 %u %u %u\\n" }, - "15718": { + "14740": { "Type": "TRICE16_4", "Strg": "tst:TRICE16_4 %u %u %u %u\\n" }, - "15719": { + "14741": { "Type": "TRICE32_1", "Strg": "tst:TRICE32_1 %u\\n" }, - "15720": { + "14742": { "Type": "TRICE32_2", "Strg": "tst:TRICE32_2 %u %u\\n" }, - "15721": { + "14743": { "Type": "TRICE32_3", "Strg": "tst:TRICE32_3 %u %u %u\\n" }, - "15722": { + "14744": { "Type": "TRICE32_4", "Strg": "tst:TRICE32_4 %u %u %u %u\\n" }, - "15723": { + "14745": { "Type": "TRICE64_1", "Strg": "tst:TRICE64_1 %x\\n" }, - "15724": { + "14746": { "Type": "TRICE64_2", "Strg": "tst:TRICE64_2 %x %x\\n" }, - "15725": { + "14747": { "Type": "TRICE64_1", "Strg": "tst:TRICE64_1 %u\\n" }, - "15726": { + "14748": { "Type": "TRICE64_2", "Strg": "tst:TRICE64_2 %u %u\\n" }, - "15727": { - "Type": "TRICE", + "14749": { + "Type": "trice", "Strg": "sig:colored single letters and several TRICE macros in one line\\n" }, - "15728": { - "Type": "TRICE", + "14750": { + "Type": "trice", "Strg": "e:A" }, - "15729": { - "Type": "TRICE", + "14751": { + "Type": "trice", "Strg": "w:B" }, - "15730": { - "Type": "TRICE", + "14752": { + "Type": "trice", "Strg": "a:c" }, - "15731": { - "Type": "TRICE", + "14753": { + "Type": "trice", "Strg": "wr:d" }, - "15732": { - "Type": "TRICE", + "14754": { + "Type": "trice", "Strg": "rd:e\\n" }, - "15733": { - "Type": "TRICE", + "14755": { + "Type": "trice", "Strg": "diag:f" }, - "15734": { - "Type": "TRICE", + "14756": { + "Type": "trice", "Strg": "d:G" }, - "15735": { - "Type": "TRICE", + "14757": { + "Type": "trice", "Strg": "t:H" }, - "15736": { - "Type": "TRICE", + "14758": { + "Type": "trice", "Strg": "time:i" }, - "15737": { - "Type": "TRICE", + "14759": { + "Type": "trice", "Strg": "message:J" }, - "15738": { - "Type": "TRICE", + "14760": { + "Type": "trice", "Strg": "dbg:k\\n" }, - "15739": { - "Type": "TRICE", + "14761": { + "Type": "trice", "Strg": "1" }, - "15740": { - "Type": "TRICE", + "14762": { + "Type": "trice", "Strg": "2" }, - "15741": { - "Type": "TRICE", + "14763": { + "Type": "trice", "Strg": "3" }, - "15742": { - "Type": "TRICE", + "14764": { + "Type": "trice", "Strg": "4" }, - "15743": { - "Type": "TRICE", + "14765": { + "Type": "trice", "Strg": "e:7" }, - "15744": { - "Type": "TRICE", + "14766": { + "Type": "trice", "Strg": "m:12" }, - "15745": { - "Type": "TRICE", + "14767": { + "Type": "trice", "Strg": "m:123\\n" }, - "15746": { - "Type": "TRICE", + "14768": { + "Type": "trice", "Strg": "e:A" }, - "15747": { - "Type": "TRICE", + "14769": { + "Type": "trice", "Strg": "w:B" }, - "15748": { - "Type": "TRICE", + "14770": { + "Type": "trice", "Strg": "a:c" }, - "15749": { - "Type": "TRICE", + "14771": { + "Type": "trice", "Strg": "wr:d" }, - "15750": { - "Type": "TRICE", + "14772": { + "Type": "trice", "Strg": "rd:e\\n" }, - "15751": { - "Type": "TRICE", + "14773": { + "Type": "trice", "Strg": "diag:f" }, - "15752": { - "Type": "TRICE", + "14774": { + "Type": "trice", "Strg": "sig:TRICE8 with variable param count 1 to 12\\n" }, - "15753": { + "14775": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d\\n" }, - "15754": { + "14776": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d\\n" }, - "15755": { + "14777": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d\\n" }, - "15756": { + "14778": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d\\n" }, - "15757": { + "14779": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d\\n" }, - "15758": { + "14780": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d\\n" }, - "15759": { + "14781": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d %d\\n" }, - "15760": { + "14782": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d %d %d\\n" }, - "15761": { + "14783": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d %d %d %d\\n" }, - "15762": { + "14784": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15763": { + "14785": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15764": { + "14786": { "Type": "TRICE8", "Strg": "tst:TRICE8 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15765": { + "14787": { "Type": "TRICE8", "Strg": "tst:TRICE8 %t %b %x %X %d %u %o %O %p\\n" }, - "15766": { + "14788": { "Type": "TRICE8_1", "Strg": "tst:TRICE8_1 %d\\n" }, - "15767": { + "14789": { "Type": "TRICE8_2", "Strg": "tst:TRICE8_2 %d %d\\n" }, - "15768": { + "14790": { "Type": "TRICE8_3", "Strg": "tst:TRICE8_3 %d %d %d\\n" }, - "15769": { + "14791": { "Type": "TRICE8_4", "Strg": "tst:TRICE8_4 %d %d %d %d\\n" }, - "15770": { + "14792": { "Type": "TRICE8_5", "Strg": "tst:TRICE8_5 %d %d %d %d %d\\n" }, - "15771": { + "14793": { "Type": "TRICE8_6", "Strg": "tst:TRICE8_6 %d %d %d %d %d %d\\n" }, - "15772": { + "14794": { "Type": "TRICE8_7", "Strg": "tst:TRICE8_7 %d %d %d %d %d %d %d\\n" }, - "15773": { + "14795": { "Type": "TRICE8_8", "Strg": "tst:TRICE8_8 %d %d %d %d %d %d %d %d\\n" }, - "15774": { + "14796": { "Type": "TRICE8_9", "Strg": "tst:TRICE8_9 %d %d %d %d %d %d %d %d %d\\n" }, - "15775": { + "14797": { "Type": "TRICE8_10", "Strg": "tst:TRICE8_10 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15776": { + "14798": { "Type": "TRICE8_11", "Strg": "tst:TRICE8_11 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15777": { + "14799": { "Type": "TRICE8_12", "Strg": "tst:TRICE8_12 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15778": { + "14800": { "Type": "TRICE8", "Strg": "tst:TRICE8 %t %b %x %X %d %u %o %O %p\\n" }, - "15779": { + "14801": { "Type": "TRICE8_9", "Strg": "tst:TRICE8_9 %t %b %x %X %d %u %o %O %p\\n" }, - "15780": { - "Type": "TRICE", + "14802": { + "Type": "trice", "Strg": "sig:TRICE16 with variable param count 1 to 12\\n" }, - "15781": { + "14803": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d\\n" }, - "15782": { + "14804": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d\\n" }, - "15783": { + "14805": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d\\n" }, - "15784": { + "14806": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d\\n" }, - "15785": { + "14807": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d\\n" }, - "15786": { + "14808": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d\\n" }, - "15787": { + "14809": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d %d\\n" }, - "15788": { + "14810": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d %d %d\\n" }, - "15789": { + "14811": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d %d %d %d\\n" }, - "15790": { + "14812": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15791": { + "14813": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15792": { + "14814": { "Type": "TRICE16", "Strg": "tst:TRICE16 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15793": { + "14815": { "Type": "TRICE16", "Strg": "tst:TRICE16 %t %b %x %X %d %u %o %O %p\\n" }, - "15794": { + "14816": { "Type": "TRICE16_1", "Strg": "tst:TRICE16_1 %d\\n" }, - "15795": { + "14817": { "Type": "TRICE16_2", "Strg": "tst:TRICE16_2 %d %d\\n" }, - "15796": { + "14818": { "Type": "TRICE16_3", "Strg": "tst:TRICE16_3 %d %d %d\\n" }, - "15797": { + "14819": { "Type": "TRICE16_4", "Strg": "tst:TRICE16_4 %d %d %d %d\\n" }, - "15798": { + "14820": { "Type": "TRICE16_5", "Strg": "tst:TRICE16_5 %d %d %d %d %d\\n" }, - "15799": { + "14821": { "Type": "TRICE16_6", "Strg": "tst:TRICE16_6 %d %d %d %d %d %d\\n" }, - "15800": { + "14822": { "Type": "TRICE16_7", "Strg": "tst:TRICE16_7 %d %d %d %d %d %d %d\\n" }, - "15801": { + "14823": { "Type": "TRICE16_8", "Strg": "tst:TRICE16_8 %d %d %d %d %d %d %d %d\\n" }, - "15802": { + "14824": { "Type": "TRICE16_9", "Strg": "tst:TRICE16_9 %d %d %d %d %d %d %d %d %d\\n" }, - "15803": { + "14825": { "Type": "TRICE16_10", "Strg": "tst:TRICE16_10 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15804": { + "14826": { "Type": "TRICE16_11", "Strg": "tst:TRICE16_11 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15805": { + "14827": { "Type": "TRICE16_12", "Strg": "tst:TRICE16_12 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15806": { + "14828": { "Type": "TRICE16_9", "Strg": "tst:TRICE16 %t %b %x %X %d %u %o %O %p\\n" }, - "15807": { - "Type": "TRICE", + "14829": { + "Type": "trice", "Strg": "sig:TRICE32 with variable param count 1 to 12\\n" }, - "15808": { + "14830": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d\\n" }, - "15809": { + "14831": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d\\n" }, - "15810": { + "14832": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d\\n" }, - "15811": { + "14833": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d\\n" }, - "15812": { + "14834": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d\\n" }, - "15813": { + "14835": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d\\n" }, - "15814": { + "14836": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d %d\\n" }, - "15815": { + "14837": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d %d %d\\n" }, - "15816": { + "14838": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d %d %d %d\\n" }, - "15817": { + "14839": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15818": { + "14840": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15819": { + "14841": { "Type": "TRICE32", "Strg": "tst:TRICE32 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15820": { + "14842": { "Type": "TRICE32", "Strg": "tst:TRICE32 %t %b %x %X %d %u %o %O %p %e %f %g\\n" }, - "15821": { + "14843": { "Type": "TRICE32_1", "Strg": "tst:TRICE32_1 %d\\n" }, - "15822": { + "14844": { "Type": "TRICE32_2", "Strg": "tst:TRICE32_2 %d %d\\n" }, - "15823": { + "14845": { "Type": "TRICE32_3", "Strg": "tst:TRICE32_3 %d %d %d\\n" }, - "15824": { + "14846": { "Type": "TRICE32_4", "Strg": "tst:TRICE32_4 %d %d %d %d\\n" }, - "15825": { + "14847": { "Type": "TRICE32_5", "Strg": "tst:TRICE32_5 %d %d %d %d %d\\n" }, - "15826": { + "14848": { "Type": "TRICE32_6", "Strg": "tst:TRICE32_6 %d %d %d %d %d %d\\n" }, - "15827": { + "14849": { "Type": "TRICE32_7", "Strg": "tst:TRICE32_7 %d %d %d %d %d %d %d\\n" }, - "15828": { + "14850": { "Type": "TRICE32_8", "Strg": "tst:TRICE32_8 %d %d %d %d %d %d %d %d\\n" }, - "15829": { + "14851": { "Type": "TRICE32_9", "Strg": "tst:TRICE32_9 %d %d %d %d %d %d %d %d %d\\n" }, - "15830": { + "14852": { "Type": "TRICE32_10", "Strg": "tst:TRICE32_10 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15831": { + "14853": { "Type": "TRICE32_11", "Strg": "tst:TRICE32_11 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15832": { + "14854": { "Type": "TRICE32_12", "Strg": "tst:TRICE32_12 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15833": { + "14855": { "Type": "TRICE32", "Strg": "tst:TRICE32 %t %b %x %X %d %u %o %O %p %e %f %g\\n" }, - "15834": { + "14856": { "Type": "TRICE32_12", "Strg": "tst:TRICE32_12 %t %b %x %X %d %u %o %O %p %e %f %g\\n" }, - "15835": { - "Type": "TRICE", + "14857": { + "Type": "trice", "Strg": "sig:TRICE64 with variable param count 1 to 12\\n" }, - "15836": { + "14858": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d\\n" }, - "15837": { + "14859": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d\\n" }, - "15838": { + "14860": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d\\n" }, - "15839": { + "14861": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d\\n" }, - "15840": { + "14862": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d\\n" }, - "15841": { + "14863": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d\\n" }, - "15842": { + "14864": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d %d\\n" }, - "15843": { + "14865": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d %d %d\\n" }, - "15844": { + "14866": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d %d %d %d\\n" }, - "15845": { + "14867": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15846": { + "14868": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15847": { + "14869": { "Type": "TRICE64", "Strg": "tst:TRICE64 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15848": { + "14870": { "Type": "TRICE64", "Strg": "tst:TRICE64 %t %b %x %X %d %u %o %O %p %e %f %g\\n" }, - "15849": { + "14871": { "Type": "TRICE64_1", "Strg": "tst:TRICE64_1 %d\\n" }, - "15850": { + "14872": { "Type": "TRICE64_2", "Strg": "tst:TRICE64_2 %d %d\\n" }, - "15851": { + "14873": { "Type": "TRICE64_3", "Strg": "tst:TRICE64_3 %d %d %d\\n" }, - "15852": { + "14874": { "Type": "TRICE64_4", "Strg": "tst:TRICE64_4 %d %d %d %d\\n" }, - "15853": { + "14875": { "Type": "TRICE64_5", "Strg": "tst:TRICE64_5 %d %d %d %d %d\\n" }, - "15854": { + "14876": { "Type": "TRICE64_6", "Strg": "tst:TRICE64_6 %d %d %d %d %d %d\\n" }, - "15855": { + "14877": { "Type": "TRICE64_7", "Strg": "tst:TRICE64_7 %d %d %d %d %d %d %d\\n" }, - "15856": { + "14878": { "Type": "TRICE64_8", "Strg": "tst:TRICE64_8 %d %d %d %d %d %d %d %d\\n" }, - "15857": { + "14879": { "Type": "TRICE64_9", "Strg": "tst:TRICE64_9 %d %d %d %d %d %d %d %d %d\\n" }, - "15858": { + "14880": { "Type": "TRICE64_10", "Strg": "tst:TRICE64_10 %d %d %d %d %d %d %d %d %d %d\\n" }, - "15859": { + "14881": { "Type": "TRICE64_11", "Strg": "tst:TRICE64_11 %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15860": { + "14882": { "Type": "TRICE64_12", "Strg": "tst:TRICE64_12 %d %d %d %d %d %d %d %d %d %d %d %d\\n" }, - "15861": { + "14883": { "Type": "TRICE64_12", "Strg": "tst:TRICE64_12 %t %b %x %X %d %u %o %O %p %e %f %g\\n" }, - "15862": { - "Type": "TRICE", + "14884": { + "Type": "trice", "Strg": "att:positive and negative float in format variants\\n" }, - "15863": { - "Type": "TRICE", + "14885": { + "Type": "trice", "Strg": "rd:TRICE float %f (%%f)\\n" }, - "15864": { - "Type": "TRICE", + "14886": { + "Type": "trice", "Strg": "rd:TRICE float %9f (%%9f)\\n" }, - "15865": { - "Type": "TRICE", + "14887": { + "Type": "trice", "Strg": "rd:TRICE float %.9f (%%.9f)\\n" }, - "15866": { - "Type": "TRICE", + "14888": { + "Type": "trice", "Strg": "rd:TRICE float %9.f (%%9.f)\\n" }, - "15867": { - "Type": "TRICE", + "14889": { + "Type": "trice", "Strg": "rd:TRICE float %9.6f (%%9.6f)\\n" }, - "15868": { - "Type": "TRICE", + "14890": { + "Type": "trice", "Strg": "rd:TRICE float %f (%%f)\\n" }, - "15869": { - "Type": "TRICE", + "14891": { + "Type": "trice", "Strg": "rd:TRICE float %9f (%%9f)\\n" }, - "15870": { - "Type": "TRICE", + "14892": { + "Type": "trice", "Strg": "rd:TRICE float %.9f (%%.9f)\\n" }, - "15871": { - "Type": "TRICE", + "14893": { + "Type": "trice", "Strg": "rd:TRICE float %9.f (%%9.f)\\n" }, - "15872": { - "Type": "TRICE", + "14894": { + "Type": "trice", "Strg": "rd:TRICE float %9.6f (%%9.6f)\\n" }, - "15873": { - "Type": "TRICE", + "14895": { + "Type": "trice", "Strg": "rd:TRICE float %+f (%%f)\\n" }, - "15874": { - "Type": "TRICE", + "14896": { + "Type": "trice", "Strg": "rd:TRICE float %+9f (%%9f)\\n" }, - "15875": { - "Type": "TRICE", + "14897": { + "Type": "trice", "Strg": "rd:TRICE float %+.9f (%%.9f)\\n" }, - "15876": { - "Type": "TRICE", + "14898": { + "Type": "trice", "Strg": "rd:TRICE float %+9.f (%%9.f)\\n" }, - "15877": { - "Type": "TRICE", + "14899": { + "Type": "trice", "Strg": "rd:TRICE float %+9.6f (%%9.6f)\\n" }, - "15878": { - "Type": "TRICE", + "14900": { + "Type": "trice", "Strg": "rd:TRICE float %+f (%%f)\\n" }, - "15879": { - "Type": "TRICE", + "14901": { + "Type": "trice", "Strg": "rd:TRICE float %+9f (%%9f)\\n" }, - "15880": { - "Type": "TRICE", + "14902": { + "Type": "trice", "Strg": "rd:TRICE float %+.9f (%%.9f)\\n" }, - "15881": { - "Type": "TRICE", + "14903": { + "Type": "trice", "Strg": "rd:TRICE float %+9.f (%%9.f)\\n" }, - "15882": { - "Type": "TRICE", + "14904": { + "Type": "trice", "Strg": "rd:TRICE float %+9.6f (%%9.6f)\\n" }, - "15883": { - "Type": "TRICE", + "14905": { + "Type": "trice", "Strg": "rd:TRICE float %-f (%%f)\\n" }, - "15884": { - "Type": "TRICE", + "14906": { + "Type": "trice", "Strg": "rd:TRICE float %-9f (%%9f)\\n" }, - "15885": { - "Type": "TRICE", + "14907": { + "Type": "trice", "Strg": "rd:TRICE float %-.9f (%%.9f)\\n" }, - "15886": { - "Type": "TRICE", + "14908": { + "Type": "trice", "Strg": "rd:TRICE float %-9.f (%%9.f)\\n" }, - "15887": { - "Type": "TRICE", + "14909": { + "Type": "trice", "Strg": "rd:TRICE float %-9.6f (%%9.6f)\\n" }, - "15888": { - "Type": "TRICE", + "14910": { + "Type": "trice", "Strg": "rd:TRICE float %-f (%%f)\\n" }, - "15889": { - "Type": "TRICE", + "14911": { + "Type": "trice", "Strg": "rd:TRICE float %-9f (%%9f)\\n" }, - "15890": { - "Type": "TRICE", + "14912": { + "Type": "trice", "Strg": "rd:TRICE float %-.9f (%%.9f)\\n" }, - "15891": { - "Type": "TRICE", + "14913": { + "Type": "trice", "Strg": "rd:TRICE float %-9.f (%%9.f)\\n" }, - "15892": { - "Type": "TRICE", + "14914": { + "Type": "trice", "Strg": "rd:TRICE float %-9.6f (%%9.6f)\\n" }, - "15893": { - "Type": "TRICE", + "14915": { + "Type": "trice", "Strg": "att:positive float \u0026 double in variants\\n" }, - "15894": { + "14916": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 float %e (%%e)\\n" }, - "15895": { + "14917": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 float %f (%%f)\\n" }, - "15896": { + "14918": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 float %g (%%g)\\n" }, - "15897": { + "14919": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 float %E (%%E)\\n" }, - "15898": { + "14920": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 float %F (%%F)\\n" }, - "15899": { + "14921": { "Type": "TRICE32_1", "Strg": "rd:TRICE32_1 float %G (%%G)\\n" }, - "15900": { + "14922": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %e (%%e)\\n" }, - "15901": { + "14923": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %f (%%f)\\n" }, - "15902": { + "14924": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %g (%%g)\\n" }, - "15903": { + "14925": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %E (%%E)\\n" }, - "15904": { + "14926": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %F (%%F)\\n" }, - "15905": { + "14927": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %G (%%G)\\n" }, - "15906": { + "14928": { "Type": "TRICE", "Strg": "rd:TRICE float %e (%%e)\\n" }, - "15907": { + "14929": { "Type": "TRICE", "Strg": "rd:TRICE float %f (%%f)\\n" }, - "15908": { + "14930": { "Type": "TRICE", "Strg": "rd:TRICE float %g (%%g)\\n" }, - "15909": { + "14931": { "Type": "TRICE", "Strg": "rd:TRICE float %E (%%E)\\n" }, - "15910": { + "14932": { "Type": "TRICE", "Strg": "rd:TRICE float %F (%%F)\\n" }, - "15911": { + "14933": { "Type": "TRICE", "Strg": "rd:TRICE float %G (%%G)\\n" }, - "15912": { + "14934": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %e (%%e), aDouble(y)\\n" }, - "15913": { + "14935": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %f (%%f), aDouble(y)\\n" }, - "15914": { + "14936": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %g (%%g), aDouble(y)\\n" }, - "15915": { + "14937": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %E (%%E), aDouble(y)\\n" }, - "15916": { + "14938": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %F (%%F), aDouble(y)\\n" }, - "15917": { + "14939": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %G (%%G), aDouble(y)\\n" }, - "15918": { + "14940": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 double %e (%%e), aDouble(y)\\n" }, - "15919": { + "14941": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 double %f (%%f), aDouble(y)\\n" }, - "15920": { + "14942": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 double %g (%%g), aDouble(y)\\n" }, - "15921": { + "14943": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 double %E (%%E), aDouble(y)\\n" }, - "15922": { + "14944": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 double %F (%%F), aDouble(y)\\n" }, - "15923": { + "14945": { "Type": "TRICE64_1", "Strg": "rd:TRICE64_1 double %G (%%G), aDouble(y)\\n" }, - "15924": { - "Type": "TRICE", + "14946": { + "Type": "trice", "Strg": "att:negative float \u0026 double\\n" }, - "15925": { - "Type": "TRICE", + "14947": { + "Type": "trice", "Strg": "rd:TRICE float %e (%%e)\\n" }, - "15926": { - "Type": "TRICE", + "14948": { + "Type": "trice", "Strg": "rd:TRICE float %f (%%f)\\n" }, - "15927": { - "Type": "TRICE", + "14949": { + "Type": "trice", "Strg": "rd:TRICE float %g (%%g)\\n" }, - "15928": { - "Type": "TRICE", + "14950": { + "Type": "trice", "Strg": "rd:TRICE float %E (%%E)\\n" }, - "15929": { - "Type": "TRICE", + "14951": { + "Type": "trice", "Strg": "rd:TRICE float %F (%%F)\\n" }, - "15930": { - "Type": "TRICE", + "14952": { + "Type": "trice", "Strg": "rd:TRICE float %G (%%G)\\n" }, - "15931": { + "14953": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %e (%%e), aDouble(y)\\n" }, - "15932": { + "14954": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %f (%%f), aDouble(y)\\n" }, - "15933": { + "14955": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %g (%%g), aDouble(y)\\n" }, - "15934": { + "14956": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %E (%%E), aDouble(y)\\n" }, - "15935": { + "14957": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %F (%%F), aDouble(y)\\n" }, - "15936": { + "14958": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %G (%%G), aDouble(y)\\n" }, - "15937": { + "14959": { "Type": "TRICE", - "Strg": "att:formatted float \u0026 double\\n" + "Strg": "att:formatted float\\n" }, - "15938": { + "14960": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %12.6e (%%12.6e)\\n" }, - "15939": { + "14961": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %12.6f (%%12.6f)\\n" }, - "15940": { + "14962": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %12.6g (%%12.6g)\\n" }, - "15941": { + "14963": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %12.6E (%%12.6E)\\n" }, - "15942": { + "14964": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %12.6F (%%12.6F)\\n" }, - "15943": { + "14965": { "Type": "TRICE32", "Strg": "rd:TRICE32 float %12.6G (%%12.6G)\\n" }, - "15944": { + "14966": { + "Type": "TRICE", + "Strg": "att:formatted double\\n" + }, + "14967": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %12.6e (%%12.6e), aDouble(y)\\n" }, - "15945": { + "14968": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %12.6f (%%12.6f), aDouble(y)\\n" }, - "15946": { + "14969": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %12.6g (%%12.6g), aDouble(y)\\n" }, - "15947": { + "14970": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %12.6E (%%12.6E), aDouble(y)\\n" }, - "15948": { + "14971": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %12.6F (%%12.6F), aDouble(y)\\n" }, - "15949": { + "14972": { "Type": "TRICE64", "Strg": "rd:TRICE64 double %12.6G (%%12.6G), aDouble(y)\\n" }, - "15950": { + "14973": { "Type": "TRICE", "Strg": "att:Various single arguments\\n" }, - "15951": { + "14974": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %t (%%t ,0)\\n" }, - "15952": { + "14975": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %t (%%t ,2)\\n" }, - "15953": { + "14976": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %u (%%u ,-1)\\n" }, - "15954": { + "14977": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %b (%%b ,-1)\\n" }, - "15955": { + "14978": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %o (%%o ,-1)\\n" }, - "15956": { + "14979": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %O (%%O ,-1)\\n" }, - "15957": { + "14980": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %X (%%X ,-1)\\n" }, - "15958": { + "14981": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %x (%%x ,-1)\\n" }, - "15959": { + "14982": { "Type": "TRICE8", "Strg": "rd:TRICE8 line %d (%%d ,-1)\\n" }, - "15960": { + "14983": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %t (%%t ,0)\\n" }, - "15961": { + "14984": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %t (%%t ,2)\\n" }, - "15962": { + "14985": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %u (%%u -1)\\n" }, - "15963": { + "14986": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %b (%%b -1)\\n" }, - "15964": { + "14987": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %o (%%o -1)\\n" }, - "15965": { + "14988": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %x (%%x -1)\\n" }, - "15966": { + "14989": { "Type": "TRICE16_1", "Strg": "rd:TRICE16_1 line %d (%%d -1)\\n" }, - "15967": { - "Type": "TRICE", - "Strg": "rd:TRICE line %t (%%t -1)\\n" + "14990": { + "Type": "Trice", + "Strg": "rd:Trice line %t (%%t -1)\\n" }, - "15968": { - "Type": "TRICE", - "Strg": "rd:TRICE line %t (%%t -1)\\n" + "14991": { + "Type": "Trice", + "Strg": "rd:Trice line %t (%%t -1)\\n" }, - "15969": { - "Type": "TRICE", - "Strg": "rd:TRICE line %u (%%u)\\n" + "14992": { + "Type": "Trice", + "Strg": "rd:Trice line %u (%%u)\\n" }, - "15970": { - "Type": "TRICE", - "Strg": "rd:TRICE line %b (%%b)\\n" + "14993": { + "Type": "Trice", + "Strg": "rd:Trice line %b (%%b)\\n" }, - "15971": { - "Type": "TRICE", - "Strg": "rd:TRICE line %o (%%o)\\n" + "14994": { + "Type": "Trice", + "Strg": "rd:Trice line %o (%%o)\\n" }, - "15972": { - "Type": "TRICE", - "Strg": "rd:TRICE line %x (%%x)\\n" + "14995": { + "Type": "Trice", + "Strg": "rd:Trice line %x (%%x)\\n" }, - "15973": { - "Type": "TRICE", - "Strg": "rd:TRICE line %d (%%d)\\n" + "14996": { + "Type": "Trice", + "Strg": "rd:Trice line %d (%%d)\\n" + }, + "14997": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "14998": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "14999": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15000": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15001": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15002": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15003": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15004": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15005": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15006": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15007": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15008": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15009": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15010": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15011": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15012": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15013": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15014": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15015": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15016": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15017": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15018": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15019": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15020": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15021": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15022": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15023": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15024": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" + }, + "15025": { + "Type": "TRICE_N", + "Strg": "msg:%s\\n" }, - "15974": { + "15026": { "Type": "TRICE_N", "Strg": "msg:%s\\n" }, - "15975": { - "Type": "TRICE_N", + "15027": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15976": { - "Type": "TRICE_N", + "15028": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15977": { - "Type": "TRICE_N", + "15029": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15978": { - "Type": "TRICE_N", + "15030": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15979": { - "Type": "TRICE_N", + "15031": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15980": { - "Type": "TRICE_N", + "15032": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15981": { - "Type": "TRICE_N", + "15033": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15982": { - "Type": "TRICE_N", + "15034": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15983": { - "Type": "TRICE_N", + "15035": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15984": { - "Type": "TRICE_N", + "15036": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15985": { - "Type": "TRICE_N", + "15037": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15986": { - "Type": "TRICE_N", + "15038": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15987": { - "Type": "TRICE_N", + "15039": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15988": { - "Type": "TRICE_N", + "15040": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15989": { - "Type": "TRICE_N", + "15041": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15990": { - "Type": "TRICE_N", + "15042": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15991": { - "Type": "TRICE_N", + "15043": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15992": { - "Type": "TRICE_N", + "15044": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15993": { - "Type": "TRICE_N", + "15045": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15994": { - "Type": "TRICE_N", + "15046": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15995": { - "Type": "TRICE_N", + "15047": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15996": { - "Type": "TRICE_N", + "15048": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15997": { - "Type": "TRICE_N", + "15049": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15998": { - "Type": "TRICE_N", + "15050": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "15999": { - "Type": "TRICE_N", + "15051": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "16000": { - "Type": "TRICE_N", + "15052": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "16001": { - "Type": "TRICE_N", + "15053": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "16002": { - "Type": "TRICE_N", + "15054": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "16003": { - "Type": "TRICE_N", + "15055": { + "Type": "triceN", "Strg": "msg:%s\\n" }, - "16004": { - "Type": "TRICE", + "15056": { + "Type": "triceN", + "Strg": "msg:%s\\n" + }, + "15057": { + "Type": "trice", "Strg": "sig:TRICE with 1 to 12 values\\n" }, - "16005": { - "Type": "TRICE", + "15058": { + "Type": "trice", "Strg": "rd:TRICE %d\\n" }, - "16006": { - "Type": "TRICE", + "15059": { + "Type": "trice", "Strg": "rd:TRICE %d, %d\\n" }, - "16007": { - "Type": "TRICE", + "15060": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d\\n" }, - "16008": { - "Type": "TRICE", + "15061": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d\\n" }, - "16009": { - "Type": "TRICE", + "15062": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d\\n" }, - "16010": { - "Type": "TRICE", + "15063": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d\\n" }, - "16011": { - "Type": "TRICE", + "15064": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d\\n" }, - "16012": { - "Type": "TRICE", + "15065": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16013": { - "Type": "TRICE", + "15066": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16014": { - "Type": "TRICE", + "15067": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16015": { - "Type": "TRICE", + "15068": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16016": { - "Type": "TRICE", + "15069": { + "Type": "trice", "Strg": "rd:TRICE %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16017": { - "Type": "TRICE", + "15070": { + "Type": "trice", "Strg": "sig:TRICE_n with 1 to 12 values\\n" }, - "16018": { - "Type": "TRICE", + "15071": { + "Type": "trice", "Strg": "rd:TRICE_1 %d\\n" }, - "16019": { - "Type": "TRICE", + "15072": { + "Type": "trice", "Strg": "rd:TRICE_2 %d, %d\\n" }, - "16020": { - "Type": "TRICE", + "15073": { + "Type": "trice", "Strg": "rd:TRICE_3 %d, %d, %d\\n" }, - "16021": { - "Type": "TRICE", + "15074": { + "Type": "trice", "Strg": "rd:TRICE_4 %d, %d, %d, %d\\n" }, - "16022": { - "Type": "TRICE", + "15075": { + "Type": "trice", "Strg": "rd:TRICE_5 %d, %d, %d, %d, %d\\n" }, - "16023": { - "Type": "TRICE", + "15076": { + "Type": "trice", "Strg": "rd:TRICE_6 %d, %d, %d, %d, %d, %d\\n" }, - "16024": { - "Type": "TRICE", + "15077": { + "Type": "trice", "Strg": "rd:TRICE_7 %d, %d, %d, %d, %d, %d, %d\\n" }, - "16025": { - "Type": "TRICE", + "15078": { + "Type": "trice", "Strg": "rd:TRICE_8 %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16026": { - "Type": "TRICE", + "15079": { + "Type": "trice", "Strg": "rd:TRICE_9 %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16027": { - "Type": "TRICE", + "15080": { + "Type": "trice", "Strg": "rd:TRICE_10 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16028": { - "Type": "TRICE", + "15081": { + "Type": "trice", "Strg": "rd:TRICE_11 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16029": { - "Type": "TRICE", + "15082": { + "Type": "trice", "Strg": "rd:TRICE_12 %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d\\n" }, - "16030": { - "Type": "TRICE", - "Strg": "sig:TRICE16 with 1 to 12 pointer\\n" + "15083": { + "Type": "TRice", + "Strg": "sig:Trice16 with 1 to 12 pointer\\n" }, - "16031": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p\\n" + "15084": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p\\n" }, - "16032": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p\\n" + "15085": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p\\n" }, - "16033": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p\\n" + "15086": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p\\n" }, - "16034": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p\\n" + "15087": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p\\n" }, - "16035": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p\\n" + "15088": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p\\n" }, - "16036": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p\\n" + "15089": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p\\n" }, - "16037": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p\\n" + "15090": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p, %p\\n" }, - "16038": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p\\n" + "15091": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "16039": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" + "15092": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "16040": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" + "15093": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "16041": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" + "15094": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "16042": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" + "15095": { + "Type": "Trice16", + "Strg": "rd:Trice16 %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p, %p\\n" }, - "16043": { - "Type": "TRICE", + "15096": { + "Type": "TRice", "Strg": "sig:TRICE16 with 1 to 12 hex\\n" }, - "16044": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X\\n" + "15097": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X\\n" }, - "16045": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X\\n" + "15098": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X\\n" }, - "16046": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X\\n" + "15099": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X\\n" }, - "16047": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X\\n" + "15100": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X\\n" }, - "16048": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X\\n" + "15101": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X\\n" }, - "16049": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X\\n" + "15102": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X\\n" }, - "16050": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X\\n" + "15103": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X, %X\\n" }, - "16051": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X\\n" + "15104": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "16052": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" + "15105": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "16053": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" + "15106": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "16054": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" + "15107": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "16055": { - "Type": "TRICE16", - "Strg": "rd:TRICE16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" + "15108": { + "Type": "Trice16", + "Strg": "rd:Trice16 %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X, %X\\n" }, - "16056": { + "15109": { "Type": "TRICE", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16057": { + "15110": { "Type": "TRICE", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16058": { + "15111": { "Type": "TRICE", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16059": { + "15112": { "Type": "TRICE", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16060": { + "15113": { "Type": "trice", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16061": { + "15114": { "Type": "Trice", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16062": { + "15115": { "Type": "TRice", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16063": { + "15116": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16064": { + "15117": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16065": { + "15118": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16066": { + "15119": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16067": { + "15120": { "Type": "trice_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16068": { + "15121": { "Type": "Trice_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16069": { + "15122": { "Type": "TRice_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16070": { + "15123": { "Type": "TRICE0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16071": { + "15124": { "Type": "TRICE0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16072": { + "15125": { "Type": "TRICE0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16073": { + "15126": { "Type": "TRICE0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16074": { + "15127": { "Type": "trice0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16075": { + "15128": { "Type": "Trice0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16076": { + "15129": { "Type": "TRice0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16077": { + "15130": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16078": { + "15131": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16079": { + "15132": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16080": { + "15133": { "Type": "TRICE_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16081": { + "15134": { "Type": "trice_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16082": { + "15135": { "Type": "Trice_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16083": { + "15136": { "Type": "TRice_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16084": { + "15137": { "Type": "TRICE8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16085": { + "15138": { "Type": "TRICE8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16086": { + "15139": { "Type": "TRICE8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16087": { + "15140": { "Type": "TRICE8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16088": { + "15141": { "Type": "trice8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16089": { + "15142": { "Type": "Trice8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16090": { + "15143": { "Type": "TRice8", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16091": { + "15144": { "Type": "TRICE8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16092": { + "15145": { "Type": "TRICE8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16093": { + "15146": { "Type": "TRICE8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16094": { + "15147": { "Type": "TRICE8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16095": { + "15148": { "Type": "trice8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16096": { + "15149": { "Type": "Trice8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16097": { + "15150": { "Type": "TRice8_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16098": { - "Type": "TRICE16", + "15151": { + "Type": "trice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16099": { - "Type": "TRICE16", + "15152": { + "Type": "trice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16100": { - "Type": "TRICE16", + "15153": { + "Type": "trice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16101": { - "Type": "TRICE16", + "15154": { + "Type": "trice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16102": { + "15155": { "Type": "trice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16103": { + "15156": { "Type": "Trice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16104": { + "15157": { "Type": "TRice16", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16105": { + "15158": { "Type": "TRICE16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16106": { + "15159": { "Type": "TRICE16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16107": { + "15160": { "Type": "TRICE16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16108": { + "15161": { "Type": "TRICE16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16109": { + "15162": { "Type": "trice16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16110": { + "15163": { "Type": "Trice16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16111": { + "15164": { "Type": "TRice16_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16112": { + "15165": { "Type": "TRICE32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16113": { + "15166": { "Type": "TRICE32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16114": { + "15167": { "Type": "TRICE32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16115": { + "15168": { "Type": "TRICE32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16116": { + "15169": { "Type": "trice32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16117": { + "15170": { "Type": "Trice32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16118": { + "15171": { "Type": "TRice32", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16119": { + "15172": { "Type": "TRICE32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16120": { + "15173": { "Type": "TRICE32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16121": { + "15174": { "Type": "TRICE32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16122": { + "15175": { "Type": "TRICE32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16123": { + "15176": { "Type": "trice32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16124": { + "15177": { "Type": "Trice32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16125": { + "15178": { "Type": "TRice32_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16126": { + "15179": { "Type": "TRICE64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16127": { + "15180": { "Type": "TRICE64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16128": { + "15181": { "Type": "TRICE64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16129": { + "15182": { "Type": "TRICE64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16130": { + "15183": { "Type": "trice64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16131": { + "15184": { "Type": "Trice64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16132": { + "15185": { "Type": "TRice64", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16133": { + "15186": { "Type": "TRICE64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16134": { + "15187": { "Type": "TRICE64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16135": { + "15188": { "Type": "TRICE64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16136": { + "15189": { "Type": "TRICE64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16137": { + "15190": { "Type": "trice64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16138": { + "15191": { "Type": "Trice64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16139": { + "15192": { "Type": "TRice64_0", "Strg": "w: Hello! 👋🙂 \\a\\n" }, - "16140": { + "15193": { "Type": "TRICE_S", "Strg": "rd:sizeof(%8s)" }, - "16141": { + "15194": { "Type": "TRICE", "Strg": " = %d\\n" }, - "16142": { + "15195": { "Type": "TRICE_S", "Strg": "rd:sizeof(%8s)" }, - "16143": { + "15196": { "Type": "TRICE", "Strg": " = %d\\n" }, - "16144": { + "15197": { "Type": "TRICE", "Strg": "inf: Tryout tx struct:" }, - "16145": { + "15198": { "Type": "TRICE8_B", "Strg": " %02x " }, - "16146": { + "15199": { "Type": "TRICE", "Strg": "\\n" }, - "16147": { + "15200": { "Type": "TRICE", "Strg": "inf: Tryout buffer:" }, - "16148": { + "15201": { "Type": "TRICE8_B", "Strg": " %02x " }, - "16149": { + "15202": { "Type": "TRICE", "Strg": "\\n" }, - "16150": { + "15203": { "Type": "TRICE", "Strg": "inf: Tryout rx struct:" }, - "16151": { + "15204": { "Type": "TRICE8_B", "Strg": " %02x " }, - "16152": { + "15205": { "Type": "TRICE", "Strg": "\\n" }, - "16153": { + "15206": { "Type": "TRICE", "Strg": "inf:sizeOf(Trypout) = %d, buffer length = %d\\n" }, - "16154": { + "15207": { "Type": "TRICE8_F", "Strg": "info:TryoutStructFunction" }, - "16155": { + "15208": { "Type": "TRICE8_F", "Strg": "info:TryoutBufferFunction" }, - "16156": { + "15209": { "Type": "Trice", - "Strg": "att:MyStructEvaluationFunction(json:ExA{Apple:%d, Birn:%u, Fisch:%f}\\n" + "Strg": "att:MyStructEvaluationFunction(json:ExA{Apple:%d, Birn:%u, Fisch:%f})\\n" }, - "16157": { + "15210": { "Type": "trice", "Strg": "sig:%3d:" }, - "16158": { + "15211": { "Type": "TRICE_N", "Strg": "wr:%s\\n" }, - "16200": { + "15212": { + "Type": "TRice", + "Strg": "Hello World!\\n" + }, + "15213": { + "Type": "TRICE8_F", + "Strg": "info:FunctionNameWa" + }, + "15214": { + "Type": "TRice8F", + "Strg": "info:FunctionNameWb" + }, + "15215": { + "Type": "Trice8F", + "Strg": "info:FunctionNameWc" + }, + "15216": { + "Type": "trice8F", + "Strg": "info:FunctionNameWd" + }, + "15217": { + "Type": "TRICE16_F", + "Strg": "info:FunctionNameXa" + }, + "15218": { + "Type": "TRice16F", + "Strg": "info:FunctionNameXb" + }, + "15219": { + "Type": "Trice16F", + "Strg": "info:FunctionNameXc" + }, + "15220": { + "Type": "trice16F", + "Strg": "info:FunctionNameXd" + }, + "15221": { + "Type": "TRICE32_F", + "Strg": "info:FunctionNameYa" + }, + "15222": { + "Type": "TRice32F", + "Strg": "rpc:FunctionNameYb" + }, + "15223": { "Type": "TRice", "Strg": "Hello " }, - "16201": { + "15224": { "Type": "TRice", "Strg": "World!\\n" }, - "16202": { + "15225": { "Type": "TRice64", "Strg": "msg:Twelve 64-bit values: %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\\n" }, - "16203": { + "15226": { "Type": "trice", "Strg": "Hello again\\n" }, - "16204": { + "15227": { + "Type": "Trice32F", + "Strg": "rpc:FunctionNameYc" + }, + "15228": { + "Type": "trice32F", + "Strg": "call:FunctionNameYd" + }, + "15229": { + "Type": "TRICE64_F", + "Strg": "info:FunctionNameZa" + }, + "15230": { + "Type": "TRice64F", + "Strg": "call:FunctionNameZb" + }, + "15231": { + "Type": "Trice64F", + "Strg": "RPC:FunctionNameZc" + }, + "15232": { + "Type": "trice64F", + "Strg": "Rpc:FunctionNameZd" + }, + "15233": { + "Type": "TRice8B", + "Strg": "%3x\\n" + }, + "15234": { + "Type": "TRice8B", + "Strg": "%3x\\n" + }, + "15235": { "Type": "TRice", "Strg": "Hello " }, - "16205": { + "15236": { "Type": "TRice", "Strg": "World!\\n" }, - "16206": { + "15237": { "Type": "TRice64", "Strg": "msg:Twelve 64-bit values: %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\\n" }, - "16207": { + "15238": { "Type": "trice", "Strg": "Hello again\\n" }, + "16326": { + "Type": "trice", + "Strg": "d:_SINGLE_MAX_SIZE=%d, _BUFFER_SIZE=%d, _DEFERRED_BUFFER_SIZE=%d\\n" + }, + "16327": { + "Type": "trice", + "Strg": "deb:_CYCLE == %d, _PROTECT == %d, _DIAG == %d, XTEA == %d\\n" + }, + "16328": { + "Type": "trice", + "Strg": "deb:TRICE_MULTI_PACK_MODE\\n" + }, + "16329": { + "Type": "trice", + "Strg": "deb:TRICE_SINGLE_PACK_MODE\\n" + }, + "16330": { + "Type": "trice", + "Strg": "deb:TRICE_RING_BUFFER, " + }, + "16331": { + "Type": "trice", + "Strg": "deb:TRICE_DOUBLE_BUFFER, " + }, + "16332": { + "Type": "trice", + "Strg": "deb:TRICE_STATIC_BUFFER, " + }, + "16333": { + "Type": "trice", + "Strg": "deb:TRICE_STACK_BUFFER, " + }, + "16334": { + "Type": "trice", + "Strg": "deb:TRICE_DIRECT_OUTPUT == %d, TRICE_DEFERRED_OUTPUT == %d\\n" + }, + "16335": { + "Type": "Trice", + "Strg": "i=%x %x\\n" + }, + "16336": { + "Type": "trice", + "Strg": "info:%d times a 16 byte long Trice messages, which may not be written all if the buffer is too small:\\n" + }, + "16337": { + "Type": "Trice16F", + "Strg": "att:ARemoteFunctionName" + }, + "16338": { + "Type": "Trice32B", + "Strg": "msg:%08x \\n" + }, + "16339": { + "Type": "Trice8B", + "Strg": "msg:%02x \\n" + }, + "16340": { + "Type": "Trice", + "Strg": "info:A Buffer:\\n" + }, + "16341": { + "Type": "Trice", + "Strg": "msg:%f (default rounded float)\\n" + }, + "16342": { + "Type": "Trice", + "Strg": "msg:%.20f (float with more ciphers than precision)\\n" + }, + "16343": { + "Type": "Trice64", + "Strg": "msg:%.20f (double with more ciphers than precision)\\n" + }, + "16344": { + "Type": "TriceS", + "Strg": "rd:%s \u003c- float number as string\\n" + }, + "16345": { + "Type": "trice", + "Strg": "att:🐁 Speedy Gonzales l without time stamp\\n" + }, + "16346": { + "Type": "trice", + "Strg": "att:🐁 Speedy Gonzales k without time stamp\\n" + }, + "16347": { + "Type": "trice", + "Strg": "att:🐁 Speedy Gonzales j without time stamp\\n" + }, + "16348": { + "Type": "trice", + "Strg": "att:🐁 Speedy Gonzales i without time stamp\\n" + }, + "16349": { + "Type": "Trice", + "Strg": "att:🐁 Speedy Gonzales h 16-bit time stamp\\n" + }, + "16350": { + "Type": "Trice", + "Strg": "att:🐁 Speedy Gonzales g 16-bit time stamp\\n" + }, + "16351": { + "Type": "Trice", + "Strg": "att:🐁 Speedy Gonzales f 16-bit time stamp\\n" + }, + "16352": { + "Type": "Trice", + "Strg": "att:🐁 Speedy Gonzales e 16-bit time stamp\\n" + }, + "16353": { + "Type": "TRice", + "Strg": "att:🐁 Speedy Gonzales d 32-bit time stamp\\n" + }, + "16354": { + "Type": "TRice", + "Strg": "att:🐁 Speedy Gonzales c 32-bit time stamp\\n" + }, + "16355": { + "Type": "TRice", + "Strg": "att:🐁 Speedy Gonzales b 32-bit time stamp\\n" + }, + "16356": { + "Type": "TRice", + "Strg": "att:🐁 Speedy Gonzales a 32-bit time stamp\\n" + }, + "16357": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales L without time stamp\\n" + }, + "16358": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales K without time stamp\\n" + }, + "16359": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales J without time stamp\\n" + }, + "16360": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales I without time stamp\\n" + }, + "16361": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales H 16-bit time stamp\\n" + }, + "16362": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales G 16-bit time stamp\\n" + }, + "16363": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales F 16-bit time stamp\\n" + }, + "16364": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales E 16-bit time stamp\\n" + }, + "16365": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales D 32-bit time stamp\\n" + }, + "16366": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales C 32-bit time stamp\\n" + }, + "16367": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales B 32-bit time stamp\\n" + }, + "16368": { + "Type": "TRICE32_0", + "Strg": "att:🐁 Speedy Gonzales A 32-bit time stamp\\n" + }, + "16369": { + "Type": "TriceS", + "Strg": "w: Hello! 👋🙂 \\n\\n ✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨ \\n 🎈🎈🎈🎈%s🎈🎈🎈🎈\\n 🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃🍃 \\n\\n\\n" + }, "16370": { "Type": "trice16", "Strg": "err:triceRingBufferDepthMax =%4u of%5d (overflow!)\\n" @@ -8685,7 +9149,7 @@ }, "16374": { "Type": "trice16", - "Strg": "err: TriceDynBufTruncateCount = %u\\n" + "Strg": "wrn:TriceDynStringBufTruncateCount = %u\\n" }, "16375": { "Type": "trice16", @@ -8705,15 +9169,15 @@ }, "16379": { "Type": "trice16", - "Strg": "err: TriceDeferredOverflowCount = %u\\n" + "Strg": "err:TriceDeferredOverflowCount = %u\\n" }, "16380": { "Type": "trice16", - "Strg": "err: TriceDirectOverflowCount = %u\\n" + "Strg": "err:TriceDirectOverflowCount = %u\\n" }, "16381": { "Type": "trice16", - "Strg": "err: TriceErrorCount = %u\\n" + "Strg": "err:TriceErrorCount = %u\\n" }, "16382": { "Type": "trice16", diff --git a/docs/ChatGPTo4-mini-high_TriceCompare.html b/docs/ChatGPTo4-mini-high_TriceCompare.html new file mode 100644 index 000000000..30650ff6a --- /dev/null +++ b/docs/ChatGPTo4-mini-high_TriceCompare.html @@ -0,0 +1,92 @@ + + + + +

Comparable Logging and Tracing Solutions for Embedded Systems

+

Open-Source Solutions (C/C++ and Rust)

+

Trice (Reference) + – License: MIT. Trice is an open-source C logging and tracing library +providing printf-like macros. At runtime it replaces format strings with + 16-bit IDs, keeping the firmware image under 1 KB and achieving very +low execution overhead. Trace data is COBS-encoded and sent via UART or +SEGGER RTT; a Go-based host tool decodes the IDs back into +human-readable messages. Trice is safe to use in interrupts (ISR-safe) +and supports log levels via channels with optional colored output on the + host.

+

Embedded Logger (elog) + – License: MIT. Elog offloads all format strings from the firmware +binary: at runtime only an identifier plus parameters are stored in RAM, + while the actual format strings reside separately and are excluded from + the final image. A host-side decoder then reconstructs the original +messages. This approach minimizes both Flash and RAM usage and supports +custom transports for log retrieval.

+

defmt (Rust) + – License: MIT/Apache 2.0 dual license. Defmt (“deferred formatting”) +is a Rust-native framework that shifts all string formatting to the +host. Macros like defmt::info!() emit binary-encoded logs (e.g., over RTT), and a host tool (often via probe-run) + uses the ELF symbols to decode them. It achieves very low footprint +(e.g., ~1.6 KB Flash for panic logging vs. ~13.8 KB with printf) and +supports log levels. Limitation: only available for Rust targets.

+

NanoLog (C++11) + – License: Apache 2.0. Originally designed for high-performance server +environments, NanoLog uses compile-time extraction of log metadata so +that at runtime only an ID and variables are emitted. Offline tools then + format the messages. It demonstrates nanosecond-scale latencies (≈7 ns) + and tens of millions of logs per second, but is more suited to powerful + systems rather than constrained MCUs.

+

McuLog (McuOnEclipse) – License: BSD 3-Clause. A C-based logger offering traditional printf formatting with log levels (TRACE to FATAL). + Supports multiple outputs simultaneously (UART with ANSI colors, SEGGER + RTT, or logging to an SD card via FAT). Around 6 KB Flash footprint and + moderate CPU overhead, but no external tools required beyond a host RTT + viewer.

+

uLog (RD Poor) + – License: MIT. A minimalist single-file C logger inspired by Log4c: +configurable log levels, pluggable back ends via callbacks (UART, +memory, etc.), and full compile-time disabling of all logging code. It +formats messages on the target (using vsnprintf) but remains extremely lightweight and portable.

+
+

Commercial Tools and Frameworks

+

SEGGER SystemView + – Free from SEGGER (closed source). Includes a small C library (~2 KB +ROM, 600 B RAM) that streams timed events and user logs via SEGGER RTT +to a PC GUI. It visualizes interrupts, task switches, and custom events +with cycle-level timestamps, with under 1% CPU overhead at 10 000 +events/s on a Cortex-M4 @ 200 MHz.

+

Percepio Tracealyzer (with TraceRecorder) + – Commercial (~1 700 USD/user). Provides deep trace and log analysis +for RTOS or bare-metal systems. The TraceRecorder library (2–3 KB +footprint) captures events and logs in a ring buffer, supporting:

+
    +
  • +

    Printf mode (on-target formatting)

    +
  • +
  • +

    Offloaded formatting (parameters sent to PC for formatting)

    +
  • +
  • +

    Compact mode (ID + parameters, with format strings read from the ELF file).
    +Compact mode reduces overhead by ~99.8% (from 1.9 ms to ≈3 µs per log) +and is safe in IRQs. The PC software offers timeline views, CPU load, +heap usage, and correlates logs with RTOS events.

    +
  • +
+

Memfault + – SaaS platform (firmware SDK free; cloud subscription per device). Its + “Compact Log” feature replaces format strings with IDs on the device +(4.5 KB Flash, 1.5 KB RAM) and uploads logs or crash dumps to the cloud, + where they’re reconstructed using debug symbols. Achieves ~88% data +reduction and offloads CPU formatting. Includes log levels, +time-stamping, remote configuration, and OTA updates. Ideal for fleet +monitoring but requires Internet connectivity and a cloud service.

+

Other Hardware-Native Approaches:

+
    +
  • +

    ARM Keil Event Recorder (proprietary in MDK) uses ITM/SWO for low-overhead event tracing.

    +
  • +
  • +

    ARM ITM/SWO can stream trace data with minimal CPU impact; custom protocols can shift formatting off the target.

    +
  • +
+
+

Comparison Table of Solutions

+
NameLicense / TypeLogging ApproachOverhead & ResourcesOutput ChannelsSpecial Features
TriceOpen Source (MIT)Compile-time IDs, host formatting< 1 KB Flash; very low runtime overheadUART, RTT (COBS binary)ISR-safe; Go host tool; log levels via channels; colored host output
Embedded LoggerOpen Source (MIT)Offloaded format strings; ID + args in targetMinimal Flash/RAM (strings excluded)Custom transportVery low resource use; host decoder required
defmt (Rust)Open Source (MIT/Apache)Deferred formatting; host decoding~ 1.6 KB Flash vs. ~13.8 KB with printf; low runtime impactRTT, other transportsRust only; integrated in probe-run; active ecosystem
NanoLog (C++11)Open Source (Apache 2.0)Compile-time extraction; offline formatting≈ 7 ns latency; tens of millions log entries/sFile post-processingUltra-high throughput; less common in MCU contexts
McuLogOpen Source (BSD 3-Clause)On-target printf formatting with log levels~ 6 KB Flash; moderate CPU loadUART (ANSI color), RTT, FAT fileMultiple concurrent outputs; easy integration; configurable
uLogOpen Source (MIT)On-target vsnprintf; hierarchical log levelsTiny footprint; overhead only when enabledAny via callbacksSingle file; fully disable logging via compiler flag
SystemView (SEGGER)Closed Source (free with J-Link)Binary events + optional user logs~ 2 KB ROM, 600 B RAM; < 1% CPU @10 k events/sRTT (J-Link)Real-time timeline; multi-thread tracing; precise timestamps
TracealyzerCommercial (~ 1 700 USD/user)On-target or host formatting (compact mode: ID + args)~ 2–3 KB Flash; 3 µs/log (compact) vs. 1.9 ms UARTRTT, ITM, USB, RAM bufferExtensive visualization; RTOS support; higher cost
MemfaultCommercial SaaS (SDK free; cloud paid)Compact log (ID + args) with cloud decoding~ 4.5 KB Flash; 1.5 KB RAM; ~ 88% data reductionUART, network uploadFleet monitoring; cloud dashboard; requires connectivity