This avoids a potential invalid pointer dereference when formatting
the return value from sim_instr() if it is < SCPE_BASE but greater
than the previously defined static array size.sizeof
Update simh.doc to reflect this generic change.
CID Action
1416081 changed variable answer to int
1416082 checked returned values with ASSURE - read error means corrupted target code.
1416088 added return
1416109 This fallthru was intentional - duplicated code to make coverity happy
1416111 This fallthru was intentional - duplicated code to make coverity happy
1416116 This fallthru was intentional - duplicated code to make coverity happy
1416117 This fallthru was intentional - duplicated code to make coverity happy
1416124 protected against negative return
1416142 added ASSURE, however this case won't happen since reg_intpending==true implies positive int level
1416145 checked non-NULL, return SCPE_ARG if NULL
1416150 since only 2 drives are supported, fdc_selected is decoded to 0 and 1 only (allowed 2 and 3 before)
1416152 restrict to 2 drives only
1416166 checked value with ASSURE
1416101 typo: should have been resx
1416106 unnecessary code removed
1416110 this fallthru was intentional - duplicated code to make coverity happy
1416112 this fallthru was intentional - duplicated code to make coverity happy
1416148 change condition to check for negative value
1416179 break was remainder from former logic - removed
1415866 code was remainder from former unimplemented instruction trap - removed
These changes facilitate more robust parameter type checking and helps
to identify unexpected coding errors.
Most simulators can now also be compiled with a C++ compiler without
warnings.
Additionally, these changes have also been configured to facilitate easier
backporting of simulator and device simulation modules to run under the
simh v3.9+ SCP framework.
Commit a9ac7c153 properly avoided writing past the end of cache_line,
but in doing so introduced an error as to the first memory address that
should be written. This fix avoids writing past the cache_line by simply
reading the previous memory location.
Fixes the CP/M 68K simulation example and issue #181