Commit graph

763 commits

Author SHA1 Message Date
Mark Pizzolato
ca51776ec7 SCP: Enable global message suppression by library code
The global variable sim_show_message as 0 will suppress message
output which may be needed from time to time by library code.
2020-05-22 10:11:40 -07:00
Mark Pizzolato
6fdd917ee8 SCP: Properly handle MTAB entries with MTAB_QUOTE values 2020-05-18 16:41:21 -07:00
Mark Pizzolato
275cc417fe SCP: Add HELP info about debugging DO processing and expression evaluation
- Removed incorrect addition of SCP related DEBUG flags to the CPU
  DEVICE debug options.
2020-05-15 05:14:50 -07:00
Mark Pizzolato
345b87034a SCP: Document -Q for DELETE/RM command and suppress "file not found" with -Q 2020-05-13 05:48:04 -07:00
Mark Pizzolato
20aa661c43 SCP: Parse switches on file operation commands
DELETE, DIR, MKDIR, TYPE, COPY, etc.

This allows -Q to suppress output if desired.
2020-05-12 08:25:10 -07:00
Mark Pizzolato
8edb55ac87 SCP: During expression evaluation, make lookups (REG, Env) consistent
Both REGister and Environment Variable name lookup now do a precise
name lookup with the presented name followed by an upcased name
lookup.
2020-05-12 03:57:22 -07:00
Mark Pizzolato
c3fef9befc SCP: Fix expression evaluation of empty string to numeric value
Previously, numeric values incorrectly had a string representation of
"".  This allowed arbitrary equality comparisons to succeed in unexpected
ways.

Reported by Robert Sancho Villas
2020-05-11 16:23:26 -07:00
Mark Pizzolato
781c73fe21 SCP: Fix != comparison in memory search compare logic (Roberto Sancho Villa) 2020-05-11 06:53:27 -07:00
Mark Pizzolato
df63d4ff9f SCP: Reject undefined device with TESTLIB command
Also remove some otherwise unused variables (assignments but never used).
2020-05-05 12:57:43 -07:00
Mark Pizzolato
7082e212ea DISK: Avoid autosizing if file system can't be determined
Add DISKINFO command to display information about a disk container file.
2020-04-29 13:21:12 -07:00
Mark Pizzolato
b561de671b SCP: Cleanup C++ compile of changed help string management 2020-04-21 21:43:41 -07:00
Mark Pizzolato
2b68660876 SCP: Add a TESTLIB command to invoke sim_* library test on devices
- Previously invoking a simulator with -T was the only way to invoke the
  library tests for ALL devices.  That still works now with the additional
  flexibility to invoke a specific device's test from the sim> prompt.
- Adding TESTLIB help text encountered a maximum constant string length
  limit in the C compiler.  Reworked to allow multiple strings which are then
  concatenated on the first HELP command invocation.
