Commit graph

252 commits

Author SHA1 Message Date
Mark Pizzolato
3775c17034 Fixed asynch disk/tape I/O reset behaviors to reliably synchronize with the I/O thread's startup 2012-04-29 05:55:46 -07:00
Mark Pizzolato
c4659a0903 Fixed issue where asynchronous I/O wouldn't be reliable after a device reset. 2012-04-28 08:37:20 -07:00
Mark Pizzolato
784f0542f2 Fixed for Compiler indicated bugs 2012-04-27 15:09:40 -07:00
Mark Pizzolato
78009646f0 Cleaned up compiler noticed issues 2012-04-27 15:06:39 -07:00
Mark Pizzolato
c7f778ca79 Cleaned up makefile to support OSX builds with the clang compiler 2012-04-27 14:03:28 -07:00
Mark Pizzolato
ce716f93f6 Fix to avoid excessive compiler optimization of vax ROM access spinwait. Found by Craig Berry, fix suggested by Sergey Oboguev 2012-04-27 13:38:13 -07:00
Mark Pizzolato
57008bb8f5 Cleaned up nested comments 2012-04-27 12:36:03 -07:00
Mark Pizzolato
19bf1cdb90 Cleanup compiler warning about printf arguments 2012-04-27 12:27:16 -07:00
Mark Pizzolato
f77a38c3c5 Cleaned up a few compile complaints 2012-04-27 12:11:12 -07:00
Mark Pizzolato
8989b111c1 Fixed declaration of unused parameter to quiet a gcc warning 2012-04-27 10:08:27 -07:00
Mark Pizzolato
83172116e8 Added SHOW ETHERNET command and extended eth_show to track and display open ethernet devices 2012-04-25 05:29:50 -07:00
Mark Pizzolato
31df5e8db2 Added a mechanism for commands to optionally handle their message printing via a separate dispatch in the command table. This is currently used by run_cmd to handle unsuppressed status returns. 2012-04-25 05:24:53 -07:00
Mark Pizzolato
72be72c472 Updated simh faq and doc files 2012-04-24 14:14:14 -07:00
Mark Pizzolato
fc931c9bb2 Fixed incorrect build target names for new swtp6800 projects 2012-04-24 12:21:45 -07:00
Mark Pizzolato
ad9cd1b51c Numerous Control Flow Fixes:
Fixed do file line numbers in messages to properly track after nested do command files.
Generalized do file command echoing to always include the do file line number
Fixed SET ON which was broken when SET ON INHERIT and SET ON NOINHERIT was added.
Fixed ON INHERIT behaviors for global ini files.
Added SET QUIET and SET NOQUIET commands
Added -Q flag to DO command file processing which sets quiet mode while that command file executes
Changed generic include file name to simh.ini from simh.rc to be consistent with other include files
Changed generic include file to come from the user HOME or HOMEPATH directory and if not found, the current default directory
Fixed format string used to provide quotes around arguments containing spaces while producing %* expansion.
Fixed return from do_cmd to return the status from the last command executed
2012-04-24 12:16:38 -07:00
Mark Pizzolato
4af7be06cc Inherit sim_rev.h from v3.9-0-rc3 2012-04-23 12:25:29 -07:00
Mark Pizzolato
db9bf32112 Merge of Bob's simh-v3.9-0-rc3 2012-04-23 11:50:43 -07:00
Mark Pizzolato
19ae16ac6e Parameterized the gcc invocations in the makefile to facilitate easy use of lint/cppcheck/other-code-analyzer (from Michael Bloom)
For example:
   make GCC=cppcheck CC_OUTSPEC= LDFLAGS= CFLAGS_G="--enable=all --template=gcc" CC_STD=--std=c99
