[Simh] EXT :Re: Issue #731 Related General review of simh PDP11 ability to set addr and set vector for all device where autoconfig is disabled - possible KDP bug

Mark Pizzolato Mark at infocomm.com
Fri Aug 2 08:55:15 EDT 2019


0n Thursday, August 1, 2019 at 6:37 AM, Geoff Conway wrote:
[...]
> The simplest solution of allowing set xu(b) vector=val was the appropriate
> answer to the bug that I found.
> 
> This has now been corrected in pdp11_xu.c and Mark late yesterday his time
> built a new simh windows binaries distribution set.
> 
> I have since verified that this XU bug has been fixed and also checked every
> device in the simh PDP11 hardware list and confirmed that where autoconfig
> has been disabled that the commands set <device name> address=val and 
> set <device name> vector=val are allowed.
> 
> While the sysadmin normally specifies the CSR addresses and vectors by using
> sysgen and netgen the hardware devices in simh also have to match the
> sysadmin specified csr & vectors.
> 
> There is one exception in the simh list of devices and it appears to be with
> the KDP device for DECNet that is using the simh KMC device at the lower
> level.
> 
> The help set kdp command lists that it can set the address=val as well as a
> line that says set address interrupt vector which possibly means the modifier
> table isn't configured correctly.
>
> The KDP device is a new DECNet device for simh and likely works  ok when
> autoconfig is enabled. It is assigned floating addresses and vectors so both
> addr and vector commands should be allowed. However set kdp vector is not
> as it appears wrongly matched to address in its MTAB table.
> 
> The first 2 MTAB entries show the problem (line 3 is the *possible bug).
> 
> { MTAB_XTD|MTAB_VDV, 010, "ADDRESS", "ADDRESS",
>         &set_addr, &show_addr, NULL, "Bus address" },
>     { MTAB_XTD|MTAB_VDV|MTAB_VALR, 0, "VECTOR", "ADDRESS",
>         &set_vec, &show_vec, NULL, "Interrupt vector" },
> 
> If I am correct in my analysis I believe that the 3rd line
>     { MTAB_XTD|MTAB_VDV|MTAB_VALR, 0, "VECTOR", "ADDRESS",
> Should be
>     { MTAB_XTD|MTAB_VDV|MTAB_VALR, 0, "VECTOR", "VECTOR",
> 
> Mark can you please have a look to see if this is in error as I suspect ?
>
> At the moment the command set vector is not allowed and I'm not sure what
> it is trying to do with line 3 - not what was intended anyway!

That was clearly a cut and paste typo, thanks for finding it.  

This problem has been fixed along with several somewhat random cases 
in the PDP11 device set that were missing the |MTAB_VALR setting in the
MTAB entries for ADDRESS or VECTOR.  This setting indicates that a value 
is required when a SET command is being parsed.  

New Windows binaries will be generated when some more substantial 
changes are made...

- Mark




More information about the Simh mailing list