2020-04-17 17:22:43 -07:00
Mark Pizzolato
35780cf5e2 SCP: Enhance SCP library testing to report and stop on errors 2020-04-11 13:03:00 -07:00
Mark Pizzolato
049ba32505 DISK: Add robust disk container validation 2020-04-11 13:01:48 -07:00
Mark Pizzolato
d0de8b807f SCP: Add missing new entry in the scp_errors array 2020-04-04 09:13:22 -07:00
Mark Pizzolato
b168114f61 SCP: Remove duplicate time message in SHOW VERSION output 2020-04-03 13:12:39 -07:00
Mark Pizzolato
3d2394a2fb SOCK: Add tmxr (and socket) library tests 2020-03-31 09:07:39 -07:00
Mark Pizzolato
261abfc35f SCP: Fix missing string from format in help output 2020-03-26 15:26:35 -07:00
Mark Pizzolato
083080e71d SCP: Add SET <dev|unit> APPEND|EOF to position to EOF
Sequential devices (LPT, PTR , PTP, etc.) can be positioned to EOF.
Readable devices will encounter EOF on the next I/O operation.
Writable devices will append.  Either APPEND or EOF produce
the same result independent of whether the device is opened for
oread or write.
2020-03-26 09:58:24 -07:00
Mark Pizzolato
7d1a81b9f9 SCP: Add GOTO :EOF as a means of returning from a DO command 2020-03-25 14:41:03 -07:00
Mark Pizzolato
03466a6806 SCP: Tolerate commas in decimal numbers during expression evaluation 2020-03-22 18:55:14 -07:00
Mark Pizzolato
ee317e0cb4 SCP: Adjust RUNLIMIT time values on slow host systems
As reported and discussed in #819
2020-03-21 21:30:58 -07:00
Mark Pizzolato
09896679bb SCP: Add SHOW DO to display the DO file nesting state 2020-03-09 23:38:48 -07:00
Mark Pizzolato
036e3bb933 SCP: Fix Coverity generated warnings 2020-03-08 18:44:33 -07:00
Mark Pizzolato
0170b7c6ab SCP: Convert more SHOW and debug output to use sim_vm_interval_units 2020-03-08 11:43:30 -07:00
Mark Pizzolato
b2272c8cd6 SCP: Add ability to "DO <stdin>"
This allows a running script to nest a procedure call get input from
stdin and return to the running script (or executing simulator).
2020-03-08 09:52:41 -07:00
Mark Pizzolato
4b45b04c29 SCP: Enable Runtime REGister entry validation and checking during build 2020-03-07 20:17:36 -08:00
Mark Pizzolato
7015ad395c SCP: sim_timer_init must only run early, and potential NULL dereference 2020-03-07 19:54:25 -08:00
Mark Pizzolato
938aa58f3a SCP: Provide ways for VM to specify sim_interval adjustment and step units
This affects the output of some SCP commands (including help).  The
results are cosmetic, but allows the simulator to provide correct descriptive
information.
2020-03-07 10:13:18 -08:00
Mark Pizzolato
b76fd3ed44 SCP: Preparing for dynamic testing of simulator REGister definitions at startup 2020-03-06 15:28:52 -08:00
Mark Pizzolato
146f05d1f7 SCP: Cleanup compiler warning about potential buffer truncation 2020-02-25 00:17:49 -08:00
Mark Pizzolato
254e173fc1 SCP: Add support for a simulator specific release announce message 2020-02-16 21:46:40 -08:00
Mark Pizzolato
4096a73412 SCP: Fix Coverity identified error path problem 2020-01-30 11:29:44 -08:00
Mark Pizzolato
01f93e9507 SCP: Add SHOW RUNLIMIT to examine the state/condition of any execution limit 2020-01-09 23:53:41 -08:00
Mark Pizzolato
7581b92f9d SCP: Add a RUNLIMIT command to bound simulator execution time 2020-01-08 11:49:22 -08:00
Mark Pizzolato
35252369eb SCP: Identify the build tool chain in the SHOW VERSION output 2020-01-07 20:30:18 -08:00
Mark Pizzolato
787edb211c SCP: Fix pcre remaining issues 2020-01-03 19:55:22 -08:00
Mark Pizzolato
c8f7315518 SCP: Change regular expression API from regex to pcre 2020-01-02 06:42:46 -08:00
Mark Pizzolato
b18912cda8 SCP: Silence GCC optimizer warnings about unused function results 2019-12-30 15:33:51 -08:00
Mark Pizzolato
5213e1125d SCP: Add support to identify a simulator specific release version
Included from Dave Bryan's V3.11 extensions
2019-12-28 12:34:06 -08:00
Mark Pizzolato
e611e0ceed SCP: Add global variable with the program name
Included from Dave Bryan's V3.11 extensions
2019-12-28 11:00:59 -08:00
Mark Pizzolato
098a1634e6 SCP: Allow a suffix of k or m for numeric arguments to SEND and EXPECT commands 2019-12-16 07:13:09 -08:00
Mark Pizzolato
1314f9edfa SCP: process switches in MKDIR and RMDIR commands 2019-12-15 10:52:07 -08:00
Mark Pizzolato
753d5307c4 SCP: Increase the maximum SEND and EXPECT delay values to 2000000000 2019-12-15 02:01:02 -08:00
Mark Pizzolato
25d4e5c5f2 SCP: Clarify the HELP for a NOEXPECT command. 2019-12-15 01:24:02 -08:00
Mark Pizzolato
5859a8216b SCP: Add debug details when initially queuing pending SEND input 2019-12-15 01:21:55 -08:00
Mark Pizzolato
e5f9a7dca8 SCP: Cleanup path argument to MKDIR command
Also allow making a directory that already exists to return successfully
with a message.  The message can be suppressed with the -Q switch.
2019-12-14 14:38:25 -08:00
Mark Pizzolato
d03487d227 SCP: Allow SAVE command to overwrite an existing file 2019-12-04 16:34:01 -08:00
Mark Pizzolato
427b7df073 SCP: Add RENAME/MV command 2019-12-04 16:33:41 -08:00
Mark Pizzolato
4cbd8401f7 SCP: Add option to display fractional unit capacity 2019-11-16 20:59:37 -08:00