Mark Pizzolato
9dd727a410
SCP: Add additional register sanity checking
2022-08-14 12:25:23 -10:00
Mark Pizzolato
5bc3ebc890
SCP: Extended IF command file compare to optionally skip leading parts of files
...
If the environment variable _FILE_COMPARE_START_OFFSET is defined, it
specifies starting offset into the file to begin a comparison.
2022-08-07 12:50:12 -10:00
Mark Pizzolato
107813b11b
SCP: Change sim_abort to SIM_SCP_ABORT macro.
...
SIM_SCP_ABORT is ONLY for use in scp support libraries
2022-07-30 11:18:08 -10:00
Mark Pizzolato
67c8534055
PDP11: Add missing descriptive info for various device SHOW commands
2022-07-26 18:42:58 -07:00
Mark Pizzolato
0be2c735a6
SCP: Cleanup column formatting in various SHOW <device>|<unit> output
2022-07-26 11:37:44 -07:00
Mark Pizzolato
a9a68f6928
SCP: Only use relative path display for file system device attachments
2022-07-24 12:32:33 -07:00
Mark Pizzolato
7ada0d6edb
FIO: Fix relative path name logic for edge cases
2022-07-21 02:48:37 -10:00
Mark Pizzolato
5cbf9df0df
SCP: Fix memory debug buffer logic to properly flush and subsequently continue
...
Flushes happen:
1) when exiting sim_instr()
2) prior to explicitly aborting execution
2022-07-17 16:58:58 -10:00
Mark Pizzolato
7249d55f11
SCP: Avoid runaway recursion when debugging timer logic
...
As mentioned in #1107
2022-07-17 13:14:09 -10:00
Mark Pizzolato
bc98e1c609
SCP: Be sure to flush output files when aborting.
...
Emit a last gasp message prior to flushing files before aborting.
2022-07-17 13:01:25 -10:00
Mark Pizzolato
52bda05f70
SCP: Add API for device help to display supported breakpoints
2022-07-11 23:56:27 -07:00
Mark Pizzolato
c053b7e91f
SCP: Report source file context for any/all register sanity check errors
...
Not just the duplicate/ambiguous cases.
2022-07-07 09:00:09 -10:00
Mark Pizzolato
a6f9d02cff
SCP: Reword ambiguous REGister message to more easily locate source
...
Add source and line reference to REG macros.
2022-07-07 08:11:37 -10:00
Mark Pizzolato
99524be9df
SCP: Add missing SRDATA REGister macro and a unit test for it
...
- The SRDATA macro wasn't used anywhere in the codebase, so it got missed.
- Extend RegisterSanityCheck logic to detect ambiguously named REGisters
2022-07-06 18:40:13 -07:00
Mark Pizzolato
fb4c3ee653
SCP: Include unit based logical names in SHOW NAMES output
2022-07-01 09:39:52 -10:00
Mark Pizzolato
3aa8b5da91
SCP: Extend Logical Name functionality to units as well as devices
...
Display of devices and units prefers logical names but accepts both
2022-07-01 09:13:46 -10:00
Ken Rector
c81e6b9c3c
SCP: Fix parenthesis to avoid potential compiler warnings
2022-07-01 07:23:35 -10:00
Ken Rector
1aaba87cc2
SCP: Add parenthesis to avoid potential compiler warnings
2022-07-01 07:13:22 -10:00
Mark Pizzolato
bc99d6d5de
SCP: Updated REG manipulation APIs and REGister sanity checks for all macros
...
- bounds check accesses in get_rval and put_rval for circular registers
- extend unit tests for REGister sanity checks to include all macros
- add sanity checks for new REGister macros
2022-06-26 14:39:25 -07:00
J. David Bryan
72196b08bb
SCP: Updated REG macros and manipulation APIs
...
- Rewrote get_rval, put_rval to support fields within arrays of structures
- REG "size" field now determines access size
- REG "maxval" field now determines maximum allowed value
Merge from v3.12
2022-06-24 15:39:45 -07:00
Mark Pizzolato
4cf86e0e64
SCP: Add NOAUTOSIZE status to the output of SHOW VERSION
2022-06-18 16:08:40 -07:00
Mark Pizzolato
c13214a98c
SCP: Avoid DEPOSIT to DEVICEs which aren't attached to a seekable file
2022-06-17 13:23:37 -07:00
Bob Supnik
77cd8d1802
SCP: Fixed bug in byte deposits if aincr > 1
...
The PDP11 and VAX have length switches - B, W, and (VAX) L - to
override the default parsing of numberic display or input as words
(PDP11) or longwords (VAX CPU) or bytes (VAX byte devices).
This worked fine if every value is filled in. On the PDP11:
sim> ideposit -b 0-3
0: 1
1: 2
2: 3
3: 4
sim>
But if the user skips an input, IDEPOSIT advances by 2, not 1:
sim> ideposit -b 0-3
0: 1
1: (cr)
3: 4
sim>
This change now produces the correct behavior.
PDP-11 simulator V3.12-2
sim> id -b 0-3
0: 1
1:
2: 3
3: 4
sim>
2022-06-17 08:23:29 -07:00
Mark Pizzolato
50b969e519
DISK, SCSI: Add framework of support for different device sharing of containers
...
- More robust and reasonable behaviors when NOAUTOSIZE is enabled
- Repair/extension of disk metadata when AUTOSIZE is enabled
- MediaID support when device presents it
- Automatic MTAB generation when DEVICE provides a DRVTYPE list
2022-06-15 15:51:19 -07:00
Mark Pizzolato
25207bf3af
SCP: Use relative filename paths in messages and SAVEd state
2022-06-15 15:51:18 -07:00
Mark Pizzolato
83e2ac831d
SCP: display count of units when all units are disabled
2022-06-15 15:51:18 -07:00
Anthony Lawrence
8b35d52ec6
SCP: Fix incorrect disk size reporting when t_addr is 32 bits
2022-06-14 20:21:21 -07:00
Mark Pizzolato
8628baf18b
SCP: Add support for optional device unit tests
...
Some simulators and/or devices may want to provide specific testing
activities outside of full simulator execution which often will require
external, potentially complicated setup.
2022-05-12 13:14:01 -07:00
Mark Pizzolato
9da8f3ca52
SCP: Avoid excessive command context in debug output
2022-05-12 13:13:34 -07:00
Mark Pizzolato
ad9249d4c1
SCP: Add descriptive messages for SCPE_NOPARAM return cases
2022-05-12 13:13:15 -07:00
Mark Pizzolato
b2dd269d7a
SCP: Expand sprint_val target buffers with one extra byte
2022-03-13 20:08:54 -07:00
Mark Pizzolato
ee545a4828
SCP: Assure that all formatted numbers have sufficient buffer space
2022-03-13 13:23:05 -07:00
Mark Pizzolato
e3dbe93e35
SCP: Coverity fixes
2022-03-09 15:53:10 -08:00
Mark Pizzolato
857f725470
SCP: Avoid a Coverity complaint about getenv()
2022-03-08 00:02:07 -08:00
Mark Pizzolato
a50dca0ff0
SCP: Normalize writelock/read only behavior
...
Setting a unit to write locked specifically allows only read access.
- If this is done while a unit is attached, it is up to device logic to
limit write activity until it is detached.
- If this is done while a unit is not attached, a subsequent attach
opens the container read only.
2022-03-04 21:13:37 -08:00
Mark Pizzolato
abd756ebad
SCP: Allow unattached errors to halt with a specific unattached message
2022-03-03 17:40:27 -08:00
Mark Pizzolato
4a45fda672
SCP: assure that t_stat is returned in sim_call_argv()
2022-02-28 10:12:33 -08:00
Mark Pizzolato
9bd945679d
SCP: Add new sim_call_argv() API.
...
call a routine with C style argc, argv parsed arguments
2022-02-28 07:44:39 -08:00
Mark Pizzolato
d960c96f56
SCP: UNIT_BUFABLE isn't always set with UNIT_MUSTBUF
...
UNIT_BUFABLE without UNIT_MUSTBUF means that uptr->filebuf is managed
outside of attach_unit's authority. The buffer copy must always be allocated
if UNIT_BUFABLE is set so that there is space to store the initial loaded copy.
Fix #1122
2022-02-14 19:30:30 -08:00
Mark Pizzolato
eac0e5680b
DISK: Add SET NOAUTOSIZE - disable autosize when attaching existing containers
...
This is a global command possibly for folks who have configurations which
always explicitly specify the drive type they want a particular unit to be
before they attach a container to the unit. The side effect of this will
be to avoid the addition of drive type describing meta data to disk
containers.
2022-02-14 15:06:34 -08:00
Mark Pizzolato
3949f62e89
SCP: Use sim_messagef for all error paths in attach_unit and sim_disk_attach
2022-02-14 04:00:04 -08:00
Mark Pizzolato
315a07cbc7
SCP: Avoid writing out memory buffered devices on detach that haven't changed
...
As discussed in #1109
2022-02-13 22:50:37 -08:00
Mark Pizzolato
6187b0519a
SCP: Support output formatting for long DEVICE and UNIT names
...
This extends fe4a2a28b to include support for long unit names as well.
2022-02-12 15:19:51 -08:00
Mark Pizzolato
a4054f33b8
SCP: Add command argument passed into library unit test routines
2022-02-07 04:21:16 -08:00
Mark Pizzolato
2209f25086
SCP: Add a success or failure indicator preceeding messages
2022-02-06 11:16:57 -08:00
Mark Pizzolato
54eda7a050
SCP: Extend BITFIELDS to allow alternate descriptions for same fields
2022-02-04 07:56:15 -08:00
Mark Pizzolato
dd92be296c
SCP: Add host system processor name to SHOW VERSION output
2022-02-04 07:51:08 -08:00
Mark Pizzolato
370bfe006d
SCP: Avoid using strlcpy for overlapping string copy
2022-01-16 07:44:15 -08:00
Mark Pizzolato
b5052c81d6
makefile, SCP: Enrich support for compile time SIM_VERSION_MODE
...
- Pass make command line SIM_VERSION_MODE argument into the compiler.
- Tolerate quoted and unquoted SIM_VERSION_MODE values.
2022-01-15 10:01:49 -08:00
Mark Pizzolato
b24e3580dc
SCP: Add clarifying context to various device/unit error messages
2022-01-12 12:17:21 -08:00