Mark Pizzolato
5f2c7b2a48
SCP: Defer substitution for IF/ASSERT command action commands
2018-05-24 13:31:07 -07:00
Mark Pizzolato
c294787aed
SCP: Fix expression evaluation divide by zero, and avoid parameter substitution
...
This allows bare the % character to to properly be the moduls operator and
avoids potential ambiguous variable insertions.
2018-05-24 12:59:23 -07:00
Mark Pizzolato
0daff9026d
SCP: Add TIME_MSEC predefined variable to provide time to milliseconds
...
- Assure that Internal variables are referencable during expression evaluation
- Add DEVNAME.REGNAME format for referencing non unique registers in
expression evaluation.
- Extend global register search to also search known internal device list
registers
- Allow expression variable names to have _ as a character within in the name
2018-05-24 01:46:24 -07:00
Mark Pizzolato
4734454bac
SCP: Fix sim_dir_scan on Windows to return correct directory name
...
Also, change sim_dir_scan on all platforms to NOT return the contents
of a directory unless the filespec string asks for it. This avoids the
potential catastrophe of a DEL command specifying a directory and
having its contents deleted.
Meanwhile, the DIR command now will list the contents of a directory
if the directory is specified with (or without) a wild card pattern.
2018-05-19 06:31:48 -07:00
Mark Pizzolato
b51d250598
SCP: Ignore trailing whitespace for all commands
2018-05-18 08:32:03 -07:00
Mark Pizzolato
cc31a50436
SCP: Allow empty SIM_BUILD_OS for compilers that don't support empty strings
2018-05-12 10:52:07 -07:00
Mark Pizzolato
cb53ddbc12
makefile: Make compile time Android Version visible in SHOW VERSION output
2018-05-10 21:55:15 -07:00
Mark Pizzolato
c0cda9ffd4
SCP: Remove leading / from sim_dir_scan file names when glob isn't available
2018-05-10 00:09:19 -07:00
Mark Pizzolato
818032fd24
SCP: Remove redundant DIR_ENTRY_CALLBACK declaration
2018-05-09 16:43:39 -07:00
Mark Pizzolato
b781834f31
SCP: Add sim_dir_scan API for general use.
2018-05-09 13:52:52 -07:00
Mark Pizzolato
6ccbfc7381
SCP: Report errno value when starting instruction execution fails
2018-05-08 02:51:17 -07:00
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