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
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