Commit graph

849 commits

Author SHA1 Message Date
Mark Pizzolato
c640000b54 SCP: Fix DO command so that CALL will work after a CD has been processed 2018-09-28 20:33:32 -07:00
Mark Pizzolato
0e544b71ff SCP: Fix various compiler warnings 2018-09-28 18:05:39 -07:00
Mark Pizzolato
568a80dfb8 SCP: Add parsing of file specs in environment variables and DO command args. 2018-09-28 15:43:01 -07:00
Mark Pizzolato
9a716a7689 SCP: On startup, only exit if initialization file explicitly returns SCPE_EXIT
Fix for problem reported in #625
2018-09-28 09:36:14 -07:00
Mark Pizzolato
928193d463 SCP: Fix EXPECT regular expression match environment variable names
- Use sim_messagef for consistency
2018-09-27 06:24:31 -07:00
Mark Pizzolato
3c7f79f251 SCP: Fix and document optional [count] parameter for EXPECT commands
- Avoid "Goodbye" message when optional status is specified on EXIT command.
- Properly range check [count] specified on EXPECT commands
2018-09-19 14:46:40 -07:00
Mark Pizzolato
d35b8725a3 SCP: Add optional status value to EXIT command 2018-09-18 14:24:14 -07:00
Mark Pizzolato
371e5fe5cc SCP: Remove duplicate SET CONSOLE SPEED help text.
Fix #618
2018-09-13 08:20:22 -07:00
Mark Pizzolato
8bd73b3243 SCP: Fix ELSE command implementation
Reject nested IF & ELSE commands.
2018-08-29 20:39:05 -07:00
Mark Pizzolato
0daa80e03d SCP: Add support for library unit test routines 2018-08-26 18:15:30 -07:00
Mark Pizzolato
b2ff00ab87 SCP: Make debug duplicate message reduction properly the default behavior 2018-08-24 10:08:59 -07:00
Mark Pizzolato
c0f79d8812 SCP: Fix Xcode static analysis identified issues (Peter Schorn) 2018-08-12 03:16:44 -07:00
Mark Pizzolato
6070692581 SCP: Add unit to AIO_VALIDATE context message 2018-08-08 11:51:54 -07:00
Mark Pizzolato
482b6f1be4 SCP: Add ELSE command extension to the IF command processing. 2018-08-06 18:22:46 -07:00
Mark Pizzolato
a62789a505 SCP: Make repeated debug message summarization the default
The -F debug switch can now be used to avoid the repetitive message
summarization.  This will trade off debug log file size vs CPU cost to
summarize the output.
2018-08-06 07:37:04 -07:00
Mark Pizzolato
a8d4fe8846 SCP: Fix potential NULL pointer dereference - Coverity 2018-08-04 08:28:12 -07:00
Mark Pizzolato
b18fa8c045 SCP: Prepare for new sim_card interfaces 2018-07-29 19:51:09 -07:00
Mark Pizzolato
7a08f2368e SCP: Add debug duplicate line output summary support 2018-07-27 13:56:18 -07:00
Mark Pizzolato
9cc726790e SCP: Avoid "Unexpected internal error" for expected conditions 2018-07-27 08:39:23 -07:00
Mark Pizzolato
15fd71b97c SCP: Fix Coverity identified issues 2018-07-17 22:05:05 -07:00
Mark Pizzolato
65e931c1ff SCP: Provide context for unexpected event processing errors 2018-07-17 08:48:11 -07:00
Mark Pizzolato
97bee79faa TIMER: Fix overflow error in sim_idle_ms_sleep() timespec tv_nsec field
Backed out commit 484889ea5a since the overflow of the timespec tv_nsec
field was the real cause of the problem.  No need for an extra mutex.

