Commit graph

639 commits

Author SHA1 Message Date
Mark Pizzolato
245a85d79e SCP: Fix Coverity identified memory leak in error expression evaluation path 2018-05-05 17:59:57 -07:00
Mark Pizzolato
a4b5160437 SCP: Add string comparison support to C Style expression evaluation
- Fix operator precedence interpretation
- Report expression parsing errors
2018-05-03 11:54:11 -07:00
Mark Pizzolato
96d3b5d26b SCP: Add SCP debug options to default device debug setup 2018-05-03 11:49:42 -07:00
Mark Pizzolato
130ad1c21f SCP: Fix potential error path expression evaluation memory leak (Coverity) 2018-05-01 23:07:57 -07:00
Mark Pizzolato
4e508cfc29 SCP: Add C style expression support for IF conditions and SET ENV -A
Expression evaluation code provided by Gabriel Pizzolato.
2018-05-01 22:08:06 -07:00
Mark Pizzolato
8fe02ad6d1 SCP: Updaeted HELP EVAL to provide meaningful examples. 2018-05-01 13:43:22 -07:00
Mark Pizzolato
396679a01a SCP: Add strtotsv to generally parse signed t_value data (t_svalue).
Allow for explicit Hex, Octal and Binary (0x. 0. 0b) prefix
2018-04-30 23:03:33 -07:00
Mark Pizzolato
b4ca9174fd SCP: Add formatting support for signed t_value (t_svalue).
PV_LEFTSIGN - left justified signed value
PV_RCOMMASIGN - right, space filled, Comma separated every 3 treat as signed
2018-04-30 21:35:20 -07:00
Mark Pizzolato
15e86fb4ed SCP, DISK: Fix Coverity identified debug path null pointer dereferences 2018-04-17 23:51:39 -07:00
Mark Pizzolato
adedce8556 SCP: Add quoted string argument to SET ENV otherwise trim whitespace
Previously, unexpected values might end up being set when using SET ENV
if there were trailing whitespace on the line being parsed.  Any such white
space is now explicitly trimmed before the environment variable is set.
Once we do that, we need to provide a way to deliberately set an environment
variable with trailing spaces.  This is now achieved by using a quoted string
value specified as:

    SET ENV -S var="value  "