2012-04-21 08:37:46 -07:00
Mark Pizzolato
5f505ccadf Fixing many compiler identified nits. 2012-04-18 09:48:04 -07:00
Mark Pizzolato
3836306446 Revised prior OSX specific makefile fix to avoid a grep error message 2012-04-18 09:09:40 -07:00
Mark Pizzolato
127c8042c1 pdp11_xq: Forced the use of clk_cosched when idling is enabled
pdp11_xu: Separated clock based activities from packet reception by creating a separate XU unit for this purpose
2012-04-17 13:40:09 -07:00
Mark Pizzolato
f206facbd0 Merge branch 'master' of github.com:markpizz/simh 2012-04-17 08:46:33 -07:00
Mark Pizzolato
2873be2d7a Fixed makefile to work for various different gcc versions on OSX (from Craig Berry) 2012-04-17 08:45:52 -07:00
Mark Pizzolato
dfcd818762 Added O_DSYNC semantics to the RAW file open() call for *nix platforms. This makes *nix RAW I/O behavior consistent with windows RAW I/O. 2012-04-16 04:58:28 -07:00
Mark Pizzolato
eb60957366 Fixed VAX idle for NetBSD and OpenBSD support. 2012-04-12 18:45:57 -07:00
Mark Pizzolato
190993b5f4 Fixed possible NULL pointer dereference. (from Sergey Oboguev) 2012-04-12 14:48:26 -07:00
Mark Pizzolato
c6c9e0c3ac Fixed arguments to sprintf when constructing the expansion of %*. Found by Maurizio De Tommaso. 2012-04-12 12:18:23 -07:00
Mark Pizzolato
79d0e25848 Fixed printf of error messages which had parameters in the wrong order (found by Maurizio De Tommaso) 2012-04-12 12:11:01 -07:00
Mark Pizzolato
330839888d Removed redundant {sim_name}.rc initialization file. 2012-04-12 09:59:32 -07:00
Mark Pizzolato
04098f6007 Fixed VAX idle support for newer versions of NetBSD and OpenBSD to not trigger idling when IPL is changed from the system Boot ROM. 2012-04-12 09:52:55 -07:00
Mark Pizzolato
fc8856805d Added a default initializing file simh.rc to the files automatically loaded when a simulator starts
Fixed ASSERT command to require a condition operator (from Dave Bryan)
2012-04-11 19:26:27 -07:00
Mark Pizzolato
c1663795f1 Added VAX idle support for newer versions of NetBSD and OpenBSD guests if they use IPL 1 as the idle trigger 2012-04-11 19:24:42 -07:00
Mark Pizzolato
95a1cb71df Added a generic non simulator specific startup include file (simh.rc) to be processed.
Corrected the ON INHERIT behavior to not allow nested procedures to change the ON INHERITance state.
2012-04-11 10:46:43 -07:00
Mark Pizzolato
542c15844c Added display of the OS sleep resolution which is now displayed as an explanation if idling is unavailable. 2012-04-11 07:32:06 -07:00
Mark Pizzolato
33567b474d Sanity check when detaching a undetached unit. fro Dave Bryan. 2012-04-10 08:09:48 -07:00
Mark Pizzolato
fd702e407b Made automatic startup file be named {sim_name}.rc (i.e. hp2100.rc or vax.rc, etc.) 2012-04-10 07:02:49 -07:00
Mark Pizzolato
1cb4eb7960 Fixed Asynch I/O issues which may leave pending asynch I/O in limbo when device resets happen (found by Sergey Oboguev) 2012-04-10 05:43:59 -07:00
Mark Pizzolato
a339dae651 Extensive Control Flow Enhancements:
Added Message Suppression flag for status values, including providing a -Q option to the RETURN command to return with a message suppressed status
Added Do command file default extension of .sim (from Dave Bryan)
Added -O option to DO command file invocation which causes the caller's ON state and actions to be inherited in the newly called DO command file
Added Command Line expansion to include a %* which expands to the whole set of arguments (%1 ... %9)
Relaxed Command Line argument substitution (delimited by %'s) which cause environment variable lookups to first lookup the literal name provided and if that fails, lookup the name upcased.
Added a SIM_VERIFY special Command Line expansion variable which expands to "-V" when command echoing is active
Added a SIM_MESSAGE special Command Line expansion variable which expands to "-Q" when error message display is suppressed
Added Command Aliasing, which causes the initial token on a command line to be looked up in the environment variable table, and if it exists to substitute the expansion for the initial token.
Changed environment variable defining (with SET ENV variable=value) to always upcase the variable name.
Added SHIFT command which shifts the numbered argument variables %1 ... %9 to the left by one (%1 becomes what was %2, etc.)
Added CALL command which will call a routine (label) in the currently executing command file
Added SET VERIFY and SET NOVERIFY commands which enable or disable DO command echoing
Added SET MESSAGE and SET NOMESSAGE commands which globally enable or disable the display of status messages when commands (or Do Commands) return with unsuccessful status
Added SET ON INHERIT and SET ON NOINHERIT to globally enable inheritance of ON state and actions when DO commands are invoked
Added PROCEED and IGNORE commands which are do nothing but return success.  These can be used in specific ON actions to possibly ignore particular return status values
Added DO command file line number to error messages which are displayed while processing DO command files
Expanded the DO command nesting level to 20 to potentially allow for more nesting due to the extensive use of CALL commands are used
2012-04-10 05:38:12 -07:00
Mark Pizzolato
40deb20ccd HP2100 update from Dave Bryan 2012-04-04 12:31:43 -07:00
Mark Pizzolato
a14a1ab5cd Added missing synchronization when dispatching asynchronous calls. From Sergey Oboguev 2012-04-04 11:08:56 -07:00
Mark Pizzolato
ab3af3062d - Changed asynch queue insertion and removal to use a lock free algorithm based only on InterlockedCompareExchangePointer. We can now use this lock free approach on IA64 host systems as well.
- Removed flawed logic which assumed that sim_interval was meaningful when referenced by an asynchronous thread.
- Adjust the event_time of events removed from the asynch queue to account for the average time spent on the queue before the event was noticed by the instruction execution thread.
- Added a sim_activate_notbefore function which specifies an rtime which is the earliest time the event should fire.
- Changed the 'wakeup from idle' logic to force an immediate asynch queue check if the wakeup was not due to a timeout (i.e. it was due to an asynch queue insertion).
- Fixed the descrip.mms to build asynchronous support on AXP and IA64 VMS with kernel threads enabled
2012-04-04 11:05:24 -07:00
Mark Pizzolato
7ac3557524 Fixed bug under Asynch I/O where I/O completion did not delay the appropriate time before passing back device status to a simulator. Found by Sergey Oboguev. 2012-04-02 14:05:12 -07:00
Mark Pizzolato
6e6fdd02ae Fixed VMS Build of DEBUG simulators 2012-03-31 14:43:59 -07:00
Mark Pizzolato
4a78242c6f Cleaner GCC options detection on older GCC versions on varioous platforms
Added missing host NIC MAC address determination for VMS hosts
2012-03-30 10:58:01 -07:00
Mark Pizzolato
9449c1fc3f Restored announcing GCC version and build options lost in manual merge from v3.9-0-rc2 2012-03-29 09:12:08 -07:00
Mark Pizzolato
38bbdd2de9 Added VH to the VAX780 build (makefile and descrip.mms) 2012-03-29 04:05:39 -07:00
Mark Pizzolato
7e68046c59 Added VH to VAX780 Visual Studio Project 2012-03-26 12:17:30 -07:00
Mark Pizzolato
7ea8831c7b Added do command default file extension for file being opened of '.sim' 2012-03-26 12:17:07 -07:00
Mark Pizzolato
0dd5185099 Added VH device to the VAX780 2012-03-26 11:53:06 -07:00
Mark Pizzolato
8cc2ef03c7 Fixed regression in handling (ignoring) error conditions while processing simple do file. 2012-03-26 04:59:46 -07:00