As reported in #595
2018-07-15 10:11:14 -07:00
Mark Pizzolato
5d7dc4d676 SCP: Fix uninitialized variable reference 2018-07-15 07:18:59 -07:00
Mark Pizzolato
82ea9c59ca SCP: Add substring and string substitution to environment variable expansion 2018-07-14 18:29:26 -07:00
Mark Pizzolato
2c55ad0cfa SCP: Let sim_messagef() be well behaved when stat is SCPE_OK 2018-07-13 18:05:30 -07:00
Mark Pizzolato
484889ea5a TIMER: Changed sim_idle_ms_sleep() to use a mutex which is unique to idling
It seems that the prior use of sim_asynch_lock RECURSIVE mutex could
cause a pthread_cond_timedwait() failure with EINVAL returned.
As discussed in #595
2018-07-11 11:59:05 -07:00
Mark Pizzolato
d593cdb98b SCP: Add prompt prior to fatal exit allowing error messages reading
As discussed in #594
2018-07-08 14:55:55 -07:00
Mark Pizzolato
58ccb38d7b SCP: Add ability to ECHOF output to TMXR lines 2018-07-06 17:57:05 -07:00
Mark Pizzolato
d3da865e9b TMXR: Fix MUX transmit scheduling when buffer is empty
Also:
- Enhance SHOW MUX to support "SHOW MUX <dev>"
- Fix potential null pointer dereference with unusual ATTACH combinations
- Allow BPS factor to change without specifying an explicit speed.
2018-06-23 11:30:02 -07:00
Mark Pizzolato
c9dae318df SCP: Avoid need for TMXR devices to have dummy DEVICE examine and deposit values 2018-06-19 23:58:22 -07:00
Mark Pizzolato
3b8442ce71 SCP: Set UNIT_IDLE in the step unit so idline can happen during "STEP -t nnn" 2018-06-19 23:41:09 -07:00
Mark Pizzolato
6b7798781d TIMER: Allow recording of elapsed time when asynch events arrive while idling
As discussed in #578
2018-06-14 12:40:22 -07:00
Mark Pizzolato
d39864669a SCP: Fix potential null pointer dereference in debug expression 2018-06-14 01:36:05 -07:00
Mark Pizzolato
3973963b0c SCP: Make expression evaluation consistent 2018-06-13 00:36:22 -07:00
Mark Pizzolato
f89a65ff2f SCP: Revert pre-insertion of %n to be done during normal expansion. 2018-06-12 02:03:07 -07:00
Mark Pizzolato
2203608f4a SCP: Fix adjacent insertion of %n DO command arguments 2018-06-11 17:06:20 -07:00
Mark Pizzolato
2b112b0e13 SCP: Allow single digit argument insertion for DO command arguments 2018-06-11 14:51:27 -07:00
Mark Pizzolato
ed2abaa2d8 SCP: Enhance debug output while tracking event and timer activity 2018-06-11 03:13:29 -07:00
Mark Pizzolato
4fff142444 SCP: Fix EXPECT bookkeeping to avoid reference after free error 2018-06-11 02:35:07 -07:00
Mark Pizzolato
5700b1f477 SCP: Properly handle literal strings in expression string comparisons 2018-06-09 08:16:39 -07:00
Mark Pizzolato
5ca02d3f98 SCP: Add missing case independent string compare in expressions 2018-06-09 06:20:32 -07:00
Mark Pizzolato
15cd4d35ac SCP: Enhance command procedure processing and add debugging support
- push new action commands ahead of any previously unprocessed pending
   action commands.
- Add ACTION and DO debug to CPU (SCP) command processing support
- Insert %n command arguments before storing command line for potential
   deferred processing of action parameters to some commands (IF, BREAK,
   EXPECT, etc.)
2018-06-08 18:09:10 -07:00
Mark Pizzolato
9e18e0bb8d SCP: Cleanup expression evaluation logic errors
- Conversion to postfix ends up with operator ordering in different from the
   initial assumption resulting all relative compares being wrong.
- Parsing of Hex, Binary and Octal numeric tokens need to properly terminate
- Environment variable names can start with the _ character
2018-06-07 17:34:35 -07:00
Mark Pizzolato
06654d1ff5 TMXR: Make sure all MUX devices can leverage all debug selectors 2018-06-07 16:39:26 -07:00
Mark Pizzolato
ce5c3f0ff5 SCP: Allow symbols (environment variables) to describe contain addresses
This allows:
   sim> SET ENV X=80004324
   sim> EXAMINE X
   80004324: xxxxxxxxxx
   sim> DEPOSIT X nnnnn
2018-06-05 22:24:46 -07:00
Mark Pizzolato
b40e586ef3 SCP: Assure that action commands (IF/ASSERT,BREAK, ON, etc.) are trimmed 2018-05-31 15:30:19 -07:00
Mark Pizzolato
6e35bee5c5 SCP: Fixed Coverity identified issues 2018-05-28 01:56:14 -07:00
Mark Pizzolato
b1318f5c37 SCP: Always clear uptr->fileref on detach 2018-05-26 12:37:26 -07:00
Mark Pizzolato
874f60cbaa SCP: Fix potentially uninitialized variable reference 2018-05-25 10:21:35 -07:00
Mark Pizzolato
5f2c7b2a48 SCP: Defer substitution for IF/ASSERT command action commands 2018-05-24 13:31:07 -07:00