The quotes are removed prior to setting the environment variable value.
The contents of the quoted string are parsed the same as EXPECT and SEND
arguments.
2018-04-16 13:52:54 -07:00
Mark Pizzolato
da31dfa7a9 SCP: Extend EXAMINE <dev> STATE to display elements of arrayed registers 2018-04-11 04:21:17 -07:00
Mark Pizzolato
114a29bc2f SCP: Add PCRE version to SHOW VERSION output 2018-04-08 17:13:54 -07:00
Mark Pizzolato
28e4311039 SCP: Extended debugging to allow for unit specific debug for disk and tape 2018-04-07 21:38:26 -07:00
Mark Pizzolato
e7090e784e SCP: Add support to compare file contents with IF -F "file1" == "file2" 2018-03-31 23:50:37 -07:00
Mark Pizzolato
0b209d2383 SCP: Allow UNIT_RO flag bit to be static when UNIT_ROABLE isn't present. 2018-03-25 18:09:07 -07:00
Mark Pizzolato
d0004b20aa SCP: Compiler const warning cleanup 2018-03-20 13:01:18 -07:00
Mark Pizzolato
2051422ee2 SCP: Remove redundant public SCP API declarations 2018-03-19 11:11:55 -07:00
Mark Pizzolato
c8ca4161fa SCP: Add git commit time to commit id version information 2018-03-09 02:58:40 -08:00
Mark Pizzolato
4cbf4e4144 SCP: Fix IF conditional expression parsing to not require spaces around operator
As reported in #536
2018-03-08 12:12:02 -08:00
Mark Pizzolato
d81ff1f17e SCP: Expose get_sim_opt globally so that local commands can parse switches 2018-03-06 16:41:42 -08:00
Mark Pizzolato
f33ca2a1d9 SCP: Improve throttle help and cleaned up set help formatting 2018-02-12 22:34:43 -08:00
Mark Pizzolato
8464b6bb39 SCP: Properly display disk sizes for small disks when capac is in sectors 2018-02-05 09:46:38 -08:00
Mark Pizzolato
045d7dba36 SCP: ON CONTROL_C cleanup and SHOW ON support 2018-02-02 05:51:22 -08:00
Mark Pizzolato
17e72adb93 SCP: Display HELP <dev> SET help text for modifiers that require values 2018-02-02 05:12:22 -08:00
Mark Pizzolato
760e7f2810 SCP: stop_cpu and sim_is_running variables t_bool 2018-02-02 05:02:27 -08:00
Mark Pizzolato
797feeaff3 SCP: Cleanup minor compiler warning 2018-01-30 03:59:04 -08:00
Mark Pizzolato
3a81f63ec1 SCP: Add support to handle CTRL+C while executing command files 2018-01-30 03:36:15 -08:00
Mark Pizzolato
cc6ff4fa51 SCP: Allow Environment variable names in IF/ASSERT string comparisons 2018-01-30 02:42:36 -08:00
Mark Pizzolato
4907dfb0e2 SCP: Display default delay values with SHOW SEND. 2018-01-22 22:02:03 -08:00
Mark Pizzolato
2cd2f8c1d3 SCP: Use explicit filename compare when built without HAVE_GLOB & HAVE_FNMATCH 2018-01-07 16:54:39 -08:00
Mark Pizzolato
0fc41cb3bd SCP: Properly cancel very long event waits
usecs_remaining must be zero to be sure that canceling is complete.
2018-01-07 13:58:28 -08:00
Mark Pizzolato
39c5217740 SCP: Properly reset the event queue prior to run/boot
Need to call sim_cancel to remove entries from the event queue since
canceling some events may involve other components.
2018-01-07 13:56:16 -08:00
Mark Pizzolato
eea15bfe4e SCP: Add DEBUG command to allow Debug enabling/disabling via Remote Console
This exposes the functionality of SET DEBUG and SET <dev> DEBUG without using
a general SET command which the remote console facility avoids.
2018-01-07 12:47:42 -08:00
Mark Pizzolato
154320bf71 SCP: Add support for BREAK/EXPECT/UNTIL/IF action steps in remote console 2018-01-07 12:09:35 -08:00
Mark Pizzolato
80c1c9e0fd SCP: Silence Coverity warning 2018-01-05 05:53:44 -08:00
Mark Pizzolato
833927d349 SCP: Cleanup compiler warnings 2018-01-04 17:06:58 -08:00
Mark Pizzolato
fbcf72abfc SCP: Allow commands to be enclosed in quotes.
This is useful when commands containing semi-colons are used in the
action steps of BREAK, EXPECT, UNTIL, IF commands.
2018-01-04 07:12:43 -08:00
Mark Pizzolato
9086b269b2 SCP: Allow semicolons within quoted strings while parsing action strings 2018-01-04 07:06:52 -08:00
Mark Pizzolato
72d4622ddf SCP: Add ECHOF command which takes a quoted string as an argument 2018-01-04 07:06:51 -08:00
Mark Pizzolato
9b1f44f787 SCP: Remove optional write_callback in the REGister structure
The REG structure exists to serve SCP's various activities.  It is
does not exist to provide capabilities to a VM.
2017-12-09 02:54:10 -08:00
Mark Pizzolato
a4a6a1d409 SCP: Fix regression which disabled limit check when parsing unsigned integers
This affected unit and tmxr line checks when there was only one unit or line.
2017-12-05 12:23:31 -08:00
Mark Pizzolato
133cf727d5 SCP: Move test for unit disabled to also cover devices with attach routines 2017-12-05 12:17:23 -08:00
Mark Pizzolato
0293d7f4af SCP: Enrich EXPECT and SEND help and document information 2017-11-29 16:49:20 -08:00
Mark Pizzolato
7246e74004 SCP: Add a SIM_OSTYPE built-in environment variable. 2017-11-20 15:23:19 -08:00
Mark Pizzolato
61679ed8f0 SCP: Add optional write_callback to REGister structure called only on DEPOSIT
Add necessary macros to populate this field and cleanup all the
existing macros to be simpler.
2017-11-19 08:18:02 -08:00
Mark Pizzolato
9bb1cfd9f9 SCP: Add useful info for HELP SET CONSOLE options 2017-11-14 18:47:44 -08:00
Mark Pizzolato
733ac0d982 SCP: Make SLEEP command interruptable with SIGINT 2017-11-07 13:34:53 -08:00
Mark Pizzolato
097172f8a3 doc: Add missing commands descriptions 2017-11-03 09:36:11 -07:00
Mark Pizzolato
4ca544f60a SCP: Add SLEEP command 2017-11-03 08:51:19 -07:00
Mark Pizzolato
9134b8e5d3 SCP: Add SIM_BIN_PATH environment variable as the simulator's argv[0] 2017-10-24 12:21:52 -07:00