Both sides previous revisionPrevious revisionNext revision | Previous revision |
language:langs:chp [2025/05/01 16:56] – [Debugging during simulation] rajit | language:langs:chp [2025/05/01 17:04] (current) – [Debugging during simulation] rajit |
---|
where ''N'' is the number of channels in the ''I'' array. This approach ensures that index for the array ''I[]'' is always a constant. | where ''N'' is the number of channels in the ''I'' array. This approach ensures that index for the array ''I[]'' is always a constant. |
| |
===== Debugging during simulation ===== | ===== Debugging and other support functions for simulation ===== |
| |
When running CHP simulations, it is often helpful to print debugging output during CHP development. To support this, the CHP language includes the ''log()'' command. | When running CHP simulations, it is often helpful to print debugging output during CHP development. To support this, the CHP language includes the ''log()'' command. |
</code> | </code> |
| |
Booleans are displayed as integers, with ''0'' corresponding to false, ''1'' corresponding to true. Integers can also be displayed in hexadecimal, binary, or decimal (the default). The integer mode display can be changed with a prefix in a string, as shown in the example above. | Booleans are displayed as integers, with ''0'' corresponding to false, ''1'' corresponding to true. Integers can also be displayed in hexadecimal, binary, or decimal (the default). The integer display mode can be changed with a prefix in a string, as shown in the example above. |
| |
| Other support functions of this type are: |
| * ''warn(string)'' : displays a warning |
| * ''assert(expr,string)'' : the first argument has to be an expression, and if it is non-zero then an assertion failed message is displayed. |
| * In the standard ''log'', a single line is displayed based on the items in the argument list. To split this into multiple ''log'' commands, use: |
| * ''log_st()'' : start a log message |
| * ''log_p(item,item,item...)'' : append to the output message, with the same syntax as the ''log()'' command. |
| * ''log_nl()'' : new line |
| |